Custom Back - End Configuration in Magento

In questo tutorial, mostrerò la configurazione del modulo personalizzato nel back-end di Magento. È sempre utile fornire una serie di opzioni configurabili del modulo nel back-end, che consente agli amministratori di configurare facilmente le impostazioni specifiche del modulo. Esamineremo il processo di impostazione della configurazione del modulo creando un modulo personalizzato in Magento.

Introduzione alla configurazione personalizzata in Magento

Come sviluppatore, durante il processo di creazione di moduli personalizzati si potrebbe pensare che sarebbe bello se si potesse trasferire il controllo di alcune impostazioni specifiche del modulo al back-end. Magento ti consente di ottenere questo risultato utilizzando un sistema di configurazione basato su file XML. Hai solo bisogno di impostare i file secondo le convenzioni di Magento, e saranno raccolti automaticamente in modo magico! Nella maggior parte dei casi, è necessario gestire numerose impostazioni configurabili fornite dai moduli principali durante la configurazione del negozio front-end di base.

Presumo che tu abbia familiarità con il processo di creazione del modulo di base in Magento. Ecco un bell'articolo, se vuoi saperne di più sui moduli personalizzati in Magento. Detto questo, Magento segue la convenzione sul paradigma di configurazione, che dovrebbe rendere le cose più facili da capire se sei un novizio del processo di sviluppo del modulo personalizzato.

Creare un modulo personalizzato per fornire una configurazione personalizzata

Per il corso di questo tutorial creerò un modulo personalizzato di base chiamato "CustomConfig" che fornisce la configurazione back-end sotto Sistema> Configurazione menu. Ecco l'elenco dei file richiesti per la configurazione desiderata:

  • app / etc / modules / Envato_All.xml: È un file utilizzato per abilitare il nostro modulo personalizzato.
  • app / code / local / Envato / CustomConfig / etc / config.xml: È un file di configurazione del modulo.
  • app / code / local / Envato / CustomConfig / etc / system.xml: È un file che dichiara le opzioni di configurazione per il nostro modulo.
  • app / code / local / Envato / CustomConfig / Modello / Options.php: È un file di modello che fornisce le opzioni per determinati elementi di configurazione della configurazione.
  • app / code / local / Envato / CustomConfig / Helper / Data.php: È un file utilizzato dal sistema di traduzione Magento.

Configurazione dei file

Per cominciare, creeremo un file di abilitazione del modulo. Crea un file "app / etc / modules / Envato_All.xml" e incolla i seguenti contenuti in quel file. Abbiamo usato "Envato" come spazio dei nomi del nostro modulo e "CustomConfig" come nome del nostro modulo. Abiliterà il nostro modulo "CustomConfig" per impostazione predefinita.

    vero Locale   

Successivamente, dobbiamo creare un file di configurazione del modulo. Crea "app / code / local / Envato / CustomConfig / etc / config.xml" e incolla i seguenti contenuti in quel file.

    0.0.1      Envato_CustomConfig_Helper     Envato_CustomConfig_Model              Sezione di configurazione personalizzata           

Dovresti avere familiarità con il modello e la dichiarazione della classe helper secondo le convenzioni di Magento. Certo, il  il tag è nuovo per te, il che è qualcosa di cui ci occupiamo nel contesto di questo tutorial. Analizziamo ciascun tag in dettaglio per capire cosa rappresenta.

Il il tag è usato per definire le risorse del lato admin. Nel nostro esempio, la pagina di configurazione per il nostro modulo è una risorsa. Inoltre, abbiamo usato il  tag per avvolgere a tag, il che significa che sarà accessibile solo agli utenti autenticati. 

Il prossimo paio di tag sono usati per definire il percorso della nostra pagina di configurazione back-end. Quindi il percorso della nostra pagina di configurazione sembra "admin / system / config / customconfig_options". Certo, l'ultimo tag dovrebbe essere unico in modo che non sia in conflitto con altre estensioni.

Andando avanti, definiamo il file più importante, "system.xml". Crea "app / code / local / Envato / CustomConfig / etc / system.xml" e incolla i seguenti contenuti in quel file.

     1      customconfig testo 1 1 1 1    testo 1 1 1 1    testo 1 1 1 1 Esempio di campo di testo.      testo 2 1 1 1    selezionare customconfig / opzioni 1 1 1 1 Esempio di campo selezionato.    radio customconfig / opzioni 2 1 1 1 Esempio di campo radio.    selezione multipla customconfig / opzioni 3 1 1 1 Esempio di campo multiselect.       

