Özel şablon işleminde Magento 2 html dosyası ve phtml dosyası?


10

Ben minicart içeriği değiştirme hakkında magento 2 belgelerinden kontrol gibi.

İki yol vardır:

  1. Bu sayfada: http://devdocs.magento.com/guides/v2.0/frontend-dev-guide/themes/theme-inherit.html

Minicart.phml dosyasını özelleştirip içine yerleştirerek değiştiririz : app/design/frontend/OrangeCo/orange/Magento_Checkout/templates/cart/minicart.phtml

  1. Ancak diğer sayfada: http://devdocs.magento.com/guides/v2.0/frontend-dev-guide/templates/template-sample.html

Bunu content.html dosyasında özelleştiriyoruz ve yerleştiriyoruz:

app/design/frontend/OrangeCo/orange/Magento_Checkout/web/template/minicart/content.html

Yani bu sorular:

Magento 2, html ve phtml dosyalarının ne zaman kullanılacağına nasıl karar verir?

Bu Magento 2: Default, Developer and Production'daki 3 modla mı ilgili?

Yanıtlar:


10

Hem .phtmlve .htmldosyalar Magento 2 fark olma görünümü tabakasının bir parçası olan phtmldosyalar işin Blok göre Magento Dokümanlar genellikle (ama her zaman değil) yakından bir şablon bağlanmış olan özel bir PHP sınıfıdır. Bloklar genellikle verileri işlemek ve sonuçları / yanıtları şablonlara (.phtml veya .html dosyaları) döndürmek için model katmanı (çekirdek Magento) ile çalışır. Bu dosyalar, düzen dosyaları tarafından belirli bloklar için şablonların ayarlanmasında kullanılır.

htmldiğer uçtaki dosyalar yalnızca ön uçta içerik görüntülemek için kullanılır ve nakavt JS gibi javascript kütüphaneleri bunları uygun şekilde kullanır. Bu dosyalar AJAX içerik yüklemesi için de kullanılır.


6

arka uç php şablonları olarak kullanılan phtml dosyaları. ön uç javascript şablonları olarak kullanılan html dosyaları.

Bu Magento moduyla ilgili değil.


Ben öyle düşünmüyorum, frontend / templates her modül phtml dosyasını kontrol ettiniz. Tüm bu dosyalar sadece arka uç php şablonu için mi kullanılıyor? Neden her modülün görünüm klasöründe iki klasör vardır: ön uç ve arka uç?
thienphucvx

ön uç / arka uç dediğimde sunucu / istemci tarafında demek. Adminhtml klasörü Yönetici Paneli ve ön uç Mağaza Ön kısmıdır (ön uç / arka uç parçası olabilir)
KAndy

Ben html javascript tarafından render hakkında hakkında olsun düşünüyorum. Ama neden kullandıklarını bilmiyorum. Örneğin, minicart içeriğini content.html üzerinde özelleştiriyoruz . Ancak formu incelemede özelleştirmek için form.phtml ( devdocs.magento.com/guides/v2.0/frontend-dev-guide/templates/… ) üzerinde düzenliyoruz
thienphucvx

m2'nin birçok eski (m1) kodu vardır. tüm parçalar yeniden düzenlenmez, ancak içerik oluşturma işleminin istemci tarafında taşınması işlemi devam eder. ve istemci tarafı görüntülemeyi kullanabilirsiniz
KAndy

Yani gelecekte, istemci tarafı için sadece html dosyası var demektir?
thienphucvx

2

@thienphucvx http://devdocs.magento.com/guides/v2.0/frontend-dev-guide/themes/theme-inherit.html adresindeki belgeler yanlış.

Doğru cevap: http://devdocs.magento.com/guides/v2.0/frontend-dev-guide/templates/template-sample.html .

İlk bağlantıda referans verilen dosyaya bakarsanız vendor/magento/module-checkout/view/frontend/templates/cart/minicart.phtml, mini bölümdeki öğelerin yerleşimini ödeme düğmesiyle değiştiremeyeceğinizi görürsünüz.

Çünkü miniartın bu kısmı burada: vendor/magento/module-checkout/view/frontend/web/template/minicart/content.html

Burada yaptığınız gibi dokümanlardaki tutarsızlıkları bulduğumda GitHub'da bir Çekme İsteği açıyorum. Dokümantasyon ekibinin her zaman% 100 doğru olması için çok fazla doküman var. Bir PR açın, güncellemenizi gözden geçirecekler ... ve kendilerinden emin değillerse, konuyla ilgili bir iç otoriteye ulaşacaklar ve doğru olup olmadığınızla ilgili geri bildirimlerle size geri dönecekler. Dost canlısılar. Göreyim seni!

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.