(“/ node / add”)에서 컨텐츠 유형 재정렬


12

node / add에 표시된 컨텐츠 유형을 재정렬하는 방법이 있습니까?

답변:


18

예! "탐색"메뉴 (/ admin / structure / menu / manage / navigation)를 편집하고 "컨텐츠 추가"아래의 메뉴 항목을 다시 정렬하십시오. 이제 / node / add로 이동하면 "Navigation"메뉴에서 설정 한 순서대로 나타납니다. 아래 스크린 샷 예 / node / add에서 기본 페이지로 표시되고 기사가 나타납니다.

여기에 이미지 설명을 입력하십시오


오 내가 어떻게 그리워 할 수있어? 바보 같은 느낌 ...
whitefleaCH

어떻게하지, 며칠 전에 다른 질문에 답이었다 난 당신이 할 수있는 실현하는 유일한 이유는 ... 당신은 내가 :) 몰랐다 한 것이 지난 주에 요청했다
Chaulky

여기에 보완적인 질문이 있습니다. 컨텐츠 추가 메뉴는 Nav 메뉴에서 재정렬되지만 최상위 관리 메뉴에서는 순서가 여전히 알파벳순입니다. 관리 메뉴에서 컨텐츠 추가 항목을 재정렬하는 요령이 있습니까? 감사합니다.
Toki

2

알파벳 순서가 페이지 콜백 함수에 하드 코딩되어 있기 때문에 사용자 정의 모듈에 의존해야합니다 node_overview_types()(실제로 _node_types_build()해당 함수에서 호출됩니다).

정렬하려는 것을 알지 못하면 완전한 대답을하기가 매우 어렵지만 골격 코드를 넣을 것입니다.

function MYMODULE_menu_alter(&$items) {
  // Override the default page callback for the content types page
  $items['admin/structure/types']['page callback'] = 'MYMODULE_node_admin_overview';
}

function MYMODULE_node_admin_overview() {
  // Get the normal page build
  $default_build = node_overview_types();

  // Extract the table rows from the build
  $table_rows = $default_build['#rows'];

  // Perform an operation on these rows to re-order them for your needs
  _some_call_by_reference_sort_function($table_rows);

  // Assign the newly ordered rows back to the page build
  $default_build['#rows'] = $table_rows;

  return $default_build;
}

콜백 함수를 메인 모듈 파일에 유지하십시오. 그렇지 않으면 file결코 재미없는 원래 메뉴 항목 의 키를 재정의해야 합니다.

UI를 통해 순서를 변경하려면 자체 관리 페이지를 구현해야합니다.


고마워 Clive. 방금 다른 방법이 있다고 생각했습니다.
fndtn357
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.