Отображать только сообщения автора на странице автора в Wordpress - PullRequest
0 голосов
/ 02 июля 2018

Что я должен сделать, чтобы отображать только сообщения определенного автора, на моей странице author.php? Я имею в виду не конкретного автора (используя идентификатор автора), а страницу по умолчанию для авторов. С текущим кодом, его отображение сообщений от всех других авторов. Должен ли я использовать конкретный запрос?

<?php   $paged = ( get_query_var('paged') ) ? get_query_var('paged') : 1;
    $custom_args = array(
    'post_type' => 'post',
    // 'order' => 'DESC',
    'posts_per_page' => 10,
        'paged' => $paged
    );

// custom query
$recent_posts = new WP_Query($custom_args);

// check that we have results
if($recent_posts->have_posts()) : ?>

<ul class="article_list">

    <?php
    // start loop
    while ($recent_posts->have_posts() ) : $recent_posts->the_post(); ?>

    <li class="regular">
        <a href="<?php echo get_permalink(); ?>">
            <div class="text">
                <p class="category"><?php foreach((get_the_category()) as $category) { echo $category->cat_name . ' '; } ?></p>
                <p class="autor"><?php the_author(); ?></p>
                <h3 class="article_title"><?php echo mb_strimwidth(get_the_title(), 0, 80, '...'); ?></h3>
                <p class="date"><?php echo get_the_date( 'Y-m-d' ); ?></p>
            </div>
            <div class="mask">
              <?php
              $url = wp_get_attachment_url( get_post_thumbnail_id($post->ID) );
              echo '<div class="art_img" style="background: url('. $url.')"></div>';
              ?>
            </div>
        </a>
    </li>
<?php endwhile; ?>
</ul>
<?php endif;
echo '<div class="pagination">';
if(function_exists('wp_pagenavi')) { wp_pagenavi(array( 'query' => $recent_posts )); }
echo '</div>';
wp_reset_postdata();
?>

Ответы [ 3 ]

0 голосов
/ 02 июля 2018

Здравствуйте, просто добавьте global $current_user; над $paged переменной поверх вашего предоставленного фрагмента и добавьте 'author' => $current_user->ID, в ваш массив $custom_args, чтобы он отображал сообщения определенного пользователя на странице автора

0 голосов
/ 02 июля 2018

Добавьте автора__in в ваш запрос

Попробуйте это

<?php $paged = ( get_query_var('paged') ) ? get_query_var('paged') : 1;
    $custom_args = array(
    'post_type' => 'post',
    'author__in'=> array(2,4,6), //Authors's id's you like to include
    // 'order' => 'DESC',
    'posts_per_page' => 10,
    'paged' => $paged
);
0 голосов
/ 02 июля 2018

Вы можете использовать функцию get_posts из wordpress.

Вот ссылка: https://codex.wordpress.org/Template_Tags/get_posts

Передать идентификатор автора в списке аргументов.

...