Come avrai intuito, questo file è responsabile della visualizzazione di una pagina di configurazione del nostro modulo nel back-end. Diamo uno sguardo più da vicino ad alcuni dei tag importanti in quel file.

Il il tag viene utilizzato per definire le schede che verranno visualizzate sul lato sinistro della pagina di configurazione. E il il tag è usato per definire le sezioni in ciascuna scheda. 

Proviamo a capirlo attraverso un esempio. Vai a Sistema> Configurazione nel back - end di Magento. Noterai che ci sono diverse schede come Generale, Catalogo, Clienti, eccetera. 

Sotto ogni scheda, vedrai anche diverse sezioni. Ad esempio, sotto il Avanzate tag, ci sono Amministratore, Sistema, Avanzato e Sviluppatore sezioni. Nel nostro caso, avremo un Impostazioni di configurazione personalizzate sezione sotto il Scheda di configurazione personalizzata.

Successivamente, usiamo il  tag per raggruppare campi di configurazione simili insieme. Ad esempio, desideri visualizzare i campi relativi alle immagini e i campi relativi all'email in diverse sezioni. Per questo, abbiamo definito e tag.

Infine, avvolgiamo i campi di ciascuna sezione con il  etichetta. Nel nostro esempio, abbiamo fornito un campo di testo sotto il campo "Sezione Uno", mentre altri campi come la casella di selezione, il pulsante di opzione e la selezione multipla sono disponibili nel campo "Sezione due". Questo è tutto per il file "system.xml".

Successivamente, creiamo un file di modello "app / code / local / Envato / CustomConfig / Model / Options.php".

1, 'label' => 'One'), array ('valore' => 2, 'etichetta' => 'Due'), array ('valore' => 3, 'etichetta' => 'Tre'), array ('value' => 4, 'label' => 'Four')); 

Niente di eccezionale qui: è solo usato per alimentare opzioni per un campo modulo radio e selezionare il campo modulo nel modulo di configurazione.

Infine, dovremo creare il file "app / code / local / Envato / CustomConfig / Helper / Data.php" solo per assicurarci che il sistema di traduzione di Magento funzioni correttamente. È quasi un file vuoto, ma dovrebbe essere lì secondo le convenzioni!

Abbiamo finito con l'installazione dei file. Nella prossima sezione, controlleremo come appare nel back-end di Magento.

Cammina attraverso il back-end per testare la configurazione personalizzata

Vai al back-end di Magento e cancella tutte le cache. Può essere raggiunto andando a Sistema> Gestione cache

Ora vai Sistema> Configurazione per aprire la pagina di configurazione. Dovresti notare SCHEDA PERSONALIZZATA DI CONFIGURAZIONE sul lato sinistro della pagina. Sotto questo, il Impostazioni di configurazione personalizzate link è disponibile, e cliccando su si aprirà una pagina di configurazione per il nostro modulo. Se non riesci a vederlo, prova ad uscire dalla sezione di amministrazione e ad accedere di nuovo.


È un'interfaccia dall'aspetto piacevole che funziona fuori dalla scatola, vero? Puoi giocare un po ', compilare il modulo e fare clic sul Salva config pulsante per confermare le modifiche e Magento gestirà il resto.

Per accedere ai valori dei parametri di configurazione nel codice, è possibile utilizzare getStoreConfig metodo statico. Ad esempio, è possibile recuperare il valore di custom_field_one parametro usando la seguente sintassi:

Mage :: getStoreConfig ( 'customconfig_options / section_one / custom_field_one');

La sintassi è abbastanza semplice: è necessario utilizzare il pattern "nome_scelta / nome_gruppo / nome_campo" come definito nel file system.XML.

Conclusione

La configurazione del sistema di amministrazione è una delle parti più potenti e utili di Magento. Magento ti consente di collegare i parametri di configurazione personalizzati molto facilmente, grazie all'estensione di uno dei più potenti sistemi di e-commerce! Condividi i tuoi pensieri usando il feed qui sotto!