Intereting Posts
получить случайную строку из пользовательской таблицы Добавить термин в приложение, представленное с лицевой стороны get_children () работает неправильно – только на один пост? Используйте другой образ каталога, чем изображение с изображением Добавить класс в конкретный параграф of_content () Стиль каждого второго виджета? Установить действующее состояние меню для пользовательского типа и категории, если заданный термин таксономии Добавьте столбец «Последний отредактирован» в таблицу списка типов сообщений Получить список всех ссылок на странице? Каков наилучший способ отображения сетки логотипов клиентов? Таксономия для WordPress Получить список условий для определенной категории Как добавить новую функцию post в текстовый виджет, который я создал для практики? add_meta_box: Datepicker, как и для postdate? Несколько запросов на странице «Главная страница – загрузка страницы / скорость сайта»

Список записей в алфавитном порядке по адресу archive.php

У меня есть куча категорий с подкатегориями и подкатегориями, которые я хочу перечислить на моем archive.php . Названия подкатегорий перечислены на странице архива его родительской категории.

Просто перечислите связанные заголовки категорий и / или сообщений, не более того. Все работает отлично, но на последнем шаге я хотел бы заказать фактические посты в алфавитном порядке.

Поэтому у меня есть этот код в моем archive.php

 <?php if (is_category()) { $this_category = get_category($cat); } $this_category = wp_list_categories('orderby=name&depth=1&show_count=0&title_li=&use_desc_for_title=1&child_of='.$this_category->cat_ID."&echo=0"); if ($this_category && $catlvl !=0) { ?> <ul class="cat_options"> <?php if ($catlvl !=3){ if ($catlvl == 1){ // Do stuff } if ($catlvl == 2){ // Do stuff } } else { // Do stuff $wpex_count = 0; while ( have_posts() ) : the_post(); $wpex_count++; // Get entry title ?> <li> <a href="<?php wpex_permalink(); ?>" title="<?php wpex_esc_title(); ?>" rel="bookmark"><?php the_title(); ?></a> </li> <?php // Reset counter to clear floats if ( wpex_blog_entry_columns() == $wpex_count ) { $wpex_count=0; } endwhile; } ?> </ul> <?php } 

Как это сделать, чтобы он перечислял сообщения в алфавитном порядке на последнем шаге? На страницах, где указаны категории, они находятся в алфавитном порядке.

Могу ли я использовать

 $args = array( 'posts_per_page' => -1, 'orderby'=> 'title', 'order' => 'ASC' ); 

от https://codex.wordpress.org/Alphabetizing_Posts здесь как-то? Как? Или мне нужно получить мои сообщения каким-то другим способом?

Должны быть указаны только записи в текущей категории. Когда я использую метод в ссылке выше, он перечисляет ВСЕ сообщения во ВСЕХ категориях.

Я предлагаю вам использовать action_posts action hook, предоставляемый WordPress.

Затем в вашем файле functions.php добавьте следующий код:

 function custom_pre_get_posts($query) { // validate if(!is_admin() && $query->is_main_query()) { if(is_archive()) { $query->set('orderby', 'title'); // order posts by title $query->set('order', 'ASC'); // and in ascending order } } } add_action('pre_get_posts', 'custom_pre_get_posts'); 

Вы можете узнать больше о pre_get_posts здесь