• CMS vBulletin inserire icona vicino ai link presenti nel submenu

    In questo tutorial vedremo come inserire una icona identificativa vicino al nome sezione presente nella home page del CMS come da immagine.



    Per ottenere quanto in precedenza descritto è necessario variare un file del core di vbulletin ed effettuare una piccola modifica al template: vbcms_navbar_link.

    Procediamo con la variazione del vbcms_navbar_link

    aprite il template vbcms_navbar_link e ricercate:

    Codice PHP:
    <li><a href="{vb:raw link.url}">{vb:raw link.title}</a></li
    sostituite con

    Codice PHP:
    <li><a href="{vb:raw link.url}"><img src="{vb:stylevar imgdir_cms}/iconesez/cms_sez_{vb:raw link.id}_16.png">&nbsp;{vb:raw link.title}</a></li
    questa è l'unica modifica da fare al template, pertanto si procede con il salvataggio.

    Come avrete potuto notare abbiamo aggiunto del codice html per il richiamo delle immagini.

    Analizziamo la parte di codice aggiunta

    Codice PHP:
    <img src="{vb:stylevar imgdir_cms}/iconesez/cms_sez_{vb:raw link.id}_16.png">&nbsp
    {vb:stylevar imgdir_cms}/iconesez/ percorso dove verranno caricate le immagini
    cms_sez_ è il prefisso che identificherà le nostre immagini
    {vb:raw link.id} è la parte variabile della classe e questa identifica in modo univoco la sezione
    _16 è una costante da me utilizzata per identificare i px dell'immagine
    .png è l'estensione della icona

    Il nome del file icona è un nome composto dal prefisso cms_sez_ e il valore della variabile linkid e la parte fissa _16.png, un esempio di nome file potrebbe essere cms_sez_1_16.png.

    A questo punto necessita variare il file core vBulletin, ricercate il file navbar.php presente al seguente percorso /packages/vbcms/

    aprire il file navbar.php con un programma di editor (es. notepad++ o blocco note)

    Cercate

    Codice PHP:
            // create navlinks for published nodes
            
    $links = array();
            
    $route = new vBCms_Route_Content();

            foreach ((array)
    $navnodes AS $navnode)
            {
                if (
    $navnode->isPublished() AND $navnode->canView())
                {
                    
    $route->node $navnode->getUrlSegment();
                    
    $links[] = array(
                        
    'title' => $navnode->getTitle(),
                        
    'url' => $route->getCurrentUrl(),
                    );
                }
            } 
    sostituite con

    Codice PHP:
            // create navlinks for published nodes
            
    $links = array();
            
    $route = new vBCms_Route_Content();

            foreach ((array)
    $navnodes AS $navnode)
            {
                if (
    $navnode->isPublished() AND $navnode->canView())
                {
                    
    $route->node $navnode->getUrlSegment();
                    
    $links[] = array(
                        
    'title' => $navnode->getTitle(),
                        
    'url' => $route->getCurrentUrl(),
                        
    'id' => $navnode->getNodeId()
                    );
                }
            } 
    nel nuovo codice è stata aggiunta una virgola dopo 'url' => $route->getCurrentUrl() e aggiunta questa stringa
    Codice PHP:
    'id' => $navnode->getNodeId() 
    il code inserisce l'id della sezione nell'array richiamato successivamente nel template vbcms_navbar_link.

    Attenzione questa modifica dovrà essere fatta ad ogni aggiornamento della vostra board in quanto il file verrà sovrascritto.

    Salvate il file e ricaricatelo nel vostro spazio web (nella medesima posizione)


    Fino ad ora abbiamo visto cosa variare nel template, come costruire il nome dei file icone e come variare il file navbar.php, ma non abbiamo visto come recuperare il valore link.id

    Dal pannello admin andate nel menù – vBulletin CMSSection Manager, sulla destra avrete tutte le sezioni, se vi posizionate sopra ad una sezione con il puntatore del mouse sulla parte bassa del vostro browser comparirà un link simile a questo http: // localhost/vb/admincp/cms_content_admin.php?do=filter&sectionid=45&contenttypeid=23.
    La parte a noi necessaria per identificare della sezione in modo univoco è il valore subito dopo sectionid= in questo caso 45

    Immagine ridotta


    Questo è tutto buona personalizzazione.


    Se questo articolo ti è tornato utile o ti è piaciuto segnalalo su facebook e su google + attraverso i pulsanti che trovi all'inizio.
    Grazie per la collaborazione.
    Commenti 2 Commenti
    1. L'avatar di Asterix
      Asterix -
      Questo tutorial puo' essere utilizzato anche per sostituire la descrizione link con dei pulsanti o icone, per far cio' il codice da utilizzare nel template vbcms_navbar_link è

      Codice PHP:
      Only registered members can view PHP Code
    1. L'avatar di hg_snake
      hg_snake -
      Perfetto, proverò la modifica.
      Grazie mille
Cookies:direttiva 2009/136/CE (E-Privacy)

Il sito utilizza cookies propri e di terze parti per maggiori informazioni faq - Termini di servizio - Cookies
Il forum non puo' funzionare senza l'uso dei cookies pertanto l'uso della community è vincolato dall'accettazione degli stessi, nel caso contrario siete pregati di lasciare la community, proseguendo la navigazione acconsenti all’uso dei cookie