Настройка пользовательского порядка сортировки записей внутри категории
У меня есть настроенная категория, которая включает несколько записей. По дизайну это не блог, а список сотрудников. В настоящее время все сотрудники имеют свои собственные записи в этой категории. Я хотел бы иметь возможность сортировать порядок их отображения в родительской категории.
Как сделать это наиболее удобным для пользователя способом? Мой клиент может захотеть изменить порядок сортировки в будущем, особенно когда сотрудники увольняются или нанимаются новые.
Буду благодарен за любую помощь.
http://gointrigue.com/beta/faculty/
Дополню: По ссылке, которую я предоставил, вы попадете на страницу категории, которую я создал - /faculty/. На этой странице категории у меня есть несколько записей. WordPress автоматически отображает их в порядке создания, при этом самые недавно созданные записи отображаются первыми.
Я хочу отображать их в своем собственном порядке. Как это сделать?

Теперь, когда я лучше понимаю суть проблемы, я бы рекомендовал использовать произвольные поля для сортировки ваших записей. Вы можете создать произвольное поле (например, "order") и использовать его для указания порядка ваших записей. Затем вам нужно будет использовать пользовательский запрос для сортировки этих записей при их отображении. Вы можете использовать такой запрос:
$args = array(
'meta_key' => 'order',
'orderby' => 'meta_value',
'order' => 'ASC'
);
$custom_query = new WP_Query();
$custom_query->query($args);
if($custom_query->have_posts())
{
while($custom_query->have_posts())
{
$custom_query->the_post();
// Выполняем действия внутри цикла
}
}
Для получения дополнительной информации обо всех аргументах, которые можно использовать для создания пользовательских запросов, пожалуйста, ознакомьтесь с документацией по классу WP_Query.

Спасибо! Я нашел плагин, который почти подошел бы, но он не ПОЛНОСТЬЮ настраиваемый. Просто шел с кучей предопределенных порядков. Но он все равно не обновлялся. ВОПРОС: в какие файлы я должен добавить свой код для нового произвольного поля? И в какой файл поместить код для пользовательского запроса?

Для произвольных полей не нужен новый код. Они автоматически являются частью экрана редактирования. Если произвольные поля не отображаются по умолчанию, посмотрите на ссылку "Настройки экрана" в верхнем правом углу экрана редактирования, чтобы включить произвольные поля. Вам нужно будет использовать предоставленный мной код где-то в файлах темы. Ознакомьтесь с иерархией шаблонов для начала: http://codex.wordpress.org/Template_Hierarchy

После некоторых проб и ошибок у меня получилось заставить это работать! Осталась только одна проблема. Сортировка работает некорректно, если я упорядочиваю записи с однозначными и двузначными числами, например: "8, 9, 10". Записи 1 и 10 оказываются рядом друг с другом, если я не введу 1 как "01". Есть ли способ в коде добавлять 0 ко всем однозначным числам, чтобы моему клиенту не пришлось это делать вручную?

У меня возникла одна проблема с приведённым выше кодом. Похоже, что он перестаёт перебирать посты после вывода 10 записей. Я подумал, может быть, он игнорирует все числа больше 11. Но на самом деле он просто останавливается после отображения 10 постов в общей сложности. Есть идеи, почему так происходит?

Простое решение проблемы сортировки — начать с 100, затем 101 и так далее. Он показывает только 10 постов, потому что по умолчанию используется значение, установленное в Настройки > Чтение > "На страницах блога отображать не более". Вы можете либо изменить это значение, либо, чтобы показать все посты, добавить 'posts_per_page' => -1
в массив args.

Спасибо за совет! Добавление этого параметра в массив сработало. Не уверен, что сортировка постов с использованием 100, 101 и так далее намного лучше, чем 01, 02.

Я немного запутался в вашем сообщении, так как думаю, что оно может касаться нескольких разных вопросов. Если вы спрашиваете, как упорядочить ваши категории в пользовательском порядке, пожалуйста, ознакомьтесь с плагином Custom Taxonomy Sort, который как раз это и делает. Вы можете указать порядок для каждого элемента таксономии.

Я установил плагин, который вы порекомендовали, но похоже, что это не то, что мне нужно. Здесь есть только опции для добавления порядка сортировки категорий. А мне нужно сортировать порядок, в котором мои записи отображаются при переходе в эту категорию.
В ссылке, которую я предоставил в своем первоначальном сообщении, вы попадете на страницу категории. На этой странице категории у меня есть несколько записей. WordPress автоматически отображает их в порядке создания, причем самая новая запись идет первой.
Я хочу отображать их в своем собственном порядке. Как это сделать?
