前几天在“唐朝牌广告贴”内添加了这个功能,现在把代码与大家分享下,有兴趣的同学可以动手试试。

    玩博客的朋友几乎都会在文章中插入广告,虽然不图赚钱,就是为了找个乐子。

   插入代码的位置,可以是在某个已开启插件的include里面或者当前主题的include里面。

在ActivePlugin_主题(或ID)函数下添加如下代码:

Add_Filter_Plugin('Filter_Plugin_ViewPost_Template','TCad_Content');

TCad_Content为自定义函数。

创建TCad_Content为函数

function TCad_Content(&$template){
global $zbp;
$content = prefix_insert_post_ads($content);
$article->Content = $content;
$template->SetTags('article', $article);
}

function prefix_insert_post_ads( $content ) {
    global $zbp;
        $ad_code ="添加的广告";
        // 修改 2 这个段落数
        return prefix_insert_after_paragraph( $ad_code, 2, $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 );
}

然后把上面的

$ad_code ="添加的广告";

改成你想要显示的广告保存即可。


扩展1:

此方法是在全局生效,包括 页面文章。但有些用户不想再页面文章里面显示广告,所以,要在适当的位置进行判断,当当前页面是“页面文章”的时候,代码不生效。

扩展2:

如果感觉显示同一条广告看到死板,可以写个小函数,多设置几个广告,然后随机显示。


方法都说过了,如果还弄不好,就找唐朝定制吧,或者直接购买唐朝牌广告贴吧。