L'uso di questo tipo di override ha però un inconveniente, modifica tutte le pagine di tipo Lista di singola categoria, cosa non sempre richiesta. Per ovviare a questo comportamento dobbiamo apportare una modifica alla modalità di override affinché la visualizzazione proposta possa essere utilizzata solo per le pagine di nostro interesse.
Rinominiamo il file appena modificato default_articles.php in firmacircolari_articles.php e ripristiniamo il file default_articles.php, precedentemente sottoposto a backup. Poi copiamo i seguenti file dalla cartella del template /html/com_content/category/ o dai file del core di Joomla! /components/com_content/views/category/. Nel nostro caso
/components/com_content/views/category/default.php -> /html/com_content/category/firmacircolari.php /components/com_content/views/category/default.xml -> /html/com_content/category/firmacircolari.xml /html/com_content/category/default_children.php -> /html/com_content/category/firmacircolari_children.php
Adesso modifichiamo il file /html/com_content/category/firmacircolari.xml apportando le seguenti modifiche:
1: <?xml version="1.0" encoding="utf-8"?> 2: <metadata> 3: <layout title="COM_CONTENT_CATEGORY_VIEW_FIRMACIRCOLARI_TITLE" option="COM_CONTENT_CATEGORY_VIEW_FIRMACIRCOLARI_OPTION"> 4: <help 5: key = "JHELP_MENUS_MENU_ITEM_ARTICLE_CATEGORY_LIST" 6: /> 7: <message> 8: <![CDATA[COM_CONTENT_CATEGORY_VIEW_FIRMACIRCOLARI_DESC]]> 9: </message> 10: </layout>
Passiamo all'override della lingua
Le stringhe da inserire lato amministratore sono tre
Possiamo, quindi, selezionare il nuovo tipo di vista da assegnare al menu Circolari
Se infine si volesse avere la possibilità di scegliere, per ogni voce di menu, tra visualizzazione testuale o grafica si potrebbe sfruttare il campo Classe pagina
L'idea è quella di lasciare il campo vuoto nel caso di voglia una visualizzazione testuale ed aggiungere la classe firmacircolari-buttons per la visualizzazione grafica. Le modifiche da apportare al file firmacircolari_articles.php sono le seguenti:
180: </td> 181: <?php endif; ?> 182: 183: <td> 184: <?php 185: $buttons_style = (in_array('firmacircolari-buttons', explode(' ', $this->pageclass_sfx)) ? 'buttons' : 'text');
186: 187: if (!isset($article->asset_id)) 188: { 189: $a = JTable::getInstance('Content'); 190: $a->load($article->id); 181: $article->asset_id = $a->asset_id; 192: } 193: 194: $buttons = array(); 195: foreach(ButtonsHelper::getToolbars($article, 'both') as $article->catid) 196: { 197: $toolbar = JTable::getInstance('Category'); 198: $toolbar->load($article->catid); 199: $tparams = new JRegistry; 200: $tparams->loadString($toolbar->params); 201: $cparams = clone($article->params); 202: $cparams->merge($tparams); 203: $buttons[] = ButtonsHelper::getToolbar($article->catid, $article->asset_id, JFactory::getUser()->id, false, $buttons_style); 204: } 205: echo implode (', ', array_filter($buttons)); 206: ?> 207: </td> 208: </tr> 209: <?php endforeach; ?> 210: </tbody>
Download
Firma Circolari add-in #1 3.6.12
firmacircolari1-3.6.12.1.zip
Type:
Size: B
Last updated 2018-03-20 08:36:23