我正在尝试删除/替换WordPress使用的类别元素的title属性。我正在使用WordPress 2.9.1,代码如下:
<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>
从我所读到的这个方法过去常用于旧版本(我从未尝试过)。我真的不想破解WordPress的内涵,或者不得不使用JavaScript hack,这是非常直接的。任何帮助表示赞赏...
更新 下面是从上面的代码创建的...
<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>
答案 0 :(得分:9)
如果您不想使用该插件,从Remove Title Attributes plugin剥离代码,您可以看到所使用的主要功能,以便从类别中删除标题。
打开你的template / function.php文件并插入以下内容......
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');
这将添加一个新的过滤器,替换wordpress使用的wp_list_categories函数,并将其替换为上面的函数。
代码示例中的
<div id="categories">
<h3>Manufacturers</h3>
<ul>
<?php wp_list_categories(); ?>
</ul>
</div>
输出为
<div id="categories">
<h3>Manufacturers</h3>
<ul>
<li class="cat-item cat-item-7"><a href="http://localhost/crosstrainers/?cat=7">Featured</a></li>
</ul>
</div>
标题=“”,已完全剥离.. :)
答案 1 :(得分:4)
对于旧帖子,这是一个迟到的答案,但有一个更简单的方法,不需要插件或添加到functions.php
:
<?php wp_list_categories('title_li='); ?>
或者,如果与输出的其他自定义一起使用:
<?php $args = array (
'title_li' => __( '' ),
'hide_empty' => 0,
'show_count' => 1,
'use_desc_for_title' => 0,
'child_of' => 1
);
wp_list_categories( $args ); ?>
答案 2 :(得分:3)
有一个插件,这可能有助于至少查看插件代码。
http://wordpress.org/extend/plugins/remove-title-attributes/
答案 3 :(得分:1)
对于任何想要在没有任何function.php工作的情况下执行此操作的人来说,这可能是您的最佳选择
只需将其添加到您的模板中即可。
<ul class="nav">
<?php wp_list_categories( array(
'orderby' => 'name',
'taxonomy' => 'product_cat',
'depth' => 1,
'title_li' => '',
'hide_title_if_empty' => true,
'use_desc_for_title' => 0,
'include' => array( 28, 27, 8, 29, 43, 31 )
) ); ?>
</ul>
答案 4 :(得分:0)
默认情况下,wp_list_categories将包含title属性中的Category描述(如果有),或者“如果没有描述,则查看 category 下提交的所有帖子”。
我不喜欢在那里有完整的描述。这就是我在functions.php中使用的自定义title属性:
function custom_categories_title($output) {
$search = '/title=".+"(.*>)(.+)</i';
$replace = "title=\"View all articles filed under $2\"$1$2<";
return preg_replace($search, $replace, $output);
}
add_filter('wp_list_categories', 'custom_categories_title');
如果您只是想完全删除title属性,可以使用
$search = '/ title=".+"/i';
$replace = '';