How to Create a WordPress Author Page in 2020

Last updated January 5, 2020

Operating a successful WordPress website will require you to create a lot of awesome content that draws new people to reading your website. Many website owners choose to lighten the content creation load by having other people write content for their website.

Guest authors and contributors can be from anywhere, within your own organisation or from someone who has credibility in your industry, contributions can be free or paid. Contributing content allows authors to expand their network and profile and allows you to get quality content on your website for a fair price.

One thing that many people do not consider is how to attribute the content back to the original author. One way is to create a WordPress author page that will list authors.

WordPress does not have this function out of the box but going to the effort of creating an author list page can be a great way to interlink your pages and give kudos and credibility to your authors.

Get your personal website development team and send them unlimited website tasks for just $99 – Learn More

Discover how to list authors in WordPress and give them the credibility and kudos they deserve

The most efficient and clean way to create an author list page is to create a new custom page template that sits as part of your child theme. We will discuss this method first. However please note it is fairly technical, so if you’re uncomfortable with this method, feel free to skip down to method 2 in this article.

Method 2 uses a plugin that does all the hard work for you. This method is good for non-technical people but may result in extra bloat on your website.

Method 1: Create a custom author list template

This might sounds like a lot to unpack but never fear! We will walk through this step by step.

Things you need before you can get started:

In order to create this new author list page you will need a few important things.

  1. Access to your hosting/cPanel/server to upload a new page template
  2. A child theme where you can add a custom template file
  3. A text editor such as TextEdit for Mac or Notepad for PC/Windows

If you’re not sure if you have these things you can always start on the steps below and see how you go, you should be able to get most of the way with even the most basic WordPress configuration.

Step 1: Create a new page template

Open up TextEdit for Mac or Notepad for PC/Windows and create a new plain text file. Name and save your blank file as “author-list-template.php”.

Important: make sure this is a plain text file e.g. there should be no ability to change fonts or add bold text or any other rich text features like the below image.

Add the following custom code to your new author-list-template.php

<?php
/*
Template Name: Author List
*/
// define your file as a page template (above)

// get the page header and menu etc
get_header();
// get a list of users
$authors = get_users();

// check if there are any users (there should be at least 1)
if (!empty($authors)) {

  // print out the title of the page as a heading 1
  echo '<h1>' . get_the_title() . '</h1>';

  // loop through each user
  foreach ($authors as $author) {

    // get all posts authored by this user
    $posts = get_posts(array('author' => $author->ID, 'numberposts' => -1));
   
    // check if the user authored any posts and skip them if they have no posts
    if (!empty($posts)) {

      // print out the users name as a heading 2
      echo '<h2>' . $author->display_name . '</h2>';
      // print the start of the list of posts
      echo '<ul>';

      // loop through each post
      foreach ($posts as $post) {

        // print each post as a list item including post link and post title
        echo '<li><a href="' . get_permalink($post->ID) . '">';
        echo $post->post_title;
        echo '</a></li>';

      }

      // end the list of posts
      echo '</ul>';

    }
  }
}

// get the page footer
get_footer();

Step 2: Login to your website hosting

Login to your website hosting and navigate to your theme or child theme’s root.

Here is an example of how to do that using cPanel hosting (which is the most common way for small businesses to host their website).

Start by logging in to cPanel. When you login you will see the main cPanel dashboard page with a menu item called “File Manager”.

If you have non-cPanel hosting then you may need to contact your hosting company and ask them if they have a similar file manager. If your hosting company does not have a file manager then you may need to upload your files in a different way or contact a development team (like WP Runner) to get help with this part.

After that you need to navigate to through the file system to reach your theme, navigate from “public_html” > “wp-content” > “themes” and finally you need to open the correct theme folder which is your parent or child theme.

Ideally you want to use a child theme to avoid losing the changes in a future theme update. This is something we will be discussing in a different article. Here is a view of what the child theme of one of our websites looks like:

