我想过滤the_content以将第一段的前三个单词包装在span标记中。到目前为止, 这是我的代码:
function first_paragraph($content) {
if(is_single()) {
return preg_replace('regex goes here', "<
p>
<
span>
$1<
/span>
", $content, 1);
}
}add_filter('the_content', 'first_paragraph');
到目前为止, 我还没有找到与第一段的前三个单词相匹配的正则表达式和替换。
有什么帮助吗?
谢谢!
#1【WP将前三个字换行】像这样:
php >
$content = 'The quick brown fox jumped over the lazy dog.';
php >
echo preg_replace('/^((\S+\s+){2}\S+)/', '<
span>
$1<
/span>
', $content);
<
span>
The quick brown<
/span>
fox jumped over the lazy dog.
因此, 你需要这样做:
function first_paragraph($content) {
if(is_single()) {
return preg_replace('/^((\S+\s+){2}\S+)/', "<
p>
<
span>
$1<
/span>
", $content, 1);
}
}add_filter('the_content', 'first_paragraph');
请记住, 如果$ content少于四个单词, 则正则表达式将不匹配, 并且替换也不会发生。
推荐阅读
- WP主题检查插件错误未显示位置
- Yoast插件未显示元描述和元关键字
- WP网站某些URL重定向到WP中的外部URL
- WP简单主题,改变图像行为
- WP短代码不返回内容
- wp_register_script不加载脚本
- 基于语言的wp突出主题社交媒体
- WP查询以获取具有特定term_taxonomy的帖子
- 二次上岗,充实生话