• User

    E' possibilepPersonalizzare URL di Joomla (2.5 e 3.0) in questo modo?

    Ciao a tutti,
    ho provato a cercare un pò in giro qualche risposta al mio quesito, ma senza arrivare a nulla di concreto.
    Vi volevo chiedere, con Joomla 3.0 o con il 2.5 è possibile personalizzare gli url tipo nomesito/nomearticolo?
    Mi spiego meglio.
    Nel mio sito attivando le opzioni URL SEF mi trovo in questa situazione (avendo gli articoli collegati alle voci di menu):
    nomesito/nomemenu/nomearticolo
    io invece vorrei un url che fosse nomesito/nomearticolo
    e non posso rinunciare a collegare gli articoli ai menu, perchè devo gestire diversi moduli.
    E' possibile ottenere questa personalizzazione dell'url?
    Grazie
    Mala


  • Moderatore

    Ciao Mala e benvenuta sul Forum GT.
    Questo free sef plugin per Joomla! 2.5 e 3 dovrebbe fare al caso tuo: Direct Alias, extensions.joomla.org/extensions/site-management/sef/23921
    Non l'ho mai testato, il tuo post è l'occasione per farlo. :wink3:

    Francesco


  • User

    Grazie Francesco,
    in settimana lo provo, in passato usavo JoomSef, mi permetteva di fare questa operazione ma però mi causava tanti altri problemi.
    Adesso provo Direct Alias e vi faccio sapere.
    Grazie
    Mala


  • Moderatore

    Ciao Mala,
    un aggiornamento sull'uso dell'estensione Direct Alias per Joomla, che avevo suggerito io stesso.

    Prima notizia: Direct Alias fa egregiamente una cosa importante: consente di personalizzare la struttura dell'URL legata al menu item, in modo da eliminare alcuni segmenti. Una funzione molto utile e apparentmente "vicina" a quanto chiede Mala.

    Seconda notizia: Direct Alias non fa quello che chiede Mala, in quanto è in grado di modificare soltanto le URLs relative ai menu item. Sì, purtroppo ho suggerito l'estensione sbagliata perché Mala ha chiesto di modificare le URLs in generale, non soltanto quelle generate da una voce di menu.

    Spiego con un esempio cosa fa e cosa non fa questo plugin, perché risulta comunque interessante.
    Intanto dico che si tratta di un system plugin e non di un componente, quindi ha un peso non eccessivo e non è troppo invadente; si installa facilmente e non presenta opzioni da backend, quindi basta attivarlo. Ho verificato un buon funzionamento con questa configurazione in Global configurazion > SEO settings:

    Search Engine Friendly URLs: Yes
    Use URL Rewriting: Yes

    Adds Suffix to URL: Yes or No (funziona bene in entrambi i casi)

    Esempio: sito sport con sezione calcio e classifica serie A e serie B

    Ho provato a simulare una situazione di questo tipo: un sito a tema sport con una sezione dedicata al calcio (cioè->creo la categoria Calcio) suddivisa in sottosezioni dedicate alle varie divisioni (cioè->creo due sottocategorie Serie A e Serie B) e per ciascuna divisione presento la classifica, le regole del torneo e lo storico dei risultati per anno ... ma per quello che voglio mostrare mi basta la Classifica (cioe->creo due articoli *Classifica *in ciascuna delle sottocategorie Serie A e Serie B).

    Sul piano dei menu creo una voce principale per il Calcio (ad esempio una category blog) con alias calcio; per le sottocategorie Serie A e Serie B creo due voci di menu "figlie" di Calcio con alias rispettivamente *seriea *e serieb; infine creo una sottovoce di *seriea *con alias *classifica *(singolo articolo *Classifica *della sottocategoria Serie A) e una sottovoce di *serieb *con alias *classifica *(singolo articolo Classifica della sottocategoria Serie B).

    Ricapitolando, per le categorie/articoli si ha (il primo è il titolo, il valore tra parentesi è l'alias):

    Calcio (calcio)
    Calcio > Serie A (calcio > seriea)
    Calcio > Serie A > Classifica (calcio > seriea > classifica)
    Calcio > Serie B (calcio > serieb)
    Calcio > Serie B > Classifica (calcio > serieb > classifica)

    Per quanto riguarda menu e corrispondenti url relative (ometto il dominio) la situazione è la seguente:

    /calcio
    /calcio/seriea
    /calcio/seriea/classifica
    /calcio/serieb
    /calcio/serieb/classifica

    Cosa fa Direct Alias
    Questo plugin agisce sulle URLs generate dal menu (queste sopra) eliminando uno o più segmenti delimitati da slash (in pratica elimina uno o più segmenti dovuti a voci di menu).
    Direct Alias ha quindi la capacità di trasformare l'URL relativa alla category blog della Serie A in questo modo:

    URL senza Direct Alias: /calcio/seriea
    URL con Direct Alias: /seriea

    Cosa potrebbe combinare Direct Alias
    Accorciare un URL come sopra può tornare sicuramente utile e dal mio punto di vista potrebbe essere un fatto positivo qualora fossimo assolutamente certi che *seriea *(Serie A) fosse riferito alla massima divisione del campionato italiano di calcio. Pure ammettendo che così fosse, i problemi ci sarebbero (o potrebbero esserci) comunque.

    L'accorciamento delle URLs relative alle classifiche di Serie A e Serie B porterebbe infatti a questa situazione incresciosa:

    Prima URL senza Direct Alias: /calcio/seriea/classifica
    Prima URL con Direct Alias: /classifica
    Seconda URL senza Direct Alias: /calcio/serieb/classifica
    Seconda URL con Direct Alias: /classifica

    In pratica avremmo due URLs identiche per due contenuti diversi (le classifiche di Serie A e Serie B), con la conseguenza che facendo clic sui link generati dal CMS per raggiungere la classifica di Serie B, l'utente si troverebbe di fatto sempre sulla classifica di Serie A (o viceversa, dipende dalla "posizione").

    Questa situazione negativa si ha qualora si dica a Direct Alias di non aggiungere i segmenti precedenti a tutti i menu item figli, ovvero abilitando l'opzione Not Inherited sul menu item calcio.
    Il problema si verifica perché abbiamo due menu item con lo stesso alias, situazione possibile se consideriamo che "le due classifiche" si riferiscono a sottocategorie diverse, situazione che è stata tradotta a livello di menu inserendo le voci *classifica *come menu item figli di due menu item diversi, cioè *seriea *e serieb: fino a quando nell'URL compaiono *seriea *o *serieb *non ci sono problemi, ma se non compaiono sono dolori.

    Il problema è risolvibile perché Direct Alias presenta non soltanto un'opzione di accorpamento a catena valida per tutti i menu item figli (Not Inherited), ma anche una seconda opzione valida per tutti i menu item genitori (Direct).

    Soluzione
    Possiamo risolvere il problema con questa impostzione delle URLs:

    Calcio: /calcio
    Serie A: /seriea
    Classifica di Serie A: /seriea/classifica
    Serie B: /serieb
    Classifica di Serie B: /serieb/classifica

    Cosa abbiamo fatto qui? Invece di dire al menu item calcio di non aggiungere i segmenti "superiori" a tutti i menu item figli, abbiamo detto ai due menu item Serie A (seriea) e Serie B (serieb) di non presentare i segmenti "superiori" di tutti i menu item genitori: in questo modo dalle URLs scompare il segmento calcio perché è genitore, ma non scompaiono segmenti da *seriea *e *serieb *in poi, cosa che rende uniche le URLs delle due classifiche.

    In prarita Direct Alias presenta due opzioni attivabili per ciascun singolo item menu dal backend:

    1. *Relative *o Direct
      Relative: è il default di Joomla, presenta tutti gli alias dei menu item genitori separati da slash
      Direct: presenta soltanto il proprio alias (quindi elimina gli alias dei menu item genitori)

    2. *Inherited *o Not Inherited
      Inherited: è il default di Joomla, l'alias si aggiunge a tutti i menu item figli
      Not Inherited: l'alias non si aggiunge ai menu item figli

    A mio parere Direct Alias può essere utile ma va impostato da personale esperto che abbia idea della struttura gerarchica dei contenuti e delle implicazioni a livello di configurazione SEO, perché può fare molti danni in mano all'utente finale se questi non è sufficientemente preparato. :vai:


  • User

    Spettacolo è proprio quello di cui ho bisogno, siccome ho un sito con diversi sottomenù mi trovo ad avere url complessi. Ho chieso ad un mio amico programmatore di approfondire in modo che possa avere le competenze per impostarlo.

    Grazie ancora Francesco, la tua risposta è stata eccellente.

    P.S. sono nuovo sul forum, devo fare qualcosa tipo segnalare la discussione come RISOLTA o dare un voto alla risposta?


  • Moderatore

    Grazie Mala,
    la partecipazione è fondamentale, insieme sul Forum GT possiamo fare qualcosa di veramente utile non solo per Joomla. :smile5:
    Se ti va puoi valutare la discussione usando il menu in alto dove c'è scritto "Valuta questa discussione".

    Per qualcunque altra cosa ... condividiamo! :wink3:

    Francesco


  • User

    Ciao Francesco, ho cliccato su "valuta questa discussione" si è aperto il menu a tendina, ho selezionato il giudizio, ma nel momento in cui clicco su "Vota Adesso" non succede nulla.. come se non registrasse il mio voto, ci sono motivi particolari?


  • Moderatore

    @Mala Segnalo allo staff il problema tecnico, grazie. 🙂