Blog

Como Adicionar Meta Boxes Personalizadas em Posts e Tipos de Posts no WordPress

Meta Boxes no WordPress
Tutoriais

Como Adicionar Meta Boxes Personalizadas em Posts e Tipos de Posts no WordPress

Anteriormente, falamos sobre como adicionar campos meta personalizados para taxonomias personalizadas no WordPress. Nesse artigo trouxemos a atenção para outro tema importante de como adicionar Meta Boxes Personalizadas em posts e tipos de post do WordPress. Nós escrevemos sobre um método que usa um plugin para adicionar meta boxes e painéis de escrita personalizados usando o plugin More Fields, mas saiba que o desenvolvimento do plugin parou. Neste artigo, vamos mostrar a você como Adicionar Meta Boxes Personalizadas em Posts e Tipos de Posts no WordPress.

[alert alert_type=”info” ]Nota: Este tutorial é para designers e desenvolvedores.[/alert]

Como o objetivo deste artigo é mostrar a você como criar Meta Boxes reutilizáveis no WordPress, vamos utilizar uma classe de Meta Boxes e Campos Personalizados para WordPress (CMB) de Andrew Norcross (@norcross), Jared Atchison (@jaredatch) e Bill Erickson (@billerickson). Eles combinaram seus esforços para criar uma solução poderosa para tornar nosso trabalho muito mais fácil.

A primeira coisa que você precisa fazer é baixar a classe CMB. Crie uma nova pasta e chame-a de “custom-meta-boxes-wp“. Extraia os arquivos (zip) da CMB aqui.

Agora vamos criar um arquivo PHP em branco, e chamá-lo de cmb-wp.php. Este é o arquivo que iremos usar para definir nosso plugin e criar todas as meta boxes que precisamos. Abaixo está um exemplo de conteúdo que você pode colocar neste arquivo:

<?php
/*
Plugin Name: Meta Boxes Personalizados
Plugin URI: https://wp24horas.com.br/
Description: Cria Meta Boxes personalizados para o Site.
Version: 0.1
Author: Asllan Maciel
Author URI: https://www.asllanmaciel.com.br/
License: GPL v2 or higher
License URI: License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

//Inicializando a class

function wp24h_initialize_cmb_meta_boxes() {
	if ( ! class_exists( 'cmb_Meta_Box' ) )
		require_once(plugin_dir_path( __FILE__ ) . 'init.php');
}

add_action( 'init', 'wp24h_initialize_cmb_meta_boxes', 9999 );

//Add Meta Boxes

function wp24h_sample_metaboxes( $meta_boxes ) {
	$prefix = '_wp24h_'; // Prefixo para todos os campos

	$meta_boxes[] = array(
		'id' => 'test_metabox',
		'title' => 'Metabox de Teste',
		'pages' => array('page'), // tipo de post (Aqui definimos para somente páginas)
		'context' => 'normal',
		'priority' => 'high',
		'show_names' => true, // Mostrar nome dos campos à esquerda
		'fields' => array(
			array(
				'name' => 'Texto',
				'desc' => 'Descrição do Campo (optional)',
				'id' => $prefix . 'test_text',
				'type' => 'text'
			),
		),
	);

	return $meta_boxes;
}
add_filter( 'cmb_meta_boxes', 'wp24h_sample_metaboxes' );

O exemplo acima é muito básico. Ele só adiciona uma amostra de meta box teste com um campo de texto em “páginas”. Como pode ver, você tem a opção de personalizar o tipo de post e muito mais. A classe CMB suporta os seguintes tipos de campo:

  • text
  • text small
  • text medium
  • text money
  • date picker
  • date picker (unix timestamp)
  • date time picker combo (unix timestamp)
  • time picker
  • color picker
  • textarea
  • textarea small
  • textarea code
  • select
  • radio
  • radio inline
  • taxonomy radio
  • taxonomy select
  • checkbox
  • multicheck
  • WYSIWYG/TinyMCE
  • Image/file upload

Aqui está a página wiki que irá mostrar-lhe como adicionar todos os tipos de campo. Há também um arquivo example-functions.php que você pode usar como referência.

Assim que estiver pronto, faça o upload da pasta para sua pasta de plugins. Agora, você pode facilmente exibir esses campos em seu loop usando a função get_post_meta(). Aqui está um tutorial se você quiser exibir campos personalizados fora do loop.

A classe CMB é incrível, nós a utilizamos aqui no [wp24]. Se você é um designer/desenvolvedor, então você vai achar que ela é realmente fácil de usar e que vai ajudá-lo a melhorar o seu fluxo de trabalho.

Esperamos que este tutorial tenha ajudado a Adicionar Meta Boxes Personalizadas em Posts e Tipos de Posts no WordPress.

Deixe seu comentário aqui...

O seu endereço de e-mail não será publicado.

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Nosso site usa cookies e, portanto, coleta informações sobre sua visita para melhorar nosso site (por meio de análise), mostrar a você conteúdo de mídia social e anúncios relevantes. Por favor, consulte nossa página Termos & Políticas para mais detalhes ou concorde clicando no botão 'Aceitar'. OBS: Ao continuar a navegação, você, automaticamente, concorda.

Configurações de Cookies

Abaixo, você pode escolher os tipos de cookies que quer permitir neste site. Clique no botão "Salvar Configurações de Cookies" para aplicar sua escolha.

FuncionalNosso site usa cookies funcionais. Esses cookies são necessários para permitir que nosso site funcione.

AnalíticoNosso site usa cookies analíticos para permitir a análise de nosso site e a otimização para o propósito de a.o. a usabilidade.

Mídia SocialNosso site coloca cookies de mídia social para mostrar conteúdo de terceiros, como YouTube e Facebook. Esses cookies podem rastrear seus dados pessoais.

PublicidadeNosso site coloca cookies de publicidade para mostrar anúncios de terceiros com base em seus interesses. Esses cookies podem rastrear seus dados pessoais.

OutrosNosso site coloca cookies de terceiros de outros serviços que não são analíticos, mídia social ou publicidade.