У меня есть проблема, которую я не могу решить. Как говорится в названии, я хочу определить другое количество сообщений в каждой категории. Я пытался запросить сообщения и не работал, и они оставляют сообщения всех категорий, я также пытался использовать pre_get_posts, и это работает. Но он работает только для родительской категории и не может найти функцию, чтобы она хорошо работала для подкатегорий.Ограничение количества сообщений для каждой категории и ребенка, wordpress
Это то, что я хочу:
Category Parent 1 > Posts per page 5
subcategory > post per page 5
Category Parent 2 > Posts per page 10
subcategory > post per page 10
Category Parent 3 > Posts per page 20
subcategory > post per page 20
Я попытался с pre_get_posts но is_category служит только для родительской категории и подкатегории нет.
function wpse47875_change_posts_per_page($query) {
if (is_category('portadas-facebook')){
//Display 4 posts for category 1
$query->set('posts_per_page', 1);
}
}
add_action('pre_get_posts', 'wpse47875_change_posts_per_page', 1);
Любая идея?
Благодаря
спасибо, что вы помогли, но не работали с подкатегорией: s, любое другое предложение? – dukem30
Извините, мой плохой, я забыл 'cat_is_ancestor_of()' не принимает категорию slug в качестве аргумента. Мы должны получить категорию с помощью 'get_category_by_slug()' first. Пожалуйста, см. Мой обновленный ответ :) – kjetilh
Большое спасибо за ваше время, к сожалению, не работает с подкатегориями, любыми другими идеями о том, как вы могли это сделать? Я думал о том, чтобы не использовать pre_get_posts, если не шаблон категории, но при этом разбиение на страницы не работает – dukem30