zoukankan      html  css  js  c++  java
  • 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,黄色部分的代码另起名字即可

     

      

      

  • 相关阅读:
    openldap
    Java实现 洛谷 P1200 [USACO1.1]你的飞碟在这儿Your Ride Is He…
    Java实现 洛谷 P1200 [USACO1.1]你的飞碟在这儿Your Ride Is He…
    Java实现 洛谷 P2141 珠心算测验
    Java实现 洛谷 P2141 珠心算测验
    Java实现 洛谷 P2141 珠心算测验
    Java实现 洛谷 P2141 珠心算测验
    Java实现 洛谷 P2141 珠心算测验
    Java实现 洛谷 P1567 统计天数
    Java实现 洛谷 P1567 统计天数
  • 原文地址:https://www.cnblogs.com/cheryshi/p/7655357.html
Copyright © 2011-2022 走看看