Magento 2: Luma Tema Ana Sayfa nasıl geçersiz kılınır


9

WAMP Windows 10'da Magento 2 CE Sürüm 2.1.0 kullanıyorum

Zaten referans verdim

Magento 2: Mini araba varsayılan şablon html dosyasını nasıl geçersiz kılabilirim?

Magento 2 Varsayılan Luma Temasını geçersiz kılmak istiyorum

Klasör yapısının altındayım

magento2
 |_ app
   |_ design
      |_ frontend
        |_ Custom
            |_Theme
              |_Magento_Theme
                |_templates
                  |_root.phtml     - Copy of Luma
                registration.php
                theme.xml

Uygulamanın \ tasarım \ önyüzü \ Custom \ Tema \ Magento_Theme \ registration.php

\Magento\Framework\Component\ComponentRegistrar::register(
    \Magento\Framework\Component\ComponentRegistrar::THEME,
    'frontend/Custom/Theme',
    __DIR__
);

Uygulamanın \ tasarım \ önyüzü \ Custom \ Tema \ Magento_Theme \ theme.xml

<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
    <title>My Theme</title>
    <parent>Magento/luma</parent>
</theme>

php bin/magento setup:static-content:deployÖnbelleği de çalıştırıyorum . İçinde yeni oluşturulmuş Temam görüntülenmiyor Admin -> Content -> Design -> Configuration. Açılır Listeyi Düzenle.

Hala eksik olan ne?


Yanıtlar:


6

Herhangi bir yeni tema veya modül oluştururken modülünüzün veya tema klasörünüzün kökündeki registration.php dosyasını tanımlamanız gerekir.

Tema adını her zaman küçük harfle kullanın, çünkü Magento tema adı bildirimi için bu standardı kullandı.

Tema adını camelcase'de tutmak için herhangi bir sorununuz yok, ancak standart yolu kullanmak çok takdir ediliyor.

Registration.php dosyasını Magento_Theme klasörü içinde, yanlış yerde tanımlamanız gerekir.

Tema yapısının doğru şeması aşağıda olacaktır,

magento2
 |_ app
   |_ design
      |_ frontend
        |_ Custom
            |_theme
              |_Magento_Theme
                |_templates
                  |_root.phtml     - Copy of Luma
              |_registration.php
              |_theme.xml

Registration.php için yolunuz app\design\frontend\Custom\theme\registration.php

registration.php dosyası:

<?php
   \Magento\Framework\Component\ComponentRegistrar::register(
     \Magento\Framework\Component\ComponentRegistrar::THEME,
      'frontend/Custom/theme',
      __DIR__
);

theme.xml dosya yolunuz,

app\design\frontend\Custom\theme\theme.xml

theme.xml dosyası:

<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
   <title>Custom Theme</title>
   <parent>Magento/luma</parent>
   <media>
      <preview_image>media/preview.jpg</preview_image>
   </media>
</theme>

Tüm kurulum tamamlandıktan sonra, tema için konuşlandırma komutunu çalıştırmayı unutmayın,

php bin/magento setup:static-content:deploy

Content -> Design -> ConfigurationÖzel temanızı ayarlamak için yönetici panelinizin içini kontrol edin .

Önbelleği kaldırın ve ön ucu kontrol edin.


Bijal Usean ve SH Patel. @Rakesh'in cevabını kabul ediyorum çünkü daha önce bu konuda onunla tartışıyorum.
Ankit Shah

Yönetici'den kaydederken hata veriyor Cannot read contents from file "D:/wamp/www/magento2/" Warning!file_get_contents(D:/wamp/www/magento2/): failed to open stream: No such file or directory. Yani Yeni Tema kaydedilemiyor & etkinleştirilemiyor
Ankit Shah

lütfen yükseltme komutunu çalıştırın, ardından deploy komutunu çalıştırın, var klasörünü kökten kaldırın ve kontrol edin
Rakesh Jesadiya

