Ho un nuovo lavoro in cui lavoro rigorosamente su Magento ogni giorno. Non ho precedenti esperienze con Magento, quindi finora è stata una sfida a dir poco!
Lasciatemi spiegare brevemente l'estensione che stiamo costruendo.
Ci permetterà di mostrare una finestra popup / modale. Il contenuto HTML di Modal verrà archiviato in
aStatic Block
PAGINA AMMINISTRAZIONE
Quindi il pannello di amministrazione è costituito da una nuova scheda in System/Confuration/NUOVA SCHEDA
Il pannello di amministrazione consente di selezionare in un elenco a discesa in quella NUOVA PAGINA TAB il valore predefinito Static Blockda utilizzare per queste sezioni ...
HOME PAGEoppure HOME PAGE w/Items in Shopping Cart
ALL CATEGORY PAGESoppure ALL CATEGORY PAGES w/Items in Shopping Cart
ALL PRODUCTS PAGESoppure ALL PRODUCTS PAGES w/Items in Shopping Cart
ALL CMS PAGESoppure ALL CMS PAGES w/Items in Shopping Cart
SHOPPING CART PAGEoppure SHOPPING CART PAGE w/Items in Shopping Cart
OVER-RIDES DI DEFAULT
Successivamente, le pagine CMS , CATEGORIA e PRODOTTO effettive consentono tutte le stesse impostazioni della pagina del Pannello di amministrazione, tranne per il fatto che consentono di impostare STATIC BLOCKuna per elemento e superare l'impostazione predefinita che avevamo nelle impostazioni dell'amministratore sopra .
Finora abbiamo finito il lato amministrativo dell'estensione. Abbiamo tutte le schede di amministrazione per ogni sezione ... prodotto, categoria, CMS e pagina di configurazione.
Il prossimo passo sarà aggiungere alla stessa estensione e fare un Static Blockinserimento nella pagina. Questo Static Blocksarà responsabile per ... Mostrare il corretto Static Blocksu ogni pagina in base alle impostazioni che sono state impostate nelle aree sopra menzionate .....
- Determinare la pagina in cui ci troviamo e il tipo di pagina (cms, prodotto, home, categoria)
- Dovrà quindi leggere tutte le impostazioni personalizzate che sono state impostate nelle aree sopra menzionate.
- Se viene stabilito che siamo su una
Categorypagina, dovremo quindi ottenere la Categoria specifica specifica in cui ci troviamo. Per esempioCategory 3. Vedremo quindi se esiste un'impostazione specifica per quella specifica categoria. Se diceEnabledche cercheremo quindi qualeStatic Blockè salvato per quella categoria e lo mostreremo nella nostraStatic Blockpagina principale ! - Se la categoria specifica sopra è impostata come
Disabledper la nostraModal Window, cercheremo più in alto nelle impostazioni più globali per il modale e vedremo se un modale è abilitato per tutte le categorie. Se sì, vedremo qualeStatic Blockè impostato per essere mostrato a tutte le categorie. - Oltre a tutto ciò, eseguirà questo processo per ciascuno dei tipi di pagina principale (prodotto, categorie, cms, home, carrello)
- Dovremo anche verificare se il carrello è vuoto o meno. Se non vuoto ... allora dovremo prendere in considerazione questo sopra quando stiamo controllando quale
Static Blockmostrare per quella pagina poiché ogni impostazione consenteStatic Blockdi impostare un carrello vuoto e 1 per carrello non vuoto! (So che si tratta di una grande impresa difficile ma di grandi dimensioni, ma il lato amministrativo è svolto principalmente. Ho solo bisogno di fare la parte che tiene conto di tutti quelli nel determinare qualeStatic Blockmostrare su quale particolare pagina.
Quindi per portarmi nella giusta direzione ho un paio di domande più piccole ...
- Come posso all'interno del mio
Static Blockcodice (la parte PHP) determinare su quale TIPO di PAGINA mi trovo. Come ho già detto, devo sapere se sono su ... HOME PAGE , PAGINA CMS , PAGINA CATEGORIA , PAGINA PRODOTTO o PAGINA CARRELLO ? - Oltre al TIPO DI PAGINA ho bisogno di ottenere la pagina effettiva. Quindi, se utilizzo ID prodotto 1234, allora devo essere in grado di ottenere l'impostazione (blocco statico impostato per quella pagina) per quella particolare pagina.
So che questo è stato un post lungo e forse confuso. Se sei arrivato così lontano, grazie per aver dedicato del tempo a leggere questo =)
Se puoi aiutarmi con la mia domanda, ogni piccolo pezzo mi avvicinerà all'obiettivo finale
Di seguito è riportato un diagramma di flusso di come il mio modulo dovrà funzionare per determinare quale blocco statico inserire nella pagina

Mage_Widget? Devo esaminare anche quello
Mage_Widgetmodulo, giusto?