Jestem wielkim fanem klasy WP_Query: używam jej w kilku witrynach klienckich do pobierania i wyświetlania danych w niestandardowy sposób.

Jeśli chcesz użyć wielu pętli na stronie, najlepszym sposobem na to jest uruchomienie „WP_Query” za każdym razem, gdy potrzebujesz pętli.

Ale jest jedna wada: za każdym razem, gdy WordPress wykonuje pętlę, wysyła zapytania do bazy danych, co trwa dłużej i może spowolnić twoją stronę.

W tym samouczku pokażę, jak używać zapytania dla więcej niż jednej pętli. Możesz to zrobić za pomocą głównego zapytania lub możesz użyć tej samej techniki z WP_Query.

Omówimy aspekty 3:

 

  • Utwórz motyw podrzędny i plik szablonu.
  • Utwórz element szablonu dla zawartości pętli.
  • Utwórz nasze pętle.

 

Ale zanim odkryjemy razem Jak zainstalować WordPress blogu kroki 7 et Jak znaleźć, zainstalować i aktywować WordPress na swoim blogu 

Wróćmy do tego, dlaczego tu jesteśmy.

Czego potrzebujesz

Aby wykonać ten samouczek, musisz:

 

  • Z instalacji WordPress do programowania (lokalnie).
  • Edytor kodu.
  • Artykuły w Twojej witrynie z przypisanymi wieloma kategoriami
  • dwadzieścia szesnaście tematów WordPress
  • Zainstalowano i aktywowano motyw podrzędny dwudziestu szesnastu osób

 

Ta technika dostosowuje się również do twojej sytuacji i do twojego WordPress.

Tworzenie motywu podrzędnego

Najpierw stworzymy motyw potomny dwudziestu szesnastu. Robię to, ponieważ nie chcę zmieniać motywu nadrzędnego.

Odkrywaj Jak zainstalować WordPress tematu dziecka

W swoim folderze „wp-content / themes” utwórz nowy pusty folder, który nazwiesz „korepetytorem”. Możesz później wybrać nazwę, która Ci odpowiada.

W tym folderze utwórz plik o nazwie style.css i dodaj następujący kod:

/*

Nazwa motywu: Motyw Tuto

Motyw URI: https://blogpascher.com

Opis: Motyw do obsługi samouczka na temat uruchamiania wielu pętli podczas odpytywania bazy danych tylko raz. Motyw podrzędny dla motywu Twenty Sixteen.

Autor: Hervé

Autor URI: https://blogpascher.com

Szablon: dwadzieścia jeden

Wersja: 1.0

*/

 

@import url ("../twentysixteen/style.css");

Teraz zapisz ten plik i aktywuj nowy WordPress.

Następnym krokiem jest utworzenie pliku szablonu dla kategorii, nad tym będziemy pracować.

Utwórz kopię pliku „archive.php” z WordPress "Dwadzieścia szesnaście." Nie ruszaj go, ale zrób kopię. Zmień jego nazwę na „kategoria.php”.

Aby przejść dalej, odkryj Jak zarządzać plikami i folderami WordPress

Będzie to teraz plik szablonu dla kategorii Twojej witryny.

Tworzenie nowego pliku szablonu

Pierwszym krokiem jest utworzenie nowego pliku szablonu w naszym motywie, który będzie zawierał zmodyfikowaną wersję pętli „dwadzieścia szesnaście”.

Porozmawiajmy także razem Jak ustawić witrynę WordPress w trybie konserwacji

W folderze motywu podrzędnego utwórz podfolder o nazwie „zawiera”. A w środku utwórz nowy plik o nazwie „loop-category.php”.

Następnie otwórz plik „template-parts / content.php” z folderów nadrzędnych (dwadzieścia szesnaście) i znajdź następujący kod:

" >

 

 

 

 

 

 ', esc_url (get_permalink ())),' '); ?>

 

 

 

 

 

 

 

 

 / * tłumacze:% s: nazwa aktualnego postu * /

 the_content (sprintf (

 __ ('Kontynuuj czytanie '% s ' ', 'twentysixteen'),

 get_the_title ()

 ));

 

 wp_link_pages (tablica (

 'before' => ' ”. __ („Strony:”, „dwudziestka szesnaście”). ' ',

 'after' => ' ',

 'link_before' => ' ',

 'link_after' => '',

 'pagelink' => ' '. __ („Strona”, „dwadzieścia szesnaście”). ' %',

 'separator' => ' , ',

 ));

 ?>

 

 

 

 

 

 edit_post_link (

 sprintf (

 / * tłumacze:% s: nazwa aktualnego postu * /

 __ ('Edytuj '% s ' ', 'dwudziestka szesnaście'),

 get_the_title ()

 ),

 ' ',

 ''

 );

 ?>

 

Skopiuj ten kod do nowego pliku „loop-category.php” kompozycji potomnej.

