2天内第3个帖子大声笑。 我想知道是否有人可以提供帮助。我想编辑以下代码,以便如果客户未登录,则文本显示“登录/注册”,如果他们已登录,则显示“我的帐户”
<div id="myaccount">
<a href="wordpress/my-account"><img class="bottom" src="wp-
content/themes/mt_theme/images/my_account_hover.png" alt="My
Account"/>
<img class="top" src="wp-content/themes/my_theme/images/my_account.png"
alt="My Account"/>
<p class="icotext">My Account</p>
</a>
</div>
CSS:
#myaccount{
position: relative;
margin: 0 auto;
}
#myaccount img {
position:absolute;
left:900px;
top: -20px;
Height: 50px !important;
width: 50px !important;
}
a:hover img.top {
opacity:0;
}
.icotext{
position: absolute;
left: 890px;
top: 28px;
color: #000000
}
a:hover .icotext{
font-weight: bold;
left: 888px;
}
我见过像
这样的人<?php
if ( is_user_logged_in() ) {
echo 'Welcome, registered user!';
} else {
echo 'Welcome, visitor!';
}
?>
但是,我不确定如何将回声“”置于与当前文本相同的位置并添加相同的效果。
答案 0 :(得分:2)
编写如下代码:
<div id="myaccount">
<a href="wordpress/my-account"><img class="bottom" src="wp-
content/themes/mt_theme/images/my_account_hover.png" alt="My
Account"/>
<img class="top" src="wp-content/themes/my_theme/images/my_account.png"
alt="My Account"/>
<p class="icotext">
<?php
if ( is_user_logged_in() ) {
echo 'Welcome, registered user!';
} else {
echo 'Welcome, visitor!';
}
?>
</p>
</a>
</div>
或者您可以编写如下代码:
<p class="icotext"><?php echo (is_user_logged_in()?'Your online':'Hi visitor') ?></p>
答案 1 :(得分:0)
可能会有所帮助
<?php
if ( is_user_logged_in() ) {
echo '<p class="icotext">'.'Welcome, registered user!'.'</p>';
} else {
echo '<p class="icotext">'.'Welcome, visitor!'.'</p>';
}
?>
答案 2 :(得分:0)
我不是PHP大师,但你会把代码内联,放在标记本身。类似下面的代码块,这样你就可以有条件地显示你想要的东西。
<?php if(conditions): ?>
... HTML CODE ...
<?php endif; ?>
答案 3 :(得分:0)
您可以在代码中确定用户是否已登录,然后再插入正确的文本。例如:
<?php
$loginText = "";
if ( is_user_logged_in() ) {
$loginText = "My Account";
} else {
$loginText = "Login/Register";
}
?>
<div id="myaccount">
<a href="wordpress/my-account"><img class="bottom" src="wp-
content/themes/mt_theme/images/my_account_hover.png" alt="My
Account"/>
<img class="top" src="wp-content/themes/my_theme/images/my_account.png"
alt="My Account"/>
<p class="icotext"><?= $loginText ?></p>
</a>
</div>
<?= ?>
语法允许您在需要的位置插入变量。
答案 4 :(得分:0)
<div id="myaccount">
<a href="wordpress/my-account"><img class="bottom" src="wp-
content/themes/mt_theme/images/my_account_hover.png" alt="My
Account"/>
<img class="top" src="wp-content/themes/my_theme/images/my_account.png"
alt="My Account"/>
<p class="icotext">
<?php
if ( is_user_logged_in() ) {
echo 'login/register';
} else {
echo 'My Account';
}
?>
</p>
</a>
</div>
答案 5 :(得分:0)
首先检查用户是否登录的情况。要做到这一点,你可以
将Session设置为login并将Session_Login检查为boolean
现在检查它的运行
if($SESSION_LOGIN){
echo "<p class = "icotext">"."Welcome , registered user"."</p>";
}else{
echo "<p class = "icotext">"."Welcome ,visitor"."</p>";
}
请务必先启动会话。
答案 6 :(得分:0)
您应该在html文件中创建一个代码块,该代码块根据用户的当前状态(登录/注销)返回当前消息。嗯,这不是解决这个“问题”的最佳方法,但这就是wordpress的方式。我们来举个例子:
<?php
if(isset($_SESSION['user_token'])){
?>
<div id="myaccount">
<a href="wordpress/my-account"><img class="bottom" src="wp-
content/themes/mt_theme/images/my_account_hover.png" alt="My
Account"/>
<img class="top" src="wp-content/themes/my_theme/images/my_account.png"
alt="My Account"/>
<p class="icotext">My Account</p>
</a>
</div>
<?php } else { echo "Logged out user message here"; } ?>
鉴于您正在使用wordpress,这是您的最佳方法。