Ну во-первых, я ужасен с php. Это мой код
$myposts = get_posts('showposts=9');
foreach($myposts as $post) :
setup_postdata($post);
Я хотел, чтобы категория «1» не отображалась, поэтому я попытался:
$myposts = get_posts('cat=-1, showposts=9');
foreach($myposts as $post) :
setup_postdata($post);
Все записи перестали отображаться. Поэтому я попытался выбрать только те категории, которые я хотел:
$myposts = get_posts('cat=40,41,42,43,etc, showposts=9');
foreach($myposts as $post) :
setup_postdata($post);
Появится только 1 сообщение из каждой категории, а не все.
У меня есть php, написанный на этом конкретном шаблоне страницы, так как я хотел бы использовать категорию в другом месте, просто не отображаться на этой странице. Я пробовал несколько других вещей, но я не совсем понимаю структуру php, и встраивание его в случайные места не дало никаких результатов.
Есть несколько способов добиться этого. Ты можешь использовать get_posts()
(https://codex.wordpress.org/Template_Tags/get_posts) или вы можете использовать WP_Query()
(http://codex.wordpress.org/Class_Reference/WP_Query)
Я не уверен, что ты showposts=9
аргумент в вашем коде, когда вы звоните get_posts()
?
Чтобы получить все сообщения, кроме тех, которые относятся к одной категории (с идентификатором = 1), используя get_posts:
$myposts = get_posts(array('cat'=>'-1', 'posts_per_page'=>-1));
'cat'=>'-1'
означает исключить посты с идентификатором категории 1 и 'posts_per_page'=>-1
значит не ограничивайте количество возвращаемых постов.
Других решений пока нет …