【问题标题】:How do I get the name of a menu in WordPress?如何在 WordPress 中获取菜单的名称?
【发布时间】:2020-12-13 22:13:42
【问题描述】:

我想知道如何在标题中获取菜单名称。 问题是我有另一个人创建的 WordPress 主题。它有效,但有一个问题。该网站将提供多种语言版本,并且有一个二级菜单,您需要在其中显示不同语言的“目录”一词。据我了解,取菜单名称并将其打印出来更容易。如果有任何帮助,我将不胜感激。 Header.php 包含以下内容:

?>
<!doctype html>
<html <?php language_attributes();?>>
<head>

<meta charset="<?php bloginfo('charset');?>">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="profile" href="https://gmpg.org/xfn/11">
<link rel="stylesheet" href="https://netdna.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<?php wp_head();?>
</head>
    
<body <?php body_class();?>>
<div id="page" class="site">
<header id="masthead" class="header">
    <div class="container">
        <div class="head">
            <div class="row align-items-center">
                <div class="col-md-4 col-3 d-flex align-items-center position-static">
                    <div class="burger-wrap">
                        <div class="burger "><span class="burger__text">CATALOGUE</span></div>
                        <div class="catalog">
                            <?php yasin_secondary_menu();?>

目前只显示写在&lt;span class="burger__text"&gt;CATALOGUE&lt;/span&gt; 中的文本。

【问题讨论】:

    标签: php html css wordpress


    【解决方案1】:

    第一步你需要注册使用function.php添加follow code=>

    register_nav_menus( array(
        'primary'   => __( 'Primary Menu', 'e-education' ),
        // 'secondary' => __( 'Secondary Menu', 'myfirsttheme' )
    ) );
    

    你在header.php中添加跟随代码

     <nav class="navbar justify-content-center  site-navigation">
          <?php
            wp_nav_menu(array(
               'theme_location'=>'primary'
            ) );
          ?>
       </nav>
    

    此代码和函数使用您成功显示导航栏

    【讨论】:

    • 谢谢,它可以工作,但我只需要二级菜单的名称,内容已经存在。事实是有一个汉堡图标,我需要在它旁边写一个导航。
    • 我的意思是我需要显示二级菜单名称而不是使用这个&lt;span class="burger__text"&gt;CATALOGUE&lt;/span&gt;
    【解决方案2】:

    您知道 WordPress 管理中菜单的位置吗?

    如果这样做,您可以回显分配给该位置的所有菜单项。

    例如,如果菜单位置是'secondary-menu',则可以使用wp_get_nav_menu_object函数获取菜单元数据

    $menuLocation = 'secondary-menu';
    
    $menuLocations = get_nav_menu_locations();
    
    $menuObject = (isset($menu_locations[$menuLocation]) ? wp_get_nav_menu_object($menuLocations[$menuLocation]) : null);
    
    $menuName = (isset($menuObject->name) ? $menuObject->name : '');
    
    echo $menuName;
    

    如果您知道菜单信息,您还可以获取菜单详细信息。如果 slug 是“目录”,您可以执行 $menuName = wp_get_nav_menu_object("catalogue");,然后像第一种方法 echo $menuName-&gt;name; 一样回显 name 对象

    【讨论】:

    • 它几乎帮了我...但问题是如果我使用$menuName = wp_get_nav_menu_object("catalogue"); echo $menuName-&gt;name; - 它只显示两种语言的“目录”...因为我有 2 个二级菜单.. .目录和目录。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-25
    • 2015-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多