【发布时间】:2012-11-29 05:35:59
【问题描述】:
在我的 WordPress 博客中,我在添加新帖子表单的“描述”字段中插入了以下内容。
sss'ss''ss'''ss"ss""sss"""
我正在应用 filter hook(add_filter) the_content() 函数,如下所示。基本上,如果存在超过 50 个字符的意思,我想显示非空格单词,我想在 50 个字符后留出空格。所以我使用 wordwrap 函数来做到这一点。但是在内容中使用特殊字符时,我得到了如下所述的有线输出。
function.php
function filter_content($content) {
global $post;
$original = wordwrap($content,50,' ',' ' );
return $original;
}
add_filter( 'the_content', 'filter_content' );
输出:
sss’ss”ss”’ss”ss& #8221;"sss”"”
【问题讨论】:
-
“我已经使用以下函数过滤了
the_content() function”是什么意思?您是在附加函数the_content()还是对 action HOOKthe_content应用过滤器?这些是非常不同的操作。很明显你得到的结果不是由函数 wordwrap() 生成的,不要忘记钩子the_content是修改内容的一种流行方式,你不知道其他函数已经在做什么或它们的方式去做吧。 -
为什么你认为函数wordwrap()与输出的奇怪字符有什么关系?无论如何,你的问题是什么?你的“问题”里没有问题,我只看到陈述。
-
详细阅读,您说当我在单个帖子页面中使用
the_content() function时,它会显示以下有问题的内容。。我真的不明白。 ¿ 您认为问题出在the_content() function使用时,还是the_content钩子中的自动换行,还是两者兼而有之?不可能猜到,我不会浪费时间尝试去做。祝你好运。 -
我正在应用过滤器来操作 HOOK 到 the_content 函数,请查看问题编辑。
标签: php wordpress word-wrap add-filter