WP_Query – silná trieda vo WordPresse

Na ľubovoľnom mieste v šablóne wordpress stránky vieme prerušiť a zavolať custom query a zobraziť úplne nový odlišný obsah.

Nedávno som poradil na twitteri jednému vo wordpresse sa trápiacemu. Potreboval práve WP_Query na načítanie obsahu z custom taxonómii.

Určite odporúčam najprv prejsť kódex http://codex.wordpress.org/Class_Reference/WP_Query

Uvediem príklad použitia:

Som na úvodnej stránke a logicky sa najprv vyrendruje header.php

Lenže ja chcem v header.php zavolať a zobraziť obsah z custom postu – box s id 193. Čiže ešte pred zobrazením obsahu úvodnej stránky zmením hlavné volanie wordpressu na iné, tam pomocou loopu zobrazím iný obsah a potom sa vrátim k pôvodnému volaniu a dorendrujem normálne stránku do konca.

$temp_ID = $post->ID;  //uložím si do pomocnej premennej aktuálne ID
$temp_query = $wp_query;  //uložím si do pomocnej premennej celú aktuálnu query.
$wp_query = null; //vynulujem si aktuálnu tému
$loop = new WP_Query( array( 'post_type' => 'box', 'p' =>193)); //vytvorím si novú query a do loopu priradím novú query s argumentami na obsah.

while($loop->have_posts()) : $loop->the_post(); //klasický loop
   the_content(); 
endwhile;

$wp_query = null; //vynulujem si query
$wp_query = $temp_query; //načítam si pôvodnú query
$post->ID = $temp_ID; //upravím si $post->ID pre ďalšie potreby

Výhodou je, že nemusím písať SQL príkaz, ale využijem úžasné wordpress API.

Môžem zavolať akýkoľvek obsah, rovno definujem parametre výpisu. V loope potom  vypíšem, čo potrebujem, title, content, thumbnail, date, excerpt, kľudne aj custom field daného postu.

Páči sa vám článok?

Potrebujete riešenie na mieru?
Kontaktujte nás!

Vladimír Donič hlavný konzultant

+421 948 368 636

vladimir.donic@vibration.sk

Alebo vyplňte krátky formulár

Zadať dopyt