Adicionando campos personalizados na edição de Categorias

Na functions.php, adicione o código abaixo.
São permitidos somente apenas 3 campos personalizados.

<?php
	/* Edição da categoria */
	add_action('edit_category_form_fields','extra_category_fields');
	function extra_category_fields( $tag ){
		$t_id = $tag->term_id;
		$cat_meta = get_option( "category_$t_id");
	?>
		<tr class="form-field">
			<th scope="row" valign="top"><label for="cat_Image_url">URL da imagem: </label></th>
			<td>
				<input type="text" name="Cat_meta[img]" id="Cat_meta[img]" size="3" style="width:60%;" value="<?php echo $cat_meta['img'] ? $cat_meta['img'] : ''; ?>"><br />
				<span class="description">Imagem para a categoria. Utilize o endereço inteiro com http://.</span>
			</td>
		</tr>
		<tr class="form-field">
			<th scope="row" valign="top"><label for="extra1">Status: </label></th>
			<td>
				<select name="Cat_meta[extra1]" id="Cat_meta[extra1]">
					<?php $class_1 = $cat_meta['extra1'] ? "selected=selected" : ""; ?>
					<option value="0" <?php echo $class_1;?>>Em andamento</option>
					<?php $class_2 = $cat_meta['extra1'] ? "selected=selected" : ""; ?>
					<option value="1" <?php echo $class_2;?>>Completo</option>
				</select><br/>
				<span class="description">Status da categoria.</span>
			</td>
		</tr>
<?php
	}

	//Salva as opções da categoria
	add_action('edited_category','save_extra_category_fileds');
	function save_extra_category_fileds( $term_id ) {
		if ( isset( $_POST['Cat_meta'] ) ) {
			$t_id = $term_id;
			$cat_meta = get_option( "category_$t_id");
			$cat_keys = array_keys($_POST['Cat_meta']);
				foreach ($cat_keys as $key){
				if (isset($_POST['Cat_meta'][$key])){
					$cat_meta[$key] = $_POST['Cat_meta'][$key];
				}
			}        
			update_option( "category_$t_id", $cat_meta );
		}
	}
?>

A página de edição de categoria será essa:

Para imprimir, utilize o código abaixo.

	<?php get_option("category_".$id_da_categoria) ?>

A página abaixo lista as categorias existentes junto com o var_dump do código acima.

Anúncios