it-swarm.asia

إزالة كتلة المحتوى الرئيسية على الصفحة الأولى

أنا جديد على Drupal 7 وأتطلع إلى استبدال الصفحة الافتراضية الافتراضية main content block مع كتلة مكافئة تم إنشاؤها من طرق العرض (اكتساب المزيد من التحكم في الكتلة في القيام بذلك).

لقد نجحت في إنشاء كتلة الصفحة الأولى الجديدة في طرق العرض وإضافتها إلى قسم المحتوى ، لكن الصفحة الرئيسية تعرض الآن كتلة المشاهدات الأصلية والجديدة.

محاولة إزالة main content block بتكوينه بحيث لا يتم عرضه على <front> لا يعمل وفي الوقت الحالي الحل الوحيد الذي وجدته هو CSS التالي:

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

أفضل حل أقل تشبه الاختراق. يمكن لأي شخص أن يقترح واحدة؟

16
irishbuzz

آسف ، لكن هذه ليست الطريقة للقيام بذلك.

بدلاً من إنشاء عرض كتلة في طرق العرض ، قم بإنشاء عرض صفحة. اختر مسارًا لصفحة طرق العرض الخاصة بك ، على سبيل المثال "home" ، واحفظ العرض. بعد ذلك ، انتقل إلى/admin/config/system/site-information وقم بتغيير قيمة "الصفحة الأمامية الافتراضية" (ربما تقول "عقدة" الآن) إلى المسار الذي اخترته لطريقة العرض ("المنزل").

عندما تتبع هذا النهج ، فإن المحتوى الرئيسي على صفحتك الأمامية يكون العرض.

24
marcvangend

بادئ ذي بدء ، يجب عليك إزالة المحتوى المنزلي الافتراضي ، إليك طريقة القيام بذلك:

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

إزالة محتوى الصفحة الرئيسية الافتراضي

ثم قم بإنشاء عرض الكتل الذي تريده .. ثم انتقل إلى الكتل .. إظهار عرض الكتل هذا في منطقة "المحتوى" .. وقصر هذا المحتوى على "الصفحات التالية فقط" واكتب <front>

هذا هو


2
Tareq Assaf

على الرغم من أنه ليس نهجًا شائعًا ، يمكنك تضمين عرض ككتلة محتوى رئيسية على الصفحة الأمامية. تتمتع المشاهدات بالمرونة للقيام بذلك في كلتا الحالتين. أظن أنك أخطأت في تكوين خطوة إزالة الحظر التي كنت تحاول أو ... كان عليك فقط مسح ذاكرة التخزين المؤقت للحصول على نفس النتيجة.

لكي نكون منصفين حول الإجابة المقبولة ، فإن هذا النهج هو الطريقة المعتادة للقيام بذلك. النتيجة النهائية متطابقة.

0
stefgosselin