daniofilho
4/12/2016 - 11:44 AM

Custom Field

// ------------------------------- //
		// ---- Campos Personalizados ---- //
		// ------------------------------- //
			
		
		
			add_action('admin_init','metaboxes_almofadas');
		 
			function metaboxes_almofadas(){
			    add_meta_box( 'categoria_almofadas_meta', 'Informações' , 'info_almofadas_call', 'almofadas', 'normal', 'high' );
			}
				
			function info_almofadas_call(){
				//Cria um array com os valores dos campos do post
				global $post;
				
				$values = get_post_custom( $post->ID );
				
				//Verifica os dados dos Campos Personalizados e os imprime no Metabox
				$var_codigo_almofadas = $values["meta_codigo_almofadas"][0];
				$var_tecido_almofadas = $values["meta_tecido_almofadas"][0];
				$var_composicao_almofadas = $values["meta_composicao_almofadas"][0];
				$var_enchimento_almofadas = $values["meta_enchimento_almofadas"][0];
				$var_medidas_almofadas = $values["meta_medidas_almofadas"][0];
				
				
				//Pega um vetor de tecidos				
				$lista_tecidos = get_tecidos();


			    echo'
			    	<table class="table-almofadas">
    
                    <input type="checkbox" name="<?= $name; ?>" value="checked" <?= $value; ?> /> Ativar?					  

					  <tr>
					    <td align="right" valign="middle">Código:</td>
					    <td><label for="txt_codigo_almofadas"></label>
					    <input type="text" width="100%" name="txt_codigo_almofadas" id="txt_codigo_almofadas" value="'.$var_codigo_almofadas.'" /></td>
					  </tr>
					  
					  <tr>
					    <td align="right" valign="middle">Tecido:</td>
					    <td><label for="txt_tecido_almofadas"></label>
					    <!--<input type="text" width="100%" name="txt_tecido_almofadas" id="txt_tecido_almofadas" value="'.$var_tecido_almofadas.'" />-->
					    ';
					  
					  echo "<select name='txt_tecido_almofadas' id='txt_tecido_almofadas'>";
					
					  if ($var_tecido_almofadas != "" && $var_tecido_almofadas != "--------------"){
					  
					     echo "<option value='".$var_tecido_almofadas."'>".get_the_title($var_tecido_almofadas)."</option>";	  
					     echo "<option></option>";
					     echo "<option>--------------</option>";
					     echo "<option></option>";
					  }
						
					  //Percorre o vetor de tecidos e imprime as opções  
					  for( $i=1; $i<=count($lista_tecidos); $i++) {
					
						  echo "<option value='".$lista_tecidos[$i]['id']."'>".$lista_tecidos[$i]['nome']."</option>";
					  
					  }
						  
					  echo "</select>";		  
					    
				echo '	    
					    </td>
					    
					  </tr>
					  
					   <tr>
					    <td align="right" valign="middle">Composição:</td>
					    <td><label for="txt_composicao_almofadas"></label>
					    <input type="text" width="100%" name="txt_composicao_almofadas" id="txt_composicao_almofadas" value="'.$var_composicao_almofadas.'" /></td>
					  </tr>
					  
					   <tr>
					    <td align="right" valign="middle">Enchimento:</td>
					    <td><label for="txt_enchimento_almofadas"></label>
					    <input type="text" width="100%" name="txt_enchimento_almofadas" id="txt_enchimento_almofadas" value="'.$var_enchimento_almofadas.'" /></td>
					  </tr>
					  
					  <tr>
					    <td align="right" valign="middle">Medidas:</td>
					    <td><label for="txt_medidas_almofadas"></label>
					    <input type="text" width="100%" name="txt_medidas_almofadas" id="txt_medidas_almofadas" value="'.$var_medidas_almofadas.'" /></td>
					  </tr>
					  
					</table>
					<link rel="stylesheet" href="'.get_bloginfo("template_url").'/includes/almofadas.css" type="text/css" />
			    ';			   
			}

			
			//Função para salvar os campos personalizados
			add_action('save_post', 'salva_info_almofadas');
			
			function salva_info_almofadas(){
				global $post;
			
			    //Verifica se está salvando pela opção de Auto-Save
				if( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return;

				//Atualiza os valores dos campos personalizados
					
					update_post_meta($post->ID, "meta_codigo_almofadas", $_POST["txt_codigo_almofadas"]);	
					update_post_meta($post->ID, "meta_tecido_almofadas", $_POST["txt_tecido_almofadas"]);
					update_post_meta($post->ID, "meta_composicao_almofadas", $_POST["txt_composicao_almofadas"]);
					update_post_meta($post->ID, "meta_enchimento_almofadas", $_POST["txt_enchimento_almofadas"]);	
					update_post_meta($post->ID, "meta_medidas_almofadas", $_POST["txt_medidas_almofadas"]);
			
								
			}