Multilingual URLs এবং ভাষার ভিত্তিতে পেজ ফিল্টারিং

Grav এবং Multilingual সাপোর্ট - গ্র্যাভ (Grav) - Web Development

203

Grav CMS একটি অত্যন্ত নমনীয় কনটেন্ট ম্যানেজমেন্ট সিস্টেম (CMS), যা Multilingual সাইট তৈরি করার জন্য শক্তিশালী ফিচার প্রদান করে। এর মাধ্যমে আপনি বিভিন্ন ভাষায় সাইটের কনটেন্ট এবং URLs পরিচালনা করতে পারেন। Grav এ Multilingual URLs এবং ভাষার ভিত্তিতে পেজ ফিল্টারিং কার্যকরভাবে কনফিগার করা যায়, যা আপনার সাইটকে গ্লোবাল দর্শকদের জন্য উপযোগী করে তোলে।

এই গাইডে, আমরা Multilingual URLs এবং ভাষার ভিত্তিতে পেজ ফিল্টারিং নিয়ে আলোচনা করব, যাতে আপনি সাইটের একাধিক ভাষায় কনটেন্ট এবং ইউআরএল পরিচালনা করতে পারেন।


Multilingual URLs কি?

Multilingual URLs হল সাইটের এমন ইউআরএল গঠন, যা বিভিন্ন ভাষার জন্য আলাদা আলাদা রাউট এবং কনটেন্ট প্রদর্শন করে। Grav-এ আপনি সাইটের বিভিন্ন ভাষার জন্য আলাদা আলাদা পেজ তৈরি করতে পারেন এবং প্রতিটি ভাষার জন্য পৃথক ইউআরএল ব্যবহার করতে পারেন।

Grav-এ multilingual সাইট কনফিগার করতে, আপনাকে সাইটের কনফিগারেশন ফাইল এবং পেজগুলির মধ্যে কিছু সেটিংস পরিবর্তন করতে হবে।


Grav এ Multilingual সাইট কনফিগারেশন

Grav-এ Multilingual সাইট তৈরি করার জন্য আপনাকে প্রথমে কিছু কনফিগারেশন করতে হবে। Grav এর languages.yaml ফাইল এবং page ফাইলের মাধ্যমে আপনি সাইটের ভাষা নির্ধারণ করতে পারবেন।

১. languages.yaml কনফিগারেশন

প্রথমে user/config/system.yaml ফাইলে Multilingual অপশনটি সক্রিয় করুন এবং ভাষাগুলোর জন্য কনফিগারেশন সেট করুন:

languages:
  supported: ['en', 'fr', 'es']
  default: en
  translations: true
  fallback_locale: en

এখানে:

  • supported: আপনি যে ভাষাগুলো সাইটে সমর্থন করতে চান সেগুলোর লিস্ট।
  • default: ডিফল্ট ভাষা (যেমন ইংরেজি en)।
  • translations: এই অপশনটি সাইটের ভাষার অনুবাদ সক্রিয় করে।
  • fallback_locale: যদি কোনো নির্দিষ্ট ভাষার কনটেন্ট না থাকে, তবে এটি ডিফল্ট ভাষায় ফিরে যাবে।

২. পেজে ভাষা নির্ধারণ

আপনার সাইটের প্রতিটি পেজের জন্য আলাদা আলাদা ভাষা নির্ধারণ করতে হবে। এটি user/pages/ ফোল্ডারে পেজের .md ফাইলের মধ্যে করা হয়।

যেমন, যদি আপনি একটি পেজের জন্য ইংরেজি এবং ফরাসি ভাষা ব্যবহার করতে চান:

/user/pages/01.home/default.md (ইংরেজি):

title: "Welcome"
language: en

/user/pages/01.home/fr/default.md (ফরাসি):

title: "Bienvenue"
language: fr

এখানে, সাইটে 01.home পেজের ইংরেজি এবং ফরাসি ভার্সন আলাদা আলাদা কনটেন্ট এবং শিরোনাম দিয়ে তৈরি করা হয়েছে।


Multilingual URLs কনফিগারেশন

Grav-এ Multilingual URLs ব্যবহার করার জন্য আপনাকে কিছু কনফিগারেশন সেট করতে হবে, যাতে প্রতিটি ভাষার জন্য আলাদা আলাদা ইউআরএল তৈরি হয়।

১. URL স্ট্রাকচার কনফিগার করা

Grav এর কনফিগারেশন ফাইলে routes অপশন ব্যবহার করে ভাষাভিত্তিক ইউআরএল স্ট্রাকচার কাস্টমাইজ করা যায়। উদাহরণস্বরূপ:

routes:
  en: /en
  fr: /fr
  es: /es

এটি নিশ্চিত করবে যে:

  • ইংরেজি পেজের জন্য ইউআরএল হবে /en/
  • ফরাসি পেজের জন্য ইউআরএল হবে /fr/
  • স্প্যানিশ পেজের জন্য ইউআরএল হবে /es/

