Drupal 5.x에서 애그리 게이터 카테고리를 테마하는 방법은 무엇입니까?
-
20-09-2019 - |
문제
예, 나는 아직도 Drupal에 있습니다. 재미있게 만들지 마십시오.
Aggregator 모듈로 카테고리를 만들었고 카테고리의 URL은 www.example.com/aggregator/categories/2
. 이것을 어떻게 테마합니까? 템플릿으로 테마 할 수있는 노드입니까, 아니면 다른 프로세스를 사용해야합니까?
편집 : 명확히하기 위해, 나는 개별 어 그리 게이터 항목을 테마뿐만 아니라 헤더 바로 아래에 텍스트를 추가하고 싶습니다. 죄송합니다. 처음에는 그만 두었습니다.
해결책
살펴보십시오 원천 (항상 도움이됩니다) :
- 보고 있습니다
hook_menu()
, Drupal의 "URL 라우터", 우리는보다 저것aggregator/categories/2
처리됩니다 aggregator_page_category()
. 이 기능은 일부 데이터를 가져온 다음 호출합니다_aggregator_page_list()
, 결국 전화aggregator_page_list()
. 이 기능은 모든 피드 품목을 통해 루프합니다 (while ($item = db_fetch_object($result))
) 선택된 범주에서- 테마 ~와 함께
theme('aggregator_page_item', $item)
*
Voila, 여기에 당신의 테마 포인트 (테마 오버라이드)가 있습니다. 템플릿 (또는 사용자 정의 테마 함수)으로 테마 할 수 있습니다.
편집 : 표준 Drupal 5에서는 헤더 테마 / 수정이 어려운 것 같습니다. 소스를 다시보십시오. _aggregator_page_list()
모든 (테마) 피드 아이템을 concats, <div id="aggregator">
, 호출기와 피드 아이콘을 추가합니다. 여기에 연결할 것이 없습니다. _aggregator_page_list()
선택적 세 번째 인수가 있습니다 $header
당신이 원하는 것을 정확하게 수행 할 것입니다 - 불행히도,이 주장은 사용되지 않습니다. aggregator/categories/2
. 헤더에 텍스트를 추가하려면 해킹해야합니다. aggregator.module
.
또는 Drupal 6으로 업그레이드하여 래퍼의 테마 재정의 추가를 추가했습니다.
foreach ($items as $item) {
$output .= theme('aggregator_item', $item);
}
$output = theme('aggregator_wrapper', $output);
끝을 편집하십시오
Drupal 5를 테마하는 방법은 참조하십시오 http://drupal.org/theme-guide/5 , template.php : 다른 테마 기능을 재정의합니다, 애그리 게이터 모듈의 적절한 테마, theme()
API DOC, 등 등
행운을 빕니다!
* 일부 카테고리 처리를 추가하고 모든 항목을 하나 또는 다른 컨테이너로 랩핑합니다.