it-swarm-id.com

Menghapus blok konten utama di halaman depan

Saya baru mengenal Drupal 7 dan saya ingin mengganti default halaman depan main content block dengan blok setara yang dihasilkan dari Views (mendapatkan kontrol lebih besar atas blok dalam melakukannya).

Saya telah berhasil membuat blok halaman depan baru di Views dan menambahkannya ke bagian konten namun sekarang beranda menampilkan blok tampilan asli dan baru.

Mencoba menghapus main content block dengan mengonfigurasinya agar tidak ditampilkan pada <front> tidak berfungsi dan untuk saat ini satu-satunya solusi yang saya temukan adalah CSS berikut:

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

Saya lebih suka solusi yang kurang seperti hack. Adakah yang bisa menyarankan satu?

16
irishbuzz

Maaf, tapi itu bukan cara untuk melakukannya.

Alih-alih membuat tampilan blok dalam Tampilan, buat tampilan halaman. Pilih jalur untuk halaman tampilan Anda, misalnya "rumah", dan simpan tampilan. Selanjutnya Anda pergi ke/admin/config/system/situs-informasi dan ubah nilai untuk 'Halaman depan default' (mungkin mengatakan "node" sekarang) ke jalur yang Anda pilih untuk tampilan Anda ("home").

Ketika Anda mengikuti pendekatan ini, konten utama di halaman depan Anda akan menjadi tampilan.

24
marcvangend

Pertama-tama Anda harus menghapus konten rumah default, di sini adalah cara untuk melakukannya:

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

Hapus konten default beranda

Kemudian buat tampilan blok yang Anda inginkan .. kemudian pergi ke blok .. tunjukkan tampilan blok ini di wilayah "konten" .. dan batasi konten ini untuk "hanya halaman berikut" dan tulis <front>

Itu dia


2
Tareq Assaf

Meskipun bukan pendekatan yang umum, Anda dapat menyematkan tampilan sebagai blok konten utama di halaman depan. Tampilan memiliki fleksibilitas untuk melakukannya dalam waktu singkat. Saya menduga Anda salah mengonfigurasi langkah penghapusan blok yang Anda coba atau ... hanya harus menghapus cache untuk mendapatkan hasil yang sama.

Agar adil pada jawaban yang diterima, pendekatan itu adalah cara yang biasa dilakukan. Hasil akhirnya identik.

0
stefgosselin