it-swarm.asia

Drupal 7 طرق عرض تصفية المحتوى (التصنيف: عرض ملخص) ، عرض اسم مصطلح قابل للقراءة بدلاً من معرف المصطلح

من وجهة نظري ، أنا أستخدم عامل تصفية سياقي - مع افتراضي " إخراج ملخص "- لتصفية نتائجي حسب مصطلح التصنيف .

المشكلة هي أن نتيجة الملخص مجمعة حسب قائمة التصنيف مصطلح المصطلح (بما في ذلك عدد العقدة) وليس أسماء معرفات مصطلح قابلة للقراءة البشرية.

  • 1 (21)
  • 2 (16)
  • إلخ.

هل من الممكن تغيير (أو ربط) مخرجات العرض للملخص ، من خلال عدم إدراج معرف المصطلح الخاص به ، ولكن المصطلح معرف معرف؟

  • مصطلح مصطلح أ (21)
  • مصطلح مصطلح ب (16)

(لا يزعجني إذا ظل عنوان URL للطلب الفعلي كما هو.)

هدفي هو إنشاء تنسيق إخراج أكثر قابلية للقراءة لملخص مصطلح التصنيف ، والذي يمكن للمستخدم النهائي فهمه.

9
Stefan Looij
  1. قم بتعيين العرض الخاص بك إلى الحقول وكشف الحقل الذي يحتوي على مصطلح التصنيف المرتبط.

  2. قم بتعيين عامل التصفية السياقي الخاص بك للتصفية لمصطلح تصنيف وحدد لتضمين مدقق.

  3. قم بتعيين المدقق على مصطلح التصنيف وحدد مربع مفرداتك.

  4. حدد الخيار لنوع قيمة التصفية باسم "تم تحويل اسم المصطلح إلى معرف المصطلح.

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

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

7
Ashlar

انسخ ملف "views_view-Summary.tpl.php" إلى مجلد "modules/contrib/views/theme". (يمكنك جعله عرضًا أو حظرًا محددًا عن طريق إضافة لاحقة اسم الملف.)

ملاحظة: إذا كنت تستخدم هذا كعرض للعرض الإداري ، فتأكد من نسخ هذا الملف داخل مجلد سمة المشرف ، وليس مجلد السمة الافتراضي!

لا تحتاج إلى أي تغييرات في إعدادات العرض الخاصة بك. ما عليك سوى ضبط tpl-override الخاص بك على الأسطر التالية ، ويتم تحويل معرفات المصطلحات الخاصة بك إلى أسماء مصطلحات قابلة للقراءة:

<div class="item-list">
  <ul class="views-summary">
    <?php foreach ($rows as $id => $row): ?>
    <li>
      <a href="<?php print $row->url; ?>"<?php print !empty($row_classes[$id]) ? ' class="'. $row_classes[$id] .'"' : ''; ?>>
        <?php
        /* begin replacement */
        $term_object = taxonomy_term_load($row->link);
        print  $term_object->name; 
        /* end replacement*/
        ?>
      </a>
      <?php if (!empty($options['count'])): ?>
      &nbsp;(<?php print $row->count?>)
      <?php endif; ?>
    </li>
    <?php endforeach; ?>
  </ul>
</div>
5
Stefan Looij
1
uwe