Questo sito utilizza cookie, anche di terze parti, per migliorare la tua esperienza e offrire servizi in linea con le tue preferenze. Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque suo elemento acconsenti all’uso dei cookie

Rimani informato sugli aggiornamenti di SOS-OFFICE. Inserisci il tuo indirizzo e-mail: Informativa sulla privacy

Normalmente, con Joomla, anche si è deciso di ritardare la pubblicazione di un articolo (data di pubblicazione diversa dalla data di creazione), nel momento in cui l'articolo viene pubblicato, se si è scelto di farlo viene mostrata la data di creazione dell'articolo e non quella di pubblicazione che, in alcuni casi, sarebbe preferibile.

Questa operazione non è possibile utilizzando gli strumenti del back end di Joomla, occorre lavorare con il PHP. Teoricamente, si potrebbe lavorare modificando i file del core di Joomla, ma non sempre questa è la soluzione migliore. Al di la di possibili errori che si possono compiere, le eventuali modifiche si perderebbero al primo aggiornamento di Joomla.

È meglio, piuttosto, ricorrere all'override dei template, ossia a delle modifiche che si possono apportare alle pagine generate dal template. Per effettuare questa operazione, occorre creare una copia dei file da modificare e delle cartelle che li contengono nella cartella HTML del template in uso.

Nel caso specifico, i file e le cartelle da modificare si trovano, nel core di Joomla, agli indirizzi /components/com_content/views/article, /components/com_content/views/frontapage ed eventualmente /components/com_content/views/category e /components/com_content/views/section.

Per cui, se non esiste già, occorre creare nella cartella del template in uso la cartella HTML e creare al suo interno la cartella com_content, quindi copiare in questa cartella le cartelle frontpage e article (eventualmente anche category e section) del core di Joomla dalle posizioni appena indicate.

Entrate in queste cartelle e individuate i file default.php e default_item.php (i file hanno lo stesso nome in tutte le cartelle). Aprite tutti questi file e individuate Le righe (dovrebbero essere le righe 39-43)

<?php if ($this->item->params->get('show_create_date')) : ?>
<span>
<?php echo JHTML::_('date', $this->item->created, JText::_('DATE_FORMAT_LC2')); ?>
</span>
<?php endif; ?>

Sostituite la parole created con publish_up, così

<?php if ($this->item->params->get('show_create_date')) : ?>
<span>
<?php echo JHTML::_('date', $this->item->publish_up, JText::_('DATE_FORMAT_LC2')); ?>
</span>
<?php endif; ?>

La modifica va fatta in tutti i file indicati. A questo punto, ogni volta che scegliete di mostrare la data di creazione dal back end di Joomla, al suo posto verrà mostrata la data di pubblicazione.

NOTA: se si vuole mostrare la data di fine pubblicazione al posto di publish_up si deve usare publish_down. Se, invece, si vuole usare la data di modifica per mostrare la data di pubblicazione, bisogna individuare nei file indicato sopra le righe che seguono (dovrebbero essere le righe 121-125) e sostituire modified con publish_up.

<?php if ( intval($this->item->modified) != 0 && $this->item->params->get('show_modify_date')) : ?>
<span>
<?php echo JText::sprintf('LAST_UPDATED2', JHTML::_('date', $this->item->modified, JText::_('DATE_FORMAT_LC2'))); ?>
</span>
<?php endif; ?>
Joomla templates by a4joomla