Как получить сообщения из категории с помощью пули?

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

До сих пор я добился этого так:

<?php
    global $post;
    $args = array( 'numberposts' => 10, 'category' => 6 );
    $posts = get_posts( $args );
    foreach( $posts as $post ): setup_postdata($post); 
?>

    <divs with the_title() the_excerpt() etc ></div>

<?php 
    endforeach; 
?>

Но что, если я хочу получить категорию по ее слизью? Или можно просто сделать поле выбора категории внутри панели администратора?

Ответ 1

Заменить category параметр с category_name

<?php
    global $post;
    $args = array( 'numberposts' => 10, 'category_name' => 'cat-slug' );
    $posts = get_posts( $args );
    foreach( $posts as $post ): setup_postdata($post); 
?>

<divs with the_title() the_excerpt() etc ></div>

<?php endforeach; ?>

Для получения дополнительной информации: http://codex.wordpress.org/Class_Reference/WP_Query#Parameters

Ответ 2

предположим, что у вас есть название категории "ледяные пирожные" и категория "слизь" как "ледяные пирожки", тогда наш код для получения сообщения под категорией "ледяные пироги" выглядит следующим образом:

<?php
              $args = array( 'posts_per_page' => 3,
               'category_name' => 'ice-cakes' );

              $icecakes = get_posts( $args );
              foreach ( $icecakes as $post ) : setup_postdata( $post ); ?>
                  <li>
                      <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
                  </li>
              <?php endforeach; 
              wp_reset_postdata(); ?>

Ответ 3

Вы можете просто передать слаг в методе get_posts WordPress. предположим, что ваша категория - ice-cake

$args = array('numberposts' => 10, 'category' => 'ice-cake');
$posts = get_posts($args);

Для получения дополнительной информации: https://developer.wordpress.org/reference/functions/get_posts/