Funções úteis para WordPress no functions.php

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

 

Habilitar Administração de Menus pelo Admin do WordPress no functions.php

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

add_theme_support('menus'); //Basta inserir esse código no functions.php que já vai aparecer a opção Menu no Admin

 

 

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("SELECT ID FROM $wpdb->posts WHERE post_name = '".$post_name."'");
    return $id;
}

Para saber mais sobre os Menus Personalizados do WordPress, acesse a documentação do wp_nav_menu()

 

Como utilizar variáveis $_GET no WordPress?

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;
}

Para utilizar no php, utilize conforme o exemplo abaixo:

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!

4 ideias sobre “Funções úteis para WordPress no functions.php

  1. Oi Leo,

    Sou novato em programação em PHP e WordPress.

    Há dias busco solução para pegar uma variável da URL e mostrá-la no WORDPRESS…

    Sei que tenho que usar $_GET…, mas o WP não está aceitando as orientações em PHP…

    Como faço para editar o functions.php e colocar a instrução que você passou a cima?

    Desculpe a minha ignorância, mas serei grato se puder me ajudar neste impasse que estou ha dias.

    Vlw

    • Eduardo, você pode baixar o arquivo functions.php e colocar este script embaixo de tudo.

      Só certifique-se que o código esteja entre a tag do PHP.

      Ex: <?php //código aqui ; ?>

    • Eduardo, para utilizar o $_GET você precisa programar num arquivo de template do tipo php. Utilizando o editor do WordPress você não terá muito sucesso.

      Lembrando que essas dicas são de nível intermediário para avançado em programação.

  2. e ai Leo?!
    o WordPress também permite ao desenvolvedor, debugar a aplicação. E para utilizar a feature mais facilmente,
    comento a linha 81 do wp-config e logo em seguida acresento o codigo seguinte:
    if($_GET['debug']=='on'):
    try{define('WP_DEBUG', true);}
    catch(Exception $e){define('WP_DEBUG', false);}
    endif;
    ficando desta forma:
    //define('WP_DEBUG', false);
    if($_GET['debug']=='on'):
    try{define('WP_DEBUG', true);}
    catch(Exception $e){define('WP_DEBUG', false);}
    endif;

    Sempre que preciso verificar algo, apenas acrescento "?debug=on" à URL

Deixe um Comentário

O seu endereço de email não será publicado Campos obrigatórios são marcados *

*

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>