관용구를 확인하십시오 : Drupal에서 분류 학기 페이지를 맞춤화하십시오.
-
19-09-2019 - |
문제
Drupal 6 모듈이 특정 조건에서 분류법 용어 페이지가 표시되는 방식을 사용자 정의하려고 노력했습니다. 이것은 테마를 통해 쉽게 달성 할 수 있지만 모듈을 통해이를 수행하는 간단한 방법은없는 것 같습니다.
많은 시험, 오류 및 인터넷 검색 후에, 나는 이것을 달성하는 다음과 같은 방법을 생각해 냈습니다.
잘 작동하는 것 같습니다 느낌 내가 온라인에서 찾은 대체 솔루션보다 훨씬 덜 해킹됩니다. 그러나 나는 많은 Drupal 포럼 페이지의 어느 곳 에서나이 예를 보지 못했다는 사실에 대해 걱정하고 있습니다. 아직 보지 못한이 솔루션에 끔찍한 문제가있을 수 있다고 생각합니다.
이 솔루션에 문제가 발생할 수 있습니까? 아니면 (더 나은) Drupal의 기존 테마 후크를 기반으로하는 방법을 제안 할 수 있습니까?
function foo_menu() {
// other menu callbacks ...
$items['taxonomy/term/%'] = array(
'title' => 'Taxonomy term',
// override taxonomy_term_page
'page callback' => 'foo_term_page',
'page arguments' => array(2),
'access arguments' => array('access content'),
'type' => MENU_CALLBACK,
);
// other menu callbacks
}
function foo_term_page($str_tids = '', $depth = 0, $op = 'page') {
if ($my_conditions_are_true) {
// foo_theme_that_page is a copy-paste of taxonomy_term_page
// that includes the customizations I want
return foo_theme_that_page($str_tids,$depth,$op);
} else { //Conditions aren't met. Display term normally
module_load_include('inc', 'taxonomy', 'taxonomy.pages');
return taxonomy_term_page($str_tids,$depth,$op);
}
}
해결책
사용하는 것은 어떻습니까 hook_menu_alter()
대신에 hook_menu()
? 이렇게하면 모듈 가중치에 대해 걱정할 필요없이 분류가 생성하는 메뉴 항목을 명확하게 변경하거나 마지막으로 추가되는 항목을 변경할 수 있습니다.
그렇지 않으면 모듈 컨텍스트에서 그런 일을하는 방법입니다.
다른 팁
Content.Module 또는 View.Module을 살펴보고 설치 한 경우 구현 방법을 확인하십시오.
제휴하지 않습니다 StackOverflow