| [ Index ] |
PHP Cross Reference of Wordpress 2.7.1 |
[Summary view] [Print] [Text view]
1 <?php 2 /** 3 * WordPress Taxonomy Administration API. 4 * 5 * @package WordPress 6 * @subpackage Administration 7 */ 8 9 // 10 // Category 11 // 12 13 /** 14 * {@internal Missing Short Description}} 15 * 16 * @since unknown 17 * 18 * @param unknown_type $cat_name 19 * @return unknown 20 */ 21 function category_exists($cat_name) { 22 $id = is_term($cat_name, 'category'); 23 if ( is_array($id) ) 24 $id = $id['term_id']; 25 return $id; 26 } 27 28 /** 29 * {@internal Missing Short Description}} 30 * 31 * @since unknown 32 * 33 * @param unknown_type $id 34 * @return unknown 35 */ 36 function get_category_to_edit( $id ) { 37 $category = get_category( $id, OBJECT, 'edit' ); 38 return $category; 39 } 40 41 /** 42 * {@internal Missing Short Description}} 43 * 44 * @since unknown 45 * 46 * @param unknown_type $cat_name 47 * @param unknown_type $parent 48 * @return unknown 49 */ 50 function wp_create_category( $cat_name, $parent = 0 ) { 51 if ( $id = category_exists($cat_name) ) 52 return $id; 53 54 return wp_insert_category( array('cat_name' => $cat_name, 'category_parent' => $parent) ); 55 } 56 57 /** 58 * {@internal Missing Short Description}} 59 * 60 * @since unknown 61 * 62 * @param unknown_type $categories 63 * @param unknown_type $post_id 64 * @return unknown 65 */ 66 function wp_create_categories($categories, $post_id = '') { 67 $cat_ids = array (); 68 foreach ($categories as $category) { 69 if ($id = category_exists($category)) 70 $cat_ids[] = $id; 71 else 72 if ($id = wp_create_category($category)) 73 $cat_ids[] = $id; 74 } 75 76 if ($post_id) 77 wp_set_post_categories($post_id, $cat_ids); 78 79 return $cat_ids; 80 } 81 82 /** 83 * {@internal Missing Short Description}} 84 * 85 * @since unknown 86 * 87 * @param unknown_type $cat_ID 88 * @return unknown 89 */ 90 function wp_delete_category($cat_ID) { 91 $cat_ID = (int) $cat_ID; 92 $default = get_option('default_category'); 93 94 // Don't delete the default cat 95 if ( $cat_ID == $default ) 96 return 0; 97 98 return wp_delete_term($cat_ID, 'category', array('default' => $default)); 99 } 100 101 /** 102 * {@internal Missing Short Description}} 103 * 104 * @since unknown 105 * 106 * @param unknown_type $catarr 107 * @param unknown_type $wp_error 108 * @return unknown 109 */ 110 function wp_insert_category($catarr, $wp_error = false) { 111 $cat_defaults = array('cat_ID' => 0, 'cat_name' => '', 'category_description' => '', 'category_nicename' => '', 'category_parent' => ''); 112 $catarr = wp_parse_args($catarr, $cat_defaults); 113 extract($catarr, EXTR_SKIP); 114 115 if ( trim( $cat_name ) == '' ) { 116 if ( ! $wp_error ) 117 return 0; 118 else 119 return new WP_Error( 'cat_name', __('You did not enter a category name.') ); 120 } 121 122 $cat_ID = (int) $cat_ID; 123 124 // Are we updating or creating? 125 if ( !empty ($cat_ID) ) 126 $update = true; 127 else 128 $update = false; 129 130 $name = $cat_name; 131 $description = $category_description; 132 $slug = $category_nicename; 133 $parent = $category_parent; 134 135 $parent = (int) $parent; 136 if ( $parent < 0 ) 137 $parent = 0; 138 139 if ( empty($parent) || !category_exists( $parent ) || ($cat_ID && cat_is_ancestor_of($cat_ID, $parent) ) ) 140 $parent = 0; 141 142 $args = compact('name', 'slug', 'parent', 'description'); 143 144 if ( $update ) 145 $cat_ID = wp_update_term($cat_ID, 'category', $args); 146 else 147 $cat_ID = wp_insert_term($cat_name, 'category', $args); 148 149 if ( is_wp_error($cat_ID) ) { 150 if ( $wp_error ) 151 return $cat_ID; 152 else 153 return 0; 154 } 155 156 return $cat_ID['term_id']; 157 } 158 159 /** 160 * {@internal Missing Short Description}} 161 * 162 * @since unknown 163 * 164 * @param unknown_type $catarr 165 * @return unknown 166 */ 167 function wp_update_category($catarr) { 168 $cat_ID = (int) $catarr['cat_ID']; 169 170 if ( isset($catarr['category_parent']) && ($cat_ID == $catarr['category_parent']) ) 171 return false; 172 173 // First, get all of the original fields 174 $category = get_category($cat_ID, ARRAY_A); 175 176 // Escape data pulled from DB. 177 $category = add_magic_quotes($category); 178 179 // Merge old and new fields with new fields overwriting old ones. 180 $catarr = array_merge($category, $catarr); 181 182 return wp_insert_category($catarr); 183 } 184 185 // 186 // Tags 187 // 188 189 /** 190 * {@internal Missing Short Description}} 191 * 192 * @since unknown 193 * 194 * @param unknown_type $post_id 195 * @return unknown 196 */ 197 function get_tags_to_edit( $post_id ) { 198 $post_id = (int) $post_id; 199 if ( !$post_id ) 200 return false; 201 202 $tags = wp_get_post_tags($post_id); 203 204 if ( !$tags ) 205 return false; 206 207 foreach ( $tags as $tag ) 208 $tag_names[] = $tag->name; 209 $tags_to_edit = join( ',', $tag_names ); 210 $tags_to_edit = attribute_escape( $tags_to_edit ); 211 $tags_to_edit = apply_filters( 'tags_to_edit', $tags_to_edit ); 212 return $tags_to_edit; 213 } 214 215 /** 216 * {@internal Missing Short Description}} 217 * 218 * @since unknown 219 * 220 * @param unknown_type $tag_name 221 * @return unknown 222 */ 223 function tag_exists($tag_name) { 224 return is_term($tag_name, 'post_tag'); 225 } 226 227 /** 228 * {@internal Missing Short Description}} 229 * 230 * @since unknown 231 * 232 * @param unknown_type $tag_name 233 * @return unknown 234 */ 235 function wp_create_tag($tag_name) { 236 if ( $id = tag_exists($tag_name) ) 237 return $id; 238 239 return wp_insert_term($tag_name, 'post_tag'); 240 } 241 242 ?>
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
| Generated: Mon Mar 23 16:23:02 2009 | Cross-referenced by PHPXref 0.7 |