Typecho免安装插件直接在文章中插入广告功能

插件开发及发布

版主: woniou

回复
angellcawn
帖子: 200
注册时间: 2013年 12月 6日 11:01
来自: https://www.typecho.wiki
联系:

Typecho免安装插件直接在文章中插入广告功能

帖子 angellcawn »

代码: 全选

function themeInit($archive) {
   
   // 判断是否是文章,如果是就插入广告
   $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 );
}


对,你没有看错,这是一段代码,放在主题的function.php文件里就可以了,因为参考了wordpress在文章内容中插入广告的代码,wordpress有个非常好用的函数叫add_filter,可是typecho没有,为了能在Typecho的文章中也能插入广告,就有了上面这段代码,会写插件的可以考虑写成插件,不过我不太喜欢插件,能用代码实现就用代码 :lol:

基本的解释:插入函数主要就是通过内容<p>标签来识别段落,prefix_insert_after_paragraph( $ad_code, 2, $archive->content );
第一个参数是打算插入文章中的广告代码,第二参数是P标签的位置,可以理解为段落,第三个参数是文章内容

个人博客:http://www.moidea.info
逗妇乳
帖子: 112
注册时间: 2013年 12月 24日 11:01

Re: Typecho免安装插件直接在文章中插入广告功能

帖子 逗妇乳 »

赞一个
回复