2011-09-17 5 views
0

나는 시차 피처와 html5로 WordPress 테마를 만들고 있는데, 집에는 모든 메인 페이지와 두 가지 다른 종류의 탐색이 있습니다.시차 WordPress의 테마. 어떻게하면 동적으로 페이지 ID에 자신의 하위 메뉴를 표시 할 수 있습니까?

메인 페이지는 상위 페이지의 탐색입니다. 그래서 About, Projects and Contact가 있습니다.

그러나이 페이지에는 각각 하위 페이지가 있습니다. 정보 페이지에는 하위 하나의 하위 항목이 있지만 기본 메뉴에서 액세스 할 수 없으므로 하위 페이지가있는 각 페이지에는 두 번째 유형의 메뉴가 있습니다. 또한

프로젝트는, 다른 페이지가 "프로젝트는"(주), "디자인"(아이), 컨설팅 (아이) 등

은 페이지의 오른쪽에 배치됩니다 두 번째 메뉴는 반올림으로 버튼은 부모 "약"과 자식 "약 2"를 나열합니다.

나는 이미들을 나열하고, 링크 (시차 행동)

그러나, 나는 하드 코드를 부모 페이지가 길에 스크롤로 동작하도록하는 방법을 알아 냈어. 내가 원하는 것은 dinamically 페이지 ID를 하드 코드되지 않도록 얻을 수있는 방법을 찾는 것입니다,하지만 테마는 단 하나의 페이지 사이트로 작동하므로 문제가 발생합니다.

여기 코드가 있습니다. 코드가 주 페이지와 아이 페이지를 나열하는 각 현재 페이지의 ID를 식별 할 수 있도록 방법을 찾을 수 있도록 도와 줄 수 있습니까?

본인도 알다시피 $parent = 13;은 하드 코드되며, ID도 하드 코드 된 $pages = get_pages('hierarchical=0&include=13') ;을 포함합니다. 그래서 모든 페이지가 똑같이 나타납니다. 나는 각각의 하드 코딩에 대해 is_page를 사용하여 조건부를 만들 수 있다는 것을 알고 있지만 생각을 동적으로 만드는 것입니다.

도움이 될 것입니다.

<?php 

$parent = 13; 
$args= array(
    'parent' => $parent, 
    'hierarchical' => 0 
); 

      $pages = get_pages('hierarchical=0&include=13') ; 

      foreach ($pages as $page) { 
       $new_title = str_replace(" ", "", strtolower($page->post_name));  
       echo '<li><a href="#' . $new_title . '" title="' . $page->post_title . '">' . $page->post_title . '</a></li>'; 
      } 

    $child_page_pages = get_pages($args); 
    foreach ($child_page_pages as $page) { 

       $new_title = str_replace(" ", "", strtolower($page->post_name));  
       echo '<li><a href="#' . $new_title . '" title="' . $page->post_title . '">' . $page->post_title . '</a></li>'; 
      } 

?> 

답변

0

얻을하려면

감사합니다, 포스트 상위 페이지의 ID의 당신이 부모 ID를 반환해야 get_post_ancestors($post)를 사용할 수 있습니다.

$ReturnParents = get_post_ancestors($post->ID); 

시도 할 수있는 또 다른 방법은 글로벌 $post입니다.

+0

global $ post를 사용하면 모든 게시물이 "게시물 1이고 부모님이 0입니다."라고 표시되므로 시차 주제의 각 페이지에 게시물 번호 1이 표시됩니다. 페이지 ID는 # 1입니다. 내가 뭘 잘못하고있어? –

관련 문제