Nie mogę tego rozgryźć. Wydaje się, że nie ma pola wyboru ani niczego podobnego w funkcji, aby dodać nowo utworzoną niestandardową stronę archiwum typu postu do menu.
Link musi być również aktywny, jeśli jesteś na stronie. Prawdopodobnie nie jest to możliwe, ale czy jest do tego jakiś plugin? Na miłość moją nie mogę tego znaleźć :(
W menu Nav znalazłem tylko tę wtyczkę o nazwie Archiwa niestandardowych typów postów , która tak naprawdę nic nie robi, ale dodaje niestandardowy link do menu ... z pełnym adresem URL witryny. Nie działa lub nie jest bardzo dynamiczny.
Pomyślałem, że prawdopodobnie najłatwiejszym sposobem byłoby zastąpienie wp_nav_menu()
i ręczne dodanie moich łączy, a następnie wykorzystanie $_GET
informacji do sterowania „aktualnie aktywnym łączem”.
źródło
Odpowiedzi:
To jedna metoda, która moim zdaniem powinna działać (choć nie została przetestowana).
Nie wydaje mi się to najczystszym rozwiązaniem, ale nie znam innego sposobu. Jeśli tak, chciałbym to zobaczyć!
Wreszcie adres URL linku, do którego prowadzą linki do niestandardowych elementów, nie jest „ładny” - ale możesz to zrobić, jeśli utworzysz nowy ślimak CPT (zakładając, że używane są niestandardowe łącza bezpośrednie…)
źródło
$url = site_url() . 'myposttype';
? I klasy nie są uwzględniane, w tym obecnie aktywna.$class = '';
. Nie mogę jednak dynamicznie uzyskać normalnych klas, a także jak sprawić, by aktualnie aktywny link działał?$wp_query->query_vars['post_type']=='myposttype'
. Działa w zasadzie. To z pewnością dobra podstawa do bardziej dynamicznego rozwiązania, dzięki!Począwszy od WordPress 4.4 (grudzień 2015 r.), Linki archiwalne niestandardowych typów postów są teraz oficjalnie obsługiwane w rdzeniu WordPress bez potrzeby korzystania z kodu zewnętrznego ani wtyczek.
Możesz przeczytać cały bilet na Trac # 16075 do pełnej dyskusji lub post Dodać do WordPress Core, aby uzyskać podsumowanie dodatkowych etykiet .
Aby włączyć nowy wbudowane wsparcie dla archiwum linki menu, niestandardowe typy pocztowe muszą zarejestrowana non-falsey (czyli wartości dla prawdziwych)
has_archive
,publicly_queryable
orazshow_in_nav_menus
:Dzięki tym dodatkom zobaczysz nowy metaboks na ekranie administracyjnym Wygląd> Menu .
Link do archiwum typu posta można znaleźć na karcie „Wyświetl wszystko” w metaboksie typu postu:
źródło