Wordpress给每一个分类栏目定制不同的广告位

给分类栏目添加广告位,等同于添加自定义字段。

如果需要依据不同的栏目给广告位添加不同的tag来源,需要在模板页面中获取栏目的分类别名,读取不同的广告。

 图1

如图1所示添加新的图片输入框

1. 实现的代码是把下面的代码放在function.php文件中

/**IMAGES ADS**/
global $texonomy_slug_images;
$texonomy_slug_images='category';
add_action($texonomy_slug_images.'_add_form_fields','categoryimages');
function categoryimages($taxonomy){ ?>
<div>
<label for="tag-ad">栏目广告位1</label>
<input type="text" name="tag-ad" id="tag-ad" value="" /><br /><span>请在此输入广告图片链接。</span> 
</div>
<?php }
add_action($texonomy_slug_images.'_edit_form_fields','categoryimagesedit');
function categoryimagesedit($taxonomy){ ?>
<tr class="form-field">
<th scope="row" valign="top"><label for="tag-ad">栏目广告位1</label></th>
<td><input type="text" name="tag-ad" id="tag-ad" value="<?php echo esc_url(get_option('_category_images'.$taxonomy->term_id)); ?>" /><br /><span class="description">请在此输入广告图片链接。</span></td>
</tr> 
<?php } add_action('edit_term','categoryimagessave'); add_action('create_term','categoryimagessave'); function categoryimagessave($term_id){ if(isset($_POST['tag-ad'])){ if(isset($_POST['tag-ad'])) update_option('_category_images'.$term_id,$_POST['tag-ad'] ); } }

 2.建立如下模板(category-ad.php)根据分类别名读取自定义字段的内容 

<?php
/*
Template Name: Category_adsone
*/
?>
<?php
if(is_category()){	
$category_info = get_the_category();
$category_id = $category_info[0]->cat_ID;
$cat_image = get_option('_category_images'.$category_id);
$cat = get_query_var('cat');
$yourcat = get_category($cat);
?>
<a rel="nofollow" href="###?tg=SAT&tag1=FX114@<?php echo $yourcat->slug;?>@R1" target="_blank"> <img name="ads"src="<?php echo $cat_image;?>"/></a>
<?php } ?>

3.在Sidebar.php中调用模板(category.php)即可实现

<?php get_template_part( 'inc/category-ads' ); ?>

4.如果想在单个文章页面调取分类栏目的分类名、分类别名、分类字段,要在single.php文件中添加如下代码:

<?php $cats=get_the_category();  
	foreach($cats as $cat) 
	$cat_id=$cat->cat_ID;
	//echo $cat_id;  分类id
	//echo $cat->slug; 分类别名
	$cat_image = get_option('_category_images'.$cat_id);
      	$cat_imagetwo = get_option('_category_ad'.$cat_id);
 	
	?>
<a  class="ad-a2" rel="nofollow" href="###?tg=SAT&tag1=FX114@<?php  echo $cat->slug;?>@R2" target="_blank"> <img src="<?php echo $cat_imagetwo;?>"/></a>

5.如果想添加多个字段只用复制写入function中的代码,并另定义字段名名称$texonomy_slug_images,黄色部分的代码另起名字即可。

 

  

  

转载于:https://www.cnblogs.com/cheryshi/p/7655357.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值