如何将自定义CSS类添加到所有链接

时间:2015-06-27 作者:WPRookie82

是否可以向post editor的HTML选项卡生成的所有链接添加CSS类?

即自动添加部件class=\'myclass\'?

<a class="myclass" href="http://www.google.com">Click me</a>
编辑以避免误解:该类必须添加到编辑器中,而不是通过javascript或HTML动态添加,这是因为并非所有链接都会使用该类,所以在我不需要它的罕见情况下,我只需自己删除它。目前,我正在做完全相反的事情,我自己不断添加class=“myclass”,如果一篇文章有20个或更多链接,这可能会很麻烦。

4 个回复
SO网友:cptstarling

在使用HTML选项卡创建的内容周围添加一个具有特定类名的容器会更有效。这样可以避免代码变得庞大。

SO网友:Macerier

您可以使用:

add_filter(\'the_content\', \'addClassToLinks\');
function addClassToLinks($content){
    return str_replace( \'<a \', "<a class=\'myclass\'", $content);
}
但我不推荐。

只需在主题中为内容容器添加一个特定的类。它更干净,在css中使用:

.myclass a {
     // css for a that is fount inside myclass
}

SO网友:Ravinder Kumar

您可以使用Advanced Tinymce 插件来解决您的问题。

该插件支持WordPress所见即所得编辑器TinyMCE的高级功能。它包括15个TinyMCE插件,根据选择的按钮自动启用或禁用。

你可以看到demo 在这里

SO网友:s_ha_dum

按照建议,只需在内容周围添加一个容器。你不想str_replace()preg_replace() 您的标记。它资源昂贵,而且容易出错。所以

<div class="html-content"><?php
  the_content(); ?>
</div>
然后。。。

.html-content a { }
事实上,很可能您的主题中已经有了足够相似的标记,这样就可以在不做进一步更改的情况下工作。

您可以对过滤器执行相同的操作:

function add_content_wrapper($content) {
  $content = \'<div class="html-content">\'.$content.\'</div>\';
  return $content;
}
add_filter(\'the_content\',\'add_content_wrapper\');

结束

相关推荐

从外观管理菜单中删除自定义背景和页眉,不带CSS或JS

我试图从外观菜单中删除背景和标题,但它们似乎并没有消失!我想这是因为我已经激活了自定义,但我是否可以在不使用CSS或JS的情况下删除它们?这是我的代码:add_action(\'admin_menu\', \'remove_unnecessary_wordpress_menus\', 999); function remove_unnecessary_wordpress_menus(){ remove_menu_page(\'themes.php?page=custom-