如果他们没有博客文章,标题不会显示。 WordPress的

时间:2013-03-07 17:33:21

标签: php wordpress

在我们当前的网站上,我们有不同的公司资料。有些公司的博客文章显示在他们的个人资料中,有些则没有。它们是页面模板中的帖子上方的h2标签,然后是引入帖子的代码。代码看起来像这样。

 <h2>Recent Blog Articles</a></h2>
 <?php echo get_related_author_posts(); ?>

我正试图找到一种方法,以便如果他们没有公司的帖子,那么h2标签就不会显示出来。函数文件中的代码是

function get_related_author_posts() {
    global $authordata, $post;

    $authors_posts = get_posts( array( 'author' => $authordata->ID, 'post__not_in' => array( $post->ID ), 'posts_per_page' => 5 ) );


    $output = ' <ul style="list-style: none;">';
    foreach ( $authors_posts as $authors_post ) {
        $output .= '<li><a href="' . get_permalink( $authors_post->ID ) . '">' . apply_filters( 'the_title', $authors_post->post_title, $authors_post->ID ) . '</a></li>';
    }
    $output .= '</ul>';

    return $output;

}

我无法弄清楚任何建议会有所帮助。提前谢谢。

1 个答案:

答案 0 :(得分:1)

如果将h2添加到函数中,则可以通过添加if语句来控制整个输出,以检查是否有任何作者帖子。

function get_related_author_posts() {
    global $authordata, $post;

    $authors_posts = get_posts( array( 'author' => $authordata->ID, 'post__not_in' => array( $post->ID ), 'posts_per_page' => 5 ) );

    if( ! $authors_posts ) {
        return;
    } 

    $output = '<h2>Recent Blog Articles</h2>';
    $output .= ' <ul style="list-style: none;">';
    foreach ( $authors_posts as $authors_post ) {
        $output .= '<li><a href="' . get_permalink( $authors_post->ID ) . '">' . apply_filters( 'the_title', $authors_post->post_title, $authors_post->ID ) . '</a></li>';
    }
    $output .= '</ul>';

    return $output;

}