คำถามติดแท็ก menus

เมนูการนำทางเป็นคุณสมบัติของชุดรูปแบบที่มีในเวอร์ชัน 3.0 WordPress มีกลไกที่ใช้งานง่ายเพื่อแนะนำเมนูการนำทางที่ปรับแต่งเองให้เป็นธีม ในการที่จะรวมการสนับสนุนเมนูไว้ในธีมของคุณคุณจะต้องเพิ่มเซกเมนต์โค้ดลงในไฟล์ธีมของคุณ

6
รับเมนูการนำทาง WP จาก REST API V2
ฉันพยายามรับเมนูการนำทางจากการตอบกลับ JSON โดยใช้ปลั๊กอินWP REST API v2 ไม่มีส่วนขยายปลั๊กอินเมนูนำทางสำหรับ REST API v2แต่สำหรับ V1 เท่านั้น จากประเภทโพสต์ WordPress ของ codex ฉันได้เรียนรู้ว่าเมนูนำทางนั้นถือว่าเป็นประเภทโพสต์ จากRest API Docนี่คือวิธีที่เราได้รับโพสต์ประเภท: GET http://demo.wp-api.org/wp-json/wp/v2/types/<type> ฉันพยายามทำให้เป็นเช่นนั้น: URL : http://localhost/wptest/wp-json/wp/v2/types/nav_menu_item ฉันได้รับข้อผิดพลาด 403 {"code":"rest_cannot_read_type","message":"Cannot view type.","data":{"status":403}} เซิร์ฟเวอร์เข้าใจคำขอของฉัน แต่ปฏิเสธที่จะให้ข้อมูล ถาม: ฉันจะแก้ไขได้อย่างไร

2
วิธีเพิ่มเมนูย่อยในเมนูที่สร้างโดย wp_nav_menu โดยใช้ปลั๊กอิน
ฉันมีเมนูที่สร้างขึ้นโดยwp_nav_menuมีลักษณะเหมือน <ul class="nav-menu" id="menu-top-nav"> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-43" id="menu-item-43"><a href="http://www.example.com/item1.com">Item 1</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-44" id="menu-item-44"><a href="http://www.example.com/item2.com">Item 2</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-45" id="menu-item-45"><a href="http://www.example.com/item3.com">Item 3</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-46" id="menu-item-46"><a href="http://www.example.com/item4.com">Item 4</a></li> </ul> ฉันต้องการแก้ไขเมนูด้านบนโดยเพิ่มเมนูย่อยใน "รายการ 3" โดยใช้ปลั๊กอินของฉันดังนั้นด้านล่างคือผลลัพธ์ที่ต้องการ <ul class="nav-menu" id="menu-top-nav"><li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-43" id="menu-item-43"><a href="http://www.example.com/item1.com">Item …

1
ตรวจสอบว่า add_menu_page มีอยู่หรือไม่
ฉันกำลังทำงานกับปลั๊กอินที่ฉันต้องปล่อยในบางส่วน ปัญหาคือถ้ามีเมนูในหน้าให้เพิ่มปลั๊กอินใหม่ไปยังเมนูย่อยที่ 2 หรือถัดไปเพิ่มเมนูใหม่แล้วเพิ่มปลั๊กอินในเมนูย่อยที่ 1 คำถามของฉัน: จะตรวจสอบว่ามีเมนูได้อย่างไร? หากฉันกำลังเขียนโค้ดฟังก์ชั่นที่ใช้ซ้ำได้ซึ่งจะไปกับปลั๊กอินทุกตัวที่ทำให้เกิดข้อขัดแย้ง ฉันไม่ทราบลำดับการเปิดตัวปลั๊กอิน add_menu_page( 'Page Title', 'Top Menu Title', 'manage_options', 'my_unique_slug', 'my_magic_function' ); add_submenu_page( 'my_unique_slug', 'page title', 'submenu title', 'manage_options', 'my_submenu_slug', 'my_magic_function_of_submenu' );

