GOAL
我们在Buddypress中有几个插件,可以在成员的个人资料页面中显示帖子(显示用户的帖子),其中一些插件不再工作(个人资料上的bp帖子)或新的插件(TCH\\u PostsOnProfile),还有一些插件的工作方式类似于(buddyblog)但还没有显示多个自定义帖子类型,我决定尝试在没有插件的情况下执行,在这个网站的帮助下,我收集了一些片段,并创建了一个几乎可以使用的新选项卡,其中包含了成员的自定义帖子
if 对创建特定帖子类型的用户角色有条件。我已成功地在buddypress中的成员配置文件中添加了一个新选项卡,其代码位于bp custom中。php
PROBLEM
在bp自定义中添加代码段后。php和创建stats概要文件。php模板我尝试了许多不同代码的组合,但我还看不到任何东西,只有空的带有成员子菜单和(缺少页脚和侧边栏)的断开的配置文件页面
CONCLUSION
如何显示自定义用户角色的自定义帖子?每个用户角色都有不同的表单需要填写,我希望通过新添加的选项卡将提交的表单显示在他们的配置文件中。
EXAMPLES
求职者创建两种自定义职位类型:“公文包”和“申请人”,CPT“公文包”类似于他们的简历,带有个人数据和照片,“申请人”是寻找工作的广告。机构创建机构投资组合(CPT“Agency”)和“employer”CPT(提供工作的广告)。用户角色俱乐部创建CPT“Club”等。
bp自定义。php在这里
// Set up Custom BP navigation
function my_setup_nav() {
if ( user_can( bp_displayed_user_id(), \'job_applicant\' ) ) {
global $bp;
bp_core_new_nav_item( array(
\'name\' => __( \'Stats\', \'buddypress\' ),
\'slug\' => \'stats\',
\'position\' => 20,
\'screen_function\' => \'profile_screen_stats\'
) );
// Change the order of menu items
$bp->bp_nav[\'messages\'][\'position\'] = 100;
}
}
add_action( \'bp_setup_nav\', \'my_setup_nav\' );
// show feedback when \'Stats\' tab is clicked
function profile_screen_stats() {
add_action( \'bp_template_content\', \'profile_screen_stats_show\' );
bp_core_load_template( apply_filters( \'bp_core_template_plugin\', \'members/single/plugins\' ) );
}
function profile_screen_stats_show() {
// call your stats template
locate_template( array( \'stats-profile.php\' ), true );
}
统计资料中的
。php页面我正在尝试显示这些帖子,这是我认为最适合我的代码,模板位于bp默认文件夹中<?php
global $bp;
global $paged;
global $wp_query;
$temp = $wp_query;
$wp_query = null;
$user_id = $bp->displayed_user->id;
$paged = (get_query_var(\'paged\')) ? get_query_var(\'paged\') : 1;
$args = array(
\'posts_per_page\' => 10,
\'cat\' => -1,
\'post_type\' => array(
\'post\',
\'portfolio\',
\'applicant\',
\'agency\',
\'employer\'
),
\'author\' => $user_id,
\'paged\' => $paged
);
$wp_query = new WP_Query($args);
while ( $wp_query->have_posts() ) : $wp_query->the_post();
the_title();
endwhile;
$wp_query = null; $wp_query = $temp;
?>
最合适的回答,由SO网友:Daniel Foltynek 整理而成
这是stats概要文件中更新的工作代码。php与上面的代码一起在bp中自定义。php(buddypress functions.php)为我提供了多个自定义帖子类型的显示用户的标题。
<?php
if ( is_user_logged_in() ):
query_posts(array(
\'post_type\' => array(
\'post\',
\'portfolio\',
\'applicant\',
\'agency\',
\'employer\'
),
\'author\' => bp_displayed_user_id(),
\'showposts\' => 3
) );
?>
<?php while (have_posts()) : the_post(); ?>
<h3><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h3>
<?php endwhile;
else :
echo "";
endif;
?>