Grazie alla risposta di Zifius ci ho avvolto la testa.
Molti moduli commettono questo errore quando si aggiunge un gruppo di configurazione a una sezione esistente (qui: aggiungendo "orderexport" a "avanzato> admin"):
<config>
<sections>
<admin translate="label" module="export">
<label>Admin</label>
<tab>advanced</tab>
<frontend_type>text</frontend_type>
<sort_order>0</sort_order>
<show_in_default>1</show_in_default>
<show_in_website>0</show_in_website>
<show_in_store>1</show_in_store>
<groups>
<orderexport translate="label">
dove dovrebbe essere giusto
<config>
<sections>
<admin>
<groups>
<orderexport translate="label">
I file di configurazione vengono uniti, quindi non è necessario ridefinire i valori già esistenti se non si desidera sovrascriverli.
Nell'esempio sopra, l'override non ha solo senso, ma danneggia:
- l'ambito della traduzione dell'intera sezione è cambiato (da
module="core"
)
- la
sort_order
è impostato0
Il punto difficile è che l'ordinamento delle sezioni non specifica solo l'ordine di visualizzazione all'interno della sua scheda, ma anche quale sezione verrà aperta per prima. In questo modo è possibile avere una sezione come pagina predefinita che non fa parte della prima scheda.
Sono sicuro che nel 99% questo è solo lo sviluppo di copia e incolla e non la conoscenza migliore.
Per impostare la pagina predefinita come la voglio, ne creerò una system.xml
che imposta la sort_order
sezione di una sezione esistente su una -1
che sarà inferiore a tutti gli "zero accidentali"