Excel - Trimestri uso funzioni DATA, GIORNO e FINE.MESE
Nell'articolo precedente siamo partiti con l'uso della funzione SOMMA.PIU.SE e proseguito con l'aggi
Excel - SOMMA.PIU.SE con Condizione multipla
Se usate Microsoft Office Excel per la vostra contabilità privata o aziendale, vi sarà senz'a
Excel DataPicker - Selezione data con calendario
In questo periodo, dopo aver di nuovo cambiato lavoro, mi sono riaffacciato al mondo di Excel. Ques
Sitemap, cos'è, a cosa serve e come crearne una
Che cos'è una Sitemap? Una Sitemap è un file che fornisce informazioni sulla relazione tra pagine
Joomla - Integrare WhatsApp Sharing Button Generator
Il presente articolo, ci aiuterà ad integrare negli articoli di un sito Joomla! un social button pe
Joomla! - Xmap Cannot use object of type stdClass as array
E' da anni che usate Xmap come estensione per la vostra Sitemap di Joomla! e finora non vi ha dato m
WordPress - Twenty Seventeen Full Width Template
Chi usa il nuovo tema gratuito di WordPress, si è sicuramente trovato di fronte a questo dilemma.
WordPress - Maintenance mode
A tutti coloro che possiedono un sito in WordPress, sarà senz'altro capitato di dover mettere
WordPress - Child Themes, come e perché
Una delle peculiarità di WordPress sono i child themes. Introdotti fin dalla versione 3.0, so
Windows 10 - Testare la batteria del Notebook
A tutti i proprietari di un portatile credo sia passato di notare che la batteria del proprio laptop
Windows 10 - Cancellare la cartella Windows.old
Avete fatto l'avanzamento a Windows 10 e vi siete accorti che nella partizione che ospita il sistema
Windows 10 - Installare phpMyAdmin su IIS Express 10
Nell'ultimo periodo ho studiato come configurare il server IIS Express 10 su Windows 10 per poter fa

Joomla! - Personalizzare il Template: Aggiungere posizioni

google-plus Scritto da .

I file principali di un template

Joomla gestisce la pagina attraverso un modello definito da alcuni file all'interno della cartella del Template in uso. Di solito, se si usano template free, le posizioni in cui è suddiviso il modello è definito nel file index.php.
Può essere, come nel caso di templates più complessi, anche se gratuiti (esempio Bedava) che index.php richiami altri file contenuti in un altra cartella che può prendere il nome di blocks o simili.
Dentro questa folder, vi saranno file con nomi tipo header.php, footer.php o simili che contengono il codice che descrive in maniera specifica una porzione della pagina finale. Quest'ultima, è composta a partire dai file "blocchi" generalmente dal file index.php che comunque resta la pagina principale del Template.
I temi di yoo theme (che come avrete capito, adoro per completezza e facilità d'uso), invece, dentro la cartella layouts, contengono il file layout.php che descrive le posizioni e appunto il layout della pagina base del template.  

Complessità a parte, il principio rimane lo stesso: Uno o più file PHP contenuti nella cartella templates/vostro-template (index.php, layout.php, header.php, footer.php...), delineano la struttura delle pagine del vostro sito.

Per semplificare la spiegazione del concetto legato all'aggiunta di posizioni a un template, che è a tutti gli effetti una personalizzazione avanzata, prenderò a modello un template free Joomla 3.x molto semplice per struttura e che appunto, affida il suo layout principale all'unico file index.php. Il template grauito per Joomla 3 in questione si chiama JF Taman e viene distribuito da JoomFreak solo e unicamente in cambio di una sponsorizzazione su un social network e/o piccola donazione. Per il lavoro svolto, se la meriterebbero.

JF Taman è davvero ottimo: Se lo installate, vi renderete conto che ha grandi potenzialità ma anche diverse pecche. La peggiore di tutte? Scarseggia di posizioni dove piazzare i nostri moduli!
Come ovviare?

Aggiungere nuove posizioni

La struttura di un sito fatto con joomla dipende fortemente dal template, in quanto questi, non solo gli detta la grafica (colori, sfondi etc) ma anche tutta una serie di informazioni come collegamento e bottoni con link ai social network, codice google analytics e atro ancora.  Cosa più importante, detta attraverso le posizioni come verranno distribuiti dentro lo spazio concesso dal browser, i blocchi (moduli) che pubblicheremo e renderemmo visibili nelle varie pagine del nostro sito/blog.

Le posizioni possono infatti essere considerate aree o zone nei quali inserire uno o più moduli. Se la posizione è popolata da più moduli contemporaneamente, si può deciderne l'ordine e la modalità di visualizzazione (verticale o orizzontale).

Potrebbe interessarvi questa lettura:

Joomla! - Anteprima posizioni moduli

Premesso cosa sono le posizioni e capito il loro funzionamento, vediamo più da vicino il loro legame con i moduli:

Gestione moduli

Elenca i moduli già creati, pubblicati e sospesi. A ognuno di essi è assegnata una posizione nel tema - pena la non visualizzazione.

Se infatti si apre da backend Estensioni > Gestione moduli e apriamo un modulo qualunque tra quelli in elenco, sulla destra (joomla 3.x), apparirà il menu a tenda o dropdown menu "Posizione" dal quale sarà selezionabile ogni position disponibile tra i vari template installati sul sito Joomla.

jf taman-module-positions

Come già accennato, ogni tema è unico e ha posizioni diverse per nome e per numero rispetto agli altri. Non vi sono regole precise. I nomi sono decisi dal costruttore.
Alcune denominazioni sono simili, ma possono non corrispondondere in termini di ubicazione nel layout.
Cambiando template predefinito, se non appartengono entrambi allo stesso costruttore (e a volte anche se la marca è la stessa) i moduli non vengono mostrati, oppure mostrati in aree diverse rispetto a quelle del tema precedente.

In questa guida, prenderò a modello JF Taman e ne aggiungerò una posizione nella porzione che sta tra l'header e il main container. La posizione si chiamerà top_content. Si presuppone che si stia lavorando su un sito Joomla 3 già caricato su server e con precaricato Il free template joomla 3.x JF Taman di JoomFreak.com.

Per ragioni di sicurezza, prima di iniziare, raccomando di copiare il template come già spiegato in questo articolo:

Joomla! - Come fare una copia del template

Ciò che viene spiegato qui infatti per quanto utile, se non fatto con la dovuta dovizia, può rendere il template inutilizzabile.

modifica del file templateDetails.xml

Questa modifica serve per avere nel pannello di ogni modulo, nel menu dropdown "Posizione", la nostra nuova posizione in elenco e selezionabile.

  1. Da Backend, andate su Estensioni > Gestione template > Template > Jf_taman Dettagli e File
  2. Aprite il file templateDetails.xml e scorrete fino alla riga 38.
  3. Tra i tag <positions> aggiungete la riga in rosso:
<positions>
    <position>callto</position>
    <position>social</position>
    <position>mainmenu</position>
    <position>search</position>
    <position>logo</position>
    <position>slideshow</position>
    <position>right</position>
    <position>bottom</position>
    <position>bottom-content</position>
    <position>contact</position>
    <position>footer</position>
    <position>showcase</position>
    <position>debug</position>
    <position>top_content</position>
</positions>
  1. Cliccate su Salva

Il nome scelto per la nuova posizione deve essere univoco e non dev'essere già presente nell'elenco delle posizioni già esistenti.

Le posizioni elencate, sono quelle messe a disposizione dal template. Questo ci indica quali posizioni sono disponibili, ma non la loro ubicazione. L'aggiunta di una riga nel file templateDetails.xml non sortisce effetti senza la successiva modifica.

Modifica del file index.php

  1. Da Backend, sempre su Estensioni > Gestione template > Template > Jf_taman Dettagli e File
  2. Aprite il file index.php. Questo è il cuore del template. Il codice HTML e PHP ne disegna l'aspetto.
    <?php if ($this->countModules('name-position')) : ?>
        <div id="miodiv">
            <jdoc:include type="modules" name="name-position" style="xhtml" />
        </div>
    <?php endif; ?>

Nidificati in istruzioni di confronto che verificano la presenza o meno di moduli assegnati alle posizioni, vi sono le istruzioni racchiuse nei tag <jdoc:include type="modules" name="name-position" style="xhtml" />. Queste clausole dettano a joomla di inserire in quell'area tutti i moduli al quale è associata la posizione name-position se e solo se esistono moduli assegnati a quella posizione.

  1. Individuiamo la posizione che vogliamo fare precedere dalla nuova area moduli. Nel nostro caso si trova alla riga 367.
  2. Spostiamo con il tasto invio la riga verso il basso creandoci quindi tra la 366 e la 367 due o tre righe di spazio e incolliamo tra di loro il seguente codice:
    <?php if($this->countModules('top-content')) : ?>
    <div id="jf-top-content" class="jf-grid-12">
        <div class="jf-block">
            <jdoc:include type="modules" name="top-content" style="xhtml" />
        </div>
    </div>
    <?php endif; ?>
  1. Cliccate su Salva

Come si può notare, applico alla posizione lo stesso nome (top-content) prima scritto nel file templateDetails.xml. Al div contenitore della nuova area moduli, applico la classe CSS jf-grid-12. La classe è già esistente e appartiene al template. In quanto responsive, questa classe, sfrutta tutta la larghezza del main container (di solito espressa in dodicesimi). Se si vuole limitarne la larghezza, visionare il file index.php alla ricerca di altre classi CSS con nome jf-grid-XX (XX è il numero) e sperimentarne la funzionalità a frontend fino a ottenere effetto desiderato.
In alternativa, potete sempre creare attraverso il file custom.css creare una classe CSS ad hoc per dettare i dettagli di visualizzazione di questa posizione.
Ma fate attenzione è una cosa da utenti esperti. Raccomando sempre di copiare il template prima di fare modifiche così importanti.

Una volta fatta questa modifica, la nuova posizione è pronta ad essere utilizzata, andate in Estensioni > Gestione moduli e inserite all'interno della nuova posizione un modulo a vostro gradimento, non dimenticandovi di pubblicarlo e assegnarlo alla pagina che andrete a visualizzare come demo.

uso-nuova-posizione

Buona personalizzazione!

Potrebbero interessarvi queste letture:

Joomla! - Personalizzare il Template: CSS
Joomla! - Personalizzare il Template: Width
Joomla! - Personalizzare il Template: Override

{bwomakase size="468x60"}

Se hai gradito l'articolo, condividilo, basta un click:

Commenti   

Antonio
0 #1 Antonio 2016-02-26 21:15
Ciao, sto utilizzanto un template di YOO THEME, ma ho difficoltà nell'aggiungere una posizione al modulo. In prtica mi fermo al primo passaggio xkp il mio INDEX.PHP e praticamente vuoto. Dove mette le posizioni dei moduli? grazie Saluti Antonio I.
Citazione

Aggiungi commento


Codice di sicurezza
Aggiorna

  • logo teoca
  • logo arcotraslochi
  • materexcel collabora
  • koilab japan and tropical fish farm
  • logo flash pulizie
  • revolution srl
  • logo planetkoi small
  • logo elevatori sito
  • logo finiture
  • logo prontopro
  • montaggio mobili trento

Per essere più facile ed intuitivo, il blog fa uso dei cookie, piccole porzioni di dati che consentono di capire come gli utenti navighino e ne visualizzino le pagine. I cookie non registrano alcuna informazione personale sull'utente ed eventuali dati identificabili non verranno memorizzati. La nostra Privacy Policy è cambiata (11/09/2019): Ti invitiamo a prenderne visione. Oppure visiona la nostra Cookie Policy (aggiornata il 17/10/2019):