العودة إلى لوحة التحكم

التوثيق

تعلّم كيفية استخدام Asyntai

الميزات
شريط Ask AI شريط البحث بالذكاء الاصطناعي بحث الذكاء الاصطناعي لووردبريس AI Search for Joomla AI Search for Webflow AI Search for Moodle AI Search for TYPO3 AI Search for Craft CMS AI Search for Grav AI Search for October CMS AI Search for ProcessWire AI Search for Odoo AI Search for Bagisto AI Search for OpenCart AI Search for BigCommerce AI Search for Magento زحف الموقع فجوات المعرفة بطاقات المنتجات بطاقات المنتجات الديناميكية صور ديناميكية سياق المستخدم الأدوات المخصصة معلمات الروابط المراقبة المباشرة التحكم البشري التصعيد إشعارات الذكاء الاصطناعي التقرير اليومي تغذية البيانات في الوقت الفعلي تغذية البيانات في الوقت الفعلي - الحد الأقصى أعضاء الفريق تسجيل الدخول الموحد المصادقة الثنائية تضمين الصور رؤية الصور أداة الترجمة الترجمة والتوطين شفافية الذكاء الاصطناعي العملاء المحتملون التقاط العملاء المحتملين الذكي تذاكر الدعم فئات المحادثات الحجوزات تضمينات استبعاد الصفحات عناوين IP المحظورة سياسة الاحتفاظ بالبيانات وضع عدم الاحتفاظ إخفاء البيانات الشخصية مصنّف الردود Access Tags تثبيت إصدار الأداة سجل التدقيق النموذج الأذكى تفعيل التفكير اقتراحات الردود رسائل المتابعة تحويل الكلام إلى نص تنزيل النص الكامل الدردشة المضمّنة التضمين عبر iframe

كيفية إضافة روبوت الدردشة Asyntai AI إلى ProcessWire

دليل خطوة بخطوة لمواقع ProcessWire CMS

الحصول على كود التضمين

الخطوة 1: احصل على كود التضمين

أولاً، انتقل إلى لوحة تحكم Asyntai وانتقل لأسفل إلى قسم "Embed Code". انسخ كود التضمين الفريد الذي سيبدو هكذا:

<script>(function(){var l=function(){var s=document.createElement("script");s.src="https://widget.asyntai.com/static/js/chat-widget.js";s.async=true;s.setAttribute("data-asyntai-id","YOUR_WIDGET_ID");document.head.appendChild(s)};if(document.readyState==="complete"){l()}else{window.addEventListener("load",l)}})();</script>

ملاحظة: الكود أعلاه مجرد مثال. يجب عليك نسخ كود التضمين الفريد الخاص بك من لوحة التحكم لأنه يحتوي على معرف الأداة الشخصي الخاص بك.

الخطوة 2: الإضافة إلى ملف القالب (موصى به)

يستخدم ProcessWire ملفات قوالب PHP الموجودة في دليل site/templates/. أسهل طريقة هي إضافة كود التضمين مباشرة إلى ملف القالب الرئيسي:

  1. الوصول إلى ملفات تثبيت ProcessWire عبر FTP أو SSH أو مدير الملفات
  2. انتقل إلى site/templates/
  3. افتح ملف القالب الرئيسي — وهو غالباً _main.php أو basic-page.php حسب ملف تعريف موقعك
  4. إذا كنت تستخدم استراتيجية الإخراج المؤجل (الافتراضية لمعظم ملفات تعريف المواقع)، افتح _main.php
  5. ابحث عن وسم الإغلاق </body>
  6. الصق كود تضمين Asyntai مباشرة قبله:
<script>(function(){var l=function(){var s=document.createElement("script");s.src="https://widget.asyntai.com/static/js/chat-widget.js";s.async=true;s.setAttribute("data-asyntai-id","YOUR_WIDGET_ID");document.head.appendChild(s)};if(document.readyState==="complete"){l()}else{window.addEventListener("load",l)}})();</script>
</body>

نصيحة: وضع الكود مباشرة قبل وسم الإغلاق </body> يضمن تحميل روبوت الدردشة بعد محتوى الصفحة، وهو ما يُنصح به للأداء الأمثل ولن يبطئ عرض صفحتك.

الطريقة البديلة 1: استخدام _foot.inc أو ملف الإلحاق _main.php

