Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

WordPress generating invalid markup, How to remove it?

Hi I am trying to get the categories associated with a post in it's meta section by using the following code:

<div>FILED AS: <span class="gf-post-meta-result"><?php the_category(' &bull; ') ?></span></div>

WordPress is generating the markup as:

<div>FILED AS: <span class="gf-post-meta-result"><a href="http://localhost/test/category/uncategorized/" title="View all posts in Uncategorized" rel="category tag">Uncategorized</a></span></div>

The issue:

This part rel="category tag" generated by wordpress is making my code invalid. W3c Validator throws an error saying:

Bad value category tag for attribute rel on element a: The string category is not a registered keyword or absolute URL. Whitespace in path component. Use %20 in place of spaces.

…w all posts in Uncategorized" rel="category tag">Uncategorized</a></span></div>

Any idea how to rectify this?

like image 357
Vikram Rao Avatar asked Feb 19 '23 00:02

Vikram Rao


2 Answers

These two rel values are not invalid. The validator is not up to date.

  • tag is defined in the HTML5 spec.
  • category is registered officially.

So it's no problem to use these values. The validator will probably catch up in the future.

like image 107
unor Avatar answered Feb 20 '23 14:02

unor


Just paste the following code in your functions.php file inside your theme folder

function remove_category_rel($output)
{
    $output = str_replace(' rel="category tag"', '', $output);
    return $output;
}
add_filter('the_category', 'remove_category_rel');
like image 26
The Alpha Avatar answered Feb 20 '23 14:02

The Alpha