Thay đổi tiêu đề của các trang trong Drupal 7 bằng đường dẫn


8

Tôi cần thay đổi tiêu đề của các trang trong Drupal 7 theo đường dẫn. NOt cho tất cả các loại nội dung. Tôi cần thay đổi tiêu đề thành một trang cụ thể được tạo với lượt xem.

Ví dụ: tôi có một trang web http://www.mysite.com

<title>My favorite website </title>

Tôi cần các trang:

http://www.mysite.com/test

<title> My test today </title>

http://www.mysite.com/examples

<title> My examples for share </title>

Cảm ơn.


Tôi không chắc ý của bạn là gì khi "thay đổi tiêu đề thành một nút cụ thể." Bạn có thể làm rõ? Hai mô-đun phổ biến giúp ích trong lĩnh vực này là drupal.org/project/pathautodrupal.org/project/auto_nodetitle Bạn có thể kiểm tra chúng và nếu chúng không hoạt động, hãy giải thích trường hợp sử dụng của bạn khác với các mô-đun phổ biến này như thế nào xử lý.
Patrick Kenny

Tôi đề cập đến "tiêu đề" xuất hiện trong các thẻ meta. Tiêu đề được hiển thị trong các tab của trình duyệt. Cảm ơn.
Cabita

Câu trả lời:


11

Đây là cách tôi đã làm trong Drupal 7.

Trong template.php:

function YOUR_THEME_preprocess_page(&$vars){
  $path = $_GET['q'];

  if (strpos($path,'YOUR_PATH_STRING') !== false) {
    drupal_set_title('YOUR_TITLE');
  }
}

Ví dụ: nếu đường dẫn của bạn là yoursite.com/boogabooga, thì bạn sẽ đặt 'YOUR_PATH_STRING'thành 'boogabooga' và 'YOUR_TITLE'thành bất cứ điều gì bạn muốn tiêu đề trang.


điều này không hoạt động cho hook_pre process_user_profile
Francisco Corrales Morales

Điều gì có thể là chuỗi để viết để nhắm mục tiêu trang <front>?
Sao Hỏa

14

Có vẻ như tập hợp các trang giới hạn của bạn có thể triển khai THEME_preprocess_html()và kiểm tra đường dẫn url và ghi đè $vars['head_title']. Xem bài đăng trên blog này làm ví dụ: Cách đặt tiêu đề trang tùy chỉnh trong Drupal 7

Nếu bạn có một số mẫu cho tiêu đề đầu, hãy thử Tiêu đề trang


Tôi đã xem bài đăng và tôi có một câu hỏi, nếu tôi muốn gán "tiêu đề đầu" cho các đường dẫn cụ thể. Không phải tất cả các đường dẫn sẽ có cùng tiêu đề. Ví dụ: tôi cần mysite.com/test <title> là "Bài kiểm tra của tôi" và tôi có trang khác mysite.com/examples Tôi cần <title> "Ví dụ để chia sẻ". Mã này có hữu ích cho mục đích này không? Tôi đã cập nhật bài viết của mình.
Cabita

@cabita Bài viết của Tenken bao gồm trường hợp sử dụng của bạn. Bên cạnh những gì anh ấy đã đề cập, bạn cũng có thể sử dụng mô-đun thẻ Meta . Tất cả 3 tùy chọn cho phép bạn đặt tiêu đề đầu cho các trang nút cụ thể mà bạn muốn mà không cần chạm vào phần còn lại.
Madis

Tôi đã thử với các thẻ meta và cho phép thay đổi tiêu đề cho các trang cụ thể nhưng không cho các trang cụ thể được tạo bởi lượt xem. Tôi sẽ cập nhật câu hỏi của tôi một lần nữa. Tôi xin lỗi.
Cabita

@cabita Bạn cũng đã thử Tiêu đề trang ? Nó ít nhất tuyên bố có tích hợp quan điểm. Nếu điều này không thành công, bạn chỉ có thể tiếp tục và thực hiện mã đó (thật dễ dàng để hạn chế thay đổi đối với các trang cụ thể chỉ bằng cách sử dụng $ _GET ['q'] hoặc arg () để kiểm tra đường dẫn).
Madis

Tôi đã làm trong mã. Bạn đã đúng, thật dễ dàng để hạn chế các thay đổi đối với các trang cụ thể chỉ bằng cách sử dụng $ _GET ['q'] hoặc arg ().
Cabita
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.