Làm cách nào để tắt trường tiêu đề trong một loại nội dung?


7

Tôi đang sử dụng drupal 7
Làm cách nào để tắt trường tiêu đề trong một loại nội dung?

Câu trả lời:


12

Tôi nghĩ rằng mô-đun Nodetitle tự động là những gì bạn đang theo đuổi:

"auto_nodetitle" là một mô-đun nhỏ và hiệu quả cho phép ẩn trường tiêu đề nội dung trong biểu mẫu. Để ngăn các trường tiêu đề nội dung trống, người ta có thể định cấu hình nó để tạo tiêu đề theo một mẫu nhất định.


Trên thực tế mỗi nút phải có một tiêu đề. Nhưng bạn có thể ẩn nó khỏi tiêu đề tự động của người dùng và người dùng hoặc một số cách khác trong hook_node_pesave để đặt cho nó một tiêu đề.
BetaRide

Có cách nào để thay đổi loại trường tiêu đề (exp float) không?
abd

Tiêu đề là một thuộc tính của thực thể nút chứ không phải là một trường ... nó được mã hóa khá nhiều vào các triển khai móc thực thể nút. Bạn có thể ghi đè lên nó nhưng theo kinh nghiệm của tôi, việc thay đổi những phần đó của hệ thống có thể trở nên rất lộn xộn
Clive

1
Nếu bạn muốn làm điều đó, bạn có thể tạo trường float_title và sau đó sử dụng autonodetitle để lấy giá trị / mã thông báo của trường đó và sau đó điền vào tiêu đề thực với nó (tôi sẽ tưởng tượng bên trong điều này có nghĩa là bạn sẽ có một số float trong trường và phiên bản văn bản của nó trong tiêu đề) và sau đó ẩn nó khỏi người dùng để bạn không có màn hình trùng lặp, nhưng điều đó có vẻ khá xấu xí / quá mức khi đưa ra php không có lỗi (trừ khi bạn thực sự cần giá trị này trong chế độ xem hoặc một cái gì đó?)
Jimajamma

1
Ngoài ra nếu bạn muốn biến tiêu đề thành một trường, bạn có thể xem xét mô-đun Tiêu đề, được tạo để tạo tiêu đề cho các trường thông thường cho dự án Dịch thực thể. drupal.org/project/title
Patrick Kenny

1

Như Clive gợi ý, auto_nodetitle là một mô-đun tốt để xóa tiêu đề khỏi biểu mẫu. Nếu bạn muốn tuần tự hóa nối tiếp nội dung là một mô-đun đơn giản tốt sẽ thực hiện công việc mà jimajamma giải thích nhưng với một số sê-ri tự động. Cuối cùng, cách đơn giản nhất mà không có bất kỳ mã tùy chỉnh nào để ẩn trường tiêu đề khỏi hiển thị hoàn toàn (hoặc đặt bất kỳ trường nào bạn muốn) là bộ hiển thị .


0

Nếu bạn cần ẩn tiêu đề cho một thực thể, bạn có thể thử như sau. (Lưu ý, tôi không nghĩ rằng đây là phương pháp tốt nhất và tôi sẵn sàng nhận các đề xuất để làm cho phương pháp này tốt hơn). Đặt cái này trong template.php của chủ đề của bạn

function THEME_preprocess_page(&$vars, $hook) {

  if(isset($vars['page']['content']['system_main']['ENTITY_TYPE'])) {
   drupal_set_title('');
  }
}

Điều này thực hiện là nếu thực thể đang được hiển thị trong vùng ['nội dung'] của trang, theo cách tương tự như một nút sẽ được hiển thị trong vùng nội dung, sau đó thay đổi tiêu đề thành không có gì. Bạn cần thay THEME bằng tên chủ đề của bạn và ENTITY_TYPE bằng thực thể có tiêu đề bạn muốn loại bỏ. Nếu nó không hoạt động, hãy truy cập page.tpl.php và thêm <pre> <?php print_r($vars['page']) ?> </pre>, tải lại trang quan tâm và tìm đường xuống cây để tìm đường dẫn vào mảng xác định điều bạn muốn loại bỏ.


0

Một tùy chọn khác trong D7 và D8 (nơi nằm trong lõi) là mô-đun Tiêu đề cho phép bạn coi Tiêu đề như một trường, ví dụ: Đặt Tiêu đề thành ẩn trong ô Hiển thị loại nội dung, đặt nó hiển thị trong Khối với mô-đun Trường dưới dạng Khối để đưa nó vào một thanh bên, v.v.

Những người đóng góp mô-đun nói:

Khi làm việc trên hệ thống dịch nội dung mới cho Drupal 7, chúng tôi (nhóm i18n lõi Drupal) đã phải đối mặt với nhu cầu chuyển đổi tiêu đề nút thành API trường để làm cho các nút có thể dịch hoàn toàn. Chúng tôi không thể thực hiện điều này trong lõi 7 của Drupal, vì vậy chúng tôi đã quyết định tìm một giải pháp cho vấn đề này: ý tưởng là thay thế tiêu đề nút bằng các trường gọi là Tự động gật đầu.

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.