我试图计算每个博客帖子中的段落总数,但没有执行,因此没有返回任何内容。
How do you want to use this code?
当前在我的
function.php
我使用以下代码在帖子中显示广告:
add_filter( \'the_content\', \'_some_func\' );
function _some_func( $content ) {
$ad_code = "the ad code";
if ( is_singular( \'post\' ) ) {
return prefix_insert_after_paragraph( $ad_code, 12, $content );
}
return $content;
}
// Parent Function that makes the magic happen
function prefix_insert_after_paragraph( $insertion, $paragraph_id, $content ) {
$closing_p = \'</p>\';
$paragraphs = explode( $closing_p, $content );
foreach ($paragraphs as $index => $paragraph) {
if ( trim( $paragraph ) ) {
$paragraphs[$index] .= $closing_p;
}
if ( $paragraph_id == $index + 1 ) {
$paragraphs[$index] .= $insertion;
}
}
return implode( \'\', $paragraphs );
}
现在,我想通过基于现在有许多段落的代码服务将其提升到下一个级别,如下所示:
add_filter( \'the_content\', \'_some_func\' );
function _some_func( $content ) {
if( __check_paragraph_count_blog() > 15 )
$ad_code = "the ad code";
if ( is_singular( \'post\' ) ) {
return prefix_insert_after_paragraph( $ad_code, 12, $content );
}
return $content;
}
所以,我试着写以下内容
__check_paragraph_count_blog()
函数获取总段落数,以便我可以在上面的调用中使用它。
function __check_paragraph_count_blog() {
global $post;
if ( is_singular( \'post\' ) ) {
$count = substr_count( $post->post_content, \'</p>\' );
return $count;
} else {
return 0;
}
}
我的
__check_paragraph_count_blog()
功能:
它总是返回0,它认为</p>
内部标签<code>
和<pre>
标签也是如果有人能帮我修好__check_paragraph_count_blog()
功能,使其正常工作,这将是一个非常大的帮助。