如何将PHP函数转换为短代码

时间:2017-05-03 12:35:54

标签: php wordpress

我一直在尝试将以下PHP行转换为我的functions.php中的短代码,以便我可以将其添加到Wordpress页面。

<?php wp_nav_menu( array( 'theme_location' => 'header' ) ); ?>

经过一番研究后,我发现下面的代码用于创建短代码,但我不确定如何将上面的PHP行添加到其中,或者即使这是正确的方法。

function menu_shortcode($atts, $content = null){
    return '<nav class="main-menu-header">' . do_shortcode($content) . '</nav>';
}

add_shortcode('nav', 'menu_shortcode');

我最初假设我要在do_shortcode的括号之间添加代码而不是$content,但这给了我一个错误。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

根据我从上述问题中理解的内容,这对您有用。将其添加到 functions.php ,然后使用 [nav] 进行显示。

function menu_shortcode( $atts ) {
    return wp_nav_menu( array( 'theme_location' => 'header', 'echo' => false ) );
}
add_shortcode( 'nav', 'menu_shortcode' );