Edycja pliku części szablonu

Pętla „dwadzieścia szesnaście” pokazuje więcej niż potrzebuję, więc zmodyfikuję ten kod. Chcę tylko pokazać fragment, a nie treść, więc zamierzamy usunąć zawartość.

Jaka jest różnica między H1 a tytułem SEO artykułu WordPress? Dowiedz się, sprawdzając ten artykuł.

W nowym pliku loop-category.php znajdź ten kod i usuń go:

<div class = "entry-content">

 

 / * tłumacze:% s: nazwa aktualnego postu * /

 the_content (sprintf (

 __ ('Kontynuuj czytanie '% s ' ', 'twentysixteen'),

 get_the_title ()

 ));

 

 wp_link_pages (tablica (

 'before' => ' ”. __ („Strony:”, „dwudziestka szesnaście”). ' ',

 'after' => ' ',

 'link_before' => ' ',

 'link_after' => '',

 'pagelink' => ' '. __ („Strona”, „dwadzieścia szesnaście”). ' %',

 'separator' => ' , ',

 ));

 ?>

Drugim krokiem jest zastąpienie funkcji „twenty_sixteen_excerpt ()” funkcją „the_excerpt ()”, ponieważ wersja dwudziestu szesnaście nie zawiera linku do pełnego artykułu.

Zobacz także Jak przeglądać najnowsze artykuły w określonej kategorii

Znajdź tę linię:

Zamień to na:

Musimy również wprowadzić zmiany w tagach tytułowych.

W części modelu zmień linię:

', esc_url (get_permalink ())),' '); ?>

Edytuj tagi H2 dla H3:

', esc_url (get_permalink ())),' '); ?>

Zarejestruj swój model. Następnie wróć do pliku category.php, aby kontynuować.

Tworzenie pętli

Przede wszystkim usuniemy dołączenie kodu „dwadzieścia szesnaście” z naszego pliku „category.php”, ponieważ będziemy musieli użyć nowego pliku.

W swoim pliku category.php znajdź ten kod:

get_template_part ('template-parts / content', get_post_format ());

I usuń.

Następnie stworzymy pętle.

W tym przykładzie wyświetlę wszystkie posty z tagiem „content”, używając tagu warunkowego „has_tag ()”. Oznacza to, że będę musiał przejść przez trzy pętle:

 

  • Pierwsze sprawdzenie, czy zapytanie opublikowało elementy z tym znacznikiem.
  • Jeśli tak, drugi wyświetla artykuły z tą etykietą.
  • Trzeci wyświetla artykuły bez tego znacznika.

 

Pomiędzy każdą pętlą użyję rewind_posts () do przewinięcia wiadomości bez resetowania zapytania: zawsze pracujemy z głównym zapytaniem za każdym razem.

Pierwsza pętla: weryfikacja artykułów

W pliku „category.php” znajdź początek pętli:

podczas gdy (have_posts ()): the_post ();

Powyżej tego wiersza zdefiniuj nową zmienną o nazwie $ count:

$ count = 0;

Następnie wewnątrz tej pętli dodaj ten kod:

// sprawdź, czy są jakieś posty z tagiem »

$ tag = 'treść';

if (has_tag ($ tag)) {

 $ count + = 1;

}

Ten kod sprawdza, czy wiadomości mają etykietę „zawartość”, a następnie dodaje 1 do licznika, jeśli tak.

Wnętrze pętli będzie podobne do tego:

// Sprawdź posty w pierwszej pętli.

$ count = 0;

podczas gdy (have_posts ()): the_post ();

 

// sprawdź, czy są jakieś posty z tagiem »

$ tag = 'treść';

if (has_tag ($ tag)) {

 $ count + = 1;

}

 

endwhile;

Druga pętla: przywróć artykuły z tagiem

Następnym krokiem jest zapętlenie, aby wyświetlić artykuły z tym tagiem, tylko jeśli takie istnieją.

Na przykład, jeśli wartość $ count jest większa niż 0.

Odkryj też Jak dostosować panel WordPress dla klienta

Dodaj ten warunek do pętli:

if ($ count> 0) {

 

 rewind_posts ();

 

 Echo ' Posty oznaczone tagiem „. tag $. ' ';

 

 

 podczas gdy (have_posts ()): the_post ();

 

 if (has_tag ($ tag)) { 

 get_template_part ('zawiera / pętla', 'kategoria'); 

 }

 

 // Zakończ pętlę.

 endwhile;

 

}

Ten kod sprawdza, czy wartość $ count jest większa od zera, a jeśli tak, przewija elementy i ponownie uruchamia pętlę. Dla każdego elementu sprawdza, czy jest właścicielem naszej etykiety, a jeśli tak, wywołuje część właśnie utworzonego szablonu.

Trzecia pętla: zobacz resztę artykułów

Wynik będzie ostatnią pętlą dla pozostałych artykułów. Jeśli w tej kategorii nie ma artykułu z tagiem „content”, zostaną wyświetlone wszystkie artykuły z tej kategorii.

Dowiedz się również Jak utworzyć blog dla wielu autorów i umożliwić czytelnikom publikowanie artykułów na swoim blogu

W drugiej pętli dodaj to:

rewind_posts ();

 

 

// Druga pętla - posty bez tagu „content”

podczas gdy (have_posts ()): the_post ();

 

 if (! has_tag ($ tag)) { 

 get_template_part ('zawiera / pętla', 'kategoria'); 

 }

 

// Zakończ pętlę.

koniec; ?>

Ten ostatni kod przewija artykuły, a następnie ponownie wykonuje pętlę. Tym razem sprawdza, czy artykuł nie ma tagu „content”, a następnie wyświetla treść w części „template-part”.

Sugerujemy również, abyś odkrył Jak dodać opcję drukowania artykułów do WordPressa

Możesz teraz przetestować stronę artykułów na swoim blogu. Pamiętaj, że możesz zmienić filtry. W tym samouczku wykorzystaliśmy „treść” jako filtr etykiet, ale możesz użyć jednego z nich.

Odkryj także niektóre wtyczki premium WordPress  

Możesz użyć innych WordPress wtyczki aby nadać nowoczesny wygląd i zoptymalizować obsługę Twojego bloga lub strony internetowej.

Oferujemy tutaj kilka premium wtyczek WordPress, które pomogą Ci to zrobić.

1. Social Wall Addon dla UserPro

UserPro może być o wiele bardziej zabawne dzięki ścianie społecznościowej. To właśnie przynosi rozszerzenie Social Wall. Dzięki wtyczce Social Wall możesz utworzyć ścianę na swojej stronie i zapewnić swoim członkom odświeżający sposób interakcji ze społecznością.

Le WordPress Plugin Social Wall pozwala Twoim użytkownikom na: dzielenie się wiadomościami, dzielenie się obrazami, komentowanie postów innych osób, użytkownicy mogą polubić lub nie lubić wiadomości, mogą wybrać wyświetlanie ściany tylko dla zalogowanych użytkowników lub dla wszystkich użytkowników, administratorzy mogą usuwać posty lub komentarze użytkowników itp.

Pobierz | Demo | hosting

2. Flipkart Affiliate Plus

Flipkart Affiliate Plus to WordPress Plugin moduł, który łączy Twoją witrynę WordPress z API Affiliate Flipkart. 

Ce WordPress Plugin Dzięki niemu importowanie danych produktów z Flipkart i aktualizacja ich bezpośrednio na Twojej stronie internetowej jest bardzo prosta. Flipkart Affiliate Plus to pierwsza wtyczka WordPress do oficjalnego API Flipkart. Korzystając z niego, nie będziesz musiał korzystać z API strony trzeciej. Dzięki temu możesz w pełni korzystać ze swojej pracy.

Pobierz | Demo | hosting

3. Działający Google Analytics dla WooCommerce

Actionable Google Analytics to wtyczka WordPress, która umożliwia korzystanie z niektórych najlepszych funkcji Universal Analytics, w tym: Ulepszonego e-commerce i śledzenia identyfikatora użytkownika. Ponadto ta wtyczka obsługuje anonimizację adresów IP, zwroty produktów, grupowanie treści, śledzenie formularzy itp.

Korzystanie z tej wtyczki WordPress pozwoli Ci zaoszczędzić czas na integracji złożonego kodu Google Analytics, dzięki czemu możesz skoncentrować się na zarządzaniu danymi.

Jego główne cechy to: szybka i łatwa instalacja, dostęp do 9 rozbudowanych raportów e-Commerce, możliwość zbadania, jak różne urządzenia są używane przez tego samego użytkownika i jak dokonywane są zakupy, możliwość analizy, które produkty są najczęściej refundowane, wreszcie podjęcie działań naprawczych i nie tylko.

Pobierz | Demo | hosting

Inne zalecane zasoby

Zachęcamy również do zapoznania się z poniższymi zasobami, aby przejść dalej w zakresie kontroli nad witryną i blogiem.

 

 

Wnioski

Tutaj! To wszystko w tym dość technicznym samouczku. Mam nadzieję, że wyjaśniliśmy, jak prawidłowo używać WP_Query na WordPress. nie krępuj się podziel się wskazówką ze znajomymi w sieciach społecznościowych.

Będziesz jednak mógł również skonsultować się z nami Zasoby, jeśli potrzebujesz więcej elementów do realizacji projektów tworzenia stron internetowych, zapoznaj się z naszym przewodnikiem na stronie Tworzenie bloga WordPress.

Ale tymczasem opowiedz nam o swoim commentaires i sugestie w dedykowanej sekcji.

...