当前位置: 首页 >wordpress

给wordpress Category分类目录添加字段

wordpress 2015-8-3 阅读量: 548 TAG: 标签:

1.  在模板目录下的 function.php 里添加包含 页面 category_field.php

包括代码如下:

1
2
// 分类添加字段
require_once( dirname(__FILE__).'/category_field.php' );

2.  新建 category_field.php 页面

代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
// 分类添加字段
function ems_add_category_field(){
    echo '<div class="form-field">
            <label for="cat-tel">Tel</label>
            <input name="cat-tel" id="cat-tel" type="text" value="" size="40">
            <p>The telephone.</p>
          </div>'
; 
    echo '<div class="form-field">
            <label for="cat-url">URL</label>
            <input name="cat-url" id="cat-url" type="text" value="" size="40">
            <p>The URL.</p>
          </div>'
;       
         
}
add_action('category_add_form_fields','ems_add_category_field',10,2);

// 分类编辑字段
function ems_edit_category_field($tag){
    echo '<tr class="form-field">
            <th scope="row"><label for="cat-tel">Tel</label></th>
            <td>
                <input name="cat-tel" id="cat-tel" type="text" value="'
;
                echo get_option('cat-tel-'.$tag->term_id).'" size="40"/><br>
                <span class="cat-tel">'
.$tag->name.' on the phone.</span>
            </td>
        </tr>'
;
       
    echo '<tr class="form-field">
            <th scope="row"><label for="cat-url">URL</label></th>
            <td>
                <input name="cat-url" id="cat-url" type="text" value="'
;
                echo get_option('cat-url-'.$tag->term_id).'" size="40"/><br>
                <span class="cat-url">'
.$tag->name.' on the URL.</span>
            </td>
        </tr>'
;
       
       
}
add_action('category_edit_form_fields','ems_edit_category_field',10,2);

// 保存数据
function ems_taxonomy_metadate($term_id){
    if(isset($_POST['cat-tel']) && isset($_POST['cat-url'])){
        //判断权限--可改
        if(!current_user_can('manage_categories')){
            return $term_id;
        }
        // 电话
        $tel_key = 'cat-tel-'.$term_id; // key 选项名为 cat-tel-1 类型
        $tel_value = $_POST['cat-tel']; // value
       
        // url
        $url_key = 'cat-url-'.$term_id;
        $url_value = $_POST['cat-url'];
           
        // 更新选项值
        update_option( $tel_key, $tel_value );
        update_option( $url_key, $url_value );
    }
}

// 虽然要两个钩子,但是我们可以两个钩子使用同一个函数
add_action('created_category','ems_taxonomy_metadate',10,1);
add_action('edited_category','ems_taxonomy_metadate',10,1);
?>

调用方法:

1
2
3
4
5
6
7
8
9
10
<?php
    // 取出当前分类 id: $categories[0]->term_id
    $categories = get_the_category();
    $term_id = $categories[0]->term_id;
    $cat_name = $categories[0]->name;  
?>
<div class="phone">
  <div class="p1"><?php echo get_option('cat-tel-'.$term_id);?></div>
  <div class="p2"><a href="<?php echo get_option('cat-url-'.$term_id);?> " target="_blank"><?php echo $cat_name;?></a></div>
</div>

来源:(微信/QQ号:909912499),欢迎分享本文,转载请保留出处!部分内容来自网络,如有侵权请联系删除处理!

本站提供代码修改,dedecms,WordPress仿站二次开发 / PHP网站建设以及SEO优化等网络营销推广等服务。

如有需要请加QQ: 909912499