Thật khó để nói mà không có một ví dụ cụ thể, nhưng tôi nghi ngờ bạn đang chạy vào một trật tự tập tin so với xử lý vấn đề trật tự.
Cụ thể, Magento tải các tệp XML của mình theo thứ tự mô-đun, được xử lý local.xml
lần cuối. Đây là một danh sách điển hình, theo thứ tự
frontend/base/default/layout/core.xml
frontend/rwd/default/layout/page.xml
frontend/rwd/default/layout/directory.xml
frontend/rwd/default/layout/cms.xml
frontend/rwd/default/layout/customer.xml
frontend/rwd/default/layout/catalog.xml
frontend/rwd/default/layout/catalog_msrp.xml
frontend/rwd/default/layout/catalogsearch.xml
frontend/base/default/layout/payment.xml
frontend/rwd/default/layout/sales.xml
frontend/base/default/layout/sales/billing_agreement.xml
frontend/base/default/layout/sales/recurring_profile.xml
frontend/base/default/layout/cataloginventory.xml
frontend/base/default/layout/shipping.xml
frontend/rwd/default/layout/checkout.xml
frontend/rwd/default/layout/paypal.xml
frontend/base/default/layout/bml.xml
frontend/rwd/default/layout/poll.xml
frontend/rwd/default/layout/review.xml
frontend/rwd/default/layout/tag.xml
frontend/base/default/layout/reports.xml
frontend/base/default/layout/googleanalytics.xml
frontend/rwd/default/layout/wishlist.xml
frontend/base/default/layout/paypaluk.xml
frontend/base/default/layout/giftmessage.xml
frontend/rwd/default/layout/contacts.xml
frontend/base/default/layout/sendfriend.xml
frontend/rwd/default/layout/rss.xml
frontend/base/default/layout/productalert.xml
frontend/rwd/default/layout/oauth.xml
frontend/base/default/layout/authorizenet.xml
frontend/rwd/default/layout/bundle.xml
frontend/rwd/default/layout/captcha.xml
frontend/base/default/layout/centinel.xml
frontend/rwd/default/layout/newsletter.xml
frontend/rwd/default/layout/downloadable.xml
frontend/base/default/layout/pagecache.xml
frontend/rwd/default/layout/persistent.xml
frontend/base/default/layout/weee.xml
frontend/base/default/layout/xmlconnect.xml
frontend/base/default/layout/moneybookers.xml
frontend/base/default/layout/pulsestorm_checkoutstep.xml
frontend/rwd/default/layout/local.xml
Các tệp XML bố cục đơn hàng được tải theo lệnh cho quy tắc XML bố cục đơn hàng được áp dụng - trên mỗi tay cầm . Đây là phần cuối cùng khiến mọi người đi lên. Xử lý là các nút XML cấp cao nhất.
<config>
<handle_name>
</handle_name>
</config>
Xử lý là loại sự kiện giống như bố cục - đối với mỗi trang yêu cầu Magento đưa ra một số xử lý. Bạn có thể sử dụng Lỗi thương mại để xem xử lý nào được cấp cho một yêu cầu trang cụ thể
Đối với những người có hình ảnh bị tắt, các thẻ điều khiển được cấp cho yêu cầu trang cụ thể đó là
<default />
<catalog_category_layered_nochildren />
<STORE_default />
<THEME_frontend_rwd_default />
<catalog_category_view />
<catalog_category_default />
<CATEGORY_3 />
Điều này có nghĩa là, Magento sẽ chạy mọi default
đoạn XML: đầu tiên cho core.xml
tệp, sau đó là từng default
đoạn cho page.xml
tệp, cho đến hết local.xml
.
Sau đó, Magento sẽ chạy mọi catalog_category_layered_nochildren
đoạn XML: đầu tiên cho core.xml
tệp, sau đó cho page.xml
tệp, tất cả các đường dẫn xuống local.xml
.
Điều này tiếp tục cho mỗi xử lý.
Điều này có nghĩa là, nếu bạn có một chút XML cập nhật bố cục local.xml
bên trong một default
tay cầm, nó sẽ chạy trước một chút XML cập nhật bố cục trong core.xml
đó nằm trong catalog_category_layered_nochildren
tay cầm. Điều này, cho đến nay, điều gây ra sự nhầm lẫn nhất trong hệ thống XML bố cục, đặc biệt là vì có một chút trí tuệ thông thường trôi nổi xung quanh nói rằng "localDB tải lần cuối".
Nếu những điều trên làm bạn bối rối một chút và bạn cần tìm hiểu thêm về hệ thống Bố cục XML, tôi vẫn nghĩ rằng cuốn sách No Frills Magento Layout của tôi là cách tốt nhất để tìm hiểu hệ thống từ trong ra ngoài.