Languages: বাংলা • English • 日本語 한국어 • Português do Brasil • Русский • 中文(简体) • 中文(繁體) • Español • (Add your language)
এই নিবন্ধটি ওয়ার্ডপ্রেসের থিম তৈরি বিষয়ক। আপনি যদি থিম ইন্সটল এবং ব্যবহার বিষয়ে আরো জানতে চান, তাহলে থিমের ব্যবহার দেখুন। এই বিষয়টি থিমের ব্যবহার থেকে আলাদা কারণ এখানে নতুন থিম কোথায় পাওয়া যাবে, কিংবা কিভাবে থিম কার্যকর করা হবে ইত্যাদির আলোচনা না করে, আপনার নিজস্ব থিমের কোড লেখার কারিগরি দিকটি আলোচিত হবে।
ওয়ার্ডপ্রেস থিম হলো এমন কিছু ফাইল, যা একটা ওয়ার্ডপ্রেসের সাইটে ডিযাইন এবং কার্যকারিতায় সম্মিলিতভাবে কাজ করে। প্রত্যেকটা থিম আলাদা আলাদাভাবে সাইটের মালিককে তাৎক্ষণিকভাবে ওয়েবসাইটের চেহারা বদলে দিতে বিভিন্ন পছন্দের সুযোগ দিতে পারে।
আপনি আপনার নিজের ব্যবহারের জন্য, ক্লায়েন্টের প্রজেক্টের জন্য কিংবা ওয়ার্ডপ্রেস থিম সংগ্রহশালায় জমা দেবার জন্য ওয়ার্ডপ্রেস থিম তৈরি করার ইচ্ছাপোষণ করতে পারেন। কেন আপনাকে একটা ওয়ার্ডপ্রেস থিম তৈরি করতে হতে পারে?
কেন আপনাকে আপনার নিজস্ব ওয়ার্ডপ্রেস থিম তৈরি করতে হতে পারে? এটা একটা বাস্তবসম্মত প্রশ্ন বটে।
ওয়ার্ডপ্রেস থিম নিম্নলিখিত মানদণ্ড অনুযায়ী লিখিত হওয়া উচিত:
ওয়ার্ডপ্রেস থিমগুলি ওয়ার্ডপ্রেসের themes ডাইরেক্টরিতে(wp-content/themes) অবস্থান করে এবং wp-config.php ফাইল ব্যবহার করে এগুলিকে সরাসরি স্থানান্তরিত করা সম্ভব নয়। থিমের সাব-ডিরেক্টরি সমস্ত থিমের stylesheet, template, function.php, জাভাস্ক্রিপ্ট ফাইল এবং চিত্রগুলি ধারণ করে। উদাহরণস্বরূপ, test নামের একটি থিম wp-content/themes/test ডিরেক্টরিতে রক্ষিত হবে। থিমের নামকরণের জন্য কোন সংখ্যা ব্যবহার করা থেকে বিরত থাকুন, কারণ এই নামকরণ থিমকে উপলভ্য থিম তালিকায় প্রদর্শিত হতে বাধা দেয়।
ওয়ার্ডপ্রেস প্রতিটি নতুন ইনস্টলেশনে একটি করে ডিফল্ট থিম অন্তর্ভুক্ত করে। আপনার নিজের থিম ফাইলগুলি কীভাবে তৈরি করবেন সে সম্পর্কে আরও ভাল ধারণা পেতে মনোযোগ সহকারে ডিফল্ট থিমের ফাইলগুলি পরীক্ষা করুন।
দৃশ্যমান নির্দেশিকা পেতে infographic on WordPress Theme Anatomy লিঙ্কটি খুলে দেখতে পারেন। এখান থেকে আপনি খুব ভাল একটা ধারনা পেয়ে যাবেন।
ওয়ার্ডপ্রেস থিমগুলিতে চিত্র এবং জাভাস্ক্রিপ্ট ফাইলগুলি ছাড়াও তিনটি প্রধান ধরণের ফাইল থাকে।
আসুন এক এক করে ফাইল গুলিকে পর্যালোচনা করা যাক।
সহজতম থিমটি হল চাইল্ড থিম যা কেবল একটিমাত্র সিএসএস ফাইল এবং কোনও ছবি নিয়ে থাকে। এটি সম্ভব কারণ এটি অন্য থিমের একটি অংশ যা তার প্যারেন্ট থিমের মতই কাজ করে। চাইল্ড থিম সম্পর্কে আরও বিস্তারিত জানতে, দেখুন Child Themes.
দৃশ্যগত উপস্থাপনা বা ভিসুয়াল প্রেসেন্টেশন ছাড়াও style.css আপনার থিম সম্পর্কে বিশদ তথ্য কমেন্ট আকারে সরবরাহ করে। সুতরাং থিম তৈরী শুরু করার আগেই আপনার উচিৎ হবে style.css ফাইলের শিরনামে মন্তব্যের আকারে(/* css comment */) থিমের সংক্ষিপ্ত বিবরণ লিখে রাখার। কোনও দুটি থিমকে তাদের মন্তব্য শিরোনামে একই তথ্য তালিকাভুক্ত রাখার অনুমতি নেই, কারণ এটি থিম নির্বাচন সংলাপে সমস্যা সৃষ্টি করবে। যদি আপনি বিদ্যমান থীমটি অনুলিপি করে নিজের থিম তৈরি করেন তবে নিশ্চিত হয়ে নিন যে আপনি প্রথমে এই তথ্যটি পরিবর্তন করেছেন।
"Twenty Thirteen” থিম যে স্টাইলশিট ব্যবহার করছে তার শিরোনামের প্রথম কয়েকটি লাইনের উদাহরণ নীচে দেওয়া হয়েছে:
/* Theme Name: Twenty Thirteen Theme URI: http://wordpress.org/themes/twentythirteen Author: the WordPress team Author URI: http://wordpress.org/ Description: The 2013 theme for WordPress takes us back to the blog, featuring a full range of post formats, each displayed beautifully in their own unique way. Design details abound, starting with a vibrant color scheme and matching header images, beautiful typography and icons, and a flexible layout that looks great on any device, big or small. Version: 1.0 License: GNU General Public License v2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html Tags: black, brown, orange, tan, white, yellow, light, one-column, two-columns, right-sidebar, flexible-width, custom-header, custom-menu, editor-style, featured-images, microformats, post-formats, rtl-language-support, sticky-post, translation-ready Text Domain: twentythirteen This theme, like WordPress, is licensed under the GPL. Use it to make something cool, have fun, and share what you've learned with others. */
বিশেষ দ্রষ্টব্যঃ "Author” এর জন্য ব্যবহৃত নামটি থিম প্রস্তুতকারকের wordpress.org username হিসাবে ব্যবহার করার প্রস্তাব দেওয়া হয়, যদিও এটি লেখকের আসল নামও হতে পারে। পছন্দটি থিম প্রস্তুতকারকের।
থিমটি বর্ণনা করতে ব্যবহৃত ট্যাগগুলির তালিকাটি নোট করুন। এটি ট্যাগ ফিল্টার ব্যবহার করে ব্যবহারকারীকে আপনার থিমটি সন্ধান করতে সাহায্য করে। থিম পর্যালোচনা হ্যান্ডবুকটিতে আপনি একটি সম্পূর্ণ তালিকা পেতে পারেন।
ওয়ার্ডপ্রেস যাতে আপনার থিমকে সনাক্ত করতে সক্ষম হয় এবং যাতে "Administration Panel” এর Design > Themes এ যাতে অন্যান্য থিমের পাশাপাশি আপনার থিমকেও দেখাতে পারে, সেজন্য style.css এর শিরোনামে ব্যবহৃত মন্তব্যগুলি ব্যবহার করা একান্তই আবশ্যক।
কোনও থিম ঐচ্ছিকভাবে একটি ফাংশন ফাইল ব্যবহার করতে পারে, যা থিমের সাব-ডিরেক্টরিতে থাকে এবং নাম দেওয়া হয় functions.php. এই ফাইলটি মূলত একটি প্লাগইনের মতো কাজ করে এবং আপনি যে থিমটি ব্যবহার করছেন তা যদি উপস্থিত থাকে তবে এটি স্বয়ংক্রিয়ভাবে ওয়ার্ডপ্রেস শুরুর সময় লোড হয় (অ্যাডমিন এবং বাহ্যিক পৃষ্ঠাগুলির জন্য)। এই ফাইলটির জন্য প্রস্তাবিত ব্যবহারগুলি হল:
ডিফল্ট ওয়ার্ডপ্রেস থিমটিতে একটি functions.php ফাইল রয়েছে যা এই বৈশিষ্ট্যগুলির অনেক কিছুকেই সঙ্গায়িত করে, তাই আপনি চাইলে এটিকে একটি মডেল হিসাবে ব্যবহার করতে পারেন। যেহেতু functions.php মূলত প্লাগইন হিসাবে কাজ করে, তাই এই ফাইলটি দিয়ে আপনি কী করতে পারেন সে সম্পর্কে আরও তথ্যের জন্য Function_Reference তালিকাটি সেরা জায়গা।
functions.php ফাইলে বা নির্দিষ্ট প্লাগইনে কখন ফাংশন যুক্ত করতে হবে তা সিদ্ধান্ত নেওয়ার জন্যঃ অনেক সময় আপনি দেখবেন আপনার তৈরী করা একটি ফাংশন একাধিক প্যারেন্ট থিমের জন্য প্রয়োজন হতে পারে। এই সমস্ত পরিস্থিতিতে নির্দিষ্ট থিমের জন্য একটি functions.php ব্যবহারের পরিবর্তে ফাংশনটি plugin অংশে তৈরি করা উচিত। এটি টেমপ্লেট ট্যাগ এবং অন্যান্য নির্দিষ্ট ফাংশন অন্তর্ভুক্ত করতে পারে। প্লাগইনগুলিতে থাকা ফাংশনগুলি সমস্ত থিম ব্যবহার করতে পারে।
Templates হল পিএইচপি সোর্স ফাইল যা দর্শকদের দ্বারা অনুরোধ করা পৃষ্ঠাগুলি তৈরি করতে ব্যবহৃত হয় এবং এটি HTML আকারে দেখায়। টেমপ্লেট ফাইলগুলি এইচটিএমএল, পিএইচপি এবং WordPress Template Tags দিয়ে তৈরি।
আসুন দেখে নেওয়া যাক বিভিন্ন টেম্পলেট যেগুলিকে থিমের অংশ হিসাবে সংজ্ঞায়িত করা যায়। ওয়ার্ডপ্রেস আপনাকে আপনার সাইটের বিভিন্ন দৃষ্টিভঙ্গির জন্য পৃথক টেম্পলেট সঙ্গায়িত করতে অনুমতি দেয়। যদিও আপনার সাইটকে সম্পূর্ণরূপে কাজ করার জন্য এই সমস্ত বিভিন্ন টেম্পলেট ফাইল থাকা অপরিহার্য নয়। নির্দিষ্ট থিমটিতে কী টেমপ্লেটগুলি পাওয়া যায় তার উপর নির্ভর করে টেম্পলেটগুলি Template Hierarchy এর উপর ভিত্তি করে নির্বাচিত এবং উত্পন্ন হয়।
থিম ডেভেলপার হিসাবে আপনি টেমপ্লেটগুলি ব্যবহার করে যে পরিমাণ কাস্টমাইজেশন প্রয়োগ করতে চান তা চয়ন করতে পারেন। উদাহরণস্বরূপ, বেশিরভাগ ক্ষেত্রে, আপনি কেবলমাত্র index.php নামে পরিচিত একটি টেম্পলেট ফাইল ব্যবহার করতে পারেন, যা সাইটের দ্বারা উত্পন্ন এবং প্রদর্শিত সমস্ত পৃষ্ঠাগুলির জন্য টেমপ্লেট হিসাবে ব্যবহার করে। সর্বাধিক সাধারণ ব্যবহার হল বিভিন্ন উৎপাদিত ফলাফলের জন্য বিভিন্ন টেম্পলেট ফাইল ব্যবহার করা যার ফলে সাইটকে আরও ভালভাবে কাস্টমাইজেশন করা সম্ভব হয়।
ওয়ার্ডপ্রেস দ্বারা স্বীকৃত থিম ফাইলগুলির তালিকা এখানে দেওয়া হয়েছে। অবশ্যই, আপনার থিমটিতে অন্য কোনও স্টাইলশিট, চিত্র বা ফাইল থাকতে পারে। মনে রাখবেন যে ওয়ার্ডপ্রেসের সাথে নিম্নলিখিতগুলির বিশেষ অর্থ রয়েছে - আরও তথ্যের জন্য Template Hierarchy অংশটি দেখুন।
এই ফাইলগুলির ওয়ার্ডপ্রেস সম্পর্কিত একটি বিশেষ অর্থ রয়েছে কারণ এটি Template Hierarchy অনুসারে, যখন উপলভ্য হয় এবং যখন সংশ্লিষ্ট Conditional Tag true return করে তখন index.php প্রতিস্থাপন হিসাবে ব্যবহৃত হয়। উদাহরণস্বরূপ, যদি কেবল একটি একক পোস্ট প্রদর্শিত হয়, is_single() ফাংশনটি true return করে এবং সক্রিয় থিমটিতে যদি একটি single.php ফাইল থাকে তবে সেই টেমপ্লেটটি পৃষ্ঠাটি তৈরি করতে ব্যবহৃত হয়।