ওয়ার্ডপ্রস অপটিমাইজেশনঃ ৩টি পদ্ধতি

ওয়ার্ডপ্রস অপটিমাইজেশনঃ ৩টি পদ্ধতিকয়েকটি ওয়ার্ডপ্রেস কোড হ্যাকিং এর উপরে আলোচনা করা হবে। এখানে মূলতঃ  ওয়ার্ডপ্রেস ব্লগের ইউজাবিলিটি বৃদ্ধির প্রচেষ্টা করা হয়েছে। আশা করা যায় কোডগুলো অনেকের কাজে লাগবে। এই আমি কেবল কোডগুলোর উপস্থাপনাকারী।

১.হার্ড কোডিং

ওয়ার্ডপ্রেস দিয়ে গড়া ডায়নামিক সাইটে বেশ কিছু বিষয়ই ডাটাবেজে সংরক্ষিত থাকে এবং কাজ করার সময় ডাটাবেজ কানেক্ট করে তার পর সম্পাদিত হয়। আর তাই সাইট কিছুটা সময় পর লোড হয়। বেশ কিছু হার্ডকোডিংকরে নির্ধারিত ডাটা হাতে বসিয়ে দিলে সময় অপচয় হবে না। ওয়ার্ডপ্রেস যেহেতু জনপ্রিয় একটি সিএমএস আর তাই ডিজাইনারদের জন্য বেশ কিছু ইনপুট বক্স ও সেখানে মান দিয়ে রাখার ব্যবস্থা করেছে যাতে করে কোডিংএ হাত না দিয়েই কাজ করা যায়।

মূল ডিরেক্টরীর wpconfig.php ফাইলকে কিছু সম্পাদনা করলেই ডাটাবেজে বার বার যেতে হয়না। আর এ কাজটি করার জন্য অবশ্যই বেশ কিছু বিষয় জানা দরকার।

  • <?php get_bloginfo('url'); ?> —  ওয়ার্ডপেস হোস্ট করা সাইটের ডিরেক্টরী রিটার্ন করবে।
  • <?php get_bloginfo('wpurl'); ?> — ব্লগের পাথ রিটার্ন করবে।
  • <?php bloginfo('url'); ?> — ওয়েবসাইট ইউআরএল দেখাবে।
  • <?php bloginfo('home'); ?> ব্লগের পাথ দেখাবে।
  • <?php get_bloginfo('stylesheet_directory'); ?> — সক্রিয় থিমের স্টাইলসিটের পাথ
  • <?php get_bloginfo('template_directory'); ?> — টেমপ্লেটের পাথ
  • <?php bloginfo('stylesheet_directory'); ?> — স্টাইলসিটের ডিরেক্টরীর পাথ
  • <?php bloginfo('template_directory'); ?> — সক্রিয় থিমের ডিরেক্টরীর পাথ
  • <?php get_template_directory() ?> — বর্তমান থিমের ডিরেক্টরী

মূর বেপার হলো এই বিষয়গুলো ডাটাবেজ থেকে গ্রহন করে তারপর লোডিং শুরু হয়। অধিকাংশ সাইট ডিজাইন করা পরই একটি নির্দিষ্ট থিম ব্যবহার করা হয় এবং সেই থিম পরিবর্তন করা হয় না। এরূপ ক্ষেত্রে শুধু শুধু কোয়েরী না চালিয়ে এই মানগুলো সরাসরি বসিয়ে দিলে আরও দ্রুত কাজ করতে পারে ওয়ার্ডপ্রেস।

wp-config.php ফাইলে তাই নিচের মতো করে কোডিং করে নিতে পারেন

define('WP_HOME', 'http://www.tutorialbd.com.com/bn'); // blog url
define('WP_SITEURL', 'http://www.catswhocode.com/bn'); // site url
define('TEMPLATEPATH', '/absolute/path/to/wp-content/themes/example');
define('STYLESHEETPATH', '/absolute/path/to/wp-content/themes/example');
উপযুক্ত দক্ষতা না থাকলে হার্ড কোডিং করা উচিৎ হবে না। কোডিং করার আগে ফাইলটির ব্যাকআপ নিয়ে নিবেন। কোন সমস্যা হলে আগের ফাইল নতুন করে বসিয়ে দিন। যারা থিম পরিবর্তন করবেন তারা থিম পরিবর্তন করার সাথে সাথে এউ কোডও পরিবর্তন করে নিবেন। না হলে নতুন থিম কাজ করবে না।

ইউজার তথ্য