You will notice a functions.php file and a style.css file. Those are the only 2 files that a child theme needs to work but there may be many other files and folders that are also present.

After that you will need to upload or create a new file for our new page template to list authors. Below shows you how to upload or create a new file:

If you uploaded your file make sure to upload the “author-list-template.php” file you created in step 1, above.

If you created a file then you can name your file “author-list-template.php”

After that you need to open and edit the file like so:

If you created a file then this should open a blank file. From here you need to add the code that creates a new page template from step 1, above.

If you uploaded your file then you won’t need to edit the file, it should work already.

This code will create a basic Author List page template listing each author and their posts with a link to each post. This basic template will also include your theme header and footer for most theme configurations.

There are many ways to write the code for a custom page template. We have chosen a basic method.

There are many ways to improve or refine this code by adding more detail, more rich media, better validation, faster code etc. All of these improvements are possible but are outside the scope of this guide.

Note this custom page template does not include any special styles or formatting and therefore it may look simple when you load it up (in the next step). We will show you a different way to add an author list using a plugin in the second part of this guide.

Step 3: Create a new page in the WordPress admin area

Login to your website and create a new page. Give your new page a title of “Author List” and then select the page template you just created from the list of templates in the page editor sidebar. Here is an example of a page I created:

There is no need to add any page content. All you need to do is add a title and select the page template and then click publish and you are done!

Here is an example of what the new author page looks like on one of my websites:

All styles will be inherited from your theme so your list will have the same colours/fonts etc as your theme.

Important: this method is very efficient and clean but is dependant on the structure of your theme and the configuration of your hosting. It is possible that this method might not work well if your theme is set up in an unusual way. In that situation I would suggest following method 2, described below.

Get your personal website development team and send them unlimited website tasks for just $99 – Learn More

Method 2: Use a plugin to create an author list

If the above process does not fit your needs or you want a solution that is easier for non-technical people to set up then you can always use a plugin to create an authors list page.

Our current favourite plugin to do this is called Authors List by WPKube.

Step 1: Install and activate the Authors List plugin

Login to your WordPress website and install the Authors List plugin through the WordPress admin area.

Step 2: Create a new page for your authors list and add the plugin shortcode

Create a new page through the WordPress admin area. Then add the shortcode [authors_list] to show your Author content as a dynamic list on the page.

Once that is done you should hit publish or update to your page to publish your page.

Congratulations, you now have a beautiful author’s page to show off your amazing (and talented) website contributors.

This plugin works slightly differently to the first method. It creates an index page that shows off all of your authors and a summary of how many posts they have created like this:

Then when you click on “View Posts ->” it will show the full list of author contributions on a new page.

This is pretty handy solution if you want your authors to have a unique page they can reference or link to their audience. I have seen freelance authors use these types of page links in their portfolio to showcase their writing talents.

Lastly, the Authors List plugin page has a lot of custom shortcode attributes that you can use to tweak the content and layout of the Authors List. We’ve kept ours intentionally simple and SEO friendly but you can always experiment to get the best result that works for you.

That’s it! Thanks for reading and let us know in the comments if you have any questions or thoughts about how best to use author pages.

Get your personal website development team and send them unlimited website tasks for just $99 – Learn More

Get your personal website development team and send them unlimited website tasks for just $99

Learn more


0 Comments

    Leave a Reply

    Related Stories

    November 8, 2018

    How set up an SSL certificate to remove the “not secure” warning

    Google is cracking down on "not secure" websites. In this guide you can learn how to set up a free SSL certificate and remove the "not secure" SSL warning from your website.

    February 17, 2020

    What is a WordPress child theme and why do you need it?

    A WordPress child theme is essential when you want to start customising your website. So what is a child theme? and how and why do you need it?

    February 20, 2020

    How often should you update your WordPress website? And how?

    Running updates to your WordPress website is an important and can be a very challenging task. Updates are important to avoid potential security issues and get the most out of your website.

    Arrow-up