views:

806

answers:

3

I'm trying to remove/replace the title attribute on the category elements used by WordPress. I'm using WordPress 2.9.1, with the following code:

<div id="categories">
    <h3>Manufacturers</h3>
        <ul>
            <?php str_replace("title=\"View all posts filed under ","",wp_list_categories('use_desc_for_title=0&exclude=1,2,3,4,5&title_li=&hierarchical=1')); ?>
        </ul>
</div>

From what I had read this method used to work on older versions (I had never tried it though). I really don't want to hack at the interals of WordPress, or have to use a JavaScript hack, for something so straight forward. Any help is appreciated...

Update below is what is created from the code above...

<div id="categories">
<h3>Manufacturers</h3>
<ul>
<li class="cat-item cat-item-7"><a href="http://localhost/crosstrainers/?cat=7" title="View all posts filed under Featured">Featured</a>
</li>
</ul>
</div>
+3  A: 

There's a plugin for that maybe this can help at least looking at the plugin code.

http://wordpress.org/extend/plugins/remove-title-attributes/

JeremySpouken
+3  A: 

If you don't want to use the plugin, stripping the code from the Remove Title Attributes plugin you can see the main function used in order to remove the titles from the categories..

open your template/function.php file and insert the following...

function wp_list_categories_remove_title_attributes($output) {
    $output = preg_replace('` title="(.+)"`', '', $output);
    return $output;
}
add_filter('wp_list_categories', 'wp_list_categories_remove_title_attributes');

this will add a new filter replacing the out of the wp_list_categories function used by wordpress and replace it with the function above..

in your code example

<div id="categories">
  <h3>Manufacturers</h3>
    <ul>
      <?php wp_list_categories(); ?>
    </ul>
</div>

Would output as

 <div id="categories">
      <h3>Manufacturers</h3>
        <ul>
          <li class="cat-item cat-item-7"><a href="http://localhost/crosstrainers/?cat=7"&gt;Featured&lt;/a&gt;&lt;/li&gt;
        </ul>
    </div>

Were the title="", has been stripped out completely.. :)

credits to: Tim Holt & his plugin

Marty
A: 

Thanks Marty. You help me too.

Denys