it-swarm-vi.com

Xóa khối nội dung chính trên frontpage

Tôi mới sử dụng Drupal 7 và tôi đang tìm cách thay thế mặc định của frontpage main content block với một khối tương đương được tạo từ Lượt xem (giành quyền kiểm soát nhiều hơn đối với khối khi thực hiện).

Tôi đã tạo thành công khối frontpage mới trong Lượt xem và thêm nó vào phần nội dung, tuy nhiên bây giờ trang chủ hiển thị cả khối lượt xem ban đầu và khối mới.

Đang cố gắng xóa main content block bằng cách định cấu hình để không hiển thị trên <front> không hoạt động và hiện tại cách giải quyết duy nhất tôi tìm thấy là CSS sau:

.front #block-system-main {
  display:none;
}

Tôi thích một giải pháp ít hack hơn. Bất cứ ai có thể đề nghị một?

16
irishbuzz

Xin lỗi, nhưng đó không phải là cách để làm điều đó.

Thay vì tạo màn hình khối trong Chế độ xem, hãy tạo màn hình trang. Chọn một đường dẫn cho trang xem của bạn, ví dụ "nhà" và lưu chế độ xem. Tiếp theo, bạn đi đến/admin/config/system/site-information và thay đổi giá trị cho 'Trang trước mặc định' (có thể nói "nút" ngay bây giờ) thành đường dẫn bạn đã chọn cho chế độ xem của mình ("nhà").

Khi bạn làm theo phương pháp này, nội dung chính trên trang trước của bạn sẽ be chế độ xem.

24
marcvangend

Trước hết bạn phải xóa nội dung nhà mặc định, đây là cách để làm điều đó:

<?php
function MYTHEME_OR_MODULE_preprocess_page(&$variables) {
  if ($variables['is_front']) {
    $variables['title'] = '';
    unset($variables['page']['content']['system_main']['default_message']);
  }
}

Xóa nội dung mặc định của trang chủ

Sau đó, tạo chế độ xem khối mà bạn muốn .. sau đó chuyển đến các khối .. hiển thị chế độ xem khối này trong khu vực "nội dung" .. và giới hạn nội dung này ở "chỉ các trang sau" và viết <front>

Đó là nó


2
Tareq Assaf

Mặc dù không phải là cách tiếp cận phổ biến, bạn có thể nhúng chế độ xem dưới dạng khối nội dung chính trên frontpage. Lượt xem có tính linh hoạt để thực hiện một trong hai cách trong nháy mắt. Tôi nghi ngờ bạn đã định cấu hình sai bước loại bỏ khối mà bạn đang cố gắng hoặc ... chỉ phải xóa bộ đệm để có được kết quả tương tự.

Để công bằng cho câu trả lời được chấp nhận, cách tiếp cận đó là cách làm thông thường. Kết quả cuối cùng là giống hệt nhau.

0
stefgosselin