自定义WordPress菜单替换当前的标题菜单

我正在尝试向Wordpress主题添加其他自定义菜单。我已经在menu.php文件中注册了菜单和位置, 创建了一个新的页面模板并添加了菜单。但是, 每当我向菜单添加项目时, 它都会替换主标题中的所有内容, 而且还会将其添加到我需要的位置。
任何帮助将不胜感激。
谢谢
插口

以下是我的functions.php文件。我要添加的菜单就在名为” 关于菜单” 的底部
< ?php function cc_mime_types( $mimes ){ $mimes['svg'] = 'image/svg+xml'; return $mimes; } add_filter( 'upload_mimes', 'cc_mime_types' ); ?> < ?php add_theme_support( 'post-thumbnails' ); ?> < ?php add_filter('next_posts_link_attributes', 'posts_link_next'); add_filter('previous_posts_link_attributes', 'posts_link_prev'); function posts_link_next() { return 'class="next-button"'; }function posts_link_prev() { return 'class="prev-button"'; }; ?> < ?php add_filter('show_admin_bar', '__return_false'); ?> < ?php /** * Register our sidebars and widgetized areas. * */ function arphabet_widgets_init() {register_sidebar( array( 'name' => 'index-sidebar', 'id' => 'index-sidebar-widget', 'before_widget' => '< div class="sidebar-widget"> ', 'after_widget' => '< /div> ', 'before_title' => '< h2 class="widget-sidebar"> ', 'after_title' => '< /h2> ', ) ); register_sidebar( array( 'name' => 'announcement', 'id' => 'announcement', 'before_widget' => '< div class="announcement"> ', 'after_widget' => '< /div> ', 'before_title' => '< h2 class="announcement-title"> ', 'after_title' => '< /h2> ', ) ); register_sidebar( array( 'name' => 'tweets', 'id' => 'tweets', 'before_widget' => '', 'after_widget' => '', 'before_title' => '', 'after_title' => '', ) ); register_sidebar( array( 'name' => 'events', 'id' => 'widget-events', 'before_widget' => '', 'after_widget' => '', 'before_title' => '', 'after_title' => '', ) ); } add_action( 'widgets_init', 'arphabet_widgets_init' ); /* * Alters event's archive titles */ function tribe_alter_event_archive_titles ( $original_recipe_title, $depth ) {// Modify the titles here // Some of these include %1$s and %2$s, these will be replaced with relevant dates $title_upcoming ='Upcoming Events'; // List View: Upcoming events $title_past ='Past Events'; // List view: Past events $title_range ='Events for %1$s - %2$s'; // List view: range of dates being viewed $title_month ='Events for %1$s'; // Month View, %1$s = the name of the month $title_day ='Events for %1$s'; // Day View, %1$s = the day $title_all ='All events for %s'; // showing all recurrences of an event, %s = event title $title_week ='Events for week of %s'; // Week view// Don't modify anything below this unless you know what it does global $wp_query; $tribe_ecp = Tribe__Events__Main::instance(); $date_format = apply_filters( 'tribe_events_pro_page_title_date_format', tribe_get_date_format( true ) ); // Default Title $title = $title_upcoming; // If there's a date selected in the tribe bar, show the date range of the currently showing events if ( isset( $_REQUEST['tribe-bar-date'] ) & & $wp_query-> have_posts() ) {if ( $wp_query-> get( 'paged' ) > 1 ) { // if we're on page 1, show the selected tribe-bar-date as the first date in the range $first_event_date = tribe_get_start_date( $wp_query-> posts[0], false ); } else { //otherwise show the start date of the first event in the results $first_event_date = tribe_event_format_date( $_REQUEST['tribe-bar-date'], false ); }$last_event_date = tribe_get_end_date( $wp_query-> posts[ count( $wp_query-> posts ) - 1 ], false ); $title = sprintf( $title_range, $first_event_date, $last_event_date ); } elseif ( tribe_is_past() ) { $title = $title_past; }// Month view title if ( tribe_is_month() ) { $title = sprintf( $title_month, date_i18n( tribe_get_option( 'monthAndYearFormat', 'F Y' ), strtotime( tribe_get_month_view_date() ) ) ); }// Day view title if ( tribe_is_day() ) { $title = sprintf( $title_day, date_i18n( tribe_get_date_format( true ), strtotime( $wp_query-> get( 'start_date' ) ) ) ); }// All recurrences of an event if ( function_exists('tribe_is_showing_all') & & tribe_is_showing_all() ) { $title = sprintf( $title_all, get_the_title() ); }// Week view title if ( function_exists('tribe_is_week') & & tribe_is_week() ) { $title = sprintf( $title_week, date_i18n( $date_format, strtotime( tribe_get_first_week_day( $wp_query-> get( 'start_date' ) ) ) ) ); }if ( is_tax( $tribe_ecp-> get_event_taxonomy() ) & & $depth ) { $cat = get_queried_object(); $title = '< a href="' . esc_url( tribe_get_events_link() ) . '"> ' . $title . '< /a> '; $title .= ' & #8250; ' . $cat-> name; }return $title; } add_filter( 'tribe_get_events_title', 'tribe_alter_event_archive_titles', 11, 2 ); ?> < ?php add_filter('wp_nav_menu_objects', 'ad_filter_menu', 10, 2); function ad_filter_menu($sorted_menu_objects, $args) {// check for the right menu to filter // here we check for the menu with name 'Posts Menu' // given that you call it in you theme with: //wp_nav_menu( array( 'menu' => 'Posts Menu' ) ); // if you call the menu using theme_location, eg: //wp_nav_menu( array( 'theme_location' => 'top_manu' ) ); // check for: //if ($args-> theme_location != 'top_menu') if ($args-> menu != 'Parents Menu') return $sorted_menu_objects; // edit the menu objects foreach ($sorted_menu_objects as $menu_object) { // searching for menu items linking to posts or pages // can add as many post types to the array if ( in_array($menu_object-> object, array('post', 'page', 'any_post_type')) ) { // set the title to the post_thumbnail if available // thumbnail size is the second parameter of get_the_post_thumbnail() $menu_object-> title = has_post_thumbnail($menu_object-> object_id) ? get_the_post_thumbnail($menu_object-> object_id, 'full') . '< span class="outer"> < span> ' . $menu_object-> title . "< /span> < /span> ": $menu_object-> title; } }return $sorted_menu_objects; }; ?> < ?phpfunction register_my_menu() { register_nav_menu('about-menu', __( 'About Menu' )); } add_action( 'init', 'register_my_menu' ); ?>

下一个代码片段来自我要向其中添加菜单的页面模板。
< ?php /* Template Name: About Us Page */ ?> < ?php get_header(); ?> < div class="main"> < div class="page-top-banner" id="page-four-banner"> < h1> < span> About< /span> < /h1> < /div> < div class="parental-inner"> < ?wp_nav_menu( array( 'theme_location' => 'about-menu', 'container_class' => 'about_menu_class' ) ); ?> < /div> < ?php get_footer(); ?>

#1从函数php中删除register_my_menu函数, 并替换为以下内容:
删除此:
function register_my_menu() { register_nav_menu('about-menu', __( 'About Menu' )); } add_action( 'init', 'register_my_menu' );

替换为:
//nav register_nav_menus(array( 'main-menu' => __('Main Menu'), 'about-menu' => __('About Menu'), ));

【自定义WordPress菜单替换当前的标题菜单】页面模板上的输出是否正确?

    推荐阅读