web/wp-admin/edit-category-form.php
author ymh <ymh.work@gmail.com>
Mon, 22 Mar 2010 16:36:28 +0100
changeset 5 ac511f1ccc8e
parent 1 0d28b7c10758
permissions -rw-r--r--
add hgignore
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
0d28b7c10758 First commit
ymh
parents:
diff changeset
     1
<?php
0d28b7c10758 First commit
ymh
parents:
diff changeset
     2
/**
0d28b7c10758 First commit
ymh
parents:
diff changeset
     3
 * Edit category form for inclusion in administration panels.
0d28b7c10758 First commit
ymh
parents:
diff changeset
     4
 *
0d28b7c10758 First commit
ymh
parents:
diff changeset
     5
 * @package WordPress
0d28b7c10758 First commit
ymh
parents:
diff changeset
     6
 * @subpackage Administration
0d28b7c10758 First commit
ymh
parents:
diff changeset
     7
 */
0d28b7c10758 First commit
ymh
parents:
diff changeset
     8
0d28b7c10758 First commit
ymh
parents:
diff changeset
     9
// don't load directly
0d28b7c10758 First commit
ymh
parents:
diff changeset
    10
if ( !defined('ABSPATH') )
0d28b7c10758 First commit
ymh
parents:
diff changeset
    11
	die('-1');
0d28b7c10758 First commit
ymh
parents:
diff changeset
    12
0d28b7c10758 First commit
ymh
parents:
diff changeset
    13
if ( !current_user_can('manage_categories') )
0d28b7c10758 First commit
ymh
parents:
diff changeset
    14
	wp_die(__('You do not have sufficient permissions to edit categories for this blog.'));
0d28b7c10758 First commit
ymh
parents:
diff changeset
    15
0d28b7c10758 First commit
ymh
parents:
diff changeset
    16
/**
0d28b7c10758 First commit
ymh
parents:
diff changeset
    17
 * @var object
0d28b7c10758 First commit
ymh
parents:
diff changeset
    18
 */
0d28b7c10758 First commit
ymh
parents:
diff changeset
    19
if ( ! isset( $category ) )
0d28b7c10758 First commit
ymh
parents:
diff changeset
    20
	$category = (object) array();
0d28b7c10758 First commit
ymh
parents:
diff changeset
    21
0d28b7c10758 First commit
ymh
parents:
diff changeset
    22
/**
0d28b7c10758 First commit
ymh
parents:
diff changeset
    23
 * @ignore
0d28b7c10758 First commit
ymh
parents:
diff changeset
    24
 * @since 2.7
0d28b7c10758 First commit
ymh
parents:
diff changeset
    25
 * @internal Used to prevent errors in page when no category is being edited.
0d28b7c10758 First commit
ymh
parents:
diff changeset
    26
 *
0d28b7c10758 First commit
ymh
parents:
diff changeset
    27
 * @param object $category
0d28b7c10758 First commit
ymh
parents:
diff changeset
    28
 */
0d28b7c10758 First commit
ymh
parents:
diff changeset
    29
