Para quem trabalha com desenvolvimento web e/ou gosta de explorar todas as potencialidades do WordPress, construir uma página de opções para um Tema WordPress é sem dúvida uma opção a ter em consideração. O WordPress trabalha somente com 11 tabelas no seu banco de dados, sendo que a tabela wp_options é uma das mais importantes, uma vez que ajuda o sistema a compreender como funciona seu site/blog. Esta tabela guarda toda a informação relacionada com o seu website, incluindo o nome do site, descrição, URL, entre muitas outras coisas. Todas estas informações podem ser facilmente puxadas usando a função get_option(), passando o nome do campo que você quer puxar. Por exemplo: get_option(‘home’) irá retorno o URL da sua homepage. Infelizmente o WordPress não lhe permite criar novos campos facilmente nessa tabela para que depois os possa puxar. Para isso, há que criar uma página de opções para o seu Tema WordPress, onde você poderá colocar todos os campos e informações que desejar.

Os colegas do wptuts criaram recentemente um artigo com algumas estratégias bem interessantes no que diz respeito à criação de uma página de opções para o WordPress que aproveitamos para desenvolver este nosso artigo. Antes de começar, não se esqueça que deverá fazer sempre um backup do seu Tema e/ou experimentar estas soluções num tema de testes que tenha disponível, por forma a evitar embaraços desnecessários.

opções de página

PUXAR O ID DO TWITTER

Neste tutorial vamos basicamente criar uma página de opções que lhe permita armazenar o seu ID do Twitter e depois puxá-lo para o seu site/blog através da função get_option(‘twitterid’). Tenha em consideração que todas as funções devem ser colocadas dentro do ficheiro functions.php do seu template. Caso não tenha um ficheiro com esse nome em seu template, pondere criar um com esse nome e os código abaixo indicados.

1. ADICIONAR MENU DE ADMIN

Este pequeno código serve apenas para criar um novo menu de admin para que possamos ver a página.

add_action('admin_menu', 'add_global_custom_options');

2. ACCIONAR FUNÇÃO

Com este código iremos accionar uma função customizada para criar um formulário que nos permita preencher esse campo.

	function add_global_custom_options()
	{
		add_options_page('Global Custom Options', 'Global Custom Options', 'manage_options', 'functions','global_custom_options');
	}

3. GERAR FORMULÁRIO

<?php
function global_custom_options()
{
?>
	<div class="wrap">
		<h2>Página de Opções/h2>
		<form method="post" action="options.php">
			<?php wp_nonce_field('update-options') ?>
			<p><strong>ID do Twitter:</strong><br />
				<input type="text" name="twitterid" size="45" value="<?php echo get_option('twitterid'); ?>" />
			</p>
			<p><input type="submit" name="Submit" value="Store Options" /></p>
			<input type="hidden" name="action" value="update" />
			<input type="hidden" name="page_options" value="twitterid" />
		</form>
	</div>
<?php
}
?>

Tenha em consideração que esse formulário tem apenas 1 campo ainda (ID do Twitter). Caso você pretenda acrescentar mais campos, siga os dois passos seguintes:

1 – Crie uma nova caixa de texto com um nome único. Por exemplo, se você quiser criar um link para a sua página do Facebook, você faria assim:

<p><strong>Facebook Page Links:</strong><br />
	<input type="text" name="fb_link" size="45" value="<?php echo get_option('fb_link'); ?>" />
</p>

2 – Você precisa atualizar o valor do campo “page_options”, que neste caso deveria ser atualizado com ambos os nomes das funções respetivas. Veja:

<input type="hidden" name="page_options" value="twitterid,fb_link" />

Você consegue ver que os nomes das opções são adicionados usando apenas uma vírgula (,) a separá-los. Se você não colocar a vírgula, nada irá funcionar corretamente.

COMO USAR?

Depois de colocar esses códigos no seu ficheiro functions.php veja a sua página de admin. Você irá ver um novo link no seu menu de Admin chamado “Página de Opções”. Introduza os seus valores no formulário e para os puxar, você apenas ter de usar as funções “get_option(‘twitterid’)” “get_option(‘fb_link’)” por exemplo.

Este é apenas um tutorial simples para você compreender como funciona a criação dessas páginas de opções. Se você desejar, pode posteriormente extender o nível de funcionalidade para coisas mais complexas, como campos para introduzir códigos JavaScript e HTML, opções de gravação, outras mídias sociais, etc.

Até Já!