Layout Handle এবং Block কনফিগারেশন

Magento Layout এবং XML Customization - ম্যাজেন্টো ফ্রেমওয়ার্ক (Magento Framework) - Web Development

269

ম্যাজেন্টো ফ্রেমওয়ার্কে Layout Handle এবং Block Configuration হল ই-কমার্স সাইটের ফ্রন্টএন্ড এবং ব্যাকএন্ড ডিজাইন এবং কন্টেন্টের কাঠামো তৈরি করার জন্য ব্যবহৃত অত্যন্ত গুরুত্বপূর্ণ কনফিগারেশন ফিচার। এগুলি ম্যাজেন্টো সাইটের ভিজ্যুয়াল ও কন্টেন্ট ম্যানেজমেন্টের মূল অংশ। এখানে আমরা Layout Handle এবং Block কনফিগারেশন সম্পর্কে বিস্তারিত আলোচনা করব।


Layout Handle কি?

Magento তে Layout Handle হল একটি কনফিগারেশন ফাইল যা HTML এবং ব্লক এর কাঠামো নির্ধারণ করে। এটি ম্যাজেন্টোর বিভিন্ন পৃষ্ঠা এবং সেগমেন্টের জন্য উপযুক্ত লেআউট এবং ব্লক কনফিগারেশনের দিকনির্দেশনা প্রদান করে।

Layout Handle এর কাজ

  • Page Layout: ম্যাজেন্টো প্রতিটি পৃষ্ঠার জন্য একটি নির্দিষ্ট লেআউট ফাইল ব্যবহার করে, যা পৃষ্ঠার কন্টেন্ট কিভাবে প্রদর্শিত হবে তা নির্ধারণ করে। উদাহরণস্বরূপ, একটি প্রোডাক্ট পৃষ্ঠা এবং ক্যাটালগ পৃষ্ঠার লেআউট আলাদা হতে পারে।
  • Dynamic Layouts: Layout handles কাস্টম পৃষ্ঠার জন্য ডাইনামিকভাবে লেআউট তৈরি করতে সাহায্য করে। এটি ম্যাজেন্টোকে আরও কাস্টমাইজেবল এবং নমনীয় করে তোলে।
  • Blocks Placement: Layout handle ব্লক এর স্থান নির্ধারণ করে, যা পৃষ্ঠার বিভিন্ন সেকশনে কন্টেন্ট প্রদর্শন করে।

Layout Handle কনফিগারেশন

Magento তে layout handles কনফিগার করার জন্য XML ফাইল ব্যবহার করা হয়। প্রতিটি পৃষ্ঠা বা অ্যাকশন এর জন্য একটি বিশেষ লেআউট হ্যান্ডেল থাকে। এগুলি সাধারণত app/design/frontend/<Vendor>/<theme>/layout ডিরেক্টরিতে সংরক্ষিত থাকে।

যেমন:

  • catalog_product_view.xml: প্রোডাক্ট পৃষ্ঠার লেআউট কনফিগারেশন।
  • cms_page_view.xml: CMS পৃষ্ঠার লেআউট কনফিগারেশন।

উদাহরণ:

<layout version="0.1.0">
    <referenceContainer name="content">
        <block class="Magento\Catalog\Block\Product\View" name="product.info" template="Magento_Catalog::product/view.phtml"/>
    </referenceContainer>
</layout>

এখানে, referenceContainer নামক ট্যাগটি content কনটেইনারের মধ্যে একটি ব্লক স্থাপন করে, যেখানে Magento\Catalog\Block\Product\View ক্লাসের একটি ব্লক ব্যবহার করা হয়েছে।


Block কি?

Block হল একটি গুরুত্বপূর্ণ উপাদান যা পৃষ্ঠার কন্টেন্ট রেন্ডার করার জন্য ব্যবহৃত হয়। একটি ব্লক একটি নির্দিষ্ট UI এলিমেন্ট (যেমন প্রোডাক্ট তথ্য, ক্যাটালগ, গ্রাহক রিভিউ ইত্যাদি) রেন্ডার করে। এটি PHP ক্লাস এবং টেমপ্লেট ফাইলের মাধ্যমে পৃষ্ঠায় কন্টেন্ট প্রদান করে।

