Ultimamente tenho feito muitos trabalhos(sites) utilizando o WordPress. E na maioria deles, sempre que utilizo a WP_Query ou até quero programar em PHP mesmo, preciso criar ou utilizar uma função no functions.php.
Mas o que percebi, é que sempre utilizo 3 funções. E resolvi compartilhar, pois se servem pra mim, podem servir para vocês que também trabalham com WordPress.
As funções servem para habilitar o menu do WordPress, retornar o id pelo permalink(post_name) e utilizar variáveis $_GET com WordPress.
Quase todos os sites que eu faço, eu habilito os Menus do próprio WordPress. Assim os redatores podem alterar os Menus e seus links
/**
* Basta inserir esse código no functions.php que já vai aparecer a opção Menu no Admin
*/
add_theme_support('menus');
Na minha opinião, essa função já devia ser nativa do WordPress, mas enquanto não sai, usem essa aí:
function get_id_by_post_name($post_name)
{
global $wpdb;
$id = $wpdb->get_var($wpdb->prepare("SELECT ID FROM $wpdb->posts WHERE post_name = '%s'", $post_name));
return $id;
}
Para saber mais sobre os Menus Personalizados do WordPress, acesse a documentação do wp_nav_menu()
O WordPress não deixa trabalharmos com variáveis GET por padrão, mas basta adicionar um filtro na função query_vars com o nome da sua variável e você vai conseguir:
add_filter('query_vars', 'customquery_vars' );
function customquery_vars( $qvars )
{
$qvars[] = 'variavel'; //Exemplo: http://url.com.br/?variavel=
return $qvars;
}
global $wp_query;
echo $wp_query->query_vars['variavel'];
Se você também costuma utilizar algumas funções no WordPress e o seu functions.php sempre inicia do mesmo jeito, comenta aí que eu atualizo aqui!