(ওয়ার্ড প্রেস অরগ সাইট থেকে সরাসরি অনুবাদ)

লিঙ্কঃ (  https://codex.wordpress.org/Navigation_Menus  ) এবং আনুষঙ্গিক লিঙ্ক সমুহ।

ওয়ার্ড প্রেস নেভিগেশন মেনু যুক্ত হয় ওয়ার্ড প্রেস এর ৩.০ ভার্শন এ। মেনু  মূলত  কাস্টমাইজ করা থিমের সাথে  পছন্দ মত ডিজাইন বান্ধব সুবিধা যুক্ত, যা সহজে ব্যাবহার উপযোগী কিছু মেকানিজম এর সমন্বয়। এই সুবিধার কারনে থিমে বিশেষ কিছু ওয়ার্ড প্রেস নির্ধারিত (ফাংশন) কোডের ব্যাবহারের মাধ্যমে পছন্দ মত ডাইনামিক মেনু তৈরি করা যায় সহজে।

ফাংশন তালিকাঃ

মেনু সংযুক্তির ফাংশনঃ

১। register_nav_menus()  ২। register_nav_menu() ৩। unregister_nav_menu()

মেনু দেখানোর ফাংশনঃ

১। has_nav_menu() ২। wp_nav_menu()

 

রেজিস্টারিং মেনুঃ

প্রথমত আপনার থিমের ফাংশন পি আইচ পি ফাইল এ মেনু রেজিস্টার করে নিতে হবে, আর রেজিস্টার করার কারনে আপনার থিমের (Appearance -> Menus) এডমিন স্ক্রিন মেনু অপশনটি যুক্ত হবে। এতে করে আপনি Appearance -> Menus অপশনের মাধ্যমে আপনার প্রয়োজনীয় মেনু যুক্ত করতে পারবেন। এছাড়া তৈরি করা মেনু থিমের যে কোন নির্দিষ্ট স্থানে দেখানোর জন্যে একটি অপশন পাওয়া যাবে মেনু রেজিস্টার করার পরে।

থিম রেজিস্টার করতে ফাংশন পি আইচ পি ফাইল এ নিচের কোড সংযুক্ত করতে হবেঃ


function register_my_menu() {

 register_nav_menu(‘header-menu’,__( ‘Header Menu’ ));
}
add_action( ‘init’, ‘register_my_menu’ );

And this would make two menu options appear, header menu and extra menu –

function register_my_menus() {
register_nav_menus(
array(
‘header-menu’ => __( ‘Header Menu’ ),
‘extra-menu’ => __( ‘Extra Menu’ )
)
);
}
add_action( ‘init’, ‘register_my_menus’ );

মেনু থিমে দেখাবেন কি ভাবে?

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

 

  ‘header-menu’ => __( ‘Header Menu’ ),

 

এরেয়ের মধ্যেট theme_location হিসেবে পূর্বে   তৈরি করা মেনু নাম নির্ভুল ভাবে যুক্ত করতে হবে, নইলে সঠিক ভাবে কাঙ্খিত মেনু প্রদর্শিত হবে না(নোটঃ উপরের কোডে. header-menu লিখতে যে ’ -’ ব্যাবহার করা হয়েছে তাতে ‘-’ চিহ্ন সহ . header-men কোড বুঝায় আর ‘-’চিহ্ন বাদে . header menu সর্ব সাধারণের পাঠ উপযোগী যা কিনা ওয়ার্ড প্রেস এর এডমিন পেজ এ দেখা যাবে।)মেনুর কোড শেষ করার আগে  আপনি কোন বিশেষ মেনু চাইলে তা উল্লেখ করে দিতে পারেন

‘extra-menu’ => __( ‘Extra Menu’ )

 

এয়রে তে উপরের কোড সংযুক্ত করে। যদি আপনি কোন একটি divএর মধ্যে বিশেষ স্টাইল এর মেনু তৈরি করতে চান তবে container_class’ => ‘my_extra_menu_class’   যুক্ত করার মাধ্যমে আপনার মেনু র বিশেষ স্টাইল ও প্রয়োগ করা যাবে। সেক্ষেত্রে কোড টি নিচের মত দেখতে হবে

 

wp_nav_menu( array( ‘theme_location’ => ‘extra-menu’, ‘container_class’ => ‘my_extra_menu_class’ ) );

মেনু প্যনেলঃ

এবার মেনু সেট করতে আপনার সাইট এর Appearance -> Menus প্যানেল এ যান, এবং GUI menu creator দিয়ে আপনার কাঙ্খিত মেনু তৈরি করুন, প্রতিটি মেনুর স্বতন্ত্র নাম থাকা আবশ্যক। তৈরি করা মেনু কথায় দেখাতে চাইছেন তা নির্দেশ করতে নিচে আনার পূর্ব নির্ধারিত লোকেশন থেকে এইটি টিক  চিহ্ন দিয়ে নির্দেশ দিতে হবে।

 

আরও জানতে দেখুনঃ

Goodbye, headaches. Hello, menus!

(http://justintadlock.com/archives/2010/06/01/goodbye-headaches-hello-menus)

 WordPress Navigation Menu Generator

 

এছাড়াও ওয়ার্ড প্রেস অরগ সাইট এ  Navigation Menu বিষয়ে আর জানতে নিচের বিষয় গুলি দেখে নিতে পারেন।

 register_nav_menus()

 register_nav_menu()

 unregister_nav_menu()

 has_nav_menu()

 wp_nav_menu()

 wp_get_nav_menu_items()

ওয়ার্ড প্রেস ৩.০ ভার্শন ও পরবর্তী ভার্শন সমুহ এক সাইটে একাধিক কাস্টম নেভ মেনু রেজিস্টার করার সুবিধা তৈরি করেছে যা খুব সহজে সাইটের যে কোন লোকেশনে ডেসবোর্ড এর মাধ্যমে যুক্ত করা যায়। ( মেনু রেজিস্টার করতে উপরে  রেজিস্টারিং মেনুঃ অংশে দেখুন)

এবার আমরা  রেজিস্টারিং মেনু প্রসঙ্গে একটু বিস্তারিত আলোচনা করবঃ—

<?php register_nav_menus( $locations ); ?>

উপরের কোডে $locations প্যারামিটার টি সচরাচর একটি এসোসিএটিভ এর‍্যের মাধ্যমে নির্দেশ করে দিতে হবে কেননা এখানে একাধিক প্যারামিটার যুক্ত হওয়ার সুযোগ আছে যা মেনু টি যেখানে দেখাতে চাই তা নির্দেশ করার মেনু লোকেশন স্লাগ বা(key) এরসাথে সম্পৃক্ত মান গুলির  বর্ণনা ও ধারন করে।

 

উদাহরনঃ

 

register_nav_menus( array(
‘pluginbuddy_mobile’ => ‘PluginBuddy Mobile Navigation Menu’,
‘footer_menu’ => ‘My Custom Footer Menu’,
) );

নোটঃ

  • এই ফাংশন টি স্বয়ংক্রিয় ভাবে থিম মেনু সাপোর্ট যুক্ত করে নিতে পারে তাই এটি ব্যাবহার করলে add_theme_support( ‘menus’ ); কল করার প্রয়োজন নাই।
  • wp_nav_menu() কোড ব্যাবহার করে এই মেনু থিমের কাঙ্খিত পাতায় বা লোকেশনে দেখানো যাবে।
  • এক্ষেত্রে মেনু এডমিন পেইজে  advanced menu properties দেখাবে যা ব্যাবহার করে  “Link Target” “CSS Classes” “Link Relationship (XFN) Description” ইত্যাদি যুক্ত করা যাবে।
  • get_registered_nav_menus  চেক করে ওয়ার্ড প্রেস এর  একাধিক মেনু যুক্ত করা সম্পর্কে আর বিস্তারিত  জানা যাবে।