When using Easy Digital Downloads to sell your digital products, each category page has a URL that looks like the following:


Note the category in the URL above. This is the default label that Easy Digital Downloads uses for categories. To change it, simply add the following to your child theme’s functions.php or plugin and modify accordingly.

Finally, it’s a good idea to visit the Permalinks admin page to flush the cache. Simply visit Settings → Permalinks in the WordPress admin to flush the rewrite rules.


  1. Great tip, just what I needed.

    Just curiosity, what does this line?

    $slug = defined( 'EDD_SLUG' ) ? EDD_SLUG : 'downloads';

    I guess the first part checks if the EDD_SLUG constant is defined before, in case somebody changed the “downloads” default?

    And what is the second part?

    ? EDD_SLUG : 'downloads';

    Anyway, very helpful!!

  2. Hi Joan!

    It’s called a ternary operator in PHP. The first part checks to see if the EDD_SLUG is defined (if statement), if it is (?) set it, otherwise (:) set it to “downloads”. Hope that makes sense.

  3. I just tried this on my blog and got an error, and I have no clue on how to fix it, when I try to edit the page back and remove the code that I inserted as you advised, it gives me this error:

    Parse error: syntax error, unexpected ‘<' in /buyqualityplr.com/wp-content/themes/serenityedd/functions.php on line 330

    Any chance you can help me fix it, I tried everything I know and anything I try to do gives me this error.

  4. Hi,

    Thanks for the great tutorial.

    I have a question I was hoping you could answer. I have implemented the code you supplied and I have set the new category slug to empty (”). This works fine for my category pages but now when I click on a download I get a page not found error.

    Do you have any idea why this is happening?



Comments are closed.