
اضافه کردن جستجو به نوار منوی وردپرس
حتما تاکنون سایت هایی که در قسمت نوار منوی خود جعبه جستجو دارند را دیده اید. انجام این عمل در سایت های وردپرسی از طریق فهرست (منوی وردپرس) بسیار آسان است.
تمام کاری که باید انجام بدهید، اضافه نمودن ساختار جستجو به لیست آیتم های منو از طریق یک filter ساده در فانکشن است. این کد به فایل functions.php در پوسته فعال شما اضافه خواهد شد. توجه: شما می بایست به جای عبارت MENU-NAME، نام حقیقی منویی که در وردپرس ساخته اید را جایگزین کنید.
1 2 3 4 5 6 |
function add_search_form($items, $args) { if( $args->theme_location == 'MENU-NAME' ) $items .= '<li><form role="search" method="get" id="searchform" action="'.home_url( '/' ).'"><input type="text" value="search" name="s" id="s" /><input type="submit" id="searchsubmit" value="'. esc_attr__('Search') .'" /></form></li>'; return $items; } add_filter('wp_nav_menu_items', 'add_search_form', 10, 2); |
البته در نظر داشته باشید که در پوسته خود جایی که دستور خروجی منو را قرار داده اید، باید theme_location به کار رفته باشد تا مشخص کند (در اینجا از همان “MENU-NAME” استفاده کرده ایم :
1 |
<?php wp_nav_menu( array('theme_location' => 'MENU-NAME', 'menu' => 'MENU-NAME' )); ?> |
گفتن این نکته خالی از لطف نیست که راه های زیادی برای انجام چنین عملی وجود دارد اما تفاوت این راه با راه های دیگر این است که دیگر نوع پوسته ای که از آن استفاده می کنید اهمیتی نخواهد داشت و به راحتی گزینه جستجو راهر پوسته ای، به عنوان آیتم منوی اضافه به وجود خواهد آمد.
وردپرس با طعم فارسی
جالب بود ، ممنون
خیلی خوب بود – این هم می تونه یک روش باشه برای اضافه کردن کادر جستجو و بدون دردسر
عالی بود ممنون
سلام
من دقیقا نفهمیدم که باید این رو چطوری به کار ببرم!!
لطفا یه توضیحی بدید:باید کلاسی که برای منوی بالا در نظر گرفتم رو به جای سه تا MENU-NAME قرار بدم یا اینکه اسم فایلی که منوهام در اون قرار دارند؟ (همون فایل header.php)
و اینکه منظور از دو تا theme_location در کد بالا چیه؟ باید تغییرشون بدم؟ به چی؟
اگه جواب رو برام ایمیل کنید یا موقع پاسخ دادن خبر بدید ممنونتون میشم خیلی زیاد . مرسی
سلام.. کد رو هر جای function قرار بدیم اشکال نداره؟ theme-location رو هم توضیح بدین
تشکر