我使用此快捷码加载每个用户配置文件或作者的帖子链接列表:
/*
*
* Shortcode to display Post as links on Profile Pages
*
*/
function imwz_golfs_list_function( $atts ) {
if ( is_user_logged_in() ):
global $current_user;
wp_get_current_user();
$author_query = array(\'posts_per_page\' => \'-1\',\'author\' => $current_user->ID);
$author_posts = new WP_Query($author_query);
while($author_posts->have_posts()) : $author_posts->the_post();
?>
<li><a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>
<?php
endwhile;
else :
echo "not logged in";
endif;
}
add_shortcode( \'golfslist\', \'imwz_golfs_list_function\' );
现在除了它的位置外,它在2017年也能工作。然而,在总主题上,它是在body标签之后加载的,也是在定位问题的顶部加载的。因此,在这两个主题上,它都是在主内容之前加载的,而不是在帖子或页面中使用
[golfslist]
在所见即所得编辑器中。
有没有办法把列表放在编辑器中,然后把它加载到我想在帖子中的位置?你知道如何将其加载到帖子内容和body标签下方吗?
最合适的回答,由SO网友:mukto90 整理而成
请试试这个-
/*
*
* Shortcode to display Post as links on Profile Pages
*
*/
function imwz_golfs_list_function( $atts ) {
if ( is_user_logged_in() ):
global $current_user;
wp_get_current_user();
$author_query = array(\'posts_per_page\' => \'-1\',\'author\' => $current_user->ID);
$author_posts = new WP_Query($author_query);
ob_start();
if($author_posts->have_posts()) :
echo \'<ul>\';
while($author_posts->have_posts()) : $author_posts->the_post();
?>
<li><a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>
<?php
endwhile;
echo \'</ul>\';
else :
echo "not logged in";
endif;
$content = ob_get_clean();
return $content;
endif;
}
add_shortcode( \'golfslist\', \'imwz_golfs_list_function\' );
未经测试,但应能正常工作。
请注意,在使用快捷码时,您的内容应该是“返回的”,而不是“回显的”。