Задать вопрос
@Azat2015

Как в Wordpress показывать пользователю только его страницы и записи?

Была однажды задача - показывать в Wordpress пользователю только его записи. Я без лишних заморочек сделал так:
Главной страницей установлены "Ваши последние записи". После логина на главной странице, пользователь попадает в ленту записей. При чем все записи помечены как личные. Таким образом каждый пользователь видит только то, что касается его (т.е. где автором указан он сам).

Теперь возникла задача сделать для каждого пользователя свою "домашнюю" страницу, откуда он уже сможет переходить по ссылкам на свои же страницы. Можно, конечно, оставить как есть, добавив из ленты записей ссылки на также помеченные "личными" страницы. Но по ощущениям это все изначально костыль.

Каким способом лучше всего реализовать?

PS: Если не понятно, для чего это может быть нужно: строительные организации регулярно формируют фотоотчеты со строящихся объектов для своих заказчиков. Доступ заказчику, конечно, нужен только к своим данным. Отчетные данные формирует третье лицо по заказу строителей.
  • Вопрос задан
  • 210 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 3
@KingAnton
Выводим циклом только записи пользователя, примерно так:
<?php
// получаем id пользователя
$cur_user_id = get_current_user_id(); 

// Define custom query parameters
$custom_query_args = array( 
    'post_type' => 'post',
    'posts_per_page' => -1,
    'post_status' => 'publish',
    'author' => $cur_user_id // выводим посты только этого пользователя
  );

// Instantiate custom query
$custom_query = new WP_Query( $custom_query_args );

// Output custom query loop
if ( $custom_query->have_posts() ) :
  while ( $custom_query->have_posts() ) :
    $custom_query->the_post(); ?>

        <?php the_title(); ?>
        
<?php
  endwhile;
endif;
wp_reset_postdata();
?>
Ответ написан
Комментировать
@Azat2015 Автор вопроса
Пока нашел такой выход - плагин LoginWP, для каждого пользователя вручную прописывается редирект на конкретную страницу после логина .
Ответ написан
artzolin
@artzolin Куратор тега WordPress
php, WordPress разработка сайтов artzolin.ru
В шаблоне author.php в глобальном запросе $wp_query есть посты каждого пользователя
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы