Задать вопрос

Как средствами PHP и Wordress реализовать сортировку записей по алфавиту?

Здравствуйте, возникла проблема.
Нужно выводить названия записей по алфавиту, а не по дате добавления на определенной странице.
Участок страницы:
<?php if ( have_posts() ) : ?>
<?php while ( have_posts() ) : the_post(); ?>
<a href="<?php the_permalink(); ?>" rel="bookmark" ><?php the_title(); ?></a>

Подскажите, как это организовать? В PHP к сожалению не разбираюсь.
Вся надежда на Вашу поддержку. Спасибо.
  • Вопрос задан
  • 5121 просмотр
Подписаться 3 Оценить Комментировать
Решения вопроса 1
Как-то так:
function my_change_order( $query ) {
	if(is_main_query() && !is_admin() && is_archive()) {
		$query->set( 'order' , 'asc' );
		$query->set( 'orderby', 'title' );
	}
	return $query;
}
add_filter( 'pre_get_posts' , 'my_change_order' );

is_main_query() нужен, чтобы фильр не срабатывал на выводе меню
!is_admin() - чтобы фильтр не срабатывал в админке
is_archive() и тому подобное - по вкусу, настраивает область действия фильтра, смотре где конкретно нужно менять порядок.

Весь этот код помещать в functions.php темы.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@No1s3
query_posts('cat=1&order=asc&orderby=title&post_per_page=-1');

Может так?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы