Como executar um Query no WordPress

Como executar um Query no WordPress utilizando o objeto global “wpdb”.

Como executar um Query no WordPress utilizando objeto "wpdb"

Irei listar alguns exemplos com diversos tipos de Querys.

Executando um “Select” simples.

Um “select” retornando múltiplas linhas.

global $wpdb;
$tableName = "tabela_teste";
$result = $wpdb->get_results("SELECT * FROM $tableName");
foreach ($result as $row) { 
echo '<p>' .$row->coluna_teste. '</p>';
}

Quando o resultado esperado for apenas 1 linha, utilize o exemplo abaixo:

global $wpdb;
$query = "SELECT * FROM `tba_teste` WHERE id = 1";
$row = $wpdb->get_row($query, ARRAY_A);
echo "<pre>";
print_r($row);
echo "</pre>";

Executando um Insert, Update e Delete.

Exemplo de Insert:

global $wpdb;
$query = " INSERT INTO teste (name) values ('test') "
$wpdb->query( $query );
/* ID do registro que acabou de ser inserido. */
$lastid = $wpdb->insert_id;

Para Update:

global $wpdb;
$query = " UPDATE teste SET name = 'test' WHERE id = 1 "
$wpdb->query( $query );

Ainda para UPDATE, você pode utilizar esta função exclusiva do WordPress:

$wpdb->update( $table, $data, $where, $format = null, $where_format = null );

Exemplo de parâmetros para função acima:

$wpdb->update( 
'nome_da_tabela', 
array( 
'coluna_01' => 'valor_01',
'coluna_02' => 'valor_02'	
), 
array( 'id' => 1 ), 
array( 
'%s',
'%d'	
), 
array( '%d' ) 
);

Para Delete:

global $wpdb;
$query = " DELETE FROM teste WHERE id = 1 "
$wpdb->query( $query );

Delete também possuí uma função própria no WordPress.

$wpdb->delete( $table, $where, $where_format = null );

Exemplo com parâmetros.

$wpdb->delete( 'nome_da_tabela', array( 'id' => 1 ) );

Segurança, evite o “SQL Injection”.

Utilize sempre o método “$wpdb->prepare” para evitar ataque em suas consultas.

O método “prepare” irá remover qualquer SQL que esteja no valor das variáveis que estão sendo utilizadas na Query.

Exemplos:

$result = $wpdb->query($wpdb->prepare("UPDATE tabela_de_teste SET name = 'Roger' WHERE id = %d", $id));
$sql = $wpdb->prepare( "SELECT * FROM %s ORDER BY id DESC",$nome_da_tabela);

 

Resumo
Executando uma Query no Wordpress utilizando o objeto "wpdb"
Nome do Artigo
Executando uma Query no Wordpress utilizando o objeto "wpdb"
Descrição
Exemplo de como executar uma Query no Wordpress utilizando "wpdb" e os métodos exclusivos do Wordpress para cada operação: Insert, Update, Delete e Select
Autor
Editor
Roger Mauricio Takemiya
Logo do Editor

3 comentários sobre “Como executar um Query no WordPress

  1. Vlw pela dica, como faço para executar isso em um arquivo na raiz do site? Exemplo: cad-post.php estou desenvolvendo uma integração porém não quero fazer um plugin para isso,
    1. Mario, muito obrigado pelo comentário. Você terá que carregar o arquivo wp-load.php antes do código utilizando a função include. Após isso você poderá executar qualquer função disponível no wordpress.

Dúvidas? Faça um comentário logo abaixo ou envie uma mensagem clicando aqui.

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