Więcej niż jedna strona z wpisami – WordPress

Załóżmy, że właśnie stworzyliśmy swoją wymarzoną stronę opartą o platformę WordPress i chcąc ją usprawnić marzy nam się aby nasz blog posiadał kilka podstron, na których wyświetlane będą posty, dokładnie tak jak wygląda to na głównej stronie. Przekopaliśmy już cały Internet i w dalszym ciągu nie wiemy jak to zrobić. Ten artykuł ma właśnie w tym pomóc. Omówię tutaj krok po kroku najprostszy sposób jak tego dokonać.

Krótki wstęp

W tej metodzie wybór postów wyświetlanych na danej stronie będzie odbywał się przy pomocy kategorii. Nasza podstrona wyświetlająca posty będzię po prostu stroną danej kategorii i wszystkie posty jakie będziemy chcieli na niej wyświetlić będziemy musieli przypisać do tej kategorii. Pobawimy się trochę w kodzie php. Wszystkie omawiane pliki znajdują się w głównym katalogu naszego aktualnego motywu.

Zaczynamy

Na samym początku w Panelu Administracyjnym WordPressa stwórzmy nową kategorię i nadajmy jej dowolną nazwę. W moim przypadku będzie to „Kategoria”. Teraz będziemy potrzebować plik o nazwie category.php jeśli nasz motyw takiego nie posiada stwórzmy go. Plik category.php odpowiada za wygląd stron kategorii. Następnie szukamy pliku o nazwie home.php, gdy takiego nie ma to index.php, który zawiera informacje o wyglądzie naszej strony głównej. Właśnie tego potrzebujemy żeby nasze posty wyświetlały się tak samo jak na stronie głównej, no to wklejmy jego całą zawartość do pliku category.php podmieniając jego starą zawartość. Tym sposobem strony wszystkich kategorii będą wyglądały tak samo jak strona główna. Co zrobić jeśli chcemy zmienić wygląd strony tylko jednej, danej kategorii? Musimy utworzy plik category-„kategoria”.php z którym postępujemy identycznie jak z plikiem category.php. W miejsce „kategoria” wpisujemy uproszczoną nazwę kategorii bądź jej ID. Plik category.php można dowolnie edytować według własnego uznania zmieniając wygląd strony tylko trzeba wiedzieć jak.
W zasadzie mamy już wszystko, teraz wystarczy w Panelu Administracyjnym do menu na blogu dodać odnośnik do kategorii. Szybko, sprawnie i prosto. W końcu możemy wyświetlać nasze posty na podstronie. Jak chcesz wiedzieć więcej przyda ci się WordPress Codex Category Templates

Chwila moment ale ja nie chce żeby posty z podstrony wyświetlały mi się także na stronie głównej! Co w tym wypadku zrobić?

Szukamy pliku functions.php i na samym dole dopisujemy:

 add_action('wp_head', 'iworks_only_one_category');
function iworks_only_one_category()
{
    if ( is_home() || is_front_page() ) {
        global $wp_query;
        $wp_query->query('cat=ID');
    }
} 

W miejsce ID wpisujemy ID kategorii której chcemy się pozbyć bądź wyświetlić na stronie głównej. Gdy poprzedzimy ID minusem „-„ dana kategoria zniknie nam ze strony głównej natomiast gdy wpiszemy ID beż minusa wyświetlać będzie się tylko ta i żadna inna kategoria. ID kategorii znajdziemy w adresie URL podczas jej edycji bądź można wykorzystać w tym celu jakąś wtyczkę.

I to tyle. Dziękuję za uwagę.

Więcej niż jedna strona z wpisami – WordPress
Ocena: 4 (6 głosów)

4 komentarze

  • michal
    10 września 2014 o 19:07

    Nie działa!!!!!!!!!!

    • 11 września 2014 o 11:00

      Dlaczego nie działa? Sprawdź dokładnie czy wszystko wykonałeś poprawnie. Przed chwilą jeszcze raz wykonałem krok po kroku tą metodę i u mnie działa bardzo dobrze. Możesz zobaczyć efekt do menu dodałem nowo utworzoną kategorię “Kategoria” z przykładowym wpisem 🙂

  • Pietriu
    10 marca 2017 o 22:13

    Hej, dłubię u siebie i dłubię i nie wiem, który to katalog?
    Mam plik category.php w miejscu wp-includes, ale nie ma tam index ani home,
    index jest w wp-context, ale prawie pusty, nie ma co kopiować…
    jakaś wskazówka pliz?

    • 11 marca 2017 o 00:08

      Posiadasz statyczna stronę główną czy z wpisami? Z jakiego motywu korzystasz? Jakie posiadasz pliki w katalogu wp-includes? Spróbuj poszukać pliku page.php.

Dodaj komentarz

*

*

Ile jest * Time limit is exhausted. Please reload CAPTCHA.

banner

Korzystając z tej strony wyrażasz zgodę na korzystanie z plików cookie. Zobacz szczegóły

Wykorzystujemy pliki cookie do spersonalizowania treści i reklam, aby oferować funkcje społecznościowe i analizować ruch w naszej witrynie. Informacje o tym, jak korzystasz z naszej witryny, udostępniamy partnerom społecznościowym, reklamowym i analitycznym. Więcej informacji znajdziesz na Jak Google wykorzystuje dane gromadzone podczas korzystania z witryn i aplikacji naszych partnerów.

Zamknij