2
รับ ID หน้าจากรายการนำทาง
ฉันกำลังพยายามรับรหัสทั้งหมดในการนำทางของฉันและแปลงเป็นสตริงเพื่อให้ฉันสามารถใช้กับwp_queryเพื่อรับหน้าที่ระบุไว้ใน nav เท่านั้น รหัสเพื่อรับรหัส: $menu_name = 'primary'; if ( ( $locations = get_nav_menu_locations() ) && isset( $locations[ $menu_name ] )) { $menu = wp_get_nav_menu_object( $locations[ $menu_name ] ); $menu_items = wp_get_nav_menu_items($menu->term_id); } foreach ( $menu_items as $menu_item ) { $numbers[] = $menu_item->ID; } $number = implode(',',$numbers); แต่มันกลับมาเป็นตัวเลขที่ผิด เมื่อฉันไปที่พื้นที่ผู้ดูแลระบบและเลื่อนเมาส์ไปที่หน้าจำนวนที่ปรากฏในแถบที่อยู่ด้านล่างของหน้าจอไม่ตรงกัน ผมทำอะไรผิดหรือเปล่า?
11 menus  id 

3
ข้อผิดพลาด: การประกาศ MyClass :: start_lvl () ควรเข้ากันได้กับของ Walker_Nav_Menu :: start_lvl ()
ฉันกำลังทำงานบนไซต์ WordPress และทุกครั้งในผู้ดูแลระบบฉันไปที่หน้าลักษณะ> เมนูฉันได้รับข้อผิดพลาดต่อไปนี้: ErrorException: ข้อสังเกตเกี่ยวกับรันไทม์: การประกาศของ Walker_Nav_Menu_Edit :: start_lvl () ควรเข้ากันได้กับของ Walker_Nav_Menu :: start_lvl () ใน wp-admin / include / nav-menu.php บรรทัด 203 ดูเหมือนว่าปัญหาความเข้ากันได้ของ PHP บางอย่าง ฉันใช้ PHP 5.3.10 บนเครื่อง dev ในพื้นที่ของฉัน อะไรจะเป็นวิธีที่ดีที่สุดในการแก้ไขปัญหานี้

4
wp_nav_menu: แสดงเมนูเฉพาะเมื่อมีอยู่มิฉะนั้นจะไม่แสดงอะไรเลย
ฉันพยายามใช้ wp_nav_menu เพื่อแสดงเมนูเฉพาะถ้ามีอยู่มิฉะนั้นจะไม่แสดงอะไรเลย ถ้าฉันลบเมนูมันจะส่งรายการของหน้า My files.php ประกอบด้วย: if (function_exists('register_nav_menus')) { register_nav_menus ( array('main_nav' => 'Main Navigation Menu'));} ฉันจะใช้ wp_nav_menu เพื่อแสดงเมนูได้ถ้ามีอยู่แล้วไม่แสดงอะไรเลย
11 menus  pages  list 

1
Mega Menu Walker
ฉันกำลังพยายามสร้างเมนูขนาดใหญ่ แต่น่าเสียดายที่นักเดินหลบหนีความรู้การเข้ารหัสของฉันอย่างสมบูรณ์ ฉันสามารถใช้ความช่วยเหลือบางอย่างเพื่อทำให้มันใช้งานได้จริง นี่คือคุณสมบัติที่ฉันต้องการ: ห่อระดับที่สองใน<ul> [Complete]<section> เมื่อผู้ใช้กำหนดระดับ "หยุด" บน<li>ในระดับที่สอง<ul>, เป็นที่เริ่มต้นใหม่<li> <ul>หากเป็นรายการแรก<li>ในรายการอย่าทำอะไรเพื่อป้องกันการก่อตัวของรายการที่ไม่มีการเรียงลำดับว่างเปล่า [Complete] เมื่อผู้ใช้ชุดชั้น "เครื่องมือ" ใน<li>ในระดับแรกที่มีการย่อย<ul>, <ul>ผนวกวิดเจ็ตไปยังจุดสิ้นสุดของการที่ [Complete] เพิ่มคลาสmega-menu-columns-#ให้กับ<li>องค์ประกอบระดับแรกที่มีรายการแบบหล่นลงพร้อมคอลัมน์และ / หรือวิดเจ็ตหลายรายการ # หมายถึงจำนวน<ul>องค์ประกอบ +1 สำหรับวิดเจ็ตหากมีอยู่ [Complete] ฉันมีรหัสเล็กน้อยในการทำสิ่งนี้ แต่ไม่ใช่ทั้งหมด มีส่วนที่ตัดออกด้านล่าง: ล้อมระดับที่สอง<ul>ใน<section>: function start_lvl(&$output, $depth = 0, $args = array()) { if ($depth == 0) { $output .= "<section>"; } $output .= "<ul …

