ওয়ার্ডপ্রেসে টাইটেল ট্যাগ ডাইনামিক করার বিভিন্নরকম পদ্ধতি আছে। তবে, সেটা হয়তো আপনার চাহিদাকে সন্তুষ্ট করার জন্য যথেষ্ট হবে না। এজন্য, আপনাকে হয় প্লাগিনের উপর নির্ভর করতে হবে অথবা নিজে নিজে কোডিং করে নিতে হবে। মার্কেটে অনেক ভালো ভালো ফ্রি প্লাগিন আছে এই কাজের জন্য। এর মধ্যে All in One SEO Pack এবং WordPress SEO by Yoast উল্লেখযোগ্য। এগুলোর সাহায্যে ব্যবহারকারীরা সহজেই বিভিন্ন পেজের জন্য বিভিন্ন ধরনের কাস্টম শিরোনাম উল্লেখ করতে পারবে।
যাই হোক না কেন, অনেকেই আছে যারা চেষ্টা করে যতটা সম্ভব কম প্লাগিন ব্যবহার করার। আবার অনেকে আছে যারা নিজে নিজে কোডিং করতে ভালোবাসে। যারা প্লাগিন ছাড়াই নিখুঁতভাবে ওয়ার্ডপ্রেস টাইটেল ট্যাগ তৈরি করতে চান, আশা করি আজকের টিপসটি নিশ্চিতভাবে তাদেরকে তা করতে সাহায্য করবে।
টাইটেল ট্যাগ যেকোনো ওয়েবসাইটের <head> সেকশনের মধ্যে ব্যবহৃত হয়। ডাইনামিকভাবে তৈরিকৃত সাইট, যেমন ওয়ার্ডপ্রেস দ্বারা চালিত সাইটে বিভিন্ন ধরনের পেজ বিদ্যমান, এগুলোর মধ্যে হলোঃ
...এবং আরও অনেকরকম। ওয়ার্ডপ্রেসে ডাইনামিক টাইটেল সাধারণত থিমের header.php ফাইলে জেনারেট করা হয়, (এক্স) এইচটিএমএল এবং পিএইচপি এর সমন্বয়ে। এবার আমরা দেখবো কিভাবে এইসকল পেজগুলোতে ডাইনামিক টাইটেল ট্যাগ জেনারেট করতে হয়।
ওয়ার্ডপ্রেসে টাইটেল ট্যাগ জেনারেট করার একটা বেসিক উদাহরণ হলোঃ
<title><?php bloginfo('name'); ?><?php wp_title(); ?></title>
...যা প্রত্যেকটি পেজের জন্যই আলাদা টাইটেল দেখাবে নিচে উল্লেখিত ফরম্যাটেঃ
Blog Name >> Title of Displayed Page
অবশ্যই, এই ফরম্যাটেই কাজ সম্পন্ন হয়ে যায়, কিন্তু এটাকে আরও স্পষ্টভাবে উন্নত করা সম্ভব। উদাহরণস্বরূপ, পেজ টাইটেলকে ব্লগ টাইটেলের পূর্বে উল্লেখ করলে পেজের SEO মান বৃদ্ধি পায়। এটা পেজের উদ্দেশ্য পাঠকের কাছে আরও স্পষ্টভাবে ফুটিয়ে তুলে পেজের ব্যবহারযোগ্যতারও উন্নতি সাধন করে। কারন, পাঠকরা সবসময় একটি নির্দিষ্ট বিষয়বস্তুর অনুসন্ধান করে, ব্লগের নাম না। নিচে ব্লগ নেম এবং পেজ টাইটেলের অবস্থা বিপরীত করার পদ্ধতি উল্লেখ করা হলো, যা ওয়ার্ডপ্রেস ২.৫+ এর জন্য প্রযোজ্যঃ
<title><?php wp_title('»','true','right'); ?><?php bloginfo('name'); ?></title>
...যা এখন হোম পেজ ব্যতীত প্রত্যেকটি পেজে টাইটেল দেখাবে নিচের মতো করেঃ
Title of Displayed Page >> Blog Name
...এবং হোম পেজে শুধুমাত্র ব্লগের নাম প্রদর্শিত হবে।
২.৫ এর আগের ভার্শনে এই কোড কাজ করবে না। আগের ভার্শনে টাইটেল ডাইনামিক করতে চাইলে হয় নিচের কোডটি কাজ করবেঃ
<title><?php wp_title(''); ?><?php if (!(is_404()) && (is_single()) || (is_page()) || (is_archive())) { ?> » <?php } ?><?php bloginfo('name'); ?></title>
অথবা, নিচের কোডটিঃ
<title><?php wp_title(''); ?><?php if(wp_title('', false)) { echo ' » '; } ?><?php bloginfo('name'); ?></title>
ডিফল্টভাবে, wp_title() ট্যাগ পেজের ধরনের উপর নির্ভর করে নিচের তথ্যগুলো প্রদর্শন করেঃ
সুতরাং, আমরা ইতিমধ্যেই টাইটেল ট্যাগ মোটামুটি নিখুঁতভাবে কনফিগার করার পদ্ধতি শিখে ফেললাম। চাইলে এতটুকুর মধ্যেই সন্তুষ্ট থাকা যায়, কিন্তু এটাকে ঠিক পুরোপুরি নিখুঁত বলা যায় না। পুরোপুরিভাবে নিখুঁত করতে হলে আপনাকে প্রত্যেকটি পেজ উল্লেখ করে নির্দিষ্টভাবে টাইটেল ট্যাগ কনফিগার করতে হবে।
এবার আমরা দেখবো আরও পরিনতভাবে কি করে টাইটেল ট্যাগ কনফিগার করা যায়। ওয়ার্ডপ্রেসে বিভিন্ন পেজ নির্দিষ্ট করে বোঝানোর জন্য পেজ অনুযায়ী বিভিন্ন ফাংশন আছে, যেমনঃ
এইসকল কোড ব্যবহার করে নির্দিষ্টভাবে একটি পেজকে চেনানো সম্ভব। এজন্য কন্ডিশনের মাধ্যমে কোডগুলোকে ব্যবহার করে প্রত্যেকটি পেজের জন্য নির্দিষ্ট করে টাইটেল ট্যাগ কনফিগার করতে হবে। এটি করার জন্য থিমের header.php ফাইলে head সেকশনের মধ্যে বিদ্যমান title ট্যাগকে নিচের কোডদ্বারা প্রতিস্থাপন করতে হবেঃ
<title><?php if (is_home() || is_front_page()) { echo bloginfo('description'); } else { if (is_category()) { echo 'All posts by ' . single_cat_title('', false) . ' category | ' . bloginfo('name'); } elseif (is_tax()) { $post_type = get_post_type_object(get_post_type()); $queried_object = get_queried_object(); echo 'All posts by ' . $queried_object->name . ' category of ' . $post_type->labels->name . ' | ' . bloginfo('name'); } elseif (is_search()) { echo 'Search results for ' . get_search_query() . ' | ' . bloginfo('name'); } elseif (is_day()) { echo 'Archive page for ' . get_the_time('F') . ' ' . get_the_time('d') . ', ' . get_the_time('Y') . ' | ' . bloginfo('name'); } elseif (is_month()) { echo 'Archive page for ' . get_the_time('F') . ' ' . get_the_time('Y') . ' | ' . bloginfo('name'); } elseif (is_year()) { echo 'Archive page for ' . get_the_time('Y') . ' | ' . bloginfo('name'); } elseif (is_single() || is_page()) { echo get_the_title() . ' | ' . bloginfo('name'); } elseif (!is_single() && !is_page() && get_post_type() != 'post' && !is_404()) { $post_type = get_post_type_object(get_post_type()); echo 'Page for ' . $post_type->labels->name . ' | ' . bloginfo('name'); } elseif (is_tag()) { echo 'All posts by ' . single_tag_title('', false) . ' post tag | ' . bloginfo('name'); } elseif (is_author()) { $author = get_queried_object(); echo 'Archive page for author ' . $author->display_name . ' | ' . bloginfo('name'); } elseif (is_404()) { echo '404 error - page not found | ' . bloginfo('name'); } if (get_query_var('paged')) { if (is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author() || is_tax()) echo ' - '; echo __('page') . ' ' . eng_to_ban(get_query_var('paged')); } } ?></title>
আশা করি, উপরের কোডটুকু যথেষ্ট সহযোগিতা করবে নির্দিষ্ট চাহিদা অনুযায়ী টাইটেল ট্যাগ কনফিগার করতে। উদাহরণস্বরূপ, আপনার হয়তো হোম পেজের জন্য ভিন্নরকম শিরনামের প্রয়োজন। উপরের কোডের সাহায্যে খুব সহজেই হোম পেজে চাহিদা অনুযায়ী শিরোনাম উল্লেখ করা যাবে। উল্লেখ্য, এখানে আমি আর্কাইভ পেজকে (is_archive()) নির্দিষ্ট করে কল না করে day, month এবং year হিসেবে কল করেছি যাতে করে আরও স্পষ্টভাবে টাইটেল ট্যাগ কনফিগার করা যায়। আপনি চাইলে শুধু is_archive() ব্যবহার করেও এই কাজ করতে পারেনঃ
} elseif (is_archive()) { wp_title(''); echo ' Archive | '; bloginfo('name'); }
এছাড়াও, নির্দিষ্টভাবে কোন কাস্টম টিউন টাইপ পেজকে উল্লেখ করতে চাইলে নিচের কোডটি লিখতে পারেনঃ
} elseif (get_post_type() == 'custom-post') { $post_type = get_post_type_object(get_post_type()); echo 'Page for ' . $post_type->labels->name . ' | ' . bloginfo('name'); }
যাই হোক, উপরের কোডের সহযোগিতায় এখন আপনি খুব সহজেই কাস্টম টাইটেল ট্যাগ জেনারেট করতে পারবেন নিজের চাহিদা অনুযায়ী। আমাকে কিন্তু অনেক কষ্ট করতে হয়েছে এই কোডটুকু লিখতে। অনেকগুলো সাইট ঘেঁটে ঘেঁটে আমাকে এই কোডটুকু বের করতে হয়েছে, যা আপনি এখন সহজেই পেয়ে গেলেন!
আজকের মতো এ পর্যন্তই, আশা করি টিপসটি আপনাদের উপকারে লাগবে। আগামীতে ইন-শা-আল্লাহ আরও নতুন কোন টিপস নিয়ে হাজির হবো।
টিউনটি সর্বপ্রথম এখানে প্রকাশিত হয়।
আমি মোঃ আলম। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 11 বছর 5 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 14 টি টিউন ও 27 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 1 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।
মোঃ আলম TiPS4BLOG এর প্রতিষ্ঠাতা লেখক এবং Realwebcare এর ম্যানেজিং পার্টনার। রিয়েলওয়েবকেয়ারে ওয়েব হোস্টিং, ডোমেইন রেজিস্ট্রেশান, ওয়েব ডেভেলপমেন্ট ও ডিজাইন সার্ভিসের পাশাপাশি সে ব্লগিং এর বিভিন্ন টিপস এবং ট্রিকস নিয়ে তার নিজস্ব ব্লগ TiPS4BLOG এ লেখালেখি করে।
আপনার সাইট টি অনেক সাবলিল ও সুন্দর। http://www.tips4blog.com/