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


17

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 blockbằng 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 làm như vậy).

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.

Cố gắng loại bỏ main content blockbằ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 khắc phục 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?


Tôi có chính xác cùng một vấn đề.
JW.

Tôi không có đủ danh tiếng để trả lời câu hỏi này. Nhưng tôi muốn 2 'xem danh sách dưới dạng khối' và không có nội dung nào khác vì vậy đây là một giải pháp thay thế: drupal.org/node/2089911#comment-7868495 (sau đó hiển thị danh sách hoặc danh sách dưới dạng khối)
JW.

Câu trả lời:


24

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ờ) theo đườ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ẽ chế độ xem.


Ah tôi hiểu rồi. Tôi đã thử đề xuất của bạn, nó hoạt động hoàn hảo và có vẻ rất rõ ràng bây giờ. Cảm ơn marc.
irishbuzz

Bạn được chào đón, vui mừng tôi có thể giúp đỡ.
marcvangend

Cảm ơn, chắc chắn là giải pháp sạch nhất ở đây! Những người khác đang nói về việc mucking xung quanh trong mã lõi hoặc thiết lập các bảng định kiểu. Tôi biết phải có một cách dễ dàng hơn.
Organiccat

1
@MarioAwad về mặt kỹ thuật, vâng. Đó là cách cài đặt trang trước của Drupal hoạt động. Tuy nhiên, nếu tất cả các mô-đun xây dựng chính xác URL và liên kết với url()và các l()chức năng, Drupal sẽ chăm sóc nó và liên kết với www.example.com bất cứ khi nào www.example.com/path/to/view được cung cấp. Nếu bạn thích, mô-đun Chuyển hướng toàn cầu sẽ chuyển hướng đến trang đầu trong trường hợp ai đó rõ ràng sẽ yêu cầu đường dẫn đầy đủ.
marcvangend

1
@marcvangend cảm ơn bạn đã làm rõ thêm và con trỏ hướng tới Chuyển hướng toàn cầu để giải quyết vấn đề đường dẫn kép. Chúc mừng.
Mario Awad

2

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ó



0

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.


Tôi nghĩ đó là một lỗi trong Drupal vì tôi cũng đã thử 'bước loại bỏ khối' và đơn giản là nó không hoạt động.
JW.
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.