【问题标题】:Use shortcode to load two separate menus in Wordpress使用简码在 Wordpress 中加载两个单独的菜单
【发布时间】:2019-04-22 10:34:31
【问题描述】:

目前在我的 Wordpress 菜单系统中使用此代码来加载菜单。

    <div id='navbar' class='collapse navbar-collapse'>
<?php if ( function_exists('max_mega_menu_is_enabled') && max_mega_menu_is_enabled('primary') ) : ?>
    <?php wp_nav_menu( array( 'theme_location' => 'primary') ); ?>
    <?php else: ?> 
    <?php
    if ( has_nav_menu( 'primary' ) ) :
    wp_nav_menu( array(

    'theme_location' => 'primary',
    'container'      => false,
    'menu_class'     => 'main-navigation',
    'walker'         => new Aria_Walker_Nav_Menu(),
    'items_wrap'     => '<ul id="%1$s" class="%2$s" role="menubar">%3$s</ul>',
    ) ); 
    endif;
    ?>
    <?php endif; ?> 

    </div>

我还使用了一个插件,它允许我使用简码根据用户的位置切换内容。

这里是短代码

    <?php echo do_shortcode("[CBC show='y' country='us'] Content to switch out goes here [/CBC]

除了“主要”菜单之外,我还创建了一个名为“服务”的菜单。我尝试实现 do_shortcode 方法来尝试切换具有“服务”的“主要”但不断出错的行。

我不确定我是有语法错误还是不可能。

我已经成功地在我们的页脚中使用 do_shortcode 方法来换掉粘性移动按钮,并且它可以工作:

    <?php echo do_shortcode("[CBC show='y' country='us'] <a class='call-now' id='track-calls' href='tel:555-555-5555'><i class='fa fa-mobile'></i> CALL US</a>[/CBC]"); ?>
    <?php echo do_shortcode("[CBC show='y' country='us'] <a class='schedule-now' id='book-now' href='http://example.com'><i class='fa fa-calendar'></i> BOOK NOW</a>[/CBC]"); ?>
    <?php echo do_shortcode("[CBC show='y' country='tt'] <a class='call-now' id='track-calls' href='tel:555-555-1234'><i class='fa fa-mobile'></i> CALL US</a>[/CBC]"); ?>
    <?php echo do_shortcode("[CBC show='y' country='tt'] <a class='schedule-now' id='book-now' href='http://example.com'><i class='fa fa-calendar'></i> BOOK NOW</a>[/CBC]"); ?>

【问题讨论】:

    标签: php wordpress


    【解决方案1】:

    我找到了解决方案。我在 Wordpress 菜单中使用了类选项,并且只给了我想在美国出现的每个菜单项一个类,对于特立尼达/多巴哥也是如此。然后使用 php do_shortcode 方法并在网站标题中使用 css via。

    这里是任何想在未来做类似事情的人的代码。

        <?php echo do_shortcode("[CBC show='y' country='us'] <style> li.trinidad { display:none; } li.usa-menu { display:inline-block; } </style>[/CBC]"); ?>
        <?php echo do_shortcode("[CBC show='y' country='tt'] <style> li.trinidad { display:inline-block; } li.usa-menu { display:none; } </style>[/CBC]"); ?>
    

    我用于该功能的插件是:Custom Content by Country (from iControlWP) by One Dollar Plugin.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-16
      • 2012-07-08
      • 2013-11-15
      • 2012-07-09
      • 2017-08-10
      • 2021-11-07
      相关资源
      最近更新 更多