个性化阅读
专注于IT技术分析

WordPress:在两个菜单项之间插入char

我正在研究自定义的wordpress主题, 并且在按自己的方式设计标题中的第一个菜单时遇到了困难。

因此, 在header.php中, 我以这种方式插入菜单, 以使链接不会被表标签包围:

    <?php 
          $menuParameters = array(
              'container'         =>  false, 'echo'              =>  false, 'items_wrap'        =>  '%3$s', 'depth'             =>  0, );
          $output = strip_tags(wp_nav_menu($menuParameters), '<a>');
          //This is my first try with regex, but i didnt manage to
          //only insert the character in between two links and not
          //one at the and as well.
          //$output = Preg_replace( "(\n)", "$0|\r\n", $output);
          echo $output;
    ?>

因此, 这段代码为我提供了一个如下所示的菜单:

    <a href="http://localhost/page-1/">Page 1</a>
    <a href="http://localhost/page-2/">Page 2</a>
    <a href="http://localhost/page-3/">Page 3</a>
    <a href="http://localhost/page-4/">Page 4</a>
    <a href="http://localhost/page-5/">Page 5</a>

只是为了理解, 这就是我想要获得的输出:

    <a href="http://localhost/page-1/">Page 1</a>
    |
    <a href="http://localhost/page-2/">Page 2</a>
    |
    <a href="http://localhost/page-3/">Page 3</a>
    |
    <a href="http://localhost/page-4/">Page 4</a>
    |
    <a href="http://localhost/page-5/">Page 5</a>

预先感谢你的回答!


#1


wp_nav_menu()允许after和link_after参数在链接文本或链接标记之后添加文本, 因此你可以更新参数:

$menuParameters = array(
          'container'         =>  false, 'echo'              =>  false, 'items_wrap'        =>  '%3$s', 'depth'             =>  0, 'after'             => "<span>|</span>"
);

wp_nav_menu()

编辑:如果你不想在最后一个链接后显示分隔符, 则可以使用一些CSS伪元素:

.mymenu span:last-child{ display: none; }

https://jsfiddle.net/k593ezoL/1


#2


<a href="http://localhost/page-1/">Page 1</a><a href="http://localhost/page-2/">Page 2</a><a href="http://localhost/page-3/">Page 3</a><a href="http://localhost/page-4/">Page 4</a><a href="http://localhost/page-5/">Page 5</a>
赞(0)
未经允许不得转载:srcmini » WordPress:在两个菜单项之间插入char

评论 抢沙发

评论前必须登录!