WordPress как показать зарегистрированным пользователям, что они прочитали сообщение

#wordpress #wordpress-theming #custom-wordpress-pages #posts

Вопрос:

Есть ли способ показать зарегистрированным пользователям, что они уже прочитали сообщение?

Даже с кнопкой «отметить как прочитанное»?

Ответ №1:

добавьте приведенный ниже код в свою тему function.php файл его сохранить все данные пользователя, прочитанные после публикации

 add_action('wp_head', function () {
   $user_id = get_current_user_id();
   # if user is logged in 
   if (!empty($user_id)) {
       $post_id = get_the_ID();
       $user_read_post = get_user_meta($user_id, 'read_posts', true);
       if (empty($user_read_post)) {
          $user_read_post = array(); // if there is no read post 
        }

        if (!empty($post_id)) {
            array_push($user_read_post, $post_id);
        }
        $user_read_post = array_unique($user_read_post);
        update_user_meta($user_id, 'read_posts', $user_read_post);
    }
});
 

как получить сообщение пользователя, прочитанное пользователем

  $user_id = get_current_user_id();
 # if user is logged in 
   if (!empty($user_id)) {
       $user_read_post = get_user_meta($user_id, 'read_posts', true);
 }