function _fill_empty_category(&$category) {
0d28b7c10758 First commit
ymh
parents:
diff changeset
    30
	if ( ! isset( $category->name ) )
0d28b7c10758 First commit
ymh
parents:
diff changeset
    31
		$category->name = '';
0d28b7c10758 First commit
ymh
parents:
diff changeset
    32
0d28b7c10758 First commit
ymh
parents:
diff changeset
    33
	if ( ! isset( $category->slug ) )
0d28b7c10758 First commit
ymh
parents:
diff changeset
    34
		$category->slug = '';
0d28b7c10758 First commit
ymh
parents:
diff changeset
    35
0d28b7c10758 First commit
ymh
parents:
diff changeset
    36
	if ( ! isset( $category->parent ) )
0d28b7c10758 First commit
ymh
parents:
diff changeset
    37
		$category->parent = '';
0d28b7c10758 First commit
ymh
parents:
diff changeset
    38
0d28b7c10758 First commit
ymh
parents:
diff changeset
    39
	if ( ! isset( $category->description ) )
0d28b7c10758 First commit
ymh
parents:
diff changeset
    40
		$category->description = '';
0d28b7c10758 First commit
ymh
parents:
diff changeset
    41
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
    42
0d28b7c10758 First commit
ymh
parents:
diff changeset
    43
do_action('edit_category_form_pre', $category);
0d28b7c10758 First commit
ymh
parents:
diff changeset
    44
0d28b7c10758 First commit
ymh
parents:
diff changeset
    45
_fill_empty_category($category);
0d28b7c10758 First commit
ymh
parents:
diff changeset
    46
?>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    47
0d28b7c10758 First commit
ymh
parents:
diff changeset
    48
<div class="wrap">
0d28b7c10758 First commit
ymh
parents:
diff changeset
    49
<?php screen_icon(); ?>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    50
<h2><?php _e('Edit Category'); ?></h2>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    51
<div id="ajax-response"></div>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    52
<form name="editcat" id="editcat" method="post" action="categories.php" class="validate">
0d28b7c10758 First commit
ymh
parents:
diff changeset
    53
<input type="hidden" name="action" value="editedcat" />
0d28b7c10758 First commit
ymh
parents:
diff changeset
    54
<input type="hidden" name="cat_ID" value="<?php echo esc_attr($category->term_id) ?>" />
0d28b7c10758 First commit
ymh
parents:
diff changeset
    55
<?php wp_original_referer_field(true, 'previous'); wp_nonce_field('update-category_' . $cat_ID); ?>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    56
	<table class="form-table">
0d28b7c10758 First commit
ymh
parents:
diff changeset
    57
		<tr class="form-field form-required">
0d28b7c10758 First commit
ymh
parents:
diff changeset
    58
			<th scope="row" valign="top"><label for="cat_name"><?php _e('Category Name') ?></label></th>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    59
			<td><input name="cat_name" id="cat_name" type="text" value="<?php echo esc_attr($category->name); ?>" size="40" aria-required="true" /></td>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    60
		</tr>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    61
		<tr class="form-field">
0d28b7c10758 First commit
ymh
parents:
diff changeset
    62
			<th scope="row" valign="top"><label for="category_nicename"><?php _e('Category Slug') ?></label></th>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    63
			<td><input name="category_nicename" id="category_nicename" type="text" value="<?php echo esc_attr(apply_filters('editable_slug', $category->slug)); ?>" size="40" /><br />
0d28b7c10758 First commit
ymh
parents:
diff changeset
    64
            <span class="description"><?php _e('The &#8220;slug&#8221; is the URL-friendly version of the name. It is usually all lowercase and contains only letters, numbers, and hyphens.'); ?></span></td>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    65
		</tr>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    66
		<tr class="form-field">
0d28b7c10758 First commit
ymh
parents:
diff changeset
    67
			<th scope="row" valign="top"><label for="category_parent"><?php _e('Category Parent') ?></label></th>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    68
			<td>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    69
	  			<?php wp_dropdown_categories(array('hide_empty' => 0, 'name' => 'category_parent', 'orderby' => 'name', 'selected' => $category->parent, 'exclude' => $category->term_id, 'hierarchical' => true, 'show_option_none' => __('None'))); ?><br />
0d28b7c10758 First commit
ymh
parents:
diff changeset
    70
                <span class="description"><?php _e('Categories, unlike tags, can have a hierarchy. You might have a Jazz category, and under that have children categories for Bebop and Big Band. Totally optional.'); ?></span>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    71
	  		</td>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    72
		</tr>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    73
		<tr class="form-field">
0d28b7c10758 First commit
ymh
parents:
diff changeset
    74
			<th scope="row" valign="top"><label for="category_description"><?php _e('Description') ?></label></th>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    75
			<td><textarea name="category_description" id="category_description" rows="5" cols="50" style="width: 97%;"><?php echo esc_html($category->description); ?></textarea><br />
0d28b7c10758 First commit
ymh
parents:
diff changeset
    76
            <span class="description"><?php _e('The description is not prominent by default; however, some themes may show it.'); ?></span></td>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    77
		</tr>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    78
		<?php do_action('edit_category_form_fields', $category); ?>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    79
	</table>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    80
<p class="submit"><input type="submit" class="button-primary" name="submit" value="<?php esc_attr_e('Update Category'); ?>" /></p>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    81
<?php do_action('edit_category_form', $category); ?>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    82
</form>
0d28b7c10758 First commit
ymh
parents:
diff changeset
    83
</div>