WordPress: jak wylosować wpis?

Przepis na wylosowanie pojedynczego wpisu z naszego bloga. Jeżeli umiesz posługiwać się klawiszami Control, C oraz V, powinieneś sobie poradzić 😉

Jeden z Czytelników zadał niedawno pytanie: jak wylosować wpis na blogu WordPress?

Metod jest wiele, jedne lepsze, inne gorsze. Moja (od niedawna) ulubiona to własna funkcja przekierowująca na losowy wpis z adresu /random

Zaleta: proste (5 linii kodu PHP), szybkie rozwiązanie.

Wady:

  1. Trzeba edytować pliki aktualnego motywu blogu, a więc aktualizacja motywu „zniszczy” naszą modyfikację. Można to obejść tworząc motyw potomny, ale na to już jestem za cienki w uszach.
  2. Wymaga zewnętrznej wtyczki do przekierowania z /random na /?random=1 (aczkolwiek patrz komentarze na końcu wpisu)
  3. Nie działa (chyba) na blogach w domenie wordpress.com (innymi słowy wymaga własnej domeny / hostingu)

Szczegóły:

  1. Logujemy się do panelu administracyjnego naszego blogu
  2. Z menu po lewej wybieramy Wygląd => Edytor
  3. Na liście plików do edycji (po prawej stronie ekranu) klikamy: Funkcje motywu (functions.php)
  4. W edytorze pojawi się kod php z pliku functions.php. Przewijamy na sam koniec i dopisujemy następujący kod:
function losuj_wpis() {
       if (get_query_var('random') == 1) {
               wp_redirect(get_permalink(get_posts('post_type=post&orderby=rand&numberposts=1')[0]),307);
               exit();
       }
}
add_action('template_redirect','losuj_wpis');
  1. Zapisujemy zmiany.
  2. Instalujemy wtyczkę Przekierowanie (tu link do strony domowej wtyczki: !klik!)
  3. W opcjach wtyczki Przekierowanie definiujemy przekierowanie z /random na /?random=1

I to w zasadzie tyle. Przypuszczam, że punkty 6-7 dałoby się ominąć za pomocą odpowiedniego wpisu w .htaccess, ale ponieważ używałem wtyczki Przekierowanie już wcześniej, poszedłem na skróty. Jeżeli ktoś ma gotową, sprawdzoną recepturę, niech da znać…

Od tej pory możemy losować wpis na naszym blogu używając adresu https://adres-bloga/random

 

Piszę w dotnecie

już trzecie stulecie

Bo kto się w pehapie połapie?

Autor: xpil

Po czterdziestce. Żonaty. Dzieciaty. Komputerowiec. Krwiodawca. Emigrant. Rusofil. Lemofil. Sarkastyczny. Uparty. Mól książkowy. Ateista. Apolityczny. Nie oglądam TV. Uwielbiam matematykę. Walę prosto z mostu. Gram na paru instrumentach. Lubię planszówki. Słucham bluesa, poezji śpiewanej i kapel a’capella. || Kliknij tutaj po więcej szczegółów ||

Dodaj komentarz

4 komentarzy do "WordPress: jak wylosować wpis?"

Powiadom o
avatar
Sortuj wg:   najnowszy | najstarszy | oceniany
Fabian
Gość

Dziękuję za odpowiedź na temat losowania. Bardzo fajne i na pewno umieszczę to na swoim blogu

wpDiscuz