WordPress在文章中顯示廣告(非上下、左右角)

字號(hào):


    之前看到有些網(wǎng)站的廣告輸出很特別,就是在文中顯示廣告,我說(shuō)的不是上下、左右角之類(lèi)的顯示方法。要看效果,大家可以看BlueFate的博客文章中顯示的廣告。因?yàn)槲也皇歉愠绦虻?,不過(guò)還是了解一點(diǎn)php,所以研究了老半天才寫(xiě)出來(lái)一個(gè)在文中輸出廣告的代碼:
    <?php
    //輸出文章內(nèi)容,當(dāng)有遇到第一個(gè)</p>的時(shí)候,顯示廣告
    $form = 0;
    $contents = get_the_content();
    $lenght = stripos($contents,"</p>");//以</p>來(lái)分割字符竄,并以數(shù)字形式返回所在的位置
    $lenght = $lenght + '4';//加上</p>站的字符數(shù)
    $contents1 = substr($contents,$form,$lenght);//截取文章
    $contents2 = substr($contents,$lenght);
    if (get_option('swt_adt') == 'Hide' || strlen($contents)<=$lenght || $lenght <20) { //輸出廣告
    the_content('');
    }
    else {
    echo $contents1;//輸出內(nèi)容的前半部分
    include(TEMPLATEPATH . '/includes/adwz.php');
    echo $contents2;//輸出內(nèi)容的后半部分
    }
    ?>
    保存以上的代碼為contents.php,路徑在模板的文件夾includes/contents.php,在文章頁(yè)single.php輸出文章的時(shí)候用替換原來(lái)的 <?php the_content(''); ?>。這里對(duì)代碼稍作解釋?zhuān)紫扔胓et_the_content()函數(shù)獲取到文章內(nèi)容,然用stripos()函數(shù)返回指定字符串“</p>”的位置,接著再用substr()函數(shù)將內(nèi)容截取為兩部分;最后通過(guò)判斷來(lái)顯示廣告,如果標(biāo)簽</p>不存在或者廣告隱藏了就直接輸出原文章,否則輸出文章前段+廣告+文章后半部分。大家也可以用判斷字符串的數(shù)量來(lái)顯示廣告。