Xuất cài đặt khối trong Tính năng (Drupal 7)


13

Tôi đang cố gắng tìm hiểu về việc tạo ra một quy trình làm việc hợp lý giữa một trang phát triển và một trang sản xuất và tôi đã quyết định sử dụng mô-đun Tính năng để giúp hoàn thành nhiệm vụ này.

Trên trang đầu của tôi, tôi có một vài khối hiển thị nội dung được thêm mới và được xếp hạng hàng đầu. Tôi đã sử dụng các tính năng để xuất các chế độ xem này nhưng dù sao tôi cũng không thấy bên trong mô-đun Tính năng để xuất các cài đặt khối của mình. Tôi đặt các dự án mới và các khối được xếp hạng cao nhất để hiển thị trong phần nội dung của trang. Tôi lọc nó để chỉ hiển thị trên trang đầu trong chế độ xem.

Làm cách nào để xuất các cài đặt khối này bên trong tính năng của tôi để tôi không cần phải cấu hình lại chúng trên mỗi trang web?

Câu trả lời:


13

Bạn có thể xuất nhiều hơn bằng tính năng cùng với Strongarmtính năng bổ sung .

Strongarm cung cấp cho các nhà xây dựng trang web một cách để ghi đè các giá trị biến mặc định mà lõi Drupal và các mô-đun đóng góp đi kèm. Nó không phải là một công cụ người dùng cuối, mà là một công cụ xây dựng trang web và nhà phát triển cung cấp API và giao diện người dùng hạn chế.

Tính năng hỗ trợ thêm : từ vựng; nodequeues (định nghĩa); cài đặt khối; khối tùy chỉnh (hộp).

Ngoài ra, Tích hợp tính năng UUID cung cấp cơ chế xuất nội dung (nút, phân loại, trường) vào mô-đun tính năng.


1
Tôi cũng sẽ khuyên bạn nên sử dụng drush và git để xử lý công việc.
Refineo

1
Tuyệt vời đó chính xác là những gì tôi cần. Tôi đã lên kế hoạch để git đi khi tôi tìm ra cách sử dụng các tính năng tốt hơn một chút.
Mike2012

Tuyệt diệu ! Là Mike, thật không thể tin được!
Jean-Rémy Revy

4

Bạn có thể sử dụng mô-đun Hộp theo Xuất khẩu các khối cho các tính năng .

Nếu bạn không muốn cài đặt các mô-đun bổ sung và bạn đang xử lý khối Lượt xem (nơi bạn chỉ cần cài đặt cấu hình khối), thì một tùy chọn khác là thực hiện điều này ở cấp mã với triển khai hook_update_N () trong mô-đun tùy chỉnh cài đặt tập tin. Xem ví dụ bên dưới.

/**
 * Configure block settings.
 */
function my_module_update_7101() {

  // Enable blocks
  db_update('block')
    ->fields(array(
      'status'     => 1,
      'region'     => 'content',
      'visibility' => 1,
      'pages'      => 'node/999',
      'title'      => 'My Block Title',
      'css'        => '',
      'js'         => '',
    ))
    ->condition('delta', 'BLOCK_ID')
    ->execute();
}

0

Một cách khác là sử dụng các bảng mini thay vì các khối tùy chỉnh như được đề xuất ở đây . Chúng hoạt động giống nhau và các bảng điều khiển dường như được hỗ trợ tốt hơn bởi các tính năng. Nếu bạn đã có kế hoạch sử dụng bảng điều khiển, điều này cũng tiết kiệm thêm một vài mô-đun.

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.