所以我发现你不能在PHP回声中运行PHP(对我来说是愚蠢的) 所以我不能想到另一种运行这个脚本的方法,也就是做一个变量?
它是php脚本中的wordpress php脚本
<?php if ( !is_user_logged_in() ) {
echo '<a href=" <?php echo get_site_url(); ?>/login" class="typcn typcn-key-outline">Log in</a>';
}
else {
echo '<a href="<?php echo get_site_url(); ?>/wp-login.php?action=logout" class="typcn typcn-key-outline">Log out</a>';
} ?>
答案 0 :(得分:5)
好的,这个剧本中几乎没有错误。
首先,你在php标签中使用php标签,它没有意义,你已经在使用php了,所以你不需要那些php标签。
但是即使你删除了php标签它也不会起作用,因为你在一个字符串里面,所以你要求php写一个litteraly get_site_url()(你不是在调用get_site_url(),你是在写get_site_url ())
那你该怎么做?
让我们看看连接是如何工作的。连接运算符是&#34;。&#34;。它允许连接两个字符串。
示例:
$sentence = "Hello" . " " . "Thierry"; // means $sentence = "Hello Thierry".
好的,现在让我们对变量做同样的事。
$name = "Thierry";
$sentence = "Hello" . " " . $name; // means $sentence = "Hello Thierry";
这就是你需要的一切。
让我们看看我们如何解决你的问题,
你想要的结果是:
echo '<a href="yourSiteUrl/login" class="typcn typcn-key-outline">Log in</a>';
现在我们用连接运算符和php函数替换yourSiteUrl。你有:
echo '<a href="'.get_site_url().'/login" class="typcn typcn-key-outline">Log in</a>';
重复这个过程,你最终会得到这个:
<?php if ( !is_user_logged_in() ) {
echo '<a href="'.get_site_url().'/login" class="typcn typcn-key-outline">Log in</a>';
}
else {
echo '<a href="'.get_site_url().'/wp-login.php?action=logout" class="typcn typcn-key-outline">Log out</a>';
} ?>
希望英语不是太糟糕