温馨提醒

如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢

本文最后更新于2020年7月30日,已超过 180天没有更新

今天给站壳网给大家分享一篇给分类目录添加自定义字段WordPress教程。

看完这篇教程,大家应该就能够动手实现纯代码在分类目录添加分类关键词分类缩略图等功能,效果如下图所示:

WordPress给分类目录添加自定义字段教程

这里我们是给分类目录添加了一个分类关键词的表单,具体步骤见下文:

分类添加字段

首先我们添加分类字段

// 分类添加字段
function ems_add_category_field(){
	echo \'<div class=\"form-field\">
			<label for=\"cat-keywords\">关键词</label>
			<input name=\"cat-keywords\" id=\"cat-keywords\" type=\"text\" value=\"\" size=\"40\">
			<p>输入关键词</p>
		  </div>\';	
}
add_action(\'category_add_form_fields\',\'ems_add_category_field\',10,2);

编辑分类字段

然后编辑分类字段,添加input框等代码

// 编辑分类字段
function ems_edit_category_field($tag){
	echo \'<tr class=\"form-field\">
			<th scope=\"row\"><label for=\"cat-keywords\">关键词</label></th>
			<td>
				<input name=\"cat-keywords\" id=\"cat-keywords\" type=\"text\" value=\"\';
				echo get_option(\'cat-keywords-\'.$tag->term_id).\'\" size=\"40\"/><br>
				<p class=\"description\">\'.$tag->name.\' 关键词</p>
			</td>
		</tr>\';
}
add_action(\'category_edit_form_fields\',\'ems_edit_category_field\',10,2);

保存数据

接下来是保存数据

// 保存数据
function ems_taxonomy_metadate($term_id){
	if(isset($_POST[\'cat-keywords\'])){
		//判断权限--可改
		if(!current_user_can(\'manage_categories\')){
			return $term_id;
		}
		$cat_key = \'cat-keywords-\'.$term_id; // key 选项名为 cat-keywords-1 类型
		$cat_value = $_POST[\'cat-keywords\'];	// value
		

		// 更新选项值
		update_option( $cat_key, $cat_value ); 
	}
}

最后就是钩子了

这里需要两个钩子,但是我们可以两个钩子使用同一个函数

add_action(\'created_category\',\'ems_taxonomy_metadate\',10,1);
add_action(\'edited_category\',\'ems_taxonomy_metadate\',10,1);

使用方法

首先,将上面步骤的代码依次加入到主题的 functions.php 文件内, 然后按照下面方法获取数据。

获取数据

<?php
$categories = get_the_category();
$term_id = $categories[0]->term_id;
echo get_option(\'cat-keywords-\'.$term_id);
?>

在分类页面添加上面代码测试,是否能够显示数据,能够显示即为成功。

如果在使用WordPres建站过程中有任何问题,可以加入我们的WordPres交流群相互交流学习。

WordPress建站交流群:8424781

 

版权声明:原创作品,未经允许不得转载,否则将追究法律责任。
本站资源有的自互联网收集整理,如果侵犯了您的合法权益,请联系本站我们会及时删除。
本站资源仅供研究、学习交流之用,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担。
本文链接:65素材网https://www.65sc.cc/24850.html
许可协议:《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权