!
也想出现在这里? 联系我们
广告位
当前位置:首页>开发>WordPress开发实例>如何为WordPress分类添加自定义TDK标题、描述和关键词?使用纯代码实现

如何为WordPress分类添加自定义TDK标题、描述和关键词?使用纯代码实现

今天有位 DMD 主题用户问我怎么分类不能自定义标题、关键词、描述信息(TDK)?这个问题问得刚刚好,因为我正…--由S9社区整理

今天有位 DMD 主题用户问我怎么分类不能自定义标题、关键词、描述信息(TDK)?这个问题问得刚刚好,因为我正准备更新主题。自定义分类页的标题关键词描述信息可以帮助站长进行 SEO,虽然没多大作用。当然设置自己写的 TDK,总比 WordPress 默认的要强吧!其实 WordPress 分类增加自定义 TDK 实现和文章页的自定义 TDK 实现方式是一样的。好了不多说,下面进人今天的教程内容。
如何为WordPress分类添加自定义TDK标题、描述和关键词?使用纯代码实现
首先添加如下代码到你的 functions.php 中,然后访问你的 WordPress 后台分类页面,你会发现多了如上图所示的 3 个编辑框。

  1. $category_meta = array( 
  2. array(
  3. "name" => "categorytitle",
  4. "std" => "",
  5. "title" => __('自定义分类标题', 'haoui').':',
  6. 'desc' => __('在HTML的title标签中,自定义分类标题将覆盖默认分类标题', 'haoui')
  7. ),
  8. array(
  9. "name" => "categorykws",
  10. "std" => "",
  11. "title" => __('自定义分类关键词', 'haoui').':',
  12. 'desc' => __('在HTML的keywords标签中,自定义分类关键词将覆盖默认分类关键词', 'haoui')
  13. ),
  14. array(
  15. "name" => "categorydes",
  16. "std" => "",
  17. "title" => __('自定义分类描述', 'haoui').':',
  18. 'desc' => __('在HTML的description标签中,自定义分类描述将覆盖默认分类描述', 'haoui')
  19. )
  20. );
  21.  
  22. function dmd_add_category_field(){
  23. global $category_meta;
  24. foreach($category_meta as $meta_box) {
  25. echo '<div class="form-field">
  26. <label for="'.$meta_box['name'].'">'.$meta_box['title'].'</label>
  27. <input name="'.$meta_box['name'].'" id="'.$meta_box['name'].'" type="text" value="" size="40">
  28. <p>'.$meta_box['desc'].'</p>
  29. </div>';
  30. } 
  31. }
  32.  
  33. function dmd_edit_category_field($tag){
  34. global $category_meta;
  35. foreach($category_meta as $meta_box) {
  36. echo '<tr class="form-field">
  37. <th scope="row"><label for="'.$meta_box['name'].'">'.$meta_box['title'].'</label></th>
  38. <td>
  39. <input name="'.$meta_box['name'].'" id="'.$meta_box['name'].'" type="text" value="'; 
  40. echo get_option(''.$meta_box['name'].'-'.$tag->term_id).'" size="40"/><br>
  41. <span class="'.$meta_box['name'].'">'.$meta_box['desc'].'</span>
  42. </td>
  43. </tr>';
  44. } 
  45. }
  46.  
  47. function dmd_category_save($term_id){
  48. global $category_meta;
  49. foreach($category_meta as $meta_box) {
  50. $data = $_POST[$meta_box['name']];
  51. if(isset($data)){
  52. if(!current_user_can('manage_categories')){
  53. return $term_id;
  54. }
  55. $key = $meta_box['name'].'-'.$term_id;
  56. update_option( $key, $data );
  57. }
  58. }
  59. }
  60. add_action('category_add_form_fields','dmd_add_category_field',10,2);
  61. add_action('category_edit_form_fields','dmd_edit_category_field',10,2);
  62. add_action('created_category','dmd_category_save',10,1);
  63. add_action('edited_category','dmd_category_save',10,1);

上面一共三个方法,从上至下分别是新建分类页时创建编辑框,编辑分类页时创建编辑框以及保存编辑框数据到 options 表中。

有了这些方法你已经可以自定义分类页的 TDK 了,只是你的主题却不能显示,我们还需要修改主题输出的代码,这个代码不固定,DUX 直接修改 functions-theme.php 中 _title 方法中关于分类页的输出即可。(DUX 好像有这个功能,老版本可以参考)输出自定义分类信息使用如下方法:

  1. get_option('创建编辑框的name-'.$cat_ID);

$cat_ID 指分类当前分类 id,可以通过 get_query_var(‘cat’)方法拿到。

给TA打赏
共{{data.count}}人
人已打赏
WordPress开发实例

WordPress网站如何使用.htaccess文件禁止执行PHP代码?

2023-6-4 18:58:53

WordPress开发实例

深度解析WordPress后台评论功能模块-基础教程系列

2023-6-4 18:59:31

声明 本站上的部份代码及教程来源于互联网,仅供网友学习交流,若您喜欢本文可附上原文链接随意转载。无意侵害您的权益,请发送邮件至 [email protected] 或点击右侧 私信:林沐阳 反馈,我们将尽快处理。
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索