it-swarm.asia

كيفية تسمية طرق العرض التي تعرضها form.tpl.php لكل طريقة عرض

حاولت views-exposed-form--"view_name"--"display_name".tpl.php لكنها لا تعمل. هل من الممكن إنشاء ملف قالب ينطبق فقط على عامل التصفية المعروض لعرض طرق العرض؟

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

8
chinita7

كل شيء ممكن في Drupal؛)

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

  1. استخدم الوحدة devel_themer لمعرفة الوظيفة/القالب الذي يستخدمه هذا المرشح المكشوف.
  2. إنشاء معالج مسبق لوظيفة/قالب السمة. في معالجك المسبق ، يمكنك إدراج اقتراحات القالب الديناميكي التي ستنطلق بناءً على أي شرط تريده. يمكنك إنشاء هذا المعالج المسبق إما في ملف template.php الخاص بموضوعك المخصص أو في إحدى وحداتك المخصصة. هذه المقالة DO سوف ترشدك إلى إنشاء اقتراح قالب ديناميكي.

سأفترض أنك ستعرض شاشات طرق عرض مختلفة بناءً على مسار URL. إذا كان هذا هو الحال ، فيمكنك استخدام Drupal's arg() في معالجك المسبق لمعرفة ما هو عرض العرض الذي تعرضه حاليًا ، وإنشاء اقتراح القالب الخاص بك باستخدام ذلك معلومات.

بمجرد إعداد اقتراحاتك بشكل صحيح ، ثم Drupal باستدعاء النموذج المناسب و voilá ، ولديك قوالب تصفية مختلفة بناءً على المسار (أو أي حالة أخرى تحددها في المعالج الأولي) .

2
amateur barista

بالنسبة إلى Drupal 7 ، يمكنك استخدام طرق عرض العروض - view_name - display_name.tpl.php (استبدل الشرطات السفلية بشرطة في اسم العرض واسم العرض.)

عملت بالنسبة لي بهذه الطريقة.

25
milkovsky

في دروبال 8

/ admin/structure/views/view/event_related

سيكون

طرق عرض مكشوفة - event_related.html.twig

3
Matoeil

بالنسبة إلى drupal 8 ، لا يعرض وضع تصحيح السمة اقتراحات القالب المتاحة. يمكنك معرفة أي منها متاح باستخدام kint () أو إنشاء اقتراحات جديدة في هذا الخطاف:

/**
 * Implements template_theme_suggestions_node_HOOK_alter().
 * Add theme suggestions to the view exposed forms.
 */
function YOUR_THEME_theme_suggestions_views_exposed_form_alter(&$suggestions, $vars, $hook) {
  kint($vars['form']['#theme']);
  //$suggestions[] = 'views__exposed__form__' . $anything; 
}
1
Interdruper