我在Wordpress中有一个PHP文件,其中包含一些HTML,"登录和注册",我只想在网站成员未登录时显示。当他们登录时,我希望它显示"欢迎,[姓名]"。
我只是不确定如何在 PHP If 语句中使用 HTML。条件是这样的:
<?php
if ( member_is_logged_in() ) {
print "Welcome [name]";
} else {
print "<a href="...">Login</a> | <a href="...">Register</a>";
}
?>
这就是我认为它应该的样子,但它不起作用。我对PHP不是很好,但我会感谢任何帮助。谢谢!
您可以在双引号字符串中使用 PHP 变量。 因此,只需将 [name] 替换为 $name 或任何变量即可。请注意,这不适用于单引号。
此外,在 else 情况下,您有两组双引号。这将导致语法错误。将其中一个改为单引号或转义内部引号。
<?php
if ( member_is_logged_in() ) {
print "Welcome $name";
} else {
print '<a href="...">Login</a> | <a href="...">Register</a>';
}
?>
您也可以直接结束 PHP 标签并编写 HTML。
<?php
if ( member_is_logged_in() ) {
print "Welcome $name";
} else {
?>
<a href="...">Login</a> | <a href="...">Register</a>
<?php
}
?>
为此存在更好,更易于阅读的语法:
<?php if(<your evaluation here>): ?>
HTML for when true
<?php else: ?>
HTML for when false
<?php endif; ?>
查看控件结构的替代语法以获取有关此内容的详细信息。
当我们在做的时候,打印与回声,哪一个更快?
简单地说
:
<?php
if ( member_is_logged_in() ) {
print "Welcome $name";
} else { ?>
<a href="...">Login</a> | <a href="...">Register</a>
<?php }
?>
如果你可以使用wordpress,试试下面的代码:
参见 Utl:- http://codex.wordpress.org/Function_Reference/wp_get_current_user
例如:要确定当前是否有用户登录,请执行以下操作:
<?php
$current_user = wp_get_current_user();
if ( 0 == $current_user->ID ) {
// Not logged in.
} else {
// Logged in.
}
?>
试试这个代码块,让我知道---
<?php
if ( member_is_logged_in() ) {
global $display_name;
get_currentuserinfo();
print "Welcome ".$display_name;
} else {
print "<a href="...">Login</a> | <a href="...">Register</a>";
}
?>