it-swarm-ko.tech

hook_menu () 항목 제목을 페이지 제목과 다르게 만들 수 있습니까?

Hook_menu () 메뉴를 만들고 있습니다.

이것에 대한 배열을 만들 때 제목을 지정하면 제목이 지정되어 호출 한 페이지로 전달되어 페이지 제목이됩니다. 메뉴 항목의 표시 이름이기도합니다.

$items['somewhere/something'] = array(
 'title' => 'Something',
 'description' => 'something else',
);

"Something"이라는 메뉴 링크가 생성되며 페이지 제목이 동일합니다. 메뉴 항목의 이름을 한 가지로 만들 수 있지만 페이지의 다른 제목을 전달하는 방법이 있습니까?

실제 drupal_set_title() 함수에서 hook_page()을 사용할 수 있다는 것을 알고 있지만이 경우에 데이터베이스 풀을 추가로 수행해야하며 오히려 그렇지 않습니다. 그.

6
oranges13

hook_menu () 로 할 수있는 방법이 없습니다.

가장 간단한 방법은 drupal_set_title () 을 사용하여 제안한 것이며 가장 효율적인 방법은 위의 dobeerman 제안한 것입니다 :-사용 phptemplate_preprocess_page () 그에 따라 $ vars를 변경하십시오.

솔직히, 언급 한 (확인되지 ​​않은) 추가 db 호출이 있더라도 drupal_set_title ()을 사용합니다. 이것은 작은 최적화이며 성능이 중요한 경우 일부 캐싱 메커니즘 (Varnish, Boost 등)이 있어야 하며이 추가 호출은 차이가 없습니다!

5
Alex Weber

페이지에 다른 제목 (<title> 태그에 사용 된 제목)을 설정하려면 두 가지 가능성이 있습니다.

  • 모듈에서 MODULE_preprocess_page()을 구현하고이를 사용하여 $variables['head_title'] 값을 변경하십시오. template_preprocess_page () 에 대한 설명서 페이지는 $variables 배열에서 사용할 수있는 값을보고합니다.
  • 페이지의 제목 세트를 변경할 수있는 Page Title 모듈을 설치하십시오. PHP 스 니펫을 실행하여 페이지 제목을 설정하고 tokens 를 사용할 수도 있습니다.

drupal_set_title () 을 사용하면 제목 표시 줄에 표시되는 페이지 제목이나 제목 만 설정하지는 않습니다. 설명서에보고 된대로 둘 다 설정했습니다.

페이지 및 제목 표시 줄에 표시 할 현재 페이지의 제목을 설정하십시오.

매개 변수

$ title
페이지 제목에 할당 할 선택적 문자열 값. 또는 NULL (기본값)로 설정하면 현재 제목이 변경되지 않습니다.

반환 값

현재 페이지의 업데이트 된 제목입니다.

1
kiamlaluno