Hello, welcome to therichpost.com. In this post, I will tell you, How to get logged in user recently read posts in wordpress? WordPress is the best cms. WordPress hooks(add_action, add_filter) give us the power to edit or change the code without interruption into the files and this is the best thing about wordpress. Now I am going to tell you how the hooks work.
In this post, I will do the trick that, if user will logged in and he/she wants to check recent read post or article and then he/she will easily track with below code and this is very interesting.
Here is complete working and tested code to Get logged in user recently read posts in wordpress:
You need to add below code into your theme’s functions.php file:
function shortcode_update_recent() {
if( is_user_logged_in() ) {
$post_id = get_the_ID();
$uu_id = get_current_user_id();
add_post_meta($post_id,'_post_read_by', get_current_user_id(), false);
}
}
add_shortcode('track_user_recently_read', shortcode_update_recent );
function shortcode_recent() {
$uu_id = get_current_user_id();
$args = array(
'posts_per_page' => 10,
'meta_key' => '_post_read_by',
'meta_value' => $uu_id,
'post_type' => 'post',
'post_status' => 'publish',
);
$posts_array = get_posts( $args );
foreach ( $posts_array as $post ) :
echo $post->post_title;
endforeach;
wp_reset_postdata();
}
add_shortcode('display_user_recent', shortcode_recent );
You need to add below code into your theme’s single.php file:
echo do_shortcode('[track_user_recently_read]');
You need to add below code into your theme’s template file, where you want show logged-in user recent read posts and I am just getting the post title but we can get all the post content like post feature image and many more :
<?php echo do_shortcode('[display_user_recent]'); ?>
Now you are done and if you have query related to this post or you want to do some more with this code then please do comment below and I will come with wordpress hooks.
