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

如果需要依据不同的栏目给广告位添加不同的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,黄色部分的代码另起名字即可。

 

  

  

Wordpress给每一个分类栏目定制不同的广告位的更多相关文章

  1. wordpress通过$wpdb获取一个分类下所有的文章

    在wordpress程序根目录下新建一个php文件,粘贴下面的代码 如下面的代码注释,修改$CID这个分类id,就可以获取这个分类下的文章了.这个查询需要联合三个表wp_posts.wp_term_r ...

  2. iOS 开源一个高度可定制支持各种动画效果,支持单击双击,小红点,支持自定义不规则按钮的tabbar

    TYTabbarAnimationDemo 业务需求导致需要做一个tabbar,里面的按钮点击带有动画效果,tabbar中间的按钮凸出,凸出部分可以点击,支持badge 小红点等,为此封装了一个高度可 ...

  3. 一个可以自由定制外观、支持拖拽消除的MaterialDesign风格Android BadgeView

    为了尊重作者,先放上链接:https://github.com/qstumn/BadgeView BadgeView 一个可以自由定制外观.支持拖拽消除的MaterialDesign风格Android ...

  4. wordpress显示多个分类的文章

    显示多个分类下的文章可以这样提取: <?php query_posts(array('posts_per_page'=>10,'orderby'=>'rand','category_ ...

  5. wordpress 页面显示指定分类文章

    首页显示指定分类备份主题文件夹中的 index.php 文件,修改index.php找到如下一行代码:<?php if (have_posts()) : ?>在上面这行代码的前面加上:&l ...

  6. wordpress文章显示同一分类下的上一篇下一篇

    我们在用wordpress开发网站的时候会在文章页中引入上一篇下一篇,但是发现新闻页的上下文章有可能是产品分类的post,这个就不太合理,如何显示同一分类下的上一篇下一篇文章呢?随ytkah一起来看看 ...

  7. wordpress学习四: 一个简单的自定义主题

    在学习三里分析了自带的一个例子,本节我们就自己仿照他做个简单的吧,重点是调用wordpress封装好的函数和类,css和html可以稍好在调整. 将wp带的例子复制一份处理,重新名个名字. 清空ind ...

  8. WordPress基础:常用分类列表wp_list_categories

    函数:wp_list_categories($args) 作用:列出某个分类下的分类项目 用法: <ul> <?php $args= array( 'depth'=>1, 'o ...

  9. 一个分类,两个问题之ArrayList

    前段时间,在做一个商品的分类,分类有3级,类似于以下这种形式的: ---食物 ---蔬菜 ---白菜 ---材料 ---鸡肉 ....... 而我需要做的是将取得的一个商品的字符串类型的分类ID集,然 ...

  10. 拿wordpress站的一个小技巧

    记得09年时wp爆过一个重置管理口令的漏洞, 现在用法差不多, 也是我刚刚发现, 网上也没找到有讲述关于这个的. 前提:是在有注入点(注入点的话可以通过寻找插件漏洞获得.), 密码解不开, 无法out ...

随机推荐

  1. LiftPool:双向池化操作,细节拉满,再也不怕丢特征了 | ICLR 2021

    论文参考信号处理中提升方案提出双向池化操作LiftPool,不仅下采样时能保留尽可能多的细节,上采样时也能恢复更多的细节.从实验结果来看,LiftPool对图像分类能的准确率和鲁棒性都有不错的提升,而 ...

  2. win10/11 暂停更新

    1. win+R 输入regeidt 进入注册表编辑器 2.在"计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Sett ...

  3. SQL 递归核心思想(递归思维)

    目前很缺递归思维,主要是算法代码写得少,本篇记录下以 PostgreSQL 代码举例(主要是非常喜欢这款性能小钢炮数据库). 树状查询不多说,很简单大家基本都会,主要讲 cte 代码递归实现不同需求. ...

  4. #组合计数,卢卡斯定理#D 三元组

    题目 当\(z=0\)时,\(f(x,y,z)=1\), 否则 \[f(x,y,z)=\sum_{x1=1}^x\sum_{y1=1}^y(x-x1+1)(y-y1+1)f(x1,y1,z-1) \] ...

  5. 使用 Nginx 在服务器上搭建一个 Xooxle 镜像站

    配置目标 期望能够通过 xooxle.example.com 访问 www.xooxle.com. 配置 DNS 配置地址:「DNS 解析 DNSPod」->「域名」->「解析」-> ...

  6. Python生成唯一ID----UUID

    # UUID 生成唯一ID # uuid 是Python内置模块,主要有五种算法. import uuid # uuid1() 基于时间戳 a1 = uuid.uuid1() print('uuid1 ...

  7. Bash下切换conda环境

    背景:很多时候实验命令都是基于Linux系统的,但是很多人的电脑是window系统的. 使用git自带的Bash可以运行linux命令,不过有时候在bash中想使用conda环境的时候比较麻烦,具体做 ...

  8. 基于Canvas实现的简历编辑器

    基于Canvas实现的简历编辑器 大概一个月前,我发现社区老是给我推荐Canvas相关的内容,比如很多 小游戏.流程图编辑器.图片编辑器 等等各种各样的项目,不知道是不是因为我某一天点击了相关内容触发 ...

  9. js 检查对象是否没有字段

    前言 我以前遇到的一个问题. var object={}; if(object=={}) { } 在这里我遇到了问题,一直是lese状态. 后来想想其实也是自己犯了一个很严重的问题,这两个不是同一个对 ...

  10. Sparse稀疏检索介绍与实践

    Sparse稀疏检索介绍 在处理大规模文本数据时,我们经常会遇到一些挑战,比如如何有效地表示和检索文档,当前主要有两个主要方法,传统的文本BM25检索,以及将文档映射到向量空间的向量检索. BM25效 ...