إذا كان موقع ProcessWire الخاص بك يستخدم نهج ملف الإلحاق (شائع في العديد من ملفات تعريف المواقع)، يمكنك إضافة كود التضمين إلى تضمين التذييل المشترك:

  1. انتقل إلى site/templates/
  2. افتح _foot.inc (أو ملف تضمين التذييل المكافئ)
  3. الصق كود التضمين الخاص بـ Asyntai قبل وسم الإغلاق </body> مباشرة
  4. احفظ الملف

تعمل استراتيجية الإخراج المؤجل في ProcessWire عادةً مع ثلاثة ملفات رئيسية:

  • _init.php — يعمل قبل كل قالب، ويهيئ المتغيرات
  • ملف القالب الخاص بك (مثل basic-page.php) — يملأ متغيرات المحتوى
  • _main.php — يُخرج ترميز HTML النهائي باستخدام تلك المتغيرات

إذا كان موقعك يستخدم هذا النهج، فإن إضافة الكود إلى _main.php قبل </body> يضمن ظهوره في كل صفحة.

ملاحظة: أسماء الملفات _init.php و_main.php مُعدّة في site/config.php عبر إعدادات $config->prependTemplateFile و$config->appendTemplateFile. تحقق من إعداداتك إذا كانت ملفاتك بأسماء مختلفة.

الطريقة البديلة 2: استخدام مصفوفة $config->scripts

يوفر ProcessWire مصفوفة $config->scripts من نوع FilenameArray يمكنك استخدامها لإدارة ملفات JavaScript. في _init.php أو ملف القالب الفردي، أضف:

<?php
$config->scripts->add('https://asyntai.com/static/js/chat-widget.js');
?>

ثم في _main.php (أو تضمين التذييل)، قم بالتكرار عبر مصفوفة الأكواد لإخراجها:

<?php foreach($config->scripts as $file): ?>
<script src="<?php echo $file; ?>"></script>
<?php endforeach; ?>

مهم: نهج $config->scripts يتعامل مع سمة src للكود، لكن سمة data-asyntai-id تحتاج إلى معالجة منفصلة. ستحتاج إما إلى إضافة سمة البيانات يدوياً في مخرجات الحلقة، أو استخدام طريقة وسم الكود المباشرة من الخطوة 2 بدلاً من ذلك للإعداد الأبسط.

الطريقة البديلة 3: استخدام خطاف (ready.php)

لنهج أكثر تقدماً، يمكنك استخدام نظام الخطافات في ProcessWire لحقن كود روبوت الدردشة تلقائياً في كل صفحة. أضف ما يلي إلى ملف site/ready.php:

<?php
$wire->addHookAfter('Page::render', function(HookEvent $event) {
    $html = $event->return;
    $script = '<script>(function(){var l=function(){var s=document.createElement("script");s.src="https://widget.asyntai.com/static/js/chat-widget.js";s.async=true;s.setAttribute("data-asyntai-id","YOUR_WIDGET_ID");document.head.appendChild(s)};if(document.readyState==="complete"){l()}else{window.addEventListener("load",l)}})();</script>';
    $html = str_replace('</body>', $script . '</body>', $html);
    $event->return = $html;
});
?>

يعترض هذا الخطاف مخرجات HTML المُعالجة لكل صفحة ويحقن كود Asyntai تلقائياً مباشرة قبل وسم الإغلاق </body>.

نصيحة: نهج خطاف ready.php مثالي إذا كنت تريد روبوت الدردشة في كل صفحة دون تعديل أي ملفات قوالب. كما أنه يبقى بعد تغييرات القوالب وتحديثات القالب لأنه موجود خارج ملفات القوالب.

الخطوة 3: التحقق من التثبيت

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

لا ترى الأداة؟ تأكد من حفظ جميع الملفات المعدلة. جرب مسح ذاكرة التخزين المؤقت للمتصفح أو العرض في نافذة تصفح خاص. إذا كان التخزين المؤقت لقوالب ProcessWire مفعلاً، فقد تحتاج إلى مسحه بالانتقال إلى Modules → Core → Template Engine Cache أو بإضافة ?nocache=1 إلى عنوان URL. تحقق أيضاً من أن ملف القالب يُستخدم فعلياً بواسطة الصفحات التي تعرضها.