Karol B.

Karol B. Ekspert ds. mediów
specjalistycznych

Temat: Wyświetlanie wpisów wg. tagów z innego rodzaju postu...

Potrzebuję pomocy. Chciałbym móc wyświetlić wybrane wpisy wg. zawartych w nich tagach.
O ile standardowe:
<?php the_tags(); ?>
działa bez zarzutu w standardowych wpisach, o tyle przy zastosowaniu Custom Post Type (inny rodzaj wpisu niż "post") - już nie.

Mam kilka rodzajów wpisów np. "wizytowka" z własną taksonomią: "branza" i "region".

Chciałbym wyświetlić:
1. Listę tagów z taksonomii "branza", do jakich dopisany jest wpis typu "wizytowka"
2. Stronę ze wszystkimi wpisami "wizytowka" z tagiem "mazowieckie" z taksonomii "region".

Czy możecie naprowadzić mnie na właściwy trop?

Temat: Wyświetlanie wpisów wg. tagów z innego rodzaju postu...

Na 1 zmień the_tags(); na
the_terms( $post->ID, 'branza', 'Branża: ', ', ', ' ' );
na 2, jeżeli masz plik archive.php to zapisz go jako archives-wizytowka.php, to będzie archiwum post type, single.php zapisz jako single-wizytowk.php. Teraz możesz formatować format postu "wizytówka", np tak jak w punkcie 1 dodać taksonomie. Pliki do taxonomi to taxonomy.php lub taxonomy-branza.php możesz je zrobić np z pliku tag.php albo archive.php
Jak coś nie wiesz to najlepiej szukać na
http://codex.wordpress.org/Main_Page
Karol B.

Karol B. Ekspert ds. mediów
specjalistycznych

Temat: Wyświetlanie wpisów wg. tagów z innego rodzaju postu...

Dziękuję. Pierwszy punkt - działa bez zarzutu. Niestety mam problem z drugim. O ile single-wizytowka.php działa, o tyle już archive-wizytowka.php nie.

Zastosowałem się oczywiście do Twoich uwag odnośnie pkt. 2, lecz Wordpress nadal korzysta zamiast z szablonu archive-wizytowki.php - z szablonu w pliku archive.php.

Temat: Wyświetlanie wpisów wg. tagów z innego rodzaju postu...

Sprawdź czy nie popełniłeś błędu w nazwie np wizytowka czy wizytowki, bo powinno działać, zerknij na ten plik to jest hierarchia plików szablonu wordpress

Obrazek
Karol B.

Karol B. Ekspert ds. mediów
specjalistycznych

Temat: Wyświetlanie wpisów wg. tagów z innego rodzaju postu...

Wydaje mi się, że wszystko zostało zrobione poprawnie:

Custom post type w pliku functions.php:


register_post_type('wizytowka', array( 'label' => 'Wizytówki','description' => 'Katalog firm','public' => true,'show_ui' => true,'show_in_menu' => true,'capability_type' => 'post','hierarchical' => true,'rewrite' => array('slug' => 'wizytowki'),'query_var' => true,'has_archive' => true,'exclude_from_search' => false,'supports' => array('title','editor','custom-fields','comments','revisions','thumbnail','page-attributes',),'taxonomies' => array('region','branza',),'labels' => array (
'name' => 'Wizytówki',
'singular_name' => 'Wizytówka',
'menu_name' => 'Wizytówki',
'add_new' => 'Dodaj wizytówkę',
'add_new_item' => 'Add New Wizytówka',
'edit' => 'Edytuj wizytówkę',
'edit_item' => 'Edit Wizytówka',
'new_item' => 'New Wizytówka',
'view' => 'View Wizytówka',
'view_item' => 'View Wizytówka',
'search_items' => 'Search Wizytówki',
'not_found' => 'No Wizytówki Found',
'not_found_in_trash' => 'No Wizytówki Found in Trash',
'parent' => 'Parent Wizytówka',
),) );


I plik z archiwum powinien nazywać się archive-wizytowka.php. Tak mam na serwerze, a mimo to korzysta mi z pliku archive.php.

Temat: Wyświetlanie wpisów wg. tagów z innego rodzaju postu...

Usuń tymczasowo plik archive i sprawdź czy działa.
Karol B.

Karol B. Ekspert ds. mediów
specjalistycznych

Temat: Wyświetlanie wpisów wg. tagów z innego rodzaju postu...

Niestety nie zadziałało... Wręcz pogorszyło, bo to, co dotychczas było wyświetlane przez plik archive.php nie zostało wyświetlone nawet w pliku index.php.



Wyślij zaproszenie do