( 중재자 노트 : 원래 제목은 "내비게이션 구조에 자식이없는 wp_nav_menu 상위 클래스")
나는이 wp_nav_menu
거기에 세 페이지를했다 내 헤더. 해당 페이지 중 하나에있을 때 li
메뉴에 해당 페이지를 포함하는 클래스가 클래스를 가져옵니다 .current_page_item
. 이 세 페이지에는 템플릿이 있으며이 템플릿에는 특정 콘텐츠 유형의 모든 게시물을 가져 오는 사용자 지정 쿼리가 포함되어 있습니다. 실제로이 최상위 페이지 의 인식 된 "자식" 은 실제로 자식이 아니며 템플릿을 사용하여 해당 최상위 페이지와 연결 한 콘텐츠 유형일뿐입니다.
'current-ancestor'
사용자가 템플릿 파일의 사용자 정의 쿼리에서만 해당 페이지와 관련된 특정 게시물 유형의 단일 페이지를 다시 탐색 할 때 최상위 레벨 메뉴 항목을 클래스에 추가 하고 싶습니다 .
이해가 되시길 바랍니다-그렇지 않다면 내가 어디에서 졌는지 알려주세요! 도움을 주셔서 감사합니다.
-특정 사항을 위해 편집 : 예를 들어 템플릿을 사용하는 Workshops 라는 정적 페이지 가 있습니다. 그것의 슬러그는 워크샵 입니다. 템플리트에는 사용자 정의 get_posts 함수가 있으며 그 안에 루프가 있으며, 이는 workshops 라는 사용자 정의 컨텐츠 유형의 모든 게시물을 가져와 표시합니다 . 이 워크샵 제목 중 하나를 클릭하면 해당 내용의 전체 내용으로 이동합니다. 사용자 정의 포스트 유형의 영구 링크 구조는 워크샵 /로 설정 postname사용자가 볼 수 있듯이 이러한 컨텐츠는 실제로 워크숍 페이지의 하위 항목입니다. 실제로 컨텐츠는 모두 하나의 컨텐츠 유형이지만 페이지와 관련이 없습니다. '워크샵'유형의 컨텐츠를 탐색 할 때 '워크샵'메뉴 항목을 강조 표시하여 메뉴에서 효과적으로 닫아야하는 차이입니다.
다시 말하지만, 그것이 의미가 있기를 바랍니다. 나는 한 단락에서 20 번 이상 '워크샵'이라고 말했습니다.
/workshops/
와 사용자가 워크샵 페이지에있는 경우 (예 /workshops/example-workshop/
) 당신이 원하는 "워크샵" 메뉴 항목이 클래스 것으로 current_page_item
지정, 올바른은?