@carbelop creo entender que la plantilla que tengas instalada con tu WordPress + Buddypress, te permitirá introducir algún widget en el perfil de usuario BuddyPress o en su footer o donde desees introducir las publicaciones de este author , porque sino tendrás que tocar el código de la plantilla o de funciones de BP bp-custom.php
Antes para esta funcion estaba el plugin BP-POst-On-Profile pero desgraciadamente esta des-actualizado.
Prueba a ver si te vale este plugin, ya sea por widget o bien via utilizando su shortcode [wp-post-author]
donde desees que aparezcan los post.
Sino prueba a añadir esta función a tu archivo bp-custom.php, esta solucion la he sacado del foro de soporte de Buddypress y que le añadirá una pestaña mas al perfil de usuario con sus ultimos post.
https://buddypress.org/support/topic/resolved-show-posts-written-by-user-on-profile/
if ( !function_exists( 'add_action' ) ) {
echo 'Hi there! I\'m just a plugin, not much I can do when called directly.';
exit;
}
define('TCH_PostsOnProfilesVersion', '0.1');
define('TCH_PostsOnProfilesVersion_PLUGIN_URL', plugin_dir_url( __FILE__ ));
add_action( 'bp_setup_nav', 'add_profileposts_tab', 100 );
function add_profileposts_tab() {
global $bp;
bp_core_new_nav_item( array(
'name' => 'My Posts',
'slug' => 'posts',
'screen_function' => 'bp_postsonprofile',
'default_subnav_slug' => 'My Posts',
'position' => 25
)
);
// show feedback when 'Posts' tab is clicked
function bp_postsonprofile() {
add_action( 'bp_template_content', 'profile_screen_posts_show' );
bp_core_load_template( apply_filters( 'bp_core_template_plugin', 'members/single/plugins' ) );
}
function profile_screen_posts_show() {
$theuser = bp_displayed_user_id();
query_posts("author=$theuser" );
if ( have_posts() ) :
get_template_part( 'loop', 'archive' );
else: ?>
Iniciador del debate
carbelop
(@carbelop)
Gracias, finalmente lo solucioné con un plugin lamado content views que te permite poner las entradas de la categoría que elijas y para decir el usuario tuve que toquetear el código, lo que me ha costado sangre. Muchas gracias