DUX 主题增加类似 Google ADsense 信息流广告位

之前谷歌账号无奈被 Google ADsense 封掉了,重新注册了谷歌账号,顺便把域名也换了,新域名刚刚注册去申请 Google ADsense 在我意料之中,域名注册时间太短无法通过,而且网站上还有一些破解相关的信息,索性何先生一次性全部把相关信息删除,在第 25 天的时候第三次提交 Googel ADsense 申请,居然通过了。

折腾 Google ADsense 时发现这个自动广告可以在信息流中夹杂广告,很喜欢这个功能,如果不使用 Google 自动广告的话 DUX 主题无法在信息流中串联广告,随便捣鼓了一下,分享下流程。

什么是信息流广告?

图片[1]-DUX 主题增加类似 Google ADsense 信息流广告位-何先生
DUX 主题增加信息流广告

如上图所示,在文章列表循环中自定义任意位置任意数量的广告展示,何先生分别在 DUX 主题的聚合文章和文章列表中增加了功能并设置了后台开关和广告代码的贴入框。

代码:

首先我们增加文章列表里的信息流广告代码

在 DUX 主题 excerpt.php 文件第 8 行代码下增加如下代码

<?php
/**
 * Used for index/archive/search/author/catgory/tag.
 *
 */

global $sticky_ids;
$ii = 0;
$counter = 0; //增加的代码
while ( have_posts() ) : the_post(); 

在第 22 行代码下增加如下代码:

[weixin key=duxxxlgg reply=评论后何先生私信密码]

if (mrhee_code('google_code_check')){
	if ($counter == mrhee_code('google_code_check')){echo mrhee_code('google_code');}
	else if ($counter == mrhee_code('google_code_check1')){echo mrhee_code('google_code1');}
}

[/weixin]

接下来增加后台开关:

在 options.php 文件中加入以下代码

	$options[] = array(
		'name' => __('何先生广告', 'mrhee'),
		'type' => 'heading');

	$options[] = array(
		'name' => __('显示位置', 'mrhee'),
		'id' => 'google_code_check',
		'desc' => __('为 0 时表示不开启该功能(开启并粘贴广告联盟代码后,可在文章列表显示广告,如:选择 1,则在列表第 1 篇文章下显示广告)', 'mrhee'),
		'std' => 2,
		'settings' => array(
			'max' => 20,
			'min' => 0,
			'step' => 1,
			'prefix' => '第',
			'postfix' => '列显示'
		),
		'type' => 'number');
	
	$options[] = array(
		'name' => __('广告代码', 'mrhee'), 
		'id' => 'google_code', 
		'desc' => '粘贴广告联盟代码', 
		'std' => '此处粘贴广告代码', 
		'type' => 'textarea');

	$options[] = array(
		'name' => __('显示位置', 'mrhee'),
		'id' => 'google_code_check1',
		'desc' => __('为 0 时表示不开启该功能(开启并粘贴广告联盟代码后,可在文章列表显示广告)', 'mrhee'),
		'std' => 2,
		'settings' => array(
			'max' => 20,
			'min' => 0,
			'step' => 1,
			'prefix' => '第',
			'postfix' => '列显示'
		),
		'type' => 'number');

	$options[] = array(
		'name' => __('广告代码 2', 'mrhee'), 
		'id' => 'google_code1', 
		'desc' => '粘贴广告联盟代码', 
		'std' => '此处粘贴广告代码', 
		'type' => 'textarea');	

好了,我们看一下后台是否有开关选项了:

图片[2]-DUX 主题增加类似 Google ADsense 信息流广告位-何先生

填入信息选择位置,比如我想在文章列表的第二篇文章下显示第一个广告,第二个选项是现实在第五篇文章下的第二个广告,设置好后保存即可与何先生第一张图上效果一样了(当然在 Google ADsense 中你需要自己自定义样式)。

下面我们来增加聚合文章中的信息流广告位:

打开 widgets/widget-posts.php 文件,在 $comn = isset($instance['comn']) ? $instance['comn'] : ''; 下增加以下代码,何先生的代码在第 21 行

[weixin key=duxxxlgg reply=评论后何先生私信密码]

        $counter_num1 = isset($instance['num1']) ? $instance['num1'] : 0;
        $counter_content1 = isset($instance['content1']) ? $instance['content1'] : '这里填写广告代码';
        $counter_content2 = isset($instance['content2']) ? $instance['content2'] : '这里填写广告代码';
        $counter_num2 = isset($instance['num2']) ? $instance['num2'] : 2;

[/weixin]

修改第 31 行代码(按实际的代码行修改)

echo dtheme_posts_list( $orderby,$limit,$cat,$img,$comn,$counter_num1,$counter_num2 );
//修改为
echo dtheme_posts_list( $orderby,$limit,$cat,$img,$comn,$counter_num1,$counter_num2,$counter_content1,$counter_content2 );

修改 36-48 行代码为

	function form( $instance ) {
		$defaults = array( 
			'title' => '热门文章', 
			'limit' => 6, 
			'cat' => '', 
			'orderby' => 'comment_count', 
			'img' => '',
			'comn' => '',
			'num1' => 0,
			'num2' => 2,
			'content1' => '这里填写广告代码',
			'content2' => '这里填写广告代码',
		);

在第 90 行代码(最后一个</p>标签)下增加

		<p>
			<label>
				信息流广告:
				显示在第几列:
				<input style="width:100%;" id="<?php echo $this->get_field_id('num1'); ?>" name="<?php echo $this->get_field_name('num1'); ?>" type="number" value="<?php echo $instance['num1']; ?>" size="24" />
				贴入广告联盟代码:
				<textarea id="<?php echo $this->get_field_id('content1'); ?>" name="<?php echo $this->get_field_name('content1'); ?>" class="widefat" rows="12" style="font-family:Courier New;"><?php echo $instance['content1']; ?></textarea>
				显示在第几列:
				<input style="width:100%;" id="<?php echo $this->get_field_id('num2'); ?>" name="<?php echo $this->get_field_name('num2'); ?>" type="number" value="<?php echo $instance['num2']; ?>" size="24" />
				贴入广告联盟代码:
				<textarea id="<?php echo $this->get_field_id('content2'); ?>" name="<?php echo $this->get_field_name('content2'); ?>" class="widefat" rows="12" style="font-family:Courier New;"><?php echo $instance['content2']; ?></textarea>
			</label>
		</p>

修改第 110 行代码(按实际代码修改)

function dtheme_posts_list($orderby,$limit,$cat,$img,$comn,$counter_num1,$counter_num2) {
//修改为
function dtheme_posts_list($orderby,$limit,$cat,$img,$comn,$counter_num1,$counter_num2,$counter_content1,$counter_content2) {

最后将 133 行以下代码修改全部修改为(文件最后的</li>标签)

[weixin key=duxxxlgg reply=评论后何先生私信密码]


[/weixin]

大功告成,如图:

图片[3]-DUX 主题增加类似 Google ADsense 信息流广告位-何先生

aa

© 版权声明
THE END
打赏一根烟,继续保持。
点赞5打赏作者 分享
评论 共10条
头像
友好交流,请勿发纯表情,请勿灌水,违者封号喔
提交
头像

昵称

取消
昵称表情代码图片
    • 头像坦然0
    • 头像有朝壹日博客0
    • 头像boke112联盟0
    • 头像闲鱼0
    • 头像明月登楼0