Back to top

Autore Topic: Come si esegue l'Override di un plugin  (Letto 1995 volte)

Offline Commander

  • Nuovo arrivato
  • *
  • Post: 6
  • Sesso: Maschio
    • Mostra profilo
Come si esegue l'Override di un plugin
« il: 12 Ott 2011, 09:46:10 »
Salve
Sto lavorando alla realizzazione di un template personalizzato tramite il processo di override, nel caso specifico mi sto occupando dell'ovverride del file defoult.php relativo all'articolo.
A questo punto, dopo aver creato vari parametri personalizzati e posizionati secondo le mie esigenze nel nuovo layout, avrei bisogno di posizionare una plugin.
Nel mio caso si tratta di una plugin di Rating, ovvero "Extravote" e vorrei sapere come e se è possibile posizionarlo all'interno del layout, tenendo presente che la sola digitazione del codice {extravote #} (che vale se inserito all'interno del testo dell'articolo) non porta ad alcun risultato.
Grazie mille

Giuseppe

Offline tonicopi

  • Global Moderator
  • Instancabile
  • ********
  • Post: 12790
  • Sesso: Maschio
    • Mostra profilo
Re:Come si esegue l'Override di un plugin
« Risposta #1 il: 12 Ott 2011, 10:44:17 »
Devi posizionare nel layout del template una posizione modulo. Poi devi pubblicare in quella posizione un modulo di tipo html personalizzato con dentro il richiamo al plugin  ;)
Questa è una innovazione della 1.7 rispetto alla 1.5 dove i plugin non funzionavano se posizionati in questo modo  :)
Edit: scusa, mi accorgo solo adesso che stiamo parlando della 1.5  :-[
Allora devi utilizzare degli accorgimenti. tipo installare questo plugin che ti consentirà poi di inserire dentro un modulo un articolo con quel plugin  ;)
http://www.nonumber.nl/extensions/articlesanywhere
 
« Ultima modifica: 12 Ott 2011, 10:52:15 da tonicopi »
joomlacsszengarden.com = il giardino dei css di Joomla!
L'attesa del piacere è essa stessa... piacere!

Offline Commander

  • Nuovo arrivato
  • *
  • Post: 6
  • Sesso: Maschio
    • Mostra profilo
Re:Come si esegue l'Override di un plugin
« Risposta #2 il: 12 Ott 2011, 11:37:34 »
Ciao
ti ringrazio innanzitutto per la risposta e volevo approffittare ancora della tua conoscenza :)
mi manca infatti a questo punto il passaggio fondamentale:
come si posiziona nel layout del template una posizione modulo?
grazie

Offline map

  • Appassionato
  • ***
  • Post: 355
  • Sesso: Maschio
  • Siti Web Cagliari Web Agency
    • Mostra profilo
Re:Come si esegue l'Override di un plugin
« Risposta #3 il: 12 Ott 2011, 14:02:36 »
<jdoc:include type="modules"   name="nome_posizione"  style="tipo_di_stile" />

Offline Commander

  • Nuovo arrivato
  • *
  • Post: 6
  • Sesso: Maschio
    • Mostra profilo
Re:Come si esegue l'Override di un plugin
« Risposta #4 il: 12 Ott 2011, 18:50:16 »
Salve,
probabilmente devo aver perso qualche passaggio.

Ho creato una nuova posizione modulo e lo chiamata "posizionetest";
a questo punto nel mio file defoult.php che andrà ad eseguire l'Override del template dell'articolo ho inserito laddove ne avevo l'esigenza il codice

<table width="200" border="1">
  <tr>
    <td>
    <?php
    $params = &JComponentHelper::getParams( 'com_content' );
    echo $params->get( 'param2' );
    ?>
    </td>
    <td>
    <jdoc:include type="modules" name="posizionetest"  />
    </td>
  </tr>
</table>

dopodichè ho eseguito un test inserendo dal backend diverse tipologie di modulo nella nuova posizione creata ma all'interno dell'articolo nel frontend viene visualizzato solo il parametro personalizzato che ho creato.



Offline tonicopi

  • Global Moderator
  • Instancabile
  • ********
  • Post: 12790
  • Sesso: Maschio
    • Mostra profilo
Re:Come si esegue l'Override di un plugin
« Risposta #5 il: 12 Ott 2011, 22:23:36 »
Ma la posizione modulo con quel codice che ti è stato suggerito si inserisce nella index del template, mica nell'override dell'aspetto articolo!
Oppure la puoi inserire con i l  loadposition direttamente dentro l'articolo.
Forse doversti spiegare meglio quello che ti vuoi fare. Perchè vuoi a tutti i costi inserire una posizione modulo con l'override?
joomlacsszengarden.com = il giardino dei css di Joomla!
L'attesa del piacere è essa stessa... piacere!

Offline Commander

  • Nuovo arrivato
  • *
  • Post: 6
  • Sesso: Maschio
    • Mostra profilo
Re:Come si esegue l'Override di un plugin
« Risposta #6 il: 13 Ott 2011, 11:07:33 »
ciao
provo a spiegarmi.. :)
devo realizzare un form di frontend in cui l'utente è in grado di scrivere un articolo, scegliere determinati parametri personalizzati e pubblicarlo.
L'articolo che sarà pubblicato dovrà visualizzare i parametri personalizzati in determinate posizioni e il plugin di rating (in questo caso"extravote") in una determinata posizione del layout dell'articolo.
Quindi il plugin in questione non può essere inserito nel testo dell'articolo ma deve occupare una specifica posizione ogni volta che l'articolo viene pubblicato.

Per ulteriori chiarimenti... resto a disposizione :)

Offline map

  • Appassionato
  • ***
  • Post: 355
  • Sesso: Maschio
  • Siti Web Cagliari Web Agency
    • Mostra profilo
Re:Come si esegue l'Override di un plugin
« Risposta #7 il: 13 Ott 2011, 11:28:38 »
Forse con questo componente riesci a fare quasi tutto.


http://www.joomlapolis.com/




Offline Commander

  • Nuovo arrivato
  • *
  • Post: 6
  • Sesso: Maschio
    • Mostra profilo
Re:Come si esegue l'Override di un plugin
« Risposta #8 il: 14 Ott 2011, 14:00:32 »
Pensavo di non utilizzare un componente esterno, ma di caricare la plugin direttamente all'interno del file defaul.php anche per avere un codice più pulito.

Comunque alla fine sono riuscito a trovare una soluzione ma specifica per il mio caso, ovvero per la plugin extravote che sto utilizzando.

Riporto di seguito il codice e chiedo se esiste un modo per universalizzare questa operazione ad ogni plugin

Codice

<?phpglobal $mainframe;include_once('components/com_content/models/article.php');include_once('components/com_content/helpers/query.php');$dispatcher =& JDispatcher::getInstance();$articleObject=new ContentModelArticle();$id= JRequest::getVar('content_id'); // content_id is the id of the content$limitstart = JRequest::getVar('limitstart', 0, '', 'int'); // for pagination, required for$articleObject->setId($id);$item=new JObject;$item->text = $articleObject->getArticle();$item->params = clone($mainframe->getParams('com_content'));JPluginHelper::importPlugin('content'); // very important$results=$dispatcher->trigger('onBeforeDisplayContent', array (& $item->text, & $item->params, $limitstart));echo $results[0];?>



 



Web Design Bolzano Kreatif