4
วิธีรับชื่อรายการเมนูปัจจุบันเป็นตัวแปรอย่างไร
เป็นไปได้ที่จะได้รับรายการเมนูปัจจุบันเป็นตัวแปร php? ฉันกำลังแสดงรายการหมวดหมู่พิพิธภัณฑ์ผ่านรายการเมนู 'พิพิธภัณฑ์ที่เราสนับสนุน' ดังนั้นฉันต้องการได้รับ 'พิพิธภัณฑ์ที่เราสนับสนุน' บิตและแสดงที่ไหน? ความช่วยเหลือใด ๆ ชื่นชม!
10 menus  title 

8
การเพิ่มคลังเก็บประเภทโพสต์ที่กำหนดเองในเมนู WordPress
มีวิธี (นอกเหนือจากการเพิ่มลิงค์ที่กำหนดเอง) เพื่อเพิ่มการเก็บถาวรชนิดโพสต์ที่กำหนดเองไปยังเมนูใน WordPress หรือไม่? หากมันถูกเพิ่มเข้ามาโดยใช้ลิงก์ที่กำหนดเอง (เช่น / cpt-archive-slug /) WordPress จะไม่ใช้คลาสเช่นเดียวcurrent-menu-itemกับองค์ประกอบของรายการซึ่งแสดงความท้าทายเมื่อจัดแต่งเมนู หากลิงก์ที่กำหนดเองมี URL ทั้งหมด (เช่นhttp://site.com/cpt-archive-slug/ ) คลาสเหล่านั้นจะถูกเพิ่ม อย่างไรก็ตามนั่นอาจไม่ใช่วิธีปฏิบัติที่ดีที่สุด

7
เพิ่มคลาสไปที่ลิงก์เฉพาะในเมนูกำหนดเอง
ฉันรู้ว่าคุณสามารถเพิ่มคลาสในตัวเลือกเมนูที่กำหนดเองได้ แต่มันเพิ่มลงใน LI ก่อนที่ A. ฉันต้องการใช้คลาสโดยตรงกับ A เฉพาะนี้แทนที่จะเป็น LI ทั้งหมด ดังนั้นแทนที่จะเป็นผลลัพธ์ <li id="menu-item-51" class="NEWCLASS menu-item menu-item-type-custom menu-item-51"><a href="#">Link</a> </li> ฉันต้องการให้มันเป็นอย่างนี้ <li id="menu-item-51" class="menu-item menu-item-type-custom menu-item-51"><a href="#" class="NEWCLASS">Link</a></li> ความคิดใด ๆ
10 menus 

4
สร้างเมนูที่แสดงหน้าย่อยโดยใช้ wp_list_pages () ด้วยฟังก์ชั่นเมนูใหม่ใน WordPress 3.0 หรือไม่
ก่อนหน้านี้ฉันสามารถโหลดเพจย่อยสำหรับเพจระดับบนที่เลือกในปัจจุบันโดยใช้ตรรกะเช่น: if( $post->post_parent ) { $children = wp_list_pages("title_li=&child_of=".$post->post_parent."&echo=0"); } else { $children = wp_list_pages("title_li=&child_of=".$post->ID."&echo=0"); } if ($children) { ?> <ul id="subnav"> <?php echo $children; ?> </ul> <?php } else { } ดูเหมือนจะไม่มีวิธีดั้งเดิมในการทำสิ่งนี้โดยใช้ฟังก์ชันการทำงาน register_nav_menus () / wp_nav_menu () ใหม่ ไม่มีใครรู้ว่าฉันจะแก้ไขสิ่งนี้ด้วยกันในจุดนี้ได้อย่างไร นี่คือภาพหน้าจอของสิ่งที่ฉันพยายามทำ:
10 menus 

4
การเพิ่มที่เก็บถาวรของโพสต์ลงในเมนูนำทางใน WordPress 3.0
Hay ทั้งหมดผมเล่นรอบกับ WordPress 3.0 และสอง (2) ของคุณสมบัติใหม่, ประเภทที่กำหนดเองโพสต์และเมนูแก้ไข ฉันได้เริ่มต้นด้วยการสร้างประเภทโพสต์ใหม่ที่เรียกว่า " products" ตามที่คุณคาดเดาผลิตภัณฑ์รายการนี้ ฉันใช้เทมเพลตมาตรฐานบึงและฉันกำลังสร้างเมนูใหม่เพื่อแทนที่การนำทางด้านบน เท่าที่ผมสามารถมองเห็นฉันเท่านั้นที่สามารถเพิ่มบางอย่าง"ผลิตภัณฑ์"มันฉันไม่สามารถเพิ่ม"เก็บ"ของผลิตภัณฑ์ สิ่งที่ฉันพยายามจะทำคือเพิ่มลิงค์ไปยังเมนูเพื่อไปที่หน้าที่แสดงรายการผลิตภัณฑ์ทั้งหมด ความคิดใด ๆ วิธีการทำเช่นนี้?

7
ฉันจะแสดงเมนูในบางหน้าได้อย่างไร
แทนที่จะใช้วิดเจ็ตแถบด้านข้างเพื่อบอกว่าควรจะมองเห็นหน้าใดฉันต้องการเลือกที่การตั้งค่าเมนูเพื่อให้ปรากฏในหน้าเฉพาะ วิธี Wordpress เริ่มต้น: ดังนั้นโครงการจึงเป็นหน้าเว็บและมีหน้าย่อยบางส่วน แต่ถ้าฉันมีหน้าและหน้าย่อยมากกว่า 10 หน้าในสถานการณ์เดียวกัน ฉันต้องการเพิ่มการตั้งค่าพิเศษ (รายการหน้าระดับบนสุด): แต่ฉันไม่พบเอกสารการกระทำตัวกรองและอื่น ๆ เมื่อโหลดการตั้งค่าเหล่านี้

4
เพิ่มวอล์คเกอร์ที่กำหนดเองในเมนูที่สร้างขึ้นในวิดเจ็ต
ฉันรู้วิธีเพิ่มวอล์คเกอร์ในเมนูที่กำหนดเองที่สร้างขึ้นโดยธีม (เมนูที่มีชื่อprimaryในตัวอย่างนี้) แต่ฉันจะกำหนดเป้าหมายเมนูที่สร้างขึ้นในวิดเจ็ตด้วยวิดเจ็ตเมนูกำหนดเอง wordpress เริ่มต้นได้อย่างไร if ( has_nav_menu( 'primary' ) ) { $args = array( 'menu' => 'main-menu', 'menu_id' => 'main-menu', 'theme_location' => 'primary', 'depth' => 0, 'container' => false, 'menu_class' => 'nav', 'walker' => new Myprefix_Walker_Nav_Menu(), 'echo' => 0 ); $nav = wp_nav_menu( $args ); }
10 menus  widgets  walker 

1
การใช้เมนูวอล์คเกอร์เพิ่มรายการที่กำหนดเองที่ส่วนท้ายของรายการเมนู
ฉันต้องเพิ่มช่องค้นหาที่ท้ายเมนูในรายการ ฉันได้ดูวอล์กเกอร์ แต่ก็พบว่ามันยากที่จะคิดออกว่ารายการสุดท้ายคืออะไร (หรือแม้กระทั่งได้รับทั้งหมด) รวมถึงที่ที่ฉันจะเพิ่มรหัสสำหรับรายการที่กำหนดเอง ฉันมีอยู่ในปัจจุบัน; class mainNav_walker extends Walker_Nav_Menu { public function start_el( &$output, $item, $depth, $args ) { //print_r($item); $output .= $this->custom_content( $item ); parent::start_el( &$output, $item, $depth, $args ); } protected function custom_content( $item ) { // add <li>SEARCH FIELD HERE?</li> } }
10 menus  walker 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.