ওয়ার্ডপ্রেস ব্লগ এখনো প্রোফাইলের যোগাযোগ অংশে Yahoo, AIM এর ঠিকানা দেখাতে বলে। অথচ এখন ফেসবুক আর টুইটারের ব্যাপক জনপ্রিয়তার কারনে  Yahoo, AIM, Jabber এর আইডি না দিয়ে ফেসবুত, টুইটার আর মোবাইল নম্বর দেওয়ার কথা বললে আরও ভাল হবে। ছোট একটি ফাংশন থিমের function.php ফাইলে বসিয়ে দিলেই সমাধান হয়ে যেতে পারে।
function extra_contact_info($contactmethods) {
unset($contactmethods['aim']);
unset($contactmethods['yim']);
unset($contactmethods['jabber']);
$contactmethods['facebook'] = 'Facebook';
$contactmethods['twitter'] = 'Twitter';
$contactmethods['linkedin'] = 'LinkedIn';
return $contactmethods;
}
add_filter('user_contactmethods', 'extra_contact_info');
আর ফেসবুক ও টুইটার আইডি লেখক পরিচিতি অংশেও প্রদর্শন করা যেতে পারে। ঠিক নিচের মতো করে।
<a href="<?php the_author_meta('facebook', $current_author->ID); ?>">লেখকের ফেসবুক </a>

বিস্তারিত এখানে

শিরোনামের সর্বোচ্চ শব্দ ও পোষ্টের সর্বনিন্ম শব্দ নির্ধারন করে দেওয়া

অনেক ইউজারের ব্লগের ক্ষেত্রে এ পদ্ধতিটি প্রযোজ্য। আপনি যদি চান যে আপনার পোষ্ট লেখকরা শিরোনামটি যাতে বেশি বড় করে না লিখে সেক্ষেত্রে থিমের function.php ফাইলে নিচের কোডটুকু যুক্ত করে দেন। এই কোড অনুসারে  ১০টির বেশি শব্দের শিরোনাম যুক্ত পোষ্ট প্রকাশিত হবে না। তথ্য সূত্র

function maxWord($title)
{
global $post;
$title = $post->post_title;
if (str_word_count($title) >= 10 ) //set this to the maximum number of words
wp_die( __('Error: your post title is over the maximum word count.') );
}
add_action('publish_post', 'maxWord');

আর যদি নির্দিষ্ট সংখ্যক শব্দের চেয়ে কম শবদের পোষ্ট প্রকাশ করার বেপারে নিষেধাক্কা আরোপ করতে চান সে ক্ষেত্রেও নিচের কোডটুকু যুক্ত করে দিতে পারেন।

str_word_count($content) এর মান পরিবর্তন করে শব্দসংখ্যা নিধার্রন করা যাবে।  তথ্য সূত্র

function minWord($content)
{
	global $post;
	$content = $post->post_content;
	if (str_word_count($content) < 100 ) //set this to the minimum number of words
	wp_die( __('Error: your post is below the minimum word count.') );
}
add_action('publish_post', 'minWord');

10 thoughts on “ওয়ার্ডপ্রস অপটিমাইজেশনঃ ৩টি পদ্ধতি”

  1. এটা জুমলার জন্য করলে কি যে খুশি হতাম!!! 🙁
    খালি ওয়ার্ড প্রেস, জুমলা ইউস করে দেখেন…..
    জুমলা একটা সিএমএস কিন্তু ওয়ার্ড প্রেস কিন্তু তা নয় 😀
    কিন্তু টিউটোরিয়ালটা অনেক কাজের এটা অনস্বীকার্যিয়….

    1. @ইমরান, পরবর্তিতে কোন সাইটের ডিজাইন করতে গেলে জুমলাকে প্রায়রিটি দেব। ওয়ার্ডপ্রেসের স্লথ গতির কারনে দিন দিন বিরক্ত হচ্ছি। তবে জুমলার চেয়েও ইদানিং আমার কাছে ডাটাবেজ ছাড়া সিএমএসগুলো ভাল লাগছে। সেগুলো তো দুর্বারগতিতে কাজ করে। ফ্লাসপ্রেস সহ বেশ কিছু ডাটাবেজ ছাড়া সিএমএস চর্চা করতে হবে।

      1. @টিউটো,
        ডাটাবেজ ছাড়া CMS গুলোর সব থেকে বড় সুবিধা কখনো স্পেসে আটকায়।
        শুধু জুমলা, ডুরপাল নিয়ে পরে না থেকে আমাদের অন্য গুলো ট্রাই করা উচিত।

        1. @ইমরান,কথাটা ভাল লাগলো। ভাবছি কিছু দিনের মধ্যেই নতুন নতুন সিএমএস এর রিভিউ লেখা শুরু করবো। সবাইকে পরিচয় করিয়ে দিতে হবে।

        2. ইমরান ভাই খালি জুমলা জুমলা! বিশ্বের সব বড় বড় ব্লগারা ওয়ার্ডপ্রেস ব্যাবহার করে।
          মাহবুব ভাই অসাধারণ টিউটোরিয়াল! PHP টা ভালো করে শেখা লাগবে দেখি।
          আপনার জানা মতে কোন ভালো ইবুক আছে? নাম দিলেই হবে।

  2. লেখকের নাম, পরিচয়, মোট পোষ্টের সংখ্যা, মন্তব্যের সংখ্যা, স্কোর ইত্যাদি সাইড বারে কিভাবে প্রদর্শন করা সম্ভব সে সম্পর্কিত প্লাগইন বা কোড সম্পর্কে জানালে উপকৃত হব।

Leave a Comment