Magento2 - কীভাবে হোমপেজে একটি ব্লক সামগ্রী দেখানো যায়


14

হোমপেজে কোনও ব্লক সামগ্রী কীভাবে প্রদর্শন করবেন?

নমুনা ডেটা ছাড়াই ম্যাজেন্টো 2 ইনস্টল করার পরে, আমি 'ম্যাজেন্টো লুমা' থিমটি বেছে নিয়ে 'হোম পেজ ব্লক' ব্লক যুক্ত করেছি এবং নমুনা স্টোর থেকে কোডটি অনুলিপি করেছি।

তবে হোম পেজে কিছুই দেখা যাচ্ছে না, কীভাবে নমুনা স্টোরের মতো হোম পেজে আমার সেমি ব্লকটি দেখানো যায়?

আমার বাড়ি এখানে চিত্র বর্ণনা লিখুন

নমুনা দোকান

এখানে চিত্র বর্ণনা লিখুন


আপনি বলতে চাইছেন কাস্টম সেমি ব্লক পাঠ্য / সামগ্রী বা অ্যাডমিন প্যানেল তৈরি করে তৈরি সেমি ব্লক পাঠ্য / সামগ্রী?
বোজহাইয়া

@ ম্যাজেন্টোটো আমি একটি কাস্টম সিমস ব্লক তৈরি করি আমি হোম ব্লগে এই ব্লকককে কীভাবে প্রদর্শন করব তা জানতে চাই
চাঁদ

আপনি সমাধান নীচে চেষ্টা করেছেন?
বোজজায়াহ

নমুনা ডেটাতে হোম পেজের সামগ্রী উইজেটগুলি থেকে আসছে।

উত্তর:


45

অ্যাডমিন প্যানেলে কন্টেন্ট-> পৃষ্ঠাগুলিতে যান এবং হোম পৃষ্ঠা সম্পাদনা করুন এবং আপনি যদি অ্যাডমিন প্যানেল থেকে আপনার স্ট্যাটিক ব্লক তৈরি করেন তবে বিষয়বস্তু ট্যাবে নিম্নলিখিতটি যুক্ত করুন

{{block class="Magento\Cms\Block\Block" block_id="your_block_identifier"}}

এবং যদি আপনি হোম পৃষ্ঠার সামগ্রী ট্যাবে মডিউল যুক্ত করে একটি কাস্টম ব্লক তৈরি করেন

{{block class="Vendor\ModuleName\Block\BlockName" template="Vendor_ModuleName::yourcustomblock.phtml"}} 

তারপরে পরিবর্তনগুলি সংরক্ষণ করুন এবং ম্যাজেন্টো ক্যাশে এবং স্থির সামগ্রীগুলি স্থাপন / মুছুন এখন হোম পৃষ্ঠা রিফ্রেশ করুন।

যদি এটি কাজ না করে তবে আমাকে জানান


এটি যাদুমন্ত্রের মত কাজ করে! অনেক অনেক ধন্যবাদ চামাল!
চাঁদ

আমি এই সম্পর্কে আরও জানতে পারেন যে কোনও লিঙ্ক আছে? ফ্রন্ট-এন্ডের জন্য ম্যাজেন্টো ব্লক ক্লাস এবং ব্লক আইডি কোড?
চাঁদ

1
আমি devdocs.magento.com/guides/v2.0/howdoi/frontend/… খুঁজে পেয়েছি এটি ম্যাজেন্টো 2 ব্লকের আর্কিটেকচার বোঝার জন্য একটি ভাল গাইড
চামাল চামিকারা

আমার মডিউল এর দশক থেকে cms_index_index.xml-, আমি এই হোম পেজ বিষয়বস্তুতে যোগ <block class="Vendor\Module\Block\Index" name="modulename" template="module.phtml"></block> and It says index_0'`` ': অবৈধ টেমপ্লেট ফাইল::' Vendor_Module :: module.phtml 'থেকে মডিউল:' Vendor_Module 'ব্লক নাম ত্রুটি ফিল্টারিং টেমপ্লেট
Slimshadddyyy

10

এটি চেষ্টা করুন বা অন্যথায় আপনার কোড পোস্ট করুন আমরা আপনাকে পরামর্শ দিচ্ছি আপনি কোথায় ভুল করেছেন।

ব্লক ফাইল

<?php
namespace Learning\SmartSearch\Block;

class SmartSearch extends \Magento\Framework\View\Element\Template
{
    public function getTitle()
    {
        return "Smart Search";
    }
}

ইত্যাদি / module.xml

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd">
    <module name="Learning_SmartSearch" setup_version="1.0.0">
    </module>
</config>

দেখতে / লেআউট / cms_index_index.xml

<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="1column" xsi:noNamespaceSchemaLocation="../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/page_configuration.xsd">
    <body>
        <referenceContainer name="content">
            <block class="Learning\SmartSearch\Block\SmartSearch" template="Learning_SmartSearch::html/cms.phtml"/>
        </referenceContainer>
    </body>
</page>

দেখতে / টেমপ্লেট / HTML / cms.phtml

<h1><?php echo $block->getTitle(); ?></h1>

ফ্লাশ ক্যাশে তৈরির পরে।

আমি আশা করি এটা তোমাকে সাহায্য করবে। আপনি যদি ফলাফল না পেয়ে থাকেন তবে আমাকে জানান।


আপনার উত্তর করার জন্য আপনাকে ধন্যবাদ! আমি পরে চেষ্টা করব এবং ফলাফলটি আপনাকে জানাব
চাঁদ

3

হোম পেজে আপনি স্থিতিকর ব্লকটিকে নীচের বর্ণিত উপায়ে কল করতে পারেন

{{block class="Magento\Cms\Block\Block" block_id="your_block_identifier"}}

এইচটিএমএল পৃষ্ঠায় আপনি নীচের উল্লিখিত উপায়ে স্ট্যাটিক ব্লকটি কল করতে পারেন।

<?php echo $this->getLayout()->createBlock('Magento\Cms\Block\Block')->setBlockId('block_identifier')->toHtml();?>
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.