Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> wordpress - własny szablon - kategorie i podkategorie
klawisz123
post 30.12.2016, 13:07:52
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 24.05.2013

Ostrzeżenie: (0%)
-----


Witam,

tworze własny szablon na wp (oczywiście się ucze)

w panelu admina dodaje kategorie (np kat1 kat2 kat3) i podkategorie (czyli rodzic to kat1 i tworze podkategorie kat11, kat12, kat13 oczywiscie dla innych kat i podkat. tak samo)
Na stronie głównej mam wyświetlone wszystkie kategorie (wszystkie wpisy) dla zakładki (podstrony) kat1 wyświetla się menu z pod kategoriami a niżej wyświetlone są wszystkie wpisy z tej kategorii (kat1) następnie po wybraniu z menu np kat12 wyświetlają się wszystkie wpisy z podkategorii kat12 kategorii kat1.

Na chwile obecną z moich działań/wyszukiwań wyświetlanie wpisów dla kat1 odbywa się poprzez
  1. <?php $posts_query = new WP_Query('category_name=kat1&posts_per_page=4');
  2. while ($posts_query->have_posts()) : $posts_query->the_post();?>
gdzie ręcznie w podstronie kat1.php wpisuje nazwę utworzonej kategorii kat1 i to działa wyśetlaja mi się wszystkie wpisy z tej kategorii. Rozwiązanie jest takie żeby dla wpisu dodawać zawsze 2 kategorie czyli główną np kat1 oraz pod kategorie np kat12 (dla innego wpisu z kat1 będzie to podkategoria kat13) takie działanie pozwoli na wyświetlenie wszystkich pod kategorii dla np kat1.

Analogicznie mogę dla wszystkich podkategorii tworzyć plik np kat12.php w którym wpisze
  1. category_name=kat12
i to zadziała ale jak tych podkategorii będzie np 10 to tworzenie dziesięciu plików gdzie zmienia się tylko nazwa wydaje się mało rozważne.

CZY można powyższe działania zrobić efektywniej, lepiej? Nie znam sie, mozę w pliku category.php można to zrobić (tylko ważne ze w kat1 jest menu z podkategoriami)

strona jeszcze nie na wp istnieje pod nazwą www.blogjanoz.hol.es gdzie kategorie główne to kulinaria, turystyka, wiara.

Go to the top of the page
+Quote Post
Azzoris
post 3.01.2018, 16:33:24
Post #2





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 3.01.2018

Ostrzeżenie: (0%)
-----


Nie wiem czy dobrze zrozumiałem. Ale widzę to tak:

Wykorzystaj zmienną globalną $_GET
zrób odnośnik do podkategorii której posty chcesz wyświetlać

  1. <a href="http://blogjanoz.hol.es/turystyka/?podkategoria=miejska">Miejska</a>


Niżej

  1. if( isset($_GET['podkateogria']) ) {
  2. $podkategoria = $_GET['podkateogria'];
  3. $podkategoria = preg_replace('/[^a-zA-Z0-9]/', '', $podkategoria); // zmienna $_GET może zawierać tylko znaki alfanumeryczne - na wypadek gdyby ktoś chciał Ci wpuścić bombę.
  4. };
  5. $posts_query = new WP_Query('category_name=$podkategoria&posts_per_page=4');
  6. while ($posts_query->have_posts()) : $posts_query->the_post();


W odnośnikach do podkategori dodaj kolejno wartości zmiennej $_GET o takiej nazwie jaka widnieje w bazie wp.

Ten post edytował Azzoris 3.01.2018, 16:40:50
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 27.06.2019 - 04:12