كيفية استيراد الخلاصات الخارجية إلى موقع ويب Drupal 9 باستخدام وحدة الخلاصات
نشرت: 2020-11-03بصفتك مطورًا ، ستواجه العديد من المواقف عندما تحتاج إلى استيراد البيانات من مصادر خارجية. ستحتاج أحيانًا إلى استيراد بيانات من أكثر من مصدر إلى موقع ويب Drupal 9 الخاص بك. وحدة الخلاصات في دروبال هي وحدة نمطية بسيطة غير معقدة تمكن المستخدمين غير التقنيين حتى من استيراد محتوى من مصادر بيانات مختلفة. ما يجعلها أبسط من وحدات دروبال الأخرى مثل وحدة الترحيل ، هو أن عملية الاستيراد بأكملها تتم من خلال واجهة مستخدم دروبال. يقدم لك المحتوى بالطريقة التي تريدها بمجرد توفرها.
تستورد العديد من مواقع الويب موجز ويب RSS / XML من مواقع الجهات الخارجية. في هذه المدونة ، سنحصل على موجز أخبار مستورد من خلال واجهة برمجة تطبيقات الجهة الخارجية التي توفر البيانات بتنسيق json بمساعدة وحدة الخلاصات في دروبال 9.

تثبيت وحدة التغذية دروبال
تتيح لك وحدة الخلاصات في Drupal 9 استيراد البيانات من تنسيقات مختلفة مثل CSV و XML و JSON و RSS وما إلى ذلك إلى العقد والمستخدمين وشروط التصنيف عبر واجهة المستخدم.
1. قم بتثبيت وحدة Drupal Feeds (سنستخدم هنا الملحن)
composer require 'drupal/feeds:^[email protected]'composer require 'drupal/feeds:^[email protected]'
2. هنا ، نستخدم خلاصات JSON لاستيراد البيانات. لذلك ، نحتاج إلى محلل JSON الذي سيحتاج إلينا لتثبيت وحدة أخرى وهي محلل الخلاصات القابل للتوسيع. أفضل طريقة لتثبيت هذه الوحدة هي باستخدام الملحن لأنه يقوم بتنزيل جميع المكتبات المطلوبة. (يمكنك أيضًا تخطي الخطوة الأولى إذا كنت تقوم بالتنزيل باستخدام الملحن لأن وحدة تغذية دروبال ستكون تبعية لوحدة feed_ex ).
composer require 'drupal/feeds_ex:^[email protected]'composer require 'drupal/feeds_ex:^[email protected]'
ملاحظة: إذا كنت لا تستخدم أداة إنشاء للتثبيت ، فيمكن أيضًا تثبيت المكتبات المطلوبة بواسطة هذه الوحدة باستخدام وحدة Ludwig. قم بتثبيت وحدة Ludwig ثم انتقل إلى / admin / reports /pack للحصول على مزيد من الإرشادات.
3. قم بتمكين وحدة feeds and feeds_ex (Feeds Extensible Parsers) إما باستخدام drush أو من خلال واجهة المستخدم.

تكوين وحدة الخلاصات وتنفيذها
هنا ، سنقوم باستيراد البيانات من https://newsapi.org/ مقالات موقع الويب (الموضوعات المتعلقة بـ " أهم العناوين من TechCrunch الآن ") والتي يتم عرضها بتنسيق JSON الموضح في لقطة الشاشة أدناه.
للحصول على هذه البيانات الإخبارية ، نحتاج إلى تسجيل الدخول إلى موقع الويب والحصول على مفتاح API. بعد ذلك ، حدد الموضوعات التي ترغب في استيراد البيانات الخاصة بها إلى موقع الويب الخاص بك.

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

في لقطة الشاشة أعلاه ، اخترنا حقولًا بسيطة لاستيراد البيانات مثل المؤلف وهو حقل نص (عادي) لاستيراد البيانات من مؤلف مفتاح JSON .

كما ترى في لقطة الشاشة أعلاه ، أضفنا حقل عنصر الخلاصات من نوع الخلاصة واخترنا نوع الخلاصة وفقًا لذلك. سنتعلم كيفية إنشاء نوع الخلاصة في القسم التالي أدناه.
تكوين نوع التغذية
اتبع الخطوات أدناه لإنشاء نوع الخلاصة.
- انتقل إلى صفحة نظرة عامة على الخلاصات ( / admin / structure / feeds ). تستطيع أن ترى كل خلاصات دروبال مدرجة في هذه الصفحة.
لقد قمت بالفعل بإنشاء خلاصتين. هنا سأستخدم قنوات الأخبار . يمكنك إنشاء نوع الخلاصة الخاص بك عن طريق النقر فوق إضافة نوع الخلاصة. - عند تحرير نوع الخلاصة أو إضافة نوع موجز جديد ، سنرى الخيارات أدناه.
- الإعدادات الأساسية
لنقم بتكوين الإعدادات الأساسية لنوع الخلاصة ، أولاً ، قم بتوفير الاسم والوصف والشرح أو إرشادات الإرسال لنوع الخلاصة.
تساعدك فترة الاستيراد (الموضحة في علامة تبويب الإعدادات أدناه) على اختيار عدد مرات تشغيل الاستيراد. سيتم ذلك من خلال وظيفة كرون. إذا حددت إيقاف ، فسيتم الاستيراد يدويًا.

