Opracowując WebCake oraz to jak będzie wyglądać architektura danych postanowiłem, że nie chcę na stronie głównej, aby wyświetlały się wpisy z niektórych kategorii (np. TIPS). Nie chcąc obciążać WordPressa nowymi wtyczkami zdecydowałem się na ręczną modyfikacje kodu. Konieczne zmiany okazały się prostsze niż się spodziewałem. Aby osiągnąć wspomniany efekt, należy posłużyć się funkcją query_posts () która standardowo jest zdefiniowana w podstawowej wersji WordPressa. Daje ona bardzo dużą kontrolę administratorowi. Korzystanie z niej jest banalnie proste.
[adsenseyu1]
Jak korzystać z funkcji query_posts () ?
- Przejdź do katalogu swojego thema w wp-content
- Odszukaj pliku index.php a następnie odtwórz go do edycji za pomocą programu np. NotePad++
- Odszukaj w pliku poniższy blok. Bardzo często wspomniany fragment kodu znajduje się na początku pliku.
if ( have_posts() ) : while ( have_posts() ) : the_post(); ... // funkcje szablonu endwhile; ... // funkcje szablonu else: ... // funkcje szablonu endif;
- Umieć funkcję query_posts () tuż przed instrukcją if. To jakie argumenty będzie przyjmować funkcje będzie determinowało jakie kategorie będą wyświetlać się na stronie głównej Twojego bloga.
Jeśli chcesz aby na głównej wyświetlały się wpisy z kategorii o ID = 3 oraz ID=4 należy:
query_posts(array( 'cat' => '3,4', 'paged' => get_query_var('paged')));
Jeśli chcesz pominąć tylko kilka kategorii, nie musisz określać wszystkich które mają być uwzględnione na stronie głównej. Możesz się posłużyć wykluczeniami.
Jeśli chcesz aby na głównej nie wyświetlały się wpisy z kategorii o ID = 5 należy:
query_posts(array( 'cat' => -5, 'paged' => get_query_var('paged')));
Jak widzisz konieczne jest posługiwanie się ID konkretnych kategorii. To jakie ID ma dana kategoria możesz dowiedzieć się poprzez wejście do Panelu Administracyjnego WP oraz wybranie opcji: Wpisy -> Kategorie. Zostanie wyświetlona lista kategorii.
[adsenseyu4]
Wybierz tą która Cie interesuje a następnie kliknij edycja: w adresie URL znajdziesz fragment: tag_ID=5 – co oznacza, że edytujesz kategorię o ID=5
Więcej o funkcji query_posts() – znajdziesz w Tutaj
d
Bardzo przydatne info 😉