2012-09-01 8 views
7

È molto strano ma non ho trovato una soluzione davvero buona con Google joomla style intro text.Come stile il testo introduttivo dell'articolo di Joomla 2.5?

voglio che la corrente di uscita:

<div class="item-content"> 
    <p>Intro Text</p> 
    <p>Full Text</p> 
</div> 

per essere sostituito da:

<div class="item-content"> 
    <div class="introtext"><p>Intro Text</p></div> 
    <div class="fulltext"><p>Full Text</p></div> 
</div> 

Ero sicuro che Joomla stesso avrebbe dovuto dichiarare una classe per introtext o almeno dovrebbe avere un opzione configurabile per quello

Quello che non voglio:

  • Un 1.x Joomla o Joomla 1.5 soluzione
  • Un modo manuale fino a quando non v'è una soluzione di estensione -base (che è più più strano!)

UPDATE dopo {THIS} risposta

Ora ho un problema con $this->item->introtext, $this->item->fulltext e $this->item->text.

Mi aspetto che $this->item->introtext visualizzi SOLO introtext, ma contenga anche il contenuto DOPO LEGGI DI PIÙ.

Quale proprietà dovrei utilizzare per includere solo i contenuti PRIMA DI LEGGI DI PIÙ, non altro?

Non mi aspetto che il contenuto di $this->item->introtext sia influenzato dal parametro Show Intro Text nelle opzioni articolo. Si prevede che solo lo $this->item->text se ne preoccupi. Ho ragione?

Nota:$this->item->fulltext funziona come previsto e le uscite solo il contenuto dopo che il LEGGI TUTTO.


In caso di disattivazione Show Intro Text parametro articolo opzioni, tutte le 3 variabili, riportare il testo dopo LEGGI TUTTO. Questo dovrebbe essere considerato un bug.

Sarebbe più saggio disporre di una variabile per restituire solo testo introduttivo (in qualsiasi situazione), una variabile per restituire solo il testo completo (in qualsiasi situazione) e una variabile per includere/escludere l'introtext in base al parametro dell'articolo : Show Intro Text

+0

Proprio come suggerimento, se si vuole utilizzare i plug-in del contenuto in fulltext a: '$ ftext = JHTML :: _ ('content.prepare', $ this-> item-> fulltext); echo $ ftext; ' –

risposta

1

In Joomla 3.3.0 solo funziona come vi aspettavate:

<div id="introtext"><?php echo$this->item->introtext; ?></div> 
<div id="fulltext"><?php echo $this->item->fulltext; ?></div> 

(nei modelli/your_template_name/html/com_content/article/default.php)

3

Tutto ciò che devi fare è aggiungere un override del modello. Hai bisogno di fare una copia di questo file:

/JOOMLA INSTALL/components/com_content/views/article/tmpl/default.php 

apportare alcuna modifica al codice che si desidera, poi caricarlo qui:

/JOOMLA INSTALL/templates/flexibility/html/com_content/article/default.php 

Semplice come quello.

+0

Perfetto! Apprezzo molto la tua risposta. Ho pensato che dovevo solo cambiare il componente principale. E tu mi hai mostrato il modo standard :) –

+1

Ho aggiornato la mia domanda in base alla tua risposta utile. Grazie ancora. –

Problemi correlati