Hayır! Hala Sayı
Ankit Shah


1

Eğer yerleştirmek theme.xml ve registration.php yanlış yerde, fiili konumu

app/design/frontend/<vendor>/<theme>/registration.php

<?php
/**
 * Copyright © 2016 Magento. All rights reserved.
 * See COPYING.txt for license details.
 */

\Magento\Framework\Component\ComponentRegistrar::register(
    \Magento\Framework\Component\ComponentRegistrar::THEME,
    'frontend/<vendor>/<theme>',
    __DIR__
);

app/design/frontend/<vendor>/<theme>/theme.xml

<!--
/**
 * Copyright © 2016 Magento. All rights reserved.
 * See COPYING.txt for license details.
 */
-->
<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
    <title>Vendor Theme</title>
    <parent>Magento/luma</parent>
    <media>
        <preview_image>media/preview.jpg</preview_image>
    </media>
</theme>

note: preview.jpg dosyasını yerleştirinapp/design/frontend/<vendor>/<theme>/media/preview.jpg

bu iki dosyayı tema listenizi Yönetici'ye almak için yeterli, ardından temanızı uygulayın.

Örneğin luma şablonlarını geçersiz kılmak app/code/Magento/Catalog/view/frontend/templates/product/view/addtocart.phtmlistiyorsanız, o şablonda değişiklik yapabilirsiniz.app/design/frontend/<vendor>/<theme>/Magento_Catalog/templates/product/view/addtocart.phtml


Yönetici'den kaydederken hata veriyor Cannot read contents from file "D:/wamp/www/magento2/" Warning!file_get_contents(D:/wamp/www/magento2/): failed to open stream: No such file or directory.Yeni Tema kaydedilemiyor & Etkinleştirilemiyor
Ankit Shah

dosya izni sorunları gibi görünüyor, magento standardına göre doğru izni ayarlayıp ayarlamadığınızı kontrol ettiniz mi?
Bilal Usean

Söz konusu gibiI'm using Magento 2 CE Version 2.1.0 on WAMP Windows 10
Ankit Shah


lütfen magento root dizini erişim kullanıcısını ve kullanıcı grubunu kontrol edin, web sunucusu kullanıcısı ve grubu olmalı ve bu dizinin okuma / yazma iznini kontrol etmelidir. daha fazla fikir edinebileceğiniz bu iki bağlantıya bakın devdocs.magento.com/guides/v2.0/install-gde/prereq/… magento.stackexchange.com/q/91870/36463
Bilal Usean

1

Kullandığınız yanlış yol.

Yeni özel tema oluşturmak için aşağıdaki talimatları izleyin.

Oluştur theme.xml dosyayı /app/design/frontend/Custom/Theme/theme.xmlaşağıdaki kodu ile.

<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
    <title>Custom Theme</title>
    <parent>Magento/luma</parent>
    <media>
        <preview_image>media/preview.jpg</preview_image>
    </media>
</theme>

Registration.php dosyasını app/design/frontend/Custom/Theme/registration.phpaşağıdaki kodla oluşturun.

\Magento\Framework\Component\ComponentRegistrar::register(
    \Magento\Framework\Component\ComponentRegistrar::THEME,
    'frontend/Custom/theme',
    __DIR__
);

copy.jpg dosyasını kopyala

vendor/magento/theme-frontend-luma/media/preview.jpg 

a ekle

app/design/frontend/Custom/Theme/media/preview.jpg

Artık özel temanızı admin'de görebilir, admin'den özel temayı seçebilir ve kaydedebilirsiniz.


Yönetici'den kaydederken hata veriyor Cannot read contents from file "D:/wamp/www/magento2/" Warning!file_get_contents(D:/wamp/www/magento2/): failed to open stream: No such file or directory.Yeni Tema kaydedilemiyor & Etkinleştirilemiyor
Ankit Shah

Luma teması düzgün çalışma kaydet?
Suresh Chikani

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.