如果没有帖子,自定义帖子类型作者查询会中断网站

时间:2015-09-08 09:37:33

标签: php wordpress wp-query

我的自定义作者查询存在问题,只要该作者没有任何帖子,就会破坏网站。

在author.php中,我有一个查询,它应该从自定义帖子类型中获取帖子。该网站具有多作者功能,这就是为什么查询看起来有点奇怪。

我认为我的标记布局方式出错了。我已经尝试过任何我能想到的东西,但我没有运气。如果有人能发现循环/查询的任何问题,我将非常感激。

Not working

Working

<?php
$author_id = get_the_author_meta( 'ID' );

if ( have_posts() ) : the_post();
  rewind_posts(); //then rewind
  ?>

  <?php
  $author_details = $wp_query->get_queried_object();
  $curauth = (isset($_GET['author_name'])) ? get_user_by('slug', $author_name) : get_userdata(intval($author));
  $temp = $wp_query;
  $wp_query = null;
  $wp_query = new WP_Query();
  $wp_query->query(array(
    'post_type'=> 'publikasjoner',
    'paged' => $paged,
    'posts_per_page' => 6,
    'meta_key' => 'rapportnummer',
    'orderby' => 'meta_value_num',
    'order' => 'DSC',
    'author_name' => $curauth->user_nicename
  )); ?>

  <h4 class="box-title">Publikasjoner</h4>
  <div class="clearfix"></div><?php

  while ($wp_query->have_posts()) : $wp_query->the_post(); ?>

  <?php // POST TYPE ARTICLE HERE

  <?php endwhile;

  if(function_exists('wp_pagenavi')) { wp_pagenavi( array( 'query' => $wp_query ) ); }

endif;

$wp_query = null; $wp_query = $temp; ?>

1 个答案:

答案 0 :(得分:0)

我没有测试过这个,但你试过了吗?

if ($wp_query->have_posts()) :
    while ($wp_query->have_posts()) : $wp_query->the_post();
        // Your loop code
    endwhile;
else :
    echo wpautop( 'Sorry, no posts were found' );
endif;

你可以加入WordPress标签并提及&#34; WordPress&#34;你问题的某个地方。它将有助于找到能够回答您问题的合适人员或其他具有相同问题的人。