web-gelistirme-sc.com

Ön sayfadaki ana içerik bloğunu kaldırma

Drupal 7) ve yeniyim ve ön sayfanın varsayılan main content block Değerini Views'dan oluşturulan eşdeğer bir blokla değiştirmeyi arıyorum (bunu yaparken blok üzerinde daha fazla kontrol kazanıyorum) .

Views'da yeni ön sayfa bloğunu başarıyla oluşturdum ve içerik bölümüne ekledim, ancak şimdi ana sayfa hem orijinal hem de yeni görünümler bloğunu gösteriyor.

main content block 'U <front>' Da görüntülenmeyecek şekilde yapılandırarak kaldırmaya çalışmak işe yaramıyor ve şimdilik bulduğum tek geçici çözüm aşağıdaki CSS:

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

Daha az hack benzeri bir çözümü tercih ederim. Herkes önerebilir mi?

16
irishbuzz

Üzgünüm, ama bunu yapmanın yolu değil.

Views'da bir blok görüntü oluşturmak yerine bir sayfa görüntüsü oluşturun. Görünümler sayfanız için, örneğin "ana sayfa" için bir yol seçin ve görünümü kaydedin. Sonra/admin/config/system/site-information adresine gidersiniz ve 'Varsayılan ön sayfa' (muhtemelen "düğüm" yazıyor) değerini görünümünüz için seçtiğiniz yola ("ev") değiştirirsiniz.

Bu yaklaşımı izlediğinizde, ön sayfanızdaki ana içerik be görünüm olacaktır.

24
marcvangend

Her şeyden önce varsayılan ev içeriğini kaldırmanız gerekir, bunu yapmanın yolu:

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

Ana sayfa varsayılan içeriğini kaldırın

Sonra istediğiniz blok görünümünü oluşturun .. sonra bloklara gidin .. bu blok görünümünü "içerik" bölgesinde göster .. ve bu içeriği "sadece sonraki sayfalarla" sınırla ve <front>

Bu kadar


2
Tareq Assaf

Ortak bir yaklaşım olmasa da, bir görünümü ön sayfaya ana içerik bloğu olarak gömebilirsiniz. Views, her iki şekilde de göz kırpma yapma esnekliğine sahiptir. Aynı sonucu elde etmek için çalışıyoruz ya da ... sadece önbelleği temizlemek zorunda blok kaldırma adımını yanlış yapılandırdığınız şüpheli.

Kabul edilen cevapta adil olmak gerekirse, bu yaklaşım bunu yapmanın olağan yoludur. Sonuç aynıdır.

0
stefgosselin