Susun Ulang Jenis Konten dalam ("/ simpul / tambahkan")

12

Apakah ada cara untuk menyusun ulang jenis konten yang ditampilkan pada node / add?

whitefleaCH
sumber

Jawaban:

18

Ya! Cukup edit menu "Navigasi" Anda (di / admin / struktur / menu / kelola / navigasi) dan susun ulang entri menu di bawah "Tambahkan konten". Sekarang ketika Anda pergi ke / node / add mereka akan muncul dalam urutan apa pun yang Anda atur di menu "Navigasi" Anda. Contoh tangkapan layar di bawah ini. Pada / node / add mereka akan muncul sebagai Halaman Dasar, lalu Artikel.

masukkan deskripsi gambar di sini

Chaulky
sumber
oh sayang bagaimana aku bisa melewatkan itu. Merasa bodoh ...
whitefleaCH
jangan, satu-satunya alasan saya menyadari Anda bisa melakukan itu adalah dengan menjawab pertanyaan yang berbeda beberapa hari yang lalu ... seandainya Anda menanyakan hal ini minggu lalu saya tidak tahu :)
Chaulky
Hanya pertanyaan pelengkap di sini: menu Tambahkan konten disusun ulang dengan baik di menu Nav tetapi di menu Admin atas, urutannya masih berdasarkan abjad. Adakah tip untuk menyusun ulang entri Tambahkan konten di menu admin? Terima kasih.
Toki
2

Anda harus menggunakan modul khusus untuk ini karena urutan alfabet sulit dikodekan ke fungsi panggilan balik halaman node_overview_types()(sebenarnya dibangun di _node_types_build()mana dipanggil dari fungsi itu).

Tanpa tahu apa yang ingin Anda urutkan, cukup sulit untuk memberikan jawaban lengkap tapi saya akan memasukkan kode kerangka:

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;
}

Pastikan Anda menyimpan fungsi panggilan balik dalam file modul utama jika tidak Anda harus mengacaukannya dengan mengganti filekunci untuk item menu asli yang tidak pernah menyenangkan.

Anda harus mengimplementasikan halaman administrasi Anda sendiri jika Anda ingin dapat mengubah pemesanan melalui UI.

Clive
sumber
Clive terima kasih. Saya hanya berpikir mungkin ada cara yang berbeda.
fndtn357