问题描述
WordPress 如何将原始数据从数据库转换为 the_content 函数中的可读格式?
我注意到它适用于 the_content 滤波器,但 the_content 滤波器是做什么的?
最佳解决方案
默认过滤器设置在/wp-includes/default-filters.php 中;
对于’the_content’ 这是从第 135 行:
add_filter( 'the_content', 'wptexturize' );
add_filter( 'the_content', 'convert_smilies' );
add_filter( 'the_content', 'convert_chars' );
add_filter( 'the_content', 'wpautop' );
add_filter( 'the_content', 'shortcode_unautop' );
add_filter( 'the_content', 'prepend_attachment' );
跟踪各个功能,可以尝试使用 http://phpxref.ftwr.co.uk/wordpress/nav.html?_functions/index.html,然后按照链接…
Edit
错过了 (wp-includes/default-filters.php
,第 102 行):
// Format WordPress
foreach ( array( 'the_content', 'the_title' ) as $filter )
add_filter( $filter, 'capital_P_dangit', 11 );
次佳解决方案
所有过滤器都存储在全局 $wp_filter
变量中。您可以检查该变量以查看哪些函数绑定到某个过滤器。
global $wp_filter;
print_r($wp_filter['the_content']);
要准确了解输出的数组,知道如何构建 $wp_filter
变量有助于很多。该行来自 add_filter()
功能的来源:
$wp_filter[$tag][$priority][$idx] = array('function' => $function_to_add, 'accepted_args' => $accepted_args);
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。