나는 웹을 순회했으며 사용자 정의 메뉴를 테마로하는 방법은 전혀 분명하지 않습니다. 몇 시간 동안 살펴본 결과 메뉴를 만들고 출력을 사용자 지정하는 과정을 처음부터 끝까지 보여주는 단일 게시물을 찾지 못했습니다. 이것이 다단계 프로세스 인 것 같습니다.
- Drupal 인터페이스를 통해 메뉴를 만듭니다.
template.php
파일에 테마 기능을 작성 하여 출력을 테마하십시오.- 이 메뉴를 템플릿 파일에 변수로 추가하여 노출시킵니다 (어떻게 든).
theme
템플릿 파일의 메뉴에서 함수를 호출 하십시오.
1은 수행하기 쉽고, 내가 겪는 문제는 2, 3 및 4에 있습니다. 기본 페이지 템플릿을 보면 기본 메뉴가 변수에 노출되어 있음을 알 수 $main_menu
있습니다. 페이지 아래에서 함수를 볼 수 있습니다. 즉 theme('links__system_main_menu', array('links' => $main_menu...
, 어딘가에 적절하게 명명 된 테마 함수를 찾고이를 사용하여 출력을 생성 함을 의미합니다.
내가 function theme_links__system_main_menu(&$variables) {...}
template.php 파일에 넣으면 Drupal은 그 기능을 반대로 사용할 것입니다 function theme_menu_links(&$variables) {...}
.
내가 모르는 것은 Drupal이 내가 만든 사용자 정의 메뉴를 해당 기능과 어떻게 연결하는지입니다. 예를 들어이라는 메뉴를 만들었다 고 가정 해 봅시다 My Menu
. template.php
파일에 다음 기능을 만들고 해당 메뉴의 출력을 테마로 지정할 수 있습니까?function theme_links__system_my_menu(&$variables) {...}
또한 템플릿 파일에 해당 사용자 정의 메뉴를 제공하는 방법은 무엇입니까? Drupal은 어떻게 $main_menu
변수를 page.tpl.php에 노출 합니까?
내가 생각하는 내가 여기에 누락 키 템플릿 페이지에 내 사용자 지정 메뉴를 나타내는 변수를 포함하는 방법이다. 대부분의 경우 메뉴를 만든 후에해야 할 일이 완전히 없어졌습니다.
도와 주셔서 감사합니다.
편집 : 아마 내가하고있는 일을 게시해야합니다. 아래 BetaRide에 대한 의견 <li>
에 따라 메뉴 항목 의 요소에 사용자 정의 된 HTML을 주입해야 합니다. 특히 Twitter Bootstrap 아이콘을 추가하고 있습니다.