我创建了自定义的帖子类型和分类粘附。php文件(通过复制archive.php文件的内容)。
我希望搜索结果按字母顺序(或标题)显示,但事实并非如此。
以下是页面代码:
<?php get_header(); ?>
<div class="content">
<div class="page-title">
<h4>
<?php if ( is_day() ) : ?>
<?php _e(\'Date\', \'wilson\'); ?><span class="name"><?php echo get_the_date(); ?></span>
<?php elseif ( is_month() ) : ?>
<?php _e(\'Month\', \'wilson\'); ?><span class="name"><?php echo get_the_date(\'F Y\'); ?></span>
<?php elseif ( is_year() ) : ?>
<?php _e(\'Year\', \'wilson\'); ?><span class="name"><?php echo get_the_date(\'Y\'); ?></span>
<?php elseif ( is_category() ) : ?>
<?php _e(\'Category\', \'wilson\'); ?><span class="name"><?php echo single_cat_title( \'\', false ); ?></span>
<?php elseif ( is_tag() ) : ?>
<?php _e(\'Tag\', \'wilson\'); ?><span class="name"><?php echo single_tag_title( \'\', false ); ?></span>
<?php elseif ( is_author() ) : ?>
<?php $curauth = (isset($_GET[\'author_name\'])) ? get_user_by(\'slug\', $author_name) : get_userdata(intval($author)); ?>
<?php _e(\'Author\', \'wilson\'); ?><span class="name"><?php echo ($curauth->display_name); ?></span>
<?php else : ?>
<?php _e( \'Les Membres\', \'wilson\' ); ?>
<?php endif; ?>
</h4>
<?php
$tag_description = tag_description();
if ( ! empty( $tag_description ) )
echo apply_filters( \'tag_archive_meta\', $tag_description );
?>
</div> <!-- /page-title -->
<div class="posts">
<?php if ( have_posts() ) : ?>
<?php rewind_posts(); ?>
<?php while ( have_posts() ) : the_post(); ?>
<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
<?php get_template_part( \'contentmembres\', get_post_format() ); ?>
</div> <!-- /post -->
<?php endwhile; ?>
</div> <!-- /posts -->
<?php if ( $wp_query->max_num_pages > 1 ) : ?>
<div class="archive-nav">
<?php echo get_next_posts_link( __(\'Older<span> posts</span>\', \'wilson\')); ?>
<?php echo get_previous_posts_link( __(\'Newer<span> posts</span>\', \'wilson\')); ?>
<div class="clear"></div>
</div> <!-- /post-nav archive-nav -->
<?php endif; ?>
<?php endif; ?>
<?php get_footer(); ?>
最合适的回答,由SO网友:Milo 整理而成
主查询是在加载模板之前生成的,主查询的结果是WordPress如何知道要加载哪个模板。如果要更改主查询的查询参数以更改以下内容orderby
, 您应该添加一个连接到pre_get_posts
.
传递给函数的参数包含每个查询的查询参数,因此您可以检查它是哪个查询,并且只更改分类法主查询。这个功能将放在你的主题中functions.php
文件或插件。
function wpd_adhesion_taxonomy_queries( $query ) {
if ( !is_admin() && $query->is_tax( \'adhesion\' ) && $query->is_main_query() ) {
$query->set( \'orderby\', \'title\' );
$query->set( \'order\', \'ASC\' );
}
}
add_action( \'pre_get_posts\', \'wpd_adhesion_taxonomy_queries\' );