- والجالب إعدادات يظهر الخيار حيث كنت استيراد المحتوى أو جلب المحتوى من.
يوفر 3 خيارات للاختيار من بينها ،
- الدليل: - استيراد المحتوى من ملف أو سلسلة من الملفات الموجودة بالفعل على موقع الويب الخاص بك.
- التنزيل من URL: - استيراد المحتوى من عنوان url (الذي سنختاره في حالتنا).
- تحميل ملف: - استيراد محتوى من ملف.
بناءً على Fetcher المحدد ، سيتعين علينا تكوين إعدادات Fetcher. بالنسبة للخيار الثانوي لإعدادات الجلب ، لدينا قائمة الإعدادات أدناه.

- بالكشف التلقائي عن الأعلاف
- استخدم PubSubHubbub
- دائما التنزيل
- طلب مهلة
قم بتكوين الإعدادات الثانوية وفقًا لذلك.

• يتيح لك المحلل اللغوي تكوين تنسيق الخلاصة. لدينا هنا العديد من الخيارات للاختيار من بينها مثل CSV و HTML و OPML و JsonPath (وهو إعدادنا) وما إلى ذلك. اختر الخيار من القائمة المنسدلة وفقًا لتنسيق الخلاصة الخاص بك.
بناءً على المحلل اللغوي المحدد ، سيتعين علينا تكوين إعدادات المحلل اللغوي. في حالتنا ، ليس لدينا أي إعدادات محلل للمحللين من النوع JsonPath.
• تعرض إعدادات المعالج تكوينات لنوع المحتوى الذي ستنشئه الخلاصة.
وبالمثل ، لدينا خيار إعدادات ثانوية للمعالج كما هو موضح في الصورة أدناه.

قم بتكوين إعداداتك الثانوية وفقًا للمتطلبات.
تُظهر لقطة الشاشة أدناه الإعدادات الأساسية للجالب والمحلل اللغوي والمعالج.

3. تعيين المصادر المستهدفة
- سياق الكلام
يشير نص المساعدة إلى تشغيل الاستعلام الأساسي ، مما يعرض جذر أو قاعدة البيانات التي سيتم استهدافها لاستيراد خلاصات دروبال كمحتوى. في مثالنا ، قمنا بتكوينه كـ "$ .articles . *" لأن بياناتنا موجودة داخل مفتاح المقالة. انظر إلى وثائق هذا المسار لتكوين لك.
- تعيينات الحقول
الآن ، يمكننا تكوين وحدة Feeds لتحديد القيمة المسحوبة من JSON التي يجب تعيينها إلى أي حقل في نوع محتوى أخبار Drupal.
هذه الأهداف هي حقول بيانات دروبال ويتم سحبها بناءً على المعالج الذي تحدده عند إنشاء نوع التغذية. يمكنك أيضًا تكوين إعدادات أخرى لتعيينات معينة للحقول مثل اللغة ، وتنسيق المرشح (قابل للتطبيق على الحقول المنسقة بالنص) ، والفريد (المعرف الفريد المستخدم لتتبع ما إذا كان المحتوى جديدًا أو موجودًا) ، إلخ.
على سبيل المثال ، إذا أردنا استيراد عنوان محتوى المقالة الإخبارية لخلاصة JSON كحقل عنوان محتوى أخبار Drupal ، فسيكون الهدف هو حقل عنوان Drupal وسيكون المصدر هو مفتاح عنوان المقالة الإخبارية JSON كما هو موضح في لقطة الشاشة أدناه.

نحن هنا نستخدم تكوين التعيين كما هو موضح في لقطة الشاشة أدناه.

يمكنك أيضًا استنساخ نوع الخلاصة باستخدام وحدة Entity clone Drupal المدعومة أيضًا في Drupal 9.
خلق تغذية
لإنشاء موجز ، انتقل إلى المحتوى -> علامة تبويب الخلاصات -> إضافة موجز -> حدد نوع الخلاصة

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

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

بمجرد ترحيل بيانات JSON إلى المحتوى ، يمكننا رؤية المحتوى المضاف إلى نوع محتوى الأخبار كما هو موضح في لقطة الشاشة أدناه.

الآن ، دعنا نقارن المحتوى الذي تم استيراده مع الخلاصات.


لمزيد من المعلومات التفصيلية يمكنك الرجوع إلى هذا الدليل.
وحدات إضافية لتوسيع وحدة الخلاصات
• تساعدك وحدة Feeds Tamper على تعديل بيانات المصدر وتحديثها قبل استيرادها إلى موقع الويب الخاص بك.
• تحتوي موزعي الخلاصات القابلة للتوسيع على مجموعة من المحلل اللغوي مثل XPath XML و HTML ، ومحلل خطوط JSONPath JSON & JSON ، وما إلى ذلك.
• تتيح لك وحدة معاينة استيراد الخلاصات رؤية المحتوى في مصدرك قبل استيراده.
• وحدة التغذية التجارية تساعدك في استيراد المنتجات إلى موقع دروبال كوميرس.
