1

我在从所有帖子类型中按标签抓取相关帖子时遇到问题。我正在使用以下代码:

<?php
  $tags = wp_get_post_tags($post->ID);
  if ($tags) {
    echo 'Related Posts';
    $first_tag = $tags[0]->term_id;
    $args=array(
      'tag__in' => array($first_tag),
      'post__not_in' => array($post->ID),
      'showposts'=>5,
      'caller_get_posts'=>1,
      'post_type' => array('food','travel')
    );
    $my_query = new WP_Query($args);
    if( $my_query->have_posts() ) {
      echo '<ul>';
      while ($my_query->have_posts()) : $my_query->the_post(); ?>
        <li><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>
      <?php
      endwhile;
      echo '</ul>';
    }
  }
?>

它不会返回正确的帖子,而是显示最新的帖子。我在 WP 文档上检查了十几次,我的语法是正确的。

如果这是一个错误,那里有人有这个补丁吗?或者另一种选择是您是否可以共享SQL查询方法。

4

1 回答 1

0

禁用所有插件。在插件文件中查找add_action('pre_get_posts',...

此操作有时会替换$my_query->query_vars['post_type']为“任何”。

对我来说,它是Sticky Custom Post Types插件。

于 2013-01-14T10:04:06.643 回答