Related Posts SEO Best Practice

Joined
Oct 23, 2020
Messages
124
Likes
124
Degree
1
I just started using a related posts plugin for one of my sites. I've got this set below content and randomized it to load content within the category to showcase related content.

There are various options here:

You can set by random (current setting), ID, author, title, modified, no order, and many more. I'm wondering if the random setting which reloads "random" and different posts within a category each time dilutes the value since links change in this section every time the page reloads?

Any experience with this and a particular best practice approach via an experiment?

Thanks in advance and happy Sunday everyone.
 
I quit randomizing the posts and began adding them manually at the bottom of the post content as static, unchanging links.

My reasoning was that I don’t want Googlebot to see different links each time and continually reflow the page rank. I want it consistent so that there will be less fluctuation over time as the amount of these links grow.

It’s likely a minor amount of page rank compared to contextual links, but I still don’t like the idea of constantly randomizing and micro-shuffling rankings around.
 
There is this plugin called "contextual related posts". It does a pretty good job in showing only closely related posts. Much better than the regular filters. Could be an option if you don't want to go the manual route.
 
I've removed the random related posts until I come up with a better plan. I was thinking of adding tags and noindexing and following them and using that to categorize the related posts but then I'm left with eating up crawl budget maybe and I hate tags in general.
 
Kind of related to what @Ryuzaki said, except I came up with a reusable block that showcases category-related posts at the end of every article. It is dynamic in that it adds additional links when a new post is published, but most of my categories have 5-10 posts so it doesn't get out of hand.
 
Kind of related to what @Ryuzaki said, except I came up with a reusable block that showcases category-related posts at the end of every article. It is dynamic in that it adds additional links when a new post is published, but most of my categories have 5-10 posts so it doesn't get out of hand.
A thought is that I could set them to the latest or most recent updated 4-6 posts so that the randomization is removed.
 
I've removed the random related posts until I come up with a better plan. I was thinking of adding tags and noindexing and following them and using that to categorize the related posts but then I'm left with eating up crawl budget maybe and I hate tags in general.
You could pull this off with custom fields (the in-built Wordpress kind offered on every post) and then loop through those custom fields. It'd be the same effect as using tags, but without generating the extra pages.
 
You could pull this off with custom fields (the in-built Wordpress kind offered on every post) and then loop through those custom fields. It'd be the same effect as using tags, but without generating the extra pages.
Thank you! I will ask my dev on this. Super appreciate the advice!
 
@Ryuzaki do you perhaps have any resource/reference for this? I'm struggling to try to get this to work. Any help is appreciated.
 
@Ryuzaki do you perhaps have any resource/reference for this? I'm struggling to try to get this to work. Any help is appreciated.
This is the general info on custom fields, in terms of how to use them. You won't retrieve the custom fields as meta data (Displaying Custom Fields section at the bottom) though.

You'll need to use them as query arguments while looping on the custom fields. Mainly using meta_key and meta_value.

So in your single.php you'll need to write a loop at the bottom where first you grab the custom field value that's being used on the post. This is all done as variables. So in incorrect code (I'm just making this up to show you the logic, it won't work as is):

Code:
// get the name of the custom field's key into a variable
$custom_field_key = 'whatever the name of the key you use is, keep it the same across all posts';
// get that key's value (the "tag" you want to loop for to get related posts)
$custom_field_value = get_post_meta( get_the_ID(), $custom_field_key, true );
// check to see if the key is actually there so you don't throw an error
if ( !empty( $custom_field_value ) ) {
    // Set up the arguments of the loop and create the WP_Query
    $args = array(
        'post_type' => 'post',
        'posts_per_page' => 5,
        'post_status' => 'publish',
        'meta_query' => array(
           'key' => $custom_field_key,
          'value' => $custom_field_value
        )
    );
    $field_query = new WP_Query( $args );
    // Create the loop
    if ( $field_query->have_posts() ) {
        echo '<ul>';
        while ( $field_query->have_posts() ) {
            $field_query->the_post();
            echo '<li>' . get_the_title() . '</li>';
       }
      echo '</ul>';
       } else {
      // write some HTML & PHP code for "no related posts found'.
     } 
}
// Restore the original query
wp_reset_postdata();

It'll be something like that. I'm rusty on PHP and Wordpress at the moment. In the "create the loop" section you'll need to grab the URL and create the link, maybe grab the featured image, etc. However you want to set it up.
 
Quick update on my end here. I ended up doing this successfully! What I do is track it via spreadsheet so I know how and what’s tagged what for the custom field tagging. So far so good!
 
Back