Hai faticato due e più anni per costruire un sito "massiccio", di quelli con più di 10000 contenuti. Hai installato modu
Leggi tutto...A due settimane di distanza dal precedente aggiornamento, il team di Joomla!® annuncia il rilascio della versione 3.8.1
Leggi tutto...Per facilitare l' indicizzazione delle pagine di un nostro sito Joomla è indispensabile utilizzare un componente che cre
Leggi tutto...Tra le domande che ricevo con una certa regolarità sicuramente "quante pagine dovrei costruire per il mio sito web?" o "
Leggi tutto...Questo è un trucco semplice e già abbastanza noto che ci permette di vedere le posizioni moduli di un template senza dover accedere al pannello manager.
Sicuramente molti già lo conoscevano - se ne è parlato al JoomlaDay 2009 - , ma non tutti conoscono ancora questa procedura. Una cosa è certa... servirà tantissimo agli sviluppatori che, incontrando un joomla, useranno il comando ?=tp1 spessissimo; diventerà quasi un vizio!!
Il trucco è semplicemente, infatti basta aggiungere /?Tp=1 dopo l'url del sito su cui vogliamo vedere il nome della posizioni blocco modulo. Lascio qui un esempo per comprendere appieno il funzionamento:
http://joomla.org/?tp=1
Per esempio, chi possiede un sito che è raggiungibile indicando l’url:
http://www.nomedominio.tdl
e
http://nomedominio.tdl
potrà evitare che la stessa pagina venga indicizzata in ambedue le forme. Basta infatti utilizzare questo tag e stabilire come vogliamo vengano indicizzate le pagine del nostro sito - ad esempio, con o senza il WWW -.
Il codice da inserire tra i tag head è tipo questo
<link rel="canonical" href="/sitohome" />
Dove "sitohome" è l'url che abbiamo scelto come nostra home. Questo comunica ai motori di ricerca che "sitohome" è la pagina principale da prendere come riferimento nel caso in cui siano presenti altre pagine con gli stessi contenuti.
Sono stati già sviluppati appositi Plugins per i più diffusi Cms, e Joomla non è da meno: Canonical URL Module è quello che fa per noi.
Sembrerà banale, un procedimento inutile e senza nessun motivo per utilizzarlo, ma non è così!!!
Uso il Sef per Joomla, precisamente sh404sef con qualche altra cosina; un componente, sh404, che ritengo il migliore in questo ambito. Ma visto che mi faccio sempre molti flash, ho avuto da sempre il pallino di voler linkare le mie pagine interne con le url native di Joomla, quelle con tutti i paramentri e che non "moriranno mai". Può succedere un giorno, che per vari motivi, tra cui al momento mi viene in mente l'abbandono da parte degli sviluppatori di Sh404, che sarò costretto ad abbandonare questo fantastico componente per una qualche vulnerabilità che verrà a crearsi.
Ho pensato a cosa potesse succedere, e sono entrato nel panico più assoluto visto il lavoro perso di posizionamento e ottimizzazione che faccio abitualmente senza più nemmeno farci caso. Ma come potete intendere, questo lavoro è fatto su una Url, quella creata dal componente. E se un giorno queste url non esistessero più? Tragedia!!!
Ma Joomla è fantastico anche perchè.... qualcuno ha pensato prima di te, e magari ha pure risolto. Ed è questo il caso.
Ho trovato un modulo, si chiama praiseurl, e indovinate cosà fa? Fantastico, incredibile, impensabile. Ti mostra viaggiando nel sito le pagine non sef potendole così, se ce ne fosse bisogno, linkarle come non sef. Il modulo non lo vedrà nessuno perchè verrà dato come permesso Special, nascondendolo dunque a tutti i visitatori e utenti con poteri più bassi. Ovviamente il componente sh404, anche inserendo le Url native, le reindirizzerà correttamente e quindi i visitatori ed i motori non si accorgeranno di niente. Il link sarà uguale come destinazione, punterà alla stessa pagina, solo che sarà non sef.
Possiamo decidere di eliminare del tutto il modulo andando in estensioni->installa/disistalla. Qui cliccleremo su "moduli" e visualizzeremo tutti i moduli istallati nel nostro joomla. Spuntiamo la casella ad esso riferito e cliccando il pulsante "rimuovi", in alto a destra.
Viene qui visualizzato l’elenco dei moduli presenti nel sito. Di ogni modulo possiamo impostarne la posizione nel nostro template. Le posizioni possono essere pensate come aree in cui possiamo inserire uno o più moduli, inserirli verticalmente o orizzontalmente.
Ogni template, essendo unico, gestisce le posizioni all’interno della pagina in modo differente, senza una regola precisa tranne la corrispondenza di alcune definizioni come “left”, "right" “top”, “footer”. Ma queste definizioni non corrispondono in tutti i template alla stessa posizione. Cambiando template a volte non compaiono dei moduli, oppure compaiono ma in posizioni completamente diverse da quelle del template precedentemente impostato come predefinito.
Per vedere quali sono le posizioni che vengono fornite da un template apriamo la pagina “Gestione template” e clicchiamo su “Anteprima” . Verrà mostrata una pagina in cui, sovrapposto al template, viene mostrata una maschera che elenca le posizioni utilizzate da ogni modulo per il template in uso.
Apriamo il nostro client FTP e colleghiamoci al server in cui risiede fisicamente il nostro Joomla. Selezioniamo la cartella templates ed apriamo la directory del template in uso. Scarichiamo sul nostro pc ed apriamo il file templateDetails.xml per studiarne la struttura: scorriamo fino a trovare il tag <positions>.
Le posizioni identificate dal file sono quelle utilizzabili all’interno del template. Questo ci indica quali posizioni possiamo usare, ma non dove vengono utilizzate. Per capire dove queste vengono visualizzate ed il loro funzionamento, apriamo il file index.php. Troviamo all’interno pezzi di codice HTML e PHP; speciali istruzioni definite come jdoc:include
Questa istruzione indica a Joomla di includere tutti i moduli che hanno come posizione “user4”. Per modificare dove deve essere visualizzata una posizione è sufficiente agire nel file index.php e nel CSS; si raccomanda prudenza perchè basta una piccola distrazione e possiamo "distruggere" il nostro bel template. Per questo si raccomanda, prima di ogni modifica, di salvare il file e conservarlo in caso di emergenza.
Per aggiungere una nuova posizione invece apriamo il file templateDetails.xml ed aggiungiamo una nuova voce <position>, definendola con un nome univoco non in uso. Ora all’interno del file index.php individuiamo la posizione dove verrà aggiunta la posizione ed inseriamo una linea di codice come questa:
<?php if ($this->countModules('nomeposizionecreata')) : ?>
<div id="miodiv">
<jdoc:include type="modules" name="miaposizione" />
</div>
<?php endif; ?>
A questo punto non resta che applicare a questa posizione i corretti stili CSS in modo che venga visualizzata nella giusta posizione e nel modo da noi desiderato. Si raccomanda sempre la massima prudenza. L'errore è dietro l'angolo quando tocchiamo questi tipi di file.
Abbiamo 13 visitatori e nessun utente online