Grav CMS ব্যবহারকারীদের একটি খুবই নমনীয় কনফিগারেশন ফাইল সিস্টেম প্রদান করে, যা YAML (YAML Ain't Markup Language) ফরম্যাটে থাকে। Grav-এর প্রধান কনফিগারেশন ফাইলগুলি config/system.yaml এবং config/site.yaml। এই ফাইলগুলির মাধ্যমে সাইটের মূল কনফিগারেশন সেটিংস এবং সিস্টেমের আচরণ নিয়ন্ত্রণ করা হয়। এখানে আমরা এই দুটি ফাইলের বিভিন্ন সেটিংস এবং তাদের কার্যকারিতা সম্পর্কে বিস্তারিতভাবে আলোচনা করব।
1. config/system.yaml
system.yaml ফাইলটি Grav এর সিস্টেম সেটিংস ধারণ করে। এখানে আপনি Grav এর কার্যকারিতা, নিরাপত্তা, পারফরম্যান্স, এবং অন্যান্য সিস্টেম সম্পর্কিত সেটিংস কনফিগার করতে পারবেন। এটি সাইটের সার্বিক কার্যকারিতার জন্য অত্যন্ত গুরুত্বপূর্ণ।
system.yaml ফাইলের কিছু প্রধান সেটিংস:
timezone:timezone: 'UTC'এই সেটিংটি সাইটের টাইমজোন নির্ধারণ করে। আপনি আপনার অঞ্চলের টাইমজোন সেট করতে পারেন (যেমন
Asia/DhakaবাAmerica/New_York)।languages:languages: supported: - en - bnএই সেটিংটি সাইটে ব্যবহার করা ভাষাগুলি নির্ধারণ করে। এখানে আপনি একাধিক ভাষা যোগ করতে পারবেন। এটি মাল্টি-ল্যাঙ্গুয়েজ সাইটগুলির জন্য ব্যবহার করা হয়।
cache:cache: enabled: true lifetime: 604800Grav সাইটের ক্যাশিং সম্পর্কিত সেটিংস। এখানে আপনি ক্যাশিং চালু বা বন্ধ করতে পারেন এবং ক্যাশের জীবনের সময় (লাইফটাইম) নির্ধারণ করতে পারেন।
lifetimeমানটি সেকেন্ডে নির্ধারিত হয় (যেমন 604800 সেকেন্ড = ১ সপ্তাহ)।debugger:debugger: enabled: false shutdown: enabled: trueএই সেটিংটি ডিবাগ মোড চালু বা বন্ধ করতে ব্যবহৃত হয়। এটি ডেভেলপারদের জন্য সহায়ক, যখন আপনাকে সাইটের ডিবাগিং তথ্য দেখতে হয়।
shutdown.enabledসেটিংটি ডিবাগ মোড বন্ধ হওয়ার পর লগ আউটপুট চালু রাখে।security:security: salt: random_generated_salt_valueএই সেটিংটি সাইটের নিরাপত্তা উন্নত করতে ব্যবহৃত হয়। এখানে একটি
saltমান তৈরি করা হয়, যা পাসওয়ার্ড এনক্রিপশনে ব্যবহৃত হয়।media:media: default_image_quality: 90এই সেটিংটি সাইটে আপলোড করা ইমেজের ডিফল্ট কোয়ালিটি নির্ধারণ করে। এখানে আপনি ইমেজ কোয়ালিটি মান সেট করতে পারেন, সাধারণত ০ থেকে ১০০ এর মধ্যে।
2. config/site.yaml
site.yaml ফাইলটি Grav সাইটের কনটেন্ট এবং ডিজাইন সম্পর্কিত কনফিগারেশন ধারণ করে। এটি আপনার সাইটের নাম, মেটা ডেটা, থিম এবং কাস্টম কনফিগারেশন সেটিংস পরিচালনা করতে ব্যবহৃত হয়।
site.yaml ফাইলের কিছু প্রধান সেটিংস:
title:title: 'My Grav Website'এই সেটিংটি সাইটের নাম বা শিরোনাম নির্ধারণ করে। এটি সাইটের হেডারের মধ্যে প্রদর্শিত হবে এবং SEO (Search Engine Optimization) জন্যও গুরুত্বপূর্ণ।
default_lang:default_lang: enএই সেটিংটি সাইটের ডিফল্ট ভাষা নির্ধারণ করে। আপনি যদি মাল্টি-ল্যাঙ্গুয়েজ সাইট পরিচালনা করেন, তবে এই সেটিংটি গুরুত্বপূর্ন।
author:author: 'John Doe'সাইটের লেখক বা প্রতিষ্ঠাতার নাম এখানে দেওয়া হয়, যা মেটা ডেটা বা সাইটের ফুফুটে (footer) প্রদর্শিত হতে পারে।
description:description: 'A personal blog about technology and lifestyle.'এই সেটিংটি সাইটের মেটা ডেসক্রিপশন হিসেবে ব্যবহৃত হয়। এটি SEO এর জন্য গুরুত্বপূর্ণ, কারণ এটি সার্চ ইঞ্জিনগুলিতে সাইটের বর্ণনা প্রদান করে।
theme:theme: antimatterএই সেটিংটি সাইটের ডিফল্ট থিম নির্ধারণ করে। আপনি Grav এর বিভিন্ন থিম ব্যবহার করতে পারেন এবং এই সেটিং দিয়ে তা কনফিগার করতে পারেন।
taxonomies:taxonomies: category: categories tag: tagsএই সেটিংটি সাইটের ট্যাক্সোনমি পরিচালনা করতে ব্যবহৃত হয়। এটি সাইটের কনটেন্ট যেমন পেজ বা ব্লগ পোস্টের জন্য ট্যাগ এবং ক্যাটেগরি নির্ধারণ করে।
homepage:homepage: /homeএই সেটিংটি সাইটের হোমপেজ বা মূল পেজের URL নির্ধারণ করে। এটি পেজের জন্য একটি পাথ হিসেবে কাজ করে।
সারাংশ
Grav CMS এর কনফিগারেশন ফাইলগুলি অত্যন্ত নমনীয় এবং সম্পূর্ণ সাইট কনফিগারেশনের জন্য গুরুত্বপূর্ণ। system.yaml ফাইলটি সিস্টেমের পারফরম্যান্স, ক্যাশিং, নিরাপত্তা এবং অন্যান্য সিস্টেম সেটিংস নিয়ন্ত্রণ করে, যেখানে site.yaml ফাইলটি সাইটের কনটেন্ট, থিম, মেটা ডেটা এবং অন্যান্য কাস্টম সেটিংস ধারণ করে। এই ফাইলগুলি সম্পাদনা করে আপনি আপনার Grav সাইটের কার্যকারিতা ও ডিজাইন কাস্টমাইজ করতে পারেন।
Read more