Bagaimana cara menemukan daftar 'jalur' di situs saya?

8

Saya baru-baru ini menjadi administrator situs Drupal. Saya mencoba mengonfigurasi berbagai blok pada halaman, dan sejauh ini hanya berhasil menghapus semuanya. Menu konfigurasi memberitahu saya untuk memasukkan 'path' untuk tempat saya ingin blok muncul. Bagaimana cara menemukan daftar nama jalur yang tersedia untuk masuk? Situs ini memiliki blog, tetapi memasukkan "blog" atau bahkan "blog / *" tidak membuat blok muncul di blok.

Matius
sumber

Jawaban:

8

Untuk mendapatkan semua jalur yang bisa Anda gunakan, Anda bisa menggunakan kode berikut untuk mendapatkan semua jalur yang ditentukan dari modul:

$items = module_invoke_all('menu');
drupal_alter('menu', $items);
foreach ($items as $path => $info) {
  print preg_replace('/%([a-z0-9_]*)/i', '*', $path);
}

Kode akan menunjukkan jalur saat Anda memasukkan dalam pengaturan blok; cara ini akan berubah node/%nodedi node/*, dan node/%node/editdi node/*/edit.

Tentang masalah spesifik Anda, blok tidak dapat muncul karena blok belum ditetapkan ke bagian tema apa pun, tema tidak menentukan bagian di mana blok akan muncul, atau blok kosong. Dalam kebanyakan kasus, modul tidak menghasilkan blok kosong.

kiamlaluno
sumber
daftar ini akan menemukan jalur yang ditentukan oleh modul, di mana /admin/config/search/pathhanya akan menampilkan alias konten.
rymo
Anda dapat meletakkan kode di atas pada file, misalnya get-paths.php, dan kemudian jalankan seperti ini:drush php-script get-paths.php
dashohoxha
Bungkus printdalam if (!path_is_admin($path)) {jika Anda tidak ingin jalur admin.
Elijah Lynn
$items = module_invoke_all('menu'); drupal_alter('menu', $items); foreach ($items as $path => $info) { if (!path_is_admin($path)) { print preg_replace('/%([a-z0-9_]*)/i', '*', $path) . "\n"; } }
Elijah Lynn
Hrm, ini sebenarnya tidak menunjukkan semua alias yang terdaftar.
Elijah Lynn
4

Jika Anda mengaktifkan modul Path (inti), akan ada halaman yang mencantumkan semua alias URL di situs.

Jika menggunakan Drupal 7: example.com/admin/config/search/path

Jika menggunakan Drupal 6: example.com/admin/build/path

Laxman13
sumber
Meskipun membantu, ini tidak cukup, ada cara lain untuk mendaftarkan jalur di Drupal bahwa modul Path tidak ditampilkan. drupal.stackexchange.com/a/14586/6602 memiliki solusi yang lebih kuat.
Elijah Lynn