为表添加自定义类

时间:2013-09-15 作者:hazelnut

我必须在WordPress上为HTML表实现一个默认类。wp标准为<table>

..是否有任何方法可以做到这一点,即我按默认值获取此输出?<table class="abc xyz">

也许有过滤器?

3 个回复
最合适的回答,由SO网友:Eugene Manuilov 整理而成

在您的情况下,您需要为添加自定义挂钩the_content 过滤器:

add_filter( \'the_content\', \'wpse8170_add_custom_table_class\' );
function wpse8170_add_custom_table_class( $content ) {
    return str_replace( \'<table>\', \'<table class="mycustom-class">\', $content );
}
将此代码段添加到functions.php 文件

SO网友:Andrés

我做了一个简单的修改,让代码识别标记中的其他样式:

add_filter( \'the_content\', \'wpse8170_add_custom_table_class\' );
function wpse8170_add_custom_table_class( $content ) {
return str_replace( \'<table\', \'<table class="my-class"\', $content );
}

SO网友:s_ha_dum

默认编辑器(视觉编辑器或文本编辑器)中没有表功能,因此除非使用CKEditor 这确实会生成标记,我会使用一个短代码。

function table_wrapper_wpse_114253( $atts, $content = null ) {
  return \'<table class="abc xyz">\'.$content.\'</table>\';
}
add_shortcode(\'table\',\'table_wrapper_wpse_114253\');
在你的内容中,只需写[table]...[/table] 而不是<table>...</table>

如果你的主题使用body_classpost_class 正确,您所要做的就是向每个添加一个类<table> 在帖子正文中,几乎可以肯定存在现有的标记,无论您是否在the_content 正如@EugeneManuilov所建议的,或者是一个短代码。

结束

相关推荐

只在本地主机上运行的Functions.php代码?

我想在函数中运行add\\u操作。仅当主题是从我的localhost开发站点加载时才使用php。如何使其仅在本地主机上运行?function livereload(){ ?> // mycode <?php } add_action(\'headway_body_close\', \'livereload\');