خانه / آموزشی / داینامیک کردن منو در وردپرس

داینامیک کردن منو در وردپرس

افزودن فهرست به وردپرس

زمانی که قالب html را به وردپرس تبدیل می نماییم، باید فهرست را به پوسته خود اضافه نماییم.

برای این کار کدهای زیر را در functions قرار می دهیم.

 

//Navigation Menus

 register_nav_menus(array(

 'primary'=> __('Primary Menu')

 ));

  function fire_essential_functions(){

     add_theme_support('title-tag');

     load_theme_textdomain('fire',get_template_directory.'/languages');

     register_nav_menu('primary-menu',__('primary menu','fire'));

}

add_action('after_setup_theme','fire_essential_functions');

۱

 

داینامیک کردن منو با کلاس واکر

در هسته خود وردپرس به فایل wp-includes رفته و فایل nav-menu-template را کپی کرده و به تم خود اضافه می نماییم و  فایل مربوطه رابه نام fire-walker  تغییر می دهیم.

۲

 

کدهای fire-walker به شکل زیر تغییر می دهیم.

class Walker_Nav_Menu extends Walker

ادیت کد بالا

class fire_walker extends Walker

بعد از ادیت کد یک قسمت از کدهای فایل fire_walker را حذف می نماییم.

حذف کدها از Walker_Nav_Menu// تا پایان کدها صورت می گیرد.

 

۳

 

کدهای زیر هم در فانکشن اضافه می نماییم.

require_once ('fire-walker.php');

function default_main_menu(){

echo '<ul class="nav navbar-nav">';

echo '<li class="dropdown mega-dropdown"> </li>';

echo '</ul>';

در قسمت ul کلاس مربوط به ul تم خود را وارد می نماییم.

در قسمت li هم کلاس مربوط به زیر منو را وارد می نماییم.

کدهای زیر را در قسمتی که می خواهیم منو نمایش داده شود قرار می دهیم.

  <?php

wp_nav_menu(array(

'theme_location' => 'primary', 'menu_id' => 'primary-menu',

'fallback_cb'=>'default_main_menu',

'menu_class'=> 'nav navbar-nav',

'walker'=> new fire_walker()

));

?>

در قسمت ‘menu_class’ کلاس خودمان را می نویسیم.

در قسمت ‘theme_location’ هنگام افزودن فهرست هر نامی قرار دادیم به همان نام قرار می دهیم.

داینامیک کردن منو بوت استرپی

در ابتدا فایل wp_bootstrap_navwalker.php را از لینک زیر دانلود و در فولدر قالبتان (کنار فایل style.css) قرار بدید:

منبع فایل : https://github.com/twittem/wp-bootstrap-navwalker/tree/For-Bootstrap-2.3.2

سپس فایل functions.php قالبتان را باز کرده و کد زیر را به انتهای آن اضافه کنید:

require_once('wp_bootstrap_navwalker.php');

با استفاده از دستور زیر در فایل header.php امکان استفاده از منو را اضافه کنید :

<?php

        wp_nav_menu( array(

                'menu'                    => 'primary',

                'theme_location'        => 'primary',

                'depth'                  => 2,

                'container'              => 'div',

                'container_class'   => 'collapse navbar-collapse navbar-ex1-collapse',

                'menu_class'            => 'nav navbar-nav',

                'fallback_cb'      => 'wp_bootstrap_navwalker::fallback',

                'walker'                        => new wp_bootstrap_navwalker())

        );

?>

 

درباره ی سودابه سامانلو

همچنین ببینید

کنترل های استاندارد ( standard ) در asp.net

کنترل های استاندارد ( standard ) در asp.net این قسمت شامل کنترل هایی است که …

۲ دیدگاه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

پنج − یک =