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

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

什么是信息流广告?

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 行代码下增加如下代码:

内容已加密

PS:扫码关注微信公众号 何先生博客

或者在微信里搜索 何先生博客

回复关键词 评论后何先生私信密码 获取密码

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');	

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

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

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

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

内容已加密

PS:扫码关注微信公众号 何先生博客

或者在微信里搜索 何先生博客

回复关键词 评论后何先生私信密码 获取密码

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>标签)

内容已加密

PS:扫码关注微信公众号 何先生博客

或者在微信里搜索 何先生博客

回复关键词 评论后何先生私信密码 获取密码

weixin

大功告成,如图:

aa

赞(5)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

×
打赏作者
展开阅读更多

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

表情
图片 链接 代码

评论(10)