এখন, আপনার সাইটের জন্য ভাষার ভিত্তিতে আলাদা আলাদা ইউআরএল পাওয়া যাবে, যা ভাষা পরিবর্তনের সময় গ্রাহকদের সঠিক কনটেন্ট দেখাবে।


ভাষার ভিত্তিতে পেজ ফিল্টারিং

Grav-এ আপনি সহজেই ভাষার ভিত্তিতে পেজ ফিল্টার করতে পারেন। এটি একটি শক্তিশালী পদ্ধতি, যেখানে আপনি শুধুমাত্র নির্দিষ্ট ভাষার কনটেন্ট প্রদর্শন করতে পারেন, যাতে ব্যবহারকারীরা তাদের পছন্দের ভাষায় কনটেন্ট দেখতে পায়।

১. ভাষার ভিত্তিতে পেজ ফিল্টারিং

যেমন, আপনি যদি চান যে একটি নির্দিষ্ট ভাষার পেজ শুধুমাত্র প্রদর্শিত হবে, তাহলে Twig টেমপ্লেট ফাইলে ভাষার ভিত্তিতে পেজ ফিল্টার করতে পারেন:

{% for page in pages.children %}
    {% if page.language == grav.language.getActive() %}
        <h2><a href="{{ page.url }}">{{ page.title }}</a></h2>
    {% endif %}
{% endfor %}

এখানে:

  • grav.language.getActive() একটিভ ভাষা হিসেবে ব্যবহৃত হবে (যেমন en, fr, বা es)।
  • এটি কেবলমাত্র সেই ভাষার পেজগুলোই প্রদর্শন করবে যা বর্তমান ভাষার সাথে মেলে।

২. ভাষার ভিত্তিতে কাস্টম পেজ ফিল্টার

যদি আপনি চান যে, একটি নির্দিষ্ট ভাষার পেজ একটি নির্দিষ্ট ক্যাটেগরি বা ট্যাগের উপর ভিত্তি করে প্রদর্শিত হবে, তাহলে এটি এভাবে করতে পারেন:

{% for page in pages.find('/blog').children %}
    {% if page.language == grav.language.getActive() and 'technology' in page.taxonomy.category %}
        <h2><a href="{{ page.url }}">{{ page.title }}</a></h2>
    {% endif %}
{% endfor %}

এখানে, কেবলমাত্র technology ক্যাটেগরির পেজগুলি সেই ভাষায় প্রদর্শিত হবে যা ব্যবহারকারী নির্বাচন করেছে।


Grav Multilingual সাইটের সুবিধাসমূহ

  1. বিভিন্ন ভাষায় সাইট কনটেন্ট প্রদর্শন: Grav এর মাধ্যমে আপনি একাধিক ভাষায় সাইটের কনটেন্ট তৈরি করতে পারেন, যা আন্তর্জাতিক দর্শকদের জন্য উপযোগী করে তোলে।
  2. ভাষার ভিত্তিতে কনটেন্ট ফিল্টারিং: Grav আপনাকে ভাষার ভিত্তিতে কনটেন্ট ফিল্টার করতে সহায়তা করে, যাতে ব্যবহারকারী তাদের পছন্দের ভাষায় কনটেন্ট দেখতে পায়।
  3. ইউআরএল স্ট্রাকচার কাস্টমাইজেশন: আপনি সহজেই ভাষাভিত্তিক ইউআরএল স্ট্রাকচার কাস্টমাইজ করতে পারেন, যেমন /en/, /fr/, /es/
  4. SEO সহায়ক: Grav এর multilingual সিস্টেম সার্চ ইঞ্জিন অপটিমাইজেশন (SEO) উন্নত করতে সাহায্য করে, কারণ এটি ভাষা ভিত্তিক কনটেন্টকে আলাদা করে এবং সঠিক ভাষার কনটেন্ট প্রদর্শন করে।
  5. ইউজার-বান্ধব: Grav এর মাধ্যমে বিভিন্ন ভাষায় কনটেন্ট প্রদান করা খুবই সহজ এবং সাইটের দর্শকদের জন্য একটি সহজ, এক্সপ্লোরযোগ্য অভিজ্ঞতা তৈরি করা যায়।

সারাংশ

Grav CMS-এ Multilingual URLs এবং ভাষার ভিত্তিতে পেজ ফিল্টারিং একটি শক্তিশালী উপায় যা আন্তর্জাতিক সাইট পরিচালনার ক্ষেত্রে সহায়ক। Grav এর মাধ্যমে আপনি একাধিক ভাষায় কনটেন্ট তৈরি করতে পারেন, ভাষার ভিত্তিতে কনটেন্ট প্রদর্শন করতে পারেন এবং ইউআরএল কাস্টমাইজ করে একটি পরিপূর্ণ মাল্টি-ল্যাঙ্গুয়েজ সাইট তৈরি করতে পারেন। Grav এর এই ফিচারগুলো আপনার সাইটের বৈশ্বিক দর্শকদের জন্য আরও অ্যাক্সেসযোগ্য এবং কার্যকরী করে তোলে।

Content added By
Promotion

Are you sure to start over?

Loading...