Wordpress短代码不适用于WP Codex命令和PHP
下面是我遇到的一个php问题,它以其他方式工作,但也不能以我希望的方式工作 基本上,我希望将WP login和logout命令添加到A-HREF链接中,但结尾的短代码似乎没有生效,我想知道原因,希望能够解决这个问题Wordpress短代码不适用于WP Codex命令和PHP,php,html,wordpress,shortcode,Php,Html,Wordpress,Shortcode,下面是我遇到的一个php问题,它以其他方式工作,但也不能以我希望的方式工作 基本上,我希望将WP login和logout命令添加到A-HREF链接中,但结尾的短代码似乎没有生效,我想知道原因,希望能够解决这个问题 <?php echo do_shortcode('[not-level-visitors]') . '<div id="SignUp"> <ul> <li><
<?php
echo do_shortcode('[not-level-visitors]') .
'<div id="SignUp">
<ul>
<li><img src="http://dev.universitycompare.com/wp-content/themes/blue-and-grey/images/icons/user_icon.png" alt="User Icon My Account University Compare" />
<a href="http://dev.universitycompare.com/account/" style="margin: 0px 0px 0px -8px;">My Account</a>
</li>
<li>
<a href="' . wp_logout_url($redirect) . '">Log Out</a>
</li>
</ul>
</div>' .
do_shortcode('[/not-level-visitors]');
?>
基本上,上面的代码是可以工作的,但我只需要结束短代码就可以工作,因为它出现在我的html中,并且没有被识别-我已经从下面的代码片段创建了上面的代码,我已经在使用它,它完全可以工作:
<?php
echo do_shortcode('[level-visitors]
<div id="SignUp">
<ul>
<li>
<a href="#">Sign Up</a>
</li>
<li>
<a href="#">Login</a>
</li>
</ul>
</div>
[/level-visitors]');
?>
看起来您需要删除额外的开始/结束括号和额外的do_短代码调用
<?php
echo do_shortcode('[not-level-visitors]' .
'<div id="SignUp">
<ul>
<li><img src="http://dev.universitycompare.com/wp-content/themes/blue-and-grey/images/icons/user_icon.png" alt="User Icon My Account University Compare" />
<a href="http://dev.universitycompare.com/account/" style="margin: 0px 0px 0px -8px;">My Account</a>
</li>
<li>
<a href="' . wp_logout_url($redirect) . '">Log Out</a>
</li>
</ul>
</div>' .
'[/not-level-visitors]');
?>
我发现的主要区别是单个调用与多个调用的do\u短代码,我认为它与正则表达式不匹配
也许这会奏效:
echo do_shortcode('[not-level-visitors]
<div id="SignUp">
<ul>
<li><img src="http://dev.universitycompare.com/wp-content/themes/blue-and-grey/images/icons/user_icon.png" alt="User Icon My Account University Compare" />
<a href="http://dev.universitycompare.com/account/" style="margin: 0px 0px 0px -8px;">My Account</a>
</li>
<li>
<a href="' . wp_logout_url($redirect) . '">Log Out</a>
</li>
</ul>
</div>[/not-level-visitors]');
echo do_短代码('[非级别访客]
-
-
[/不分级访客]”;
太棒了!它必须被包含在相同的括号中,否则短代码会中断。