Typecho在指定段落后面添加广告代码的方法

今天有网友在留言里提到Typecho是否可以像WordPress一样实现自动在网站内容指定段落后面添加广告的代码模式《WordPress利用插件和非插件实现任意段落添加广告代码片段》,老蒋当然也没有遇到过这个问题,于是我就发挥寻找能力,找呀找,找到方法记录下来。

function themeInit($archive) {
// 判断段落,看有数字 2 标记的,就是我们希望在第几段添加广告
$ad_code = '<div>我们的广告内容</div>';
if ($archive->is('single')) {
$archive->content = prefix_insert_after_paragraph( $ad_code, 2, $archive->content );
}
}

// 插入广告所需的功能代码
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 );
}

参考来自:http://forum.typecho.org/viewtopic.php?f=6&t=10009

这里老蒋也没有测试,如果有网友测试后可以请留言。

本文出处:老蒋部落 » Typecho在指定段落后面添加广告代码的方法 | 欢迎分享( 公众号:站长事儿 )