Pełna pętla WordPress
[ SEOWind.io - pisz treści które rankują się w TOPach ]
WordPressowa pętla to cudo samo w sobie. Elastyczne, prawidłowo opisane, idealnie działające. Tym krótkim, ale optymistycznym zdaniem zapraszam do opisu pętli WordPressa wraz z przykładami.
Co w pętli WordPressowej można zastosować, jak to wygląda na podstawie przykładów i co jeszcze możemy z niej wydusić? Dlaczego warto się jej przyjrzeć z bliska? Dlatego, że prawie wszystko, co będzie nam potrzebne mamy gotowe, jest to jeden z powodów, dlaczego developerzy tak chętnie wybierają WordPressa. Nie ważne, czy będziemy chcieli wyświetlić wpisy tylko danego autora, czy wszystkich, a może postanowimy wyświetlić wpisy autora z roku 2016, które dodał z tagiem “wordpress” w kategorii “poradniki”? To wszystko, dzięki magii zaszytej w CMSie, jest do zrobienia bez rozpisywania się na dziesiątki linijek kodu. Zapraszam do wpisu.
Pełny opis możliwości znajdziesz również tutaj: https://codex.wordpress.org/Class_Reference/WP_Query
Najprostsza WordPressa pętla, od której zaczniemy cały wpis wygląda następująco:
<?php // The Query $the_query = new WP_Query( $args ); // Nasza pętla if ( $the_query->have_posts() ) { echo '<ul>'; while ( $the_query->have_posts() ) { $the_query->the_post(); echo '<li>' . get_the_title() . '</li>'; } echo '</ul>'; /* Resetujemy naszą pętlę, nigdy nie wiadomo czy nie potrzebujemy drugiej */ wp_reset_query(); } else { echo '<h3>Dodaj jakieś wpisy!</h3>'; echo '<p>Jeżeli jakieś dodałeś, sprawdź kategorię i poprawność kodu</p>'; } ?>
Jest naprawdę prosta, przyjemna i co najważniejsze działa. Jednak taka funkcja może posiadać bardzo dużo parametrów. Parametry podajemy w następujący sposób:
$args = array( );
Czyli przykładowo:
<?php $args = array( 'posts_per_page' => 5 );
Sprawdźmy, jakie możemy zastosować parametry. Nie są to wszystkie możliwości tylko te, z których najczęściej się korzysta.
Parametry Kategorii
“cat”=>1 – zawsze jako zmienna int, numer kategorii, pobieramy go, np. edytując funkcję, znajdziemy ID naszej kategorii na pasku adresu.
“category_name” => “nazwa” – wyświetlamy kategorie o danej nazwie, pamiętajmy, że jest to nazwa skrócona
“category__not_in” => array( 2, 4) – działanie odwrotne do powyższych, wyświetlamy wpisy, których nie ma w powyższych kategoriach.
Parametry tagów
“tag” => “wspaniala”, – nazwa naszego tagu,
“tag_id” => 5, – ID naszej wspaniałego tagu,
“tag__and” => array( 2, 6), – tabela naszych wspaniałych tagów
Parametry dotyczące wpisu
“post_type” => array(
“post”, – nasz typ wpisu,
“nowy-typ-wpisu”, – inny typ wpisu podajemy właśnie tak,
“page”, – nasza strona,
“revision”, – nasze oznaczenie wpisu,
),
Status naszego wpisu
“post_status” => array(
“publish”, – wpis opublikowany
“pending”, – wpis gotowy do przeglądu
“draft”, – wpis oznaczony jako szkic
),
Parametry związane z czasem publikacji
“year” => 2016, – rok naszego wpisu (wyświetli wpisy opublikowane w tym roku)
“monthnum” => 7, – miesiąc wpisu
“day” => 12, – dzień publikacji
“hour” => 12, – godzina publikacji
“minute” => 12, – minuty publikacji
“second” => 12, – sekundy publikacji
Czasem trzeba też niektóre problemy po prostu rozwiązać, nawet jeżeli nie jest to maksymalnie optymalne rozwiązanie. Zazwyczaj wtedy powstaje najwięcej potworów. Należy pamiętać, że im więcej zastosujemy własnych rozwiązań podobnych do IFa w pętli, tym ciężej taką stronę będzie utrzymać. Jednego z takich potworków zaprezentowałem w ostatnim wpisie “7 ciekawych rozwiązań”.
<?php if ( is_singular( 'nasz_typ_wpisu' ) ) { global $post; $terms = get_the_terms( $post->ID , 'taxonomy_dla_naszego_typu_wpisu' ); foreach ( $terms as $term ) { if ($term->name=='nasze_ulobione_taxonomy') { echo ' Jestem tutaj! '; } } } ?>
Warto na tym przykładzie zauważyć, że czasem przyjdzie nam skorzystać z “global $post;” w celu wyciągnięcia innych danych dotyczących wpisu.
Podsumowanie
Skoro już to wszystko rozumiemy, czas ułatwić sobie życie, do tego mamy https://generatewp.com/wp_query/ jest to narzędzie, które pozwoli nam wygenerować w wygodny sposób pętle, co prawda nie obsługuje ona wszystkich parametrów, ale w 90% przypadków się przyda.
Warto dodać jeszcze, że w podobny sposób obsłużymy pętle dla Woocomerca, tylko najpierw przyda nam się bliższe spotkanie z jego dokumentacją. Zawsze w przypadku WordPressa od tego zacząć próbę rozwiązania swojego problemu.
- WordPress i zewnętrzne usługi – krótki przegląd aplikacji, które zepniemy z WordPressem - 4 stycznia 2020
- Pełna pętla WordPress - 4 stycznia 2020
- WordPress i Wcag czy można łatwo spełnić wymagania? - 4 stycznia 2020
- Kanibalizacja słów kluczowych, wstępna diagnoza i naprawa na WordPress - 4 stycznia 2020
- 7 prostych rozwiązań dla WordPress - 4 stycznia 2020
- Google Tag Manager i WordPress – błyskawiczny przepis - 4 stycznia 2020
- Jak uruchomić Instant Articles i Google AMP na WordPress ? - 4 stycznia 2020
- Rejestracja użytkowników na stronie WordPress, kompleksowe rozwiązanie palącego problemu - 4 stycznia 2020
- PIWIK i WordPress, dlaczego warto spojrzeć na te statystyki - 4 stycznia 2020
- Buddypress, czyli społeczność na WordPressie - 4 stycznia 2020
-
Linki Wewnętrzene i Sematyka
-
-
Budowanie linków
-
Sematyka
-
Budowanie linków nigdy nie było prostrze. Setki możliwości linków za jednym kliknięciem.
-
SEMRush
-
-
Profesjonalna platforma SEO
-
Online
-
SEMrush oferuje rozwiązania dla SEO, PPC, treści, mediów społecznościowych i badań konkurencyjnych.