내 게시물 아카이브 페이지의 루프 외부에서 get_the_id ()는 최상위 게시물의 ID를 반환합니다
1 대답
- 투표
알았습니다.is_home ()
을 사용하여 게시물 아카이브 페이지인지 감지합니다.나는 항상 그 기능이 홈페이지인지를 결정하는 것이라고 생각했기 때문에 일종의 반 직관적입니다.
Figured it out. use is_home()
to detect if its the posts archive page. kind of counter-intuitive because i always thought that function was to determine if it's the homepage, found out there's a is_front_page()
for that.
내 글 보관함 페이지의 ID를 얻으려고합니다. 관리자를 통해 게시물 페이지로 설정되어 이미 기본 쿼리가 있습니다. 내가 사용하는 템플릿은
index.php
이고page-blog.php
를 사용해 시도했지만 해당 페이지를 게시물 아카이브로 설정했기 때문에index.php
대신 (이것에 의해 버려졌습니다).echo get_the_id()
는 페이지 ID 대신 내 최상위 블로그 게시물 (이 경우 고정)의 ID를 반환합니다. 나는 루프 밖에 있습니다.여기에 비슷한 질문이 있습니다. 게시물/블로그 페이지 ID 그러나 목표는 약간 다르며 해결책은 대신
get_option('page_for_posts')
를 사용하여 게시물 아카이브 ID를 얻는 것입니다. 게시물 아카이브 페이지에 있는지 감지하는 방법이 필요합니다.사용해 보았습니다 :
하지만 전역
$post
개체가 내 보관 페이지 대신 내 고정 게시물을 참조하는 것처럼 보이기 때문에 작동하지 않았습니다.내가 찾은 답변은 해결 방법 인 것 같지만
$post
실수라는 근본적인 문제를 해결하지 못합니다. 내가 놓친 것이 있거나 다른 방법으로해야하는 것이 있습니까? 내 홈페이지가 아니려면 게시물 아카이브 페이지가 명시 적으로 필요합니다.