Làm cách nào để tìm danh sách 'đường dẫn' trên trang web của tôi?


8

Gần đây tôi đã trở thành quản trị viên của một trang web Drupal. Tôi đang cố gắng định cấu hình các khối khác nhau trên trang và cho đến nay chỉ thành công trong việc loại bỏ chúng hoàn toàn. Menu cấu hình yêu cầu tôi nhập 'đường dẫn' cho nơi tôi muốn khối xuất hiện. Làm cách nào để tìm danh sách tên đường dẫn có sẵn để nhập? Trang web có một blog, nhưng việc nhập "blog" hoặc thậm chí "blog / *" không làm cho khối xuất hiện trên khối.

Câu trả lời:


8

Để có được tất cả các đường dẫn bạn có thể sử dụng, bạn có thể sử dụng mã sau đây để nhận tất cả các đường dẫn được xác định từ các mô-đun:

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

Mã sẽ hiển thị đường dẫn khi bạn nhập trong cài đặt khối; điều này có nghĩa là nó sẽ thay đổi node/%nodetrong node/*node/%node/edittrong node/*/edit.

Về vấn đề cụ thể của bạn, khối không thể xuất hiện do khối chưa được gán cho bất kỳ phần chủ đề nào, chủ đề không xác định phần nơi khối sẽ xuất hiện hoặc khối trống. Trong hầu hết các trường hợp, các mô-đun không xuất ra các khối trống.


danh sách này sẽ tìm các đường dẫn được xác định bởi các mô-đun, trong đó /admin/config/search/pathsẽ chỉ hiển thị các bí danh nội dung.
rymo

Ví dụ get-paths.php, bạn có thể đặt mã ở trên một tệp, sau đó thực thi mã như sau:drush php-script get-paths.php
dashohoxha

Bao bọc printtrong if (!path_is_admin($path)) {nếu bạn không muốn đường dẫn quản trị viên.
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, điều này không thực sự hiển thị tất cả các bí danh đã đăng ký.
Elijah Lynn

4

Nếu bạn đã bật mô-đun Đường dẫn (lõi), sẽ có một trang liệt kê tất cả các bí danh URL trên trang web.

Nếu sử dụng Drupal 7: example.com/admin/config/search/path

Nếu sử dụng Drupal 6: example.com/admin/build/path


Mặc dù hữu ích, nhưng điều này là không đủ, có nhiều cách khác để đăng ký đường dẫn trong Drupal mà mô-đun Đường dẫn không hiển thị. drupal.stackexchange.com/a/14586/6602 có một giải pháp mạnh mẽ hơn.
Elijah Lynn
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.