Ürün Görünümü Sayfasında Magento 2'de Geçerli Ürün Adı Nasıl Alınır


9

Ürün Adının üstündeki Ürün Görünümü Sayfasında Ürün geçerli kategorisi Adı Nasıl Alınır. Ve Magento 2'de Geçerli Ürün Kategorisi Adını almak için bana dosya yolu Konumu verin.

Yanıtlar:


10

Aşağıdaki kod gibi özel bir modül oluşturun.

geçerli kategori adını almak için bir modül blok dosyası oluşturun.

<?php
namespace Namespace\Modulename\Block;
class Blockname extends \Magento\Framework\View\Element\Template
{
    protected $_registry;

    public function __construct(
        \Magento\Backend\Block\Template\Context $context,
        \Magento\Framework\Registry $registry,
        array $data = []
    )
    {
        $this->_registry = $registry;
        parent::__construct($context, $data);
    }


    public function getCurrentCategory()
    {
        return $this->_registry->registry('current_category');
    }

}
?>

Aşağıdaki kodla bir phtml dosyası oluşturun

<?php if ($currentCategory = $block->getCurrentCategory()): ?>
    <div class="detail-category-name">
        <?php echo $currentCategory->getName(); ?>
    </div>
<?php endif; ?>

xml dosyası üzerinden yukarıdaki phtml dosyasını arayın.

<referenceContainer name="product.info.main">
            <block class="Namespace\Modulename\Block\Blockname" name="product.category.name" template="Magento_Catalog::product/view/yourfilename.phtml" >
            </block>
</referenceContainer>

Son olarak, ürün ayrıntısı sayfasında ürün adının hemen üzerinde kategori adını görebilirsiniz.

Herhangi bir sorunuz varsa bize bildirin.


i Ürün.info.main refrence katalog_product_view.xml xml kodu koymak var ama herhangi bir div veya herhangi bir kategori adı göremiyorum.
— Nikul

Temanızın default.xml dosyasına koymalısınız.
— Suresh Chikani

Evet default.xml koymak için çalıştı ama onun çalışmıyor ..
— Nikul

Teşekkürler. tıkır tıkır çalışıyor. aradığınız yolda dikkatli olun (benimki "Vendor_Categoryonproduct :: category.phtml" idi) ve kayıt ve modül dosyasını unutmayın
— Claudiu Creanga

herhangi bir sonuç
— alamadım

1

Bir üründeki getCategoryIds () yöntemini kullanarak kategori kimliklerini alabilmeniz gerekir. Örneğin, referans:

\Magento\Catalog\Model\Product::getCategoryIds();

Bu $product->getCategoryIds(), bloğunuzdakini esasen arayabilmeniz ve filtreleyebilmeniz gerektiği anlamına gelir .

getCategoryCollection()Aynı modelde denilen ve kategoriler arasında tam nesneler olarak dolaşmanıza izin veren bir yöntem de vardır . Onları ID'ler ile yükleyen orta adamı kesmeli.


0
**Add XML Code Theme/namespace/Magento_Catalog/templates/product/view**

<block class="Magento\Catalog\Block\Product\View" name="product.info.category" after="product.price.final" template="product/view/current_category.phtml" />


**Create New File    Theme/namespace/Magento_Catalog/templates/product/view**  

      <?php 
        $objectManager = \Magento\Framework\App\ObjectManager::getInstance();
        $product = $objectManager->get('Magento\Framework\Registry')->registry('current_product');
        $categories = $product->getCategoryIds(); /*will return category ids array*/
        foreach($categories as $category){
            $cat = $objectManager->create('Magento\Catalog\Model\Category')->load($category);
            echo $cat->getName();
            }

        ?>
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.