Local.xml dışında bir yerel tema düzeni XML dosyası var mı?


14

Aşağıdaki dosyayı oluşturarak ve düzenleyerek bir tema oluşturdum:

frontend/mypackage/default/layout/local.xml

Bir mağaza görünümü "site1" var ve "mypackage" varsayılan local.xml istisnalar yapmak istiyorum, bu yüzden bu dosyayı oluşturdu:

frontend/mypackage/site1/layout/local.xml

Ancak, bu dosyayı oluşturur oluşturmaz Magento varsayılan local.xml değişikliklerini atlar.

Magento'ya varsayılan olarak local.xml dosyasını nasıl kullanmasını ve site1'in local.xml dosyasındaki değişiklikleri buna nasıl ekleyebilirim?


Olmaz. Afedersiniz. Bu arada iyi bir soru.
user487772

Aynı senaryo ile karşı karşıyayım. Ben tamamen yerine değil, varsayılan tema local.xml uzatmak oldu. Tamamen seçilen alt temayla değiştirmesi çok kötü.
Axel

Bir default.xml gibi bir şey yok mu? Ya da default.xml dosyasını kontrol etmek için xml dosyalarını geçen Magento çekirdek kodunu hackleyebilir miyiz?
Gerard Nijboer

Yanıtlar:


7

Magento 1.9'dan beri aşağıdaki etc/theme.xmlgibi özel düzen güncellemeleri ekleyebilirsiniz :

<theme>
    <layout>
        <updates>
            <my_theme>
                <file>my_theme.xml</file>
            </my_theme>
        </updates>
    </layout>
</theme>

Temaya özel mizanpajlarınızı kullanmak yerine bu şekilde tanımlarsanız local.xml, alt temaya başka bir güncelleme eklemek kolaydır.

Ne yazık ki, aynı sorun üst temalardan değil, yalnızca gerçek temanızdan kullanılan theme.xml ile ilgilidir. Ancak daha az çoğaltma var.

theme.xmlAlt tema örneği :

<theme>
    <layout>
        <updates>
            <my_theme>
                <file>my_theme.xml</file>
            </my_theme>
            <my_child_theme>
                <file>my_child_theme.xml</file>
            </my_child_theme>
        </updates>
    </layout>
</theme>

Kaynak ve daha fazla bilgi: http://alanstorm.com/magento_infinite_fallback_theme_xml


5

Magento, local.xml değişikliklerini diğer local.xml dosyalarından birleştirmez. Magento teması geri dönüşünün çalışma şekli, geçerli tema / pakette bulunan herhangi bir dosyanın, benzer şekilde adlandırılmış başka herhangi bir tema / paket dosyası üzerinde tercih edileceği ve kullanılacağıdır.

Bu şekilde birleştirilmiş geçersiz kılma oluşturamazsınız. Bu Magento 2'de mümkün olacak, ancak Magento 1.x'te mümkün değil.

Ne yazık ki, varsayılandan yerel temanıza kopyalamanız ve değişikliklerinizi orada yapmanız gerekecektir.

İyi şanslar.


2
+1. Bu kesinlikle programlı olarak gerçekleştirilebilir, ancak kesinlikle çabaya layık olmayacaktır.
user487772

3

Phil kesinlikle doğru ama teorik olarak bir geçici çözüm var (o kadar da güzel değil).

Düzen güncellemesini tanıtacak özel bir modül oluşturabilirsiniz. Ardından modülde mağaza görünümünün gerekli olup olmadığını kontrol edebilir ve bu düzen güncellemesini kaldırabilirsiniz.

Bu yaklaşımla ilgili kötü şey, mağaza görünümünü zor kodlamanızdır. Ve genel olarak bu hoş görünmüyor.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.