Remove link around category and tags in Genesis template

Remove link around category and tags in Genesis template

Problem Description:

I want to remove the links (a tag) in the blog template and in the single template in Genesis.
I just want to show the plain category names and tags, and don’t want a link to the categories.

<p class="entry-meta">    
    <span class="entry-categories">    
       <a href="" rel="category tag">Categoryname</a>  

So i want to remove the a tag.

I can’t find how to do that in Genesis. I know of the function “genesis_post_meta” but i can only change the text and seperator.

Solution – 1

I found this on

add_filter( 'the_category', 'no_links' );
      function no_links($thelist) {
        return preg_replace('#<a.*?>([^<]*)</a>#i', '$1', $thelist);

The function no_links() contains a regular expression which removes all anchors from the string. That’s the whole trick. At the end of your code you should remove the filter again, just in case the categories are displayed on the same page with the standard style.

Solution – 2

You can do this using css

<p class="entry-meta">
    <span class="entry-categories">
      <a href="" rel="category tag"> Categoryname</a>

and in css use this

    .entry-categories a {pointer-events: none;cursor: default;}

check this too

Solution – 3

the proper way is to use a filter

remove_filter( 'the_category', 'no_links' 10,1 );
add_filter( 'the_category', 'no_links' );

Here is the full example:

Solution – 4

Do not use CSS to strip links. It is not accessible, provides a poor user experience, and Google will penalize.

Easiest way below:

add_filter('the_category', function ($theList) {
    return preg_replace('#<a.*?>([^<]*)</a>#i', '$1', $theList);
Rate this post
We use cookies in order to give you the best possible experience on our website. By continuing to use this site, you agree to our use of cookies.