it-swarm.asia

كيف أقوم بإنشاء مناطق مخصصة في السمة؟

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

58
palbakulich

يمكنك تحديد المناطق في ملف معلومات السمة الخاص بك. انظر: هيكل ملف .info

ستحتاج بعد ذلك إلى وضع علامات القالب ذات الصلة في ملف page.tpl.php الخاص بك.

لذلك على سبيل المثال ، إذا قمت بتعريف المنطقة sidebar في ملف السمات .info الخاص بك ، فستضيف بعد ذلك: <?php print render($page['sidebar']); ?> إلى المكان ذي الصلة في صفحة. tpl.php.

68
Camsoft

نقطة أخرى: لا تفوت المناطق المطلوبة!

regions[content] = Content
regions[help] = Help
regions[page_top] = Page top
regions[page_bottom] = Page bottom

يمكن العثور على المزيد حول هذا في http://drupal.org/update/themes/6/7#closure .

لتوضيح هذه النقطة: إذا قمت بتحديد مناطقك الخاصة ، فأنت بحاجة إلى تحديد كل ما تستخدمه ، بما في ذلك تلك المطلوبة. بمعنى آخر ، لا يمكنك فقط تحديد مناطق إضافية: إذا قمت بتحديد أي منطقة ، فيجب عليك تحديدها جميعًا.

20
laura

إنشاء منطقة لمنطقة Drupal 7 لا يختلف عن إنشاء منطقة لمنطقة Drupal 6؛ الاختلافات بين Drupal 7 والإصدارات السابقة هي في الأساس:

  • لم يتم تحديد المناطق باستخدام دالة mytheme_regions() كما تم في Drupal 5 ، ولكن تم تعريفها في mytheme.info باستخدام توجيهات regions[] ، وهو ما يتم أيضا مع Drupal 6 مواضيع.
  • يتم تقديم المناطق باستخدام وظيفة Drupal render() ، بدلاً من طباعة محتوى متغير.

المناطق Drupal 7 الافتراضية هي المناطق التالية:

regions[header] = Header
regions[highlighted] = Highlighted
regions[help] = Help
regions[content] = Content
regions[sidebar_first] = Left sidebar
regions[sidebar_second] = Right sidebar
regions[footer] = Footer

تتضمن موضوعات دروبال 7 الأساسية الآن منطقة تسمى "مميزة" تستخدم نفس شاشة منطقة بيان المهمة في Drupal 6 ؛ وهي تتضمن أيضًا منطقة باسم "مساعدة" ، والتي تحتوي بشكل افتراضي على نفس محتوى المتغير $help المستخدم بواسطة Drupal 6.

9
kiamlaluno

يتم تحديد مناطق السمة في ملف معلومات السمة الخاص بك - راجع مستندات . ما عليك سوى إضافة سطر مع regions[corner] = Corner للحصول على منطقة ركن.

ثم تحتاج إلى تحرير ملف page.tpl.php وإضافة <php print render($corner); ?> حيث تريد أن تظهر المنطقة. إذا لم يكن السمة الخاصة بك تحتوي على page.tpl.php ، فانسخ من السمة الأساسية أو من وحدة النظام.

المخاطر المشتركة:

  • إذا لم يكن ملف theme.info يحتوي على مناطق معلن عنها ، فإنه يستخدم Drupal. إذا كنت تريد الإضافة ، فسيتعين عليك إعادة إعلان المناطق الافتراضية. يمكنك بالطبع ، قم بإزالة أي منطقة ولكن يرجى دعم المناطق المطلوبة. انظر docs مرة أخرى.

  • لن يتم ملاحظة التغييرات في ملف .info أو إضافة ملفات جديدة إلى السمة (مثل page.tpl.php) إلا بعد مسح ذاكرة التخزين المؤقت.

  • أوميغا ، سمة أساسية شائعة جدًا ، لن تحتاج إلى أي تغيير في page.tpl.php ، ملف .info فقط. ولكن سيتعين عليك زيارة إعدادات السمة في واجهة المستخدم وتعيين منطقتك إلى منطقة.

4
Capi Etheriel

اتبع الخطوات التالية لإنشاء منطقة مخصصة في السمة الخاصة بك:

  1. انتقل إلى ملف theme.info وأضف هذا السطر.

    regions[machine_name_of_your_region] = Name of your region
    
  2. على الرغم من أنه يمكنك أيضًا استدعاء كتل المنطقة في قالب العقدة أيضًا ، إلا أنك ستضيف المنطقة عمومًا إلى قالب صفحة السمة. عادة ما يكون هذا هو page.tpl.php ، أو إذا كان لديك ملفات قوالب مخصصة لصفحات مختلفة ، فقم بتحريرها أيضًا. ستظهر المنطقة الجديدة فقط على الصفحات التي تم إنشاؤها حول القالب الذي تضيف المنطقة الجديدة إليه. الصقه أينما تريد أن تظهر منطقتك الجديدة.

    <?php if ($page['machine_name_of_your_region']): ?>
      <div id="sidebar-first" class="column sidebar"><div class="section">
      <?php print render($page['machine_name_of_your_region']); ?>
      </div></div> <!-- /.section, /#sidebar-first -->
     <?php endif; ?>
    
  3. التكوين - الأداء - محو جميع ذاكرة التخزين المؤقت

2
Astha chauhan

إنشاء منطقة جديدة في السمة

تحتاج فقط إلى تعريفه في ملفين.

  • Theme.info
  • Page.tpl.php

Theme.info

;;;;;;;;;;;;;;;;;;;;;
;; Regions
;;;;;;;;;;;;;;;;;;;;;

regions[navigation]      = 'Navigation'
regions[header]          = 'Top Bar'
regions[highlighted]     = 'Highlighted'
regions[new_region_name] = 'Region Name' ;; Add New Region

Page.tpl.php

الآن تقديم هذه المنطقة

  <?php if ($page['new_region']): ?>
      <div class="new_region_class">
        <?php print render($page['new_region']); ?>
     </div>
  <?php endif; ?>

الآن امسح كل ذاكرة التخزين المؤقت ، ها أنت ذا ، لديك منطقة جديدة في موضوعك. يمكنك رؤيتها في صفحة تكوين الكتلة الخاصة بك.

لمزيد من الزيارة http://drupal.org/node/171205

0
gsjha