Block এর কাজ

  • UI Render: ব্লক UI উপাদান তৈরি করে এবং এগুলি পৃষ্ঠার HTML কন্টেন্ট হিসেবে রেন্ডার করা হয়।
  • Data Handling: ব্লক ডেটা সংগ্রহ এবং উপস্থাপন করতে ব্যবহৃত হয়। যেমন, পণ্যের বিবরণ, গ্রাহক রিভিউ, বা ক্যাটালগ ফিল্টার।
  • Templating: ব্লক HTML টেমপ্লেটের মাধ্যমে ডেটা প্রদর্শন করে।

Block কনফিগারেশন

Magento তে ব্লক কনফিগার করার জন্য দুটি প্রধান উপায় রয়েছে: PHP কোড এবং XML ফাইলের মাধ্যমে।

১. PHP ক্লাস ব্লক কনফিগারেশন

Magento ব্লক সাধারণত PHP ক্লাস হিসেবে তৈরি করা হয়, যা একটি নির্দিষ্ট টেমপ্লেট ফাইলের মাধ্যমে রেন্ডার করা হয়। এই ক্লাসগুলি app/code/<Vendor>/<Module>/Block ডিরেক্টরিতে সংরক্ষিত থাকে।

উদাহরণ:

<?php
namespace Vendor\Module\Block;

class CustomBlock extends \Magento\Framework\View\Element\Template
{
    protected $_template = 'Vendor_Module::custom/block.phtml';

    public function getCustomData()
    {
        return 'This is custom data';
    }
}

এখানে, CustomBlock ব্লক ক্লাসটি একটি পিএইচপি টেমপ্লেট ফাইল (block.phtml) রেন্ডার করে এবং getCustomData ফাংশনের মাধ্যমে কাস্টম ডেটা প্রদান করে।

২. XML ব্লক কনফিগারেশন

Magento তে ব্লক কনফিগার করার জন্য XML ফাইল ব্যবহৃত হয়, যা লেআউট হ্যান্ডলস এবং ব্লক কনফিগারেশন নির্ধারণ করে।

উদাহরণ:

<layout version="0.1.0">
    <referenceContainer name="content">
        <block class="Vendor\Module\Block\CustomBlock" name="custom_block" template="Vendor_Module::custom/block.phtml"/>
    </referenceContainer>
</layout>

এখানে, referenceContainer ট্যাগটি ব্লকটি content কনটেইনারে স্থাপন করে এবং template অ্যাট্রিবিউটের মাধ্যমে নির্দিষ্ট টেমপ্লেট ফাইল রেন্ডার করে।


Layout Handle এবং Block কনফিগারেশন কিভাবে কাজ করে?

  1. Layout Handle কনফিগারেশনের মাধ্যমে, আপনি বিভিন্ন পৃষ্ঠার জন্য নির্দিষ্ট লেআউট এবং ব্লকগুলি নির্ধারণ করতে পারেন। উদাহরণস্বরূপ, আপনি পণ্যের পৃষ্ঠা, ক্যাটালগ পৃষ্ঠা এবং অন্যান্য কাস্টম পৃষ্ঠাগুলির জন্য আলাদা লেআউট ফাইল তৈরি করতে পারেন।
  2. Block কনফিগারেশন টেমপ্লেট ফাইল এবং PHP ক্লাসের মাধ্যমে, আপনি পৃষ্ঠায় ডেটা প্রদর্শন করতে পারবেন। ব্লকগুলি ডেটা সংগ্রহ করে এবং তা পৃষ্ঠায় উপস্থাপন করার জন্য HTML টেমপ্লেট ব্যবহার করে।

সারাংশ

Magento তে Layout Handle এবং Block কনফিগারেশন খুবই গুরুত্বপূর্ণ কারণ তারা সাইটের ডিজাইন এবং কন্টেন্ট উপস্থাপনের পদ্ধতি নির্ধারণ করে। Layout handle এর মাধ্যমে পৃষ্ঠার কাঠামো এবং ব্লকগুলি কনফিগার করা যায়, এবং ব্লক কনফিগারেশনের মাধ্যমে ডেটা প্রদর্শন করা হয়। এটি একটি কাস্টমাইজেবল এবং নমনীয় সিস্টেম তৈরি করতে সহায়ক, যা Magento কে আরও শক্তিশালী এবং ব্যবহারকারীদের জন্য সহজ করে তোলে।

Content added By
Promotion

Are you sure to start over?

Loading...