Meta Boxes no WordPress

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.

Psiu! Quer dominar completamente o WordPress?

Assinatura Premium é tudo que você precisa!

Obtenha acesso à Conteúdos Exclusivos, Séries e Cursos Completos, além de muito conteúdo para aprender sobre os Recursos Mais Tops do WorPress… Mesmo que seja um iniciante, do zero e sem saber programar!

Venha fazer parte dessa comunidade!

Não perca mais nenhuma atualização aqui!

Posts Relacionados

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Não perca mais nenhuma atualização aqui!

Tabela de Conteúdo
PUBLICIDADE
Últimos Posts