欢迎光临
我们一直在努力

WordPress给分类和标签增加自定义字段的教程代码

前面博客吧分享过wordpress增加分类关键词自定义字段的教程代码,而这次给分类和标签增加自定义字段的核心代码和分类关键词自定义字段代码其实是一样的,只是进行了小小的优化和扩展以及增加了标签的钩子函数,下面以给分类和标签增加自定义标题、自定义关键词和自定义描述的自定义字段的示例代码。

把下面的代码添加至主题的 functions.php 文件:

<?php 
function boke8_net_add_category_field(){
	echo '<div class="form-field">
			<label for="tag-title">自定义标题</label>
			<input name="tag-title" id="tag-title" type="text" value="" size="40">
			<p>请在此输入用于SEO优化的标题。</p>
		  </div>';	
	echo '<div class="form-field">
			<label for="tag-keywords">自定义关键词</label>
			<input name="tag-keywords" id="tag-keywords" type="text" value="" size="40">
			<p>请在此输入用于SEO优化的关键词。</p>
		  </div>';		  
	echo '<div class="form-field">
			<label for="tag-description">自定义描述</label>
			<textarea name="tag-description" id="tag-description" class="large-text" rows="5" cols="50"></textarea>
			<p>请在此输入用于SEO优化的关键词。</p>
		  </div>';		  
}

function boke8_net_edit_category_field($tag){
	echo '<tr class="form-field">
			<th scope="row"><label for="tag-title">自定义标题</label></th>
			<td>
				<p><input name="tag-title" id="tag-title" type="text" value="';
				echo get_option('_category_title'.$tag->term_id).'" size="40"/></p>
				<p class="description">请在此输入用于SEO优化的标题。</p>
			</td>
		</tr>';

	echo '<tr class="form-field">
			<th scope="row"><label for="tag-keywords">自定义关键词</label></th>
			<td>
				<p><input name="tag-keywords" id="tag-keywords" type="text" value="';
				echo get_option('_category_keywords'.$tag->term_id).'" size="40"/></p>
				<p class="cat-url">请在此输入用于SEO优化的关键词。</p>
			</td>
		</tr>';	

	echo '<tr class="form-field">
			<th scope="row"><label for="tag-description">自定义描述</label></th>
			<td>
				<p><textarea name="tag-description" id="tag-description" class="large-text" rows="5" cols="50">'.get_option('_category_description'.$tag->term_id).'</textarea></p>
				<p class="cat-url">请在此输入用于SEO优化的描述。</p>
			</td>
		</tr>';		
}

function boke8_net_taxonomy_metadate($term_id){
	if(isset($_POST['tag-title']) && isset($_POST['tag-keywords']) && isset($_POST['tag-description'])){

		if(!current_user_can('manage_categories')){
			return $term_id;
		}

		$title_key = '_category_title'.$term_id; // key 选项名为 cat-tel-1 类型
		$title_value = $_POST['tag-title'];	// value

		$word_key = '_category_keywords'.$term_id;
		$word_value = $_POST['tag-keywords'];

		$desc_key = '_category_description'.$term_id;
		$desc_value = $_POST['tag-description'];		

		update_option( $title_key, $title_value ); 
		update_option( $word_key, $word_value );
		update_option( $desc_key, $desc_value );
	}
} 

add_action('category_add_form_fields','boke8_net_add_category_field',10,2);
add_action('category_edit_form_fields','boke8_net_edit_category_field',10,2);
add_action('created_category','boke8_net_taxonomy_metadate',10,1);
add_action('edited_category','boke8_net_taxonomy_metadate',10,1);

add_action( 'post_tag_add_form_fields', 'boke8_net_add_category_field',10,2);  
add_action( 'post_tag_edit_form_fields', 'boke8_net_edit_category_field',10,2);  
add_action( 'edited_post_tag', 'boke8_net_taxonomy_metadate',10,1);  
add_action( 'create_post_tag', 'boke8_net_taxonomy_metadate',10,1);
?>

输出代码:

<?php
echo get_option('_category_title'.get_queried_object_id());
echo get_option('_category_keywords'.get_queried_object_id());
echo get_option('_category_description'.get_queried_object_id());
?>

代码很简单,可以直接复制使用或者参考增加更多自定义字段。

赞(0) 打赏
未经允许不得转载:WORDPRESS大侠 » WordPress给分类和标签增加自定义字段的教程代码

评论 抢沙发

评论前必须登录!

 

更好的WordPress主题

支持快讯、专题、百度收录推送、人机验证、多级分类筛选器,适用于垂直站点、科技博客、个人站,扁平化设计、简洁白色、超多功能配置、会员中心、直达链接、文章图片弹窗、自动缩略图等...

联系我们联系我们

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

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册