我正在使用 Joomla 2.5,并且在我的网站顶部我有一个包含以下代码的模块:
<?php
$user =JFactory::getUser()->guest;
if ($user->guest) {
echo 'Please sign up or sign in to view this'
}
else {
echo 'Here is the content';
}
?>
我尝试但没有奏效的是在第一个 if 语句中添加一个变量 $member 。如果此人未登录以向他显示回声,但也将 $member 设置为 == true。
我为什么要这样做?我认为如果我检查 $member 的状态而不是调用 Joomla API 来确定用户是否登录,它会使网站加载更快。
在每个页面中确定访问者是否是成员的调用大约为 5-7。当我使用 JFactory::getUser() 函数(上面的所有代码)5-7 次时,它确实会减慢网站速度。这就是为什么我想在第一次调用中创建 $member == true 如果我认为这在站点性能/速度方面会更好,请纠正我。
我试过这个:
<?php
$user =JFactory::getUser()->guest;
if ($user->guest) {
echo 'Please sign up or sign in to view this'
$member == true;
}
else {
echo 'Here is the content';
}
?>
我在头模块中有上面的代码。但是当我稍后在同一页面或文章中的其他模块中使用 php 代码时,它无法识别 $member 的状态,并且总是将用户确定为未登录。
我究竟做错了什么?我猜它与变量范围有关,我检查了我的 PHP 书,但找不到错误。任何帮助表示赞赏。