Query Loops

Query Loops

Query Loops je funkce v WordPressu, která vám umožňuje vyhledávat a zobrazovat specifický obsah na vašich stránkách. Můžete například vyhledat a zobrazit pouze příspěvky z určité kategorie, příspěvky s určitými štítky nebo příspěvky od určitého autora. Tuto funkci můžete použít na mnoha místech ve vašem tématu, jako jsou stránky kategorií, stránky štítků, autorské stránky nebo dokonce i na domovské stránce.

Několik výhod používání Querying Loop:

  1. Flexibilita: Querying Loop vám umožňuje přizpůsobit zobrazovaný obsah přesně podle vašich potřeb. Můžete například vyhledat pouze příspěvky s určitými štítky nebo kategoriemi.
  2. Snadné použití: Querying Loop je velmi snadné použít a implementovat do vašeho tématu. Stačí jen napsat několik řádků kódu a máte hotovo.
  3. Zlepšení rychlosti načítání stránek: Použitím Querying Loop můžete optimalizovat zobrazovaný obsah na vašich stránkách, což významně pomůže ke zlepšení rychlosti načítání.

Jaké argumenty se v Query Loops využívají?

Argumenty pro Query Loops jsou parametry, které se používají k definování, jaké příspěvky se mají zobrazit pomocí funkce WP_Query v WordPressu. Tyto argumenty se používají k určení typu příspěvků, které se mají zobrazit, počtu příspěvků, které se mají zobrazit, řazení příspěvků atd. S použitím argumentů můžete nastavit velmi přesné podmínky pro zobrazování příspěvků na vašem webu.

  1. post_type: Určuje typ příspěvků, které se mají zobrazit. Může být nastaven na standardní typ příspěvků post, stránky page nebo na jiný typ příspěvků, který byl vytvořen pomocí funkce register_post_type().
  2. posts_per_page: Určuje počet příspěvků, které se mají zobrazit na jedné stránce.
  3. offset: Určuje počet příspěvků, které se mají přeskočit před zobrazením.
  4. category_name: Určuje kategorii, ve které se mají hledat příspěvky.
  5. tag: Určuje štítek, podle kterého se mají hledat příspěvky.
  6. orderby: Určuje, jakým způsobem se mají příspěvky třídit. Může být nastaven na ID, author, title, name, date, modified, parent, rand, comment_count, menu_order.
  7. order: Určuje směr, v jakém se mají příspěvky třídit. Může být nastaven na ASC nebo DESC.
  8. post_status: Určuje stav příspěvků, které se mají zobrazit. Může být nastaven na publish, pending, draft, auto-draft, future, private, inherit, trash.

Jedná se jen o výběr nejpoužívanějších, další můžete najít v kodexu.

Příklad použití Query Loops

Zobrazení posledních 5 příspěvků:

[code lang=”php”]<?php
$args = array(
‘posts_per_page’ => 5
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
?>
<h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<p><?php the_excerpt(); ?></p>
<?php
}
} else {
echo ‘Žádné příspěvky nebyly nalezeny.’;
}
wp_reset_postdata();
?>
[/code]

Zobrazení nejnovějších příspěvků z kategorie novinky:

[code lang=”php”]<?php
$args = array(
‘posts_per_page’ => 5,
‘category_name’ => ‘novinky’,
‘order’ => ‘DESC’
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
?>
<h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<p>Publikováno: <?php the_date(); ?></p>
<p><?php the_excerpt(); ?></p>
<?php
}
} else {
echo ‘Žádné příspěvky v kategorii Novinky nebyly nalezeny.’;
}
wp_reset_postdata();
?>
[/code]

Zobrazení příspěvků od určitého autora:

[code lang=”php”]<?php
$args = array(
‘author’ => 1,
‘posts_per_page’ => 10
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
?>
<h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<p>Publikováno: <?php the_date(); ?></p>
<p><?php the_excerpt(); ?></p>
<?php
}
} else {
echo ‘Žádné příspěvky od tohoto autora nebyly nalezeny.’;
}
wp_reset_postdata();
?>
[/code]

Zobrazení příspěvků s určitými štítky:

[code lang=”php”]<?php
$args = array(
‘tag’ => ‘fotografie, cestování’,
‘posts_per_page’ => 15
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
?>
<h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<p>Štítky: <?php the_tags(); ?></p>
<p><?php the_excerpt(); ?></p>
<?php
}
} else {
echo ‘Žádné příspěvky s těmito štítky nebyly nalezeny.’;
}
wp_reset_postdata();
?>
[/code]

Neuteklo vám něco?

Pokrok a WordPress na nikoho nečekají, tak nám tu raději nechte email, ať o nic nepřijdete!

Nespamujeme! Další informace naleznete v našich zásadách ochrany osobních údajů.

Správa WordPress webu

Nemusíte na to být sami. Pomůžeme vám s pravidelnou údržbou i novými vylepšeními.

Více informací

Diskuze

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

Nákupní košík
Přejít nahoru