非常抱歉,标题含糊不清,我不知道如何描述我想要的。
一般要点。。。。。
我在一个网站上安装了BuddyPress和BBPress,我正在尝试稍微改变一下成员页面。
我有一个显示我的论坛索引的页面,当用户转到自己的个人资料时,默认视图是我的论坛页面。我这样做是因为对于不懂网站的用户来说,浏览论坛可能有点乏味。我只是想马上给他们论坛。
我通过定义一个自定义slug,并按照他们网站上的指示更改BuddyPress DEFAULT\\u组件来实现这一点。
我现在遇到的问题是,当我单击另一个成员配置文件时,它会显示论坛索引。我想做的是,当一个成员单击另一个成员的配置文件时,它默认为他们的活动或配置文件页面。如果该成员自己点击,他们会看到所有论坛。
我有这样的东西
function lg_pick_menu ()
{
if (! bp_logged_in_user() )
{
define ( "BP_DEFAULT_COMPONENT", "social");
//$user = bp_is_user();
//echo $user;
}
else
{
define ( "BP_DEFAULT_COMPONENT", "profile");
}
}
注释的行(6和7)仅用于我自己的测试,不做任何类似的事情。
不幸的是,我不是php魔术师,BuddyPress文档非常模糊。有人能帮忙吗?或者至少给我指出正确的方向?如果我能破解这个,那么我就可以继续使用网站的其余部分!
非常感谢,
菲尔
SO网友:shanebp
听起来你在用bp_has_members
在某个页面上循环。我认为你不能改变define
在循环中。
在那个循环中,你有这个代码吗?
<a href="<?php bp_member_permalink(); ?>"><?php bp_member_avatar(); ?></a>
和/或:
<a href="<?php bp_member_permalink(); ?>"><?php bp_member_name(); ?></a>
然后你可以这样做:
<?php if ( bp_get_member_user_id() == bp_loggedin_user_id() ) : ?>
<a href="<?php bp_member_permalink() . \'activity\'; ?>"><?php bp_member_name(); ?></a>
<?php else : ?>
<a href="<?php bp_member_permalink(); ?>"><?php bp_member_name(); ?></a>
<?php endif; ?>