1

下面是我遇到的一个 php 问题,它以其他方式工作,但也不能按我希望的方式工作。

基本上我希望将 WP 登录和注销命令添加到 A-HREF 链接,但关闭的短代码似乎没有生效,我想知道为什么并希望解决这个问题。

<?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]');
?>
4

2 回答 2

0

看起来您需要删除额外的开/关括号和额外的 do_shortcode 调用。

<?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]');
?>
于 2013-05-24T14:51:37.013 回答
0

我发现的主要区别是对 do_shortcode 的单个调用与多个调用,我认为它与正则表达式不匹配。

也许这会起作用:

    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]');
于 2013-05-24T14:53:46.563 回答