Czy istnieje sposób na zmianę kolejności typów treści wyświetlanych w węźle / dodawaniu?
Czy istnieje sposób na zmianę kolejności typów treści wyświetlanych w węźle / dodawaniu?
Odpowiedzi:
Tak! Po prostu edytuj menu „Nawigacja” (w / admin / structure / menu / manage / navigation) i zmień kolejność pozycji menu w „Dodaj zawartość”. Teraz, gdy przejdziesz do / node / add, pojawią się w kolejności ustawionej w menu „Nawigacja”. Przykładowy zrzut ekranu poniżej. W katalogu / node / add pojawią się jako strona podstawowa, a następnie artykuł.

W tym celu musiałbyś skorzystać z niestandardowego modułu, ponieważ porządek alfabetyczny jest na stałe zakodowany w funkcji wywołania zwrotnego strony node_overview_types()(w rzeczywistości jest zbudowany, w _node_types_build()którym wywoływana jest z tej funkcji).
Nie wiedząc, na co chcesz posortować, dość trudno jest udzielić pełnej odpowiedzi, ale wstawię szkielet:
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;
}
Pamiętaj, aby zachować funkcję oddzwaniania w głównym pliku modułu, w przeciwnym razie będziesz musiał zadzierać z nadpisaniem fileklucza do oryginalnej pozycji menu, co nigdy nie jest zabawne.
Będziesz musiał wdrożyć własną stronę administracyjną, jeśli chcesz mieć możliwość zmiany kolejności za pomocą interfejsu użytkownika.