要在WordPress主题开发中禁用自动过滤HTML标签,您可以使用以下方法:
remove_filter
函数:您可以使用remove_filter
函数来移除WordPress默认的自动过滤HTML标签的过滤器。以下是一个示例:remove_filter('the_content', 'wpautop');
remove_filter('widget_text_content', 'wpautop');
这将禁用在内容和文本小工具中自动过滤HTML标签的功能。
kses_allowed_html
过滤器:您还可以通过kses_allowed_html
过滤器来自定义允许的HTML标签和属性。以下是一个示例:function custom_kses_allowed_html($tags, $context) {
if ('post' === $context) {
$tags = array(
'a' => array(
'href' => true,
'title' => true
),
'strong' => array(),
'em' => array(),
);
}
return $tags;
}
add_filter('wp_kses_allowed_html', 'custom_kses_allowed_html', 10, 2);
在上面的示例中,我们定义了允许的HTML标签和属性,然后将其添加到wp_kses_allowed_html
过滤器中。
shortcode
:如果您希望在内容中保留HTML标签,可以将内容包装在WordPress的[raw]
短代码中,如下所示:[raw]Your HTML content here[/raw]
这将告诉WordPress不要自动过滤包含在[raw]
短代码中的内容。
根据您的需求,您可以选择上述方法之一来禁用自动过滤HTML标签。请确保在主题开发中谨慎处理HTML标签,以确保安全性和可维护性。