Translate

itzh-CNenfrdejakoptrues
Tags: ,

Come creare una custom ErrorPage 404 in Helix3

guida helix3 banner custom error page 404

 

Tutti gli internauti almeno una volta nella loro esperienza sul web si sono trovati di fronte all' Error Page 404 di un sito, magari per un errore di digitazione o per una pagina a cui è stato modificato l'alias dell'url.

404 Helix3 joomla tutorial Error Page Helix3

Il Framework Helix3 fornisce una pagina 404 di default  abbastanza customizzabile dalla dashboard: possiamo infatti sostituire il logo Helix3 con il nostro logo o modificare il background della pagina.

404 Helix3 joomla tutorial Error404 DashboardPer fare questo rechiamoci in Estensioni > Template > Stili, clicchiamo su shaper_helix3 – Predefinito: accediamo così alla dashboard di Helix3. Nella prima schermata, scorriamo la pagina fino alla sezione ERROR PAGE, dove possiamo inserire il nostro logo e/o un’ immagine di background.  Questa customizzazione però non ci può soddisfare, poiché Helix ci restituisce una pagina senza menu di navigazione, né altra possibilità di aiutare l’utente a riposizionarsi in una nuova sezione del sito, quindi non è una soluzione ottimale per favorire la navigabilità.

Vediamo insieme allora come modificare il Framework Helix3 in Joomla per reindirizzare ad una custom Error 404 page.

Nota bene che tale procedimento è simile per la maggior parte dei template di Joomla.

404 Helix3 joomla tutorial Custom PagePer prima cosa rechiamoci nella sezione Contenuti > Articoli e creiamo un nuovo articolo. Potete crearne uno che vi piace, aggiungere widgets per reindirizzare l’utente.

Ora dobbiamo ottenere una url dell’articolo appena creato.

Ci sono due modi per farlo: il primo è inserire l’id del vostro articolo (che trovate sempre nella sezione articoli, nella colonna Id) in questa url:

NomeTuoDominio/index.php?option=com_content&view=article&id=id_articolo

Il secondo modo è ancora più intuitivo e soprattutto SEO friendly: consiste nell’associare l’articolo ad una voce menu nascosta.

404 Helix3 joomla tutorial Menu ErrorRechiamoci dunque in Menu > MainMenu (oppure se non volete utilizzare il MainMenu potete crearne uno nuovo per tutte le hidden pages). Clicchiamo poi su Nuovo e diamo un titolo alla nuova voce di menu, tipo Error page 404. Nella casellina “Tipo voce menu” scegliamo “Singolo articolo” e cerchiamo quello che abbiamo precedentemente creato.

404 Helix3 joomla tutorial opzioni linkRechiamoci poi in “Opzioni link” e mettiamo la spunta “No” sia a “Aggiungi titolo menu” sia a “Visualizza nel menu” così da rendere la nuova voce nascosta. Facciamo “Salva e chiudi” e appuntiamoci l’alias.

Per accedere all’ url della nostra pagina Error appena creata modifichiamo con i nostri dati il seguente link e incolliamolo nella barra: NomeTuoDominio/AliasErrorPage.

404 Helix3 joomla tutorial error phpAdesso rechiamoci in Estensioni > Template > Lista Template > Shaper_helix3 Dettagli e File. Sulla sinistra trovate tutte le cartelle e i file di Helix3: a noi interessa error.php.

404 Helix3 joomla tutorial codiceClicchiamoci sopra così da visualizzare il codice. Subito dopo la stringa defined ('_JEXEC') or die ('resticted aceess'), incolliamo questa stringa di codice, sostituendo AliasErrorPage con l’alias della nostra Error Page:

(P.S. fate attenzione a non cancellare gli apici, quando modificate la stringa di codice)


    /** @var JDocumentError $this */
    if (($this->error->getCode()) == '404') {
    header('Location: /AliasErrorPage');
    exit;
    }
  

Il gioco è fatto! Ora non resta che provare a digitare un alias errato per testare la modifica.

 

Add a comment

Loadmodule in Joomla!® 3.4

Inserire un modulo in un articolo di Joomla!® è una procedura comune ed in alcuni casi indispensabile per ottenere una migliore contestualizzazione.
Esempi comuni sono l'inserimento di gallerie fotografiche, moduli di login o form da compilare all'interno di articoli.
I comandi che utilizzo in Joomla!® per inserire un modulo in un contenuto sono due:
loadmodule
loadposition

loadmodule - Inserire un modulo in un contenuto di Joomla!®

loadmodule
richiama un ben preciso modulo utilizzando un nome dato dal sistema (tra poco vedremo come ricavarlo) o in aggiunta, anche un "Title" dato da noi.
loadposition
richiama un modulo utilizzando un nome di posizione modulo che può essere anche creato appositamente per visualizzare un particolare modulo. Leggi il tutorial dedicato a loadposition.

I due sistemi funzionano bene entrambi, starà a noi scegliere di volta in volta quale sia più comodo all'uso che dobbiamo farne.
Vediamo nel dattaglio come vanno implementati.

Premessa: Plugin "Content - Load Modules" abilitato

Prima di tutto accertiamoci che il plugin "Content - Load Modules" sia abilitato.
Di solito lo è di default ma per esserne sicuri basta andare su Extensions --> Plugin Manager e filtrare con "load"
La spunta verde segnala che il plugin è attivato.

plugin Content-Load Modules

Loadmodule - Joomla!® 3.x

Il comando loadmodule è forse meno usato del loadposition per la difficoltà a volte nel reperire il nome corretto del modulo da inserire nel richiamo, soprattutto se si tratta di un modulo di terze parti. La sintassi corretta per il suo inserimento è:

Stringa loadmodule

Prima parte: {loadmodule... }

Tra parentesi graffe è un normale richiamo di un plugin in Joomla!®

Seconda parte: mod_nome

È il nome "di sistema" del modulo, vediamo come ricavarlo nei due casi: modulo nativo o modulo di terze parti.

Modulo nativo di Joomla!®

Se il modulo da richiamare è tra quelli presenti nativamente in Joomla!® qui ne elenco alcuni tra i più comuni:

mod_articles_latest
mod_articles_popular
mod_articles_category
mod_articles_categories
mod_banners
mod_custom
mod_feed
mod_login
mod_related_items
mod_tags_popular

Modulo di terze parti

Se invece cerchiamo un modulo di terze parti il sistema che utilizzo io è questo:
- entro nel database con phpMyAdmin
- cerco nella colonna Structure la tabella xxxxx_extensions
- clicco su Browse
- scorro la colonna name fino a trovare il modulo che mi interessa e mi ricavo il corrispondente valore della colonna element.
Quest'ultimo (nell'esempio mod_roksprocket) sarà il valore da inserire nel richiamo dopo loadmodule.
Nota: i moduli potrebbero essere in ordine di "extension_id" quindi scorrete tutta la colonna "element" per essere sicuri di trovare quello che cerchiamo.

colonna element

Terza parte (facoltativa): titolo modulo

Anche se non obbligatorio, vi consiglio di aggiungere al richiamo anche l'ultimo parametro, il titolo.
Così facendo, anche in presenza di più moduli dello stesso tipo, saremo certi che venga mostrato quello che ci interessa.
Questo è semplicemente il titolo del modulo, quello che vediamo dal backend nel pannello Module Manager (Gestione Moduli).

titolo modulo

loadmodule - Esempi pratici

Facciamo ora un esempio richiamando da un articolo il modulo di login (mod_login), che è nativo di Joomla!®
Nell'esempio sotto (foto di sinistra) è stato creato un articolo dal titolo "Loadmodule" e in basso sotto al testo, inserito il richiamo.
Nell'immagine di destra potete vedere il risultato.
Se il modulo è unico e non può essere confuso con un altro, possiamo omettere l'inserimento del titolo e scrivere nell'articolo:

Stringa loadmodule

esempio con mod_login

Altro esempio, questa volta richiamiamo un modulo Custom o HTML Personalizzato (mod_custom come nome di sistema) creato da noi dal titolo "Mio Modulo"
Nota: dato che il modulo viene chiamato utilizzando tipo e titolo, la posizione non è importante e per questo non è stata impostata.

creazione modulo custom

Andiamo nell'articolo di prima e questa volta aggiungiamo il richiamo:

Stringa loadmodule con titolo

ed ecco il risultato finale:

esempio con mod_custom

Autore: ForWeb Solutions

 

Add a comment
Tags:

loadposition - Inserire un modulo in un articolo di Joomla!®

loadposition
richiama un modulo all'interno di un contenuto di Joomla!® specificando la posizione di pubblicazione a lui assegnata
loadmodule
che ho trattato in questo precedente tutorial ci permette di richiamare un modulo specificando il suo nome e titolo.


Attenzione, affinchè entrambi i metodi diano il risultato voluto è necessario che un particolare plugin di Joomla!® sia abilitato.
Il plugin in questione è "Content - Load Modules" e per verificarlo basta entrare in:
Gestione Plugin (Extensions --> Plugin Manager), filtrare con "load" e controllare che ci sia la spunta verde accanto al plugin.

Loadposition plugin abilitato

loadposition - Joomla!® 3.x

La stringa da inserire all'interno dell'articolo è questa:

stringa loadposition

Dove "miaposizione" sarà il nome che avremo assegnato alla posizione di pubblicazione del modulo.
Nonostante nulla ci vieti di utilizzare delle posizioni esistenti e già previste dal template (e quindi presenti nel menù a tendina), la cosa diventa più interessante quando sfruttiamo la possibilità che Joomla!® ci offre di inserire manualmente qualsiasi nome nel campo Position. Il comando loadposition richiama tutti i moduli pubblicati nella posizione specificata, ecco spiegato il vantaggio nel creare una posizione "nuova".
Così facendo comparirà solo il modulo voluto (l'unico ad essere pubblicato in quella posizione) all'interno del nostro articolo.

Mi spiego meglio con un esempio. Creiamo un modulo Custom HTML (HTML Personalizzato), avendo cura di:

  • impostare una posizione (solo lettere minuscole!) non presente nell'elenco a tendina digitandone il nome e poi dando Invio
  • accertarsi che il modulo sia pubblicato in "tutte le pagine" (così da vincolare la sua presenza alla sola posizione)

Loadposition, creiamo un modulo custom

A questo punto in un'articolo di Joomla!® inseriamo il richiamo al modulo utilizzando la stringa:

stringa loadposition

ed ecco il risultato:

Loadposition modulo nel contenuto

Autore: ForWeb Solutions

Add a comment
Tags:

Modulo di contatto con il Check per accettare l'informativa sulla Privacy

Finalmente anche con il modulo di contatto nativo di Joomla è ora possibile inserire il controllo per il consenso all'informativa sulla Privacy. In questo articolo non chiariremo gli aspetti legali e normativi sulla questione se sia poi necessario o meno questo consenso, ma andiamo a scoprire come utilizzare i nuovi campi aggiuntivi, arrivati con Joomla 3.7, per implementare questa funzionalità.


Ovviamente abbiamo già creato il nostro contatto e relativa voce di menu, ma non è presente il controllo per il consenso all'informativa sulla Privacy. Procediamo quindi a creare il gruppo di campi aggiuntivi che ospiterà il Check del form di contatto.
Dal menu Componenti --> Contatti --> "Gruppi di campi aggiuntivi" -->  selezioniamo Modulo email del contatto
e dal tasto "Nuovo" andiamo a creare il gruppo dal titolo "Informativa sulla Privacy".

privacy01
Sempre nel componente Contatti andiamo in "Campi aggiuntivi" -->  selezioniamo Modulo email del contatto


e dal tasto "Nuovo" andiamo a creare il campo aggiuntivo con il titolo: Check Privacy
come tipo scegliamo "Checkboxes", lo associamo in "Gruppo del campo aggiuntivo" al precedentemente creato "Informativa sulla Privacy";
in "Etichetta" inseriamo "Accetto", nella "Descrizione" scriviamo "Dichiaro di aver letto e di accettare il testo della Informativa sulla Privacy"; il parametro "Obbligatorio" deve essere impostato su ;
in "Valori checkbox" premere sul tasto verde con il segno + così da creare una prima riga di valori vuota. Inseriamo in "Testo" --> "Dichiaro di aver letto e di accettare il testo della Informativa sulla Privacy";
ed in valore "";
salvare premendo sul tasto "Salva";
nel TAB  "Permessi" per il gruppo "Public" impostiamo "Modifica valore campo aggiuntivo" su "Consentita".

privacy04
Salviamo ed ora il Check è visibile e funzionante, ma ci manca il link all'informativa vicino al Check. Per completare l'opera andiamo quindi a creare un nuovo campo aggiuntivo ma per la zona dei dettagli.
Da "Campi aggiuntivi" --> selezioniamo Dettagli del contatto 

privacy05
e dal tasto "Nuovo" andiamo a creare il campo aggiuntivo con il titolo: Informativa
come tipo scegliamo "textarea";
in "Valore predefinito" inseriamo questo esempio di codice HTML "<a href="/privacy.html" rel="alternate">Privacy</a>" (da modificare con l'indirizzo alla vostra pagina con le informazioni sulla privacy)
nel TAB "Opzioni" impostiamo il parametro "Visualizza campo" su "Dopo il contenuto".

privacy06

Salviamo ed il gioco è fatto, il modulo di contatto prevede ora l'obbligo della spunta sulla conferma al consenso dell'informativa.

risultato privacy01


Io in questo esempio ho usato dei testi standar ma ovviamente potere sostituirli e migliorarli.


Effettuando questo esercizio abbiamo compreso la logica dei due ambienti su cui si possono creare i campi aggiuntivi nel componente contatti. Un ambiente è dedicato ai campi aggiuntivi che si vanno ad aggiungere a quelli presenti nel form di contatto (Modulo email del contatto), ed un ambiente riferito all'area delle informazioni sul contatto. E' quindi importane decidere ed impostare la corretta area di destinazione del campo aggiuntivo prima di crearlo.

 
Autore:
 
Add a comment

Pagina 1 di 16