Magento 2 - Tema Tip 0: fiziksel, 1: sanal, 2: evreleme. Ne zaman kullanılır?


30

Gelen thememasanın bir orada typefiziksel, sanal ve evreleme: 3 olası değerlerle alanı.

Fiziksel sanal ve sahneleme teması ne zaman kullanılır?

Luma temasını genişlettiğimde yeni temam tema tablosunda sanal tip olarak görünüyor. Ancak bu tür, bazı dosyaların geçersiz kılınmasına izin vermiyor ve yalnızca tema türünü sanaldan fiziksel olarak değiştirmeme izin veriyor, örneğin Magento_Themepaketini genişletmeme izin verin .


İyi bir soru Emin değilim0: Physical - Magento Default Theme (Example: Magento Blank, Magento Luma, Magento 2 Backend) 1: Virtual - Custom Theme which is created by you (custom) which has parent as Default Theme (Example: My Theme) 2: Staging - ?
Ankit Şah

Bakınızvendor\magento\module-theme\Model\Theme\Registration.php /** Allowed sequence relation by type, array(parent theme, child theme) * @var array */ protected $_allowedRelations = [ [ThemeInterface::TYPE_PHYSICAL, ThemeInterface::TYPE_VIRTUAL], [ThemeInterface::TYPE_VIRTUAL, ThemeInterface::TYPE_STAGING],]; /** Forbidden sequence relation by type ** @var array*/ protected $_forbiddenRelations = [[ThemeInterface::TYPE_VIRTUAL, ThemeInterface::TYPE_VIRTUAL],[ThemeInterface::TYPE_PHYSICAL, ThemeInterface::TYPE_STAGING],];
Ankit Şah,

Yanıtlar:


32

Tanımlanan 3 farklı tür vardır Magento/Framework/View/Design/ThemeInterface:

  • Fiziksel türü
  • Sanal tip
  • Evreleme tipi

Fiziksel temalar

Fiziksel, bu temaların dosyalar tarafından tanımlandığı gerçeğini ifade eder. Örneğin, blank ve luma teması fiziksel olarak tanımlanmıştır.app/design/frontend/

Sanal temalar

Bu henüz net değil ama bence sanal temalar, mevcut fiziksel temaları genişleten arka uçta oluşturabileceğiniz temalara atıfta bulunuyor, ancak henüz tam olarak uygulanmadı.

Düzenleme bölümünde yalnızca sanal bir tema için özel CSS ve JS sağlamanıza izin veren sanal temalar için iki sekme bulunduğunu görebilirsiniz.

Sanal bir temanın, kısa bir tema periyodu için geçici olarak kurduğunuz (Noel teması gibi) ve genişlettiği fiziksel temayla karşılaştırıldığında sadece birkaç tasarım değişikliği gerektiren bir işlem olacağını düşünüyorum.

Henüz Sanal Tema Ekleme düğmesi yok ancak aşağıdaki SQL sorgusunu çalıştırırsanız sanal bir tema oluşturabilir ve düzenlerken CSS ve JS sekmesini göreceksiniz:

INSERT INTO `theme` (`theme_id`, `parent_id`, `theme_path`, `theme_title`, `preview_image`, `is_featured`, `area`, `type`, `code`) VALUES (NULL, '1', NULL, 'test', NULL, '0', 'frontend', '1', 'test/test');

Ve işte başlıyorsunuz, iki ekstra sekme ve Kaydet / Sil düğmesi:

görüntü tanımını buraya girin

Tema temaları

Evreleme temalarının Magento 2.1 EE evreleme özelliği ile ilgili olduğunu düşünüyorum: http://devdocs.magento.com/guides/v2.1/extension-dev-guide/staging/Staging.html

Bir kampanya kullanırken aşamalı bir temaya sahip olabileceğinizi düşünüyorum ama% 100 emin değilim.


Sadece sorunumu burada çözdün Raph! Teşekkür ederim - Alvin :)
Alvin Nguyen

1
Tablodaki typesütunla ilgili bir sorunla karşılaştım theme: Bir tema oluşturdum ve bir şekilde typedeğer 1(varsayılan yerine) olarak ayarlandı 0. LESS / JS değişikliklerimin tümü işe yaradı, ancak typedeğeri değiştirene kadar Magento temamdaki mizanpaj dosyalarını okumazdı 0. Bu konuda daha fazla: nahuelsanchez.com/…
Erik Hansen
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.