وحدة · LNK FAQ Pro
  • PrestaShop

LNK FAQ Pro: أسئلة شائعة لـ PrestaShop تجيب حيث يطرح العميل سؤاله

الأسئلة نفسها تتكرر: آجال التوصيل، والإرجاع، وتتبع الطرد. تصل بالبريد الإلكتروني أو بالهاتف، وبعضها يوقف طلبًا قبيل الدفع. تنشر وحدة الأسئلة الشائعة LNK FAQ Pro لـ PrestaShop صفحة أسئلة شائعة مع بحث، وتضع كل مجموعة من الأسئلة في الصفحات التي تحتاجها: تحت صفحات المنتجات، وفي صفحات الفئات، وفي الصفحة الرئيسية، وفي صفحة CMS. تكتب كل إجابة مرة واحدة، بكل لغة، فتُستخدم في كل مكان. لا تعديل على القالب، ولا override لنواة PrestaShop.

  • الإصدار 2.1.0 · PrestaShop من 1.7.6 إلى 8.x
  • الإصدار 2.9.0 · PrestaShop 9
  • PrestaShop من 1.7.6 إلى 9.x
  • PHP من 7.1 إلى 8.4
  • بدون تعديل على النواة

النقاط الرئيسية

  • صفحة /faq مع بحث، وعنوان ووصف meta قابلين للترجمة.
  • الأسئلة في الصفحات التي تحتاجها: صفحات المنتجات، وصفحات الفئات، والصفحة الرئيسية، وصفحات
  • استيراد تلقائي من LNK FAQ، يُتحقق منه نصًا نصًا، دون فقدان أي شيء عند الاختلاف.
  • بيانات FAQPage من schema.org، كتلة واحدة في الصفحة.
  • أكورديون <details> أصلي، يعمل بلوحة المفاتيح ودون JavaScript.
  • ألوان وأحجام ونصوص تُضبط دون CSS، مع الرجوع إلى مظهر القالب.
  • تعدد المتاجر عبر جداول الربط الأصلية في PrestaShop.
  • تعدد اللغات، مع الفرنسية والإنجليزية والعربية (من اليمين إلى اليسار).
  • لوحة تحكم Symfony أصلية في PrestaShop 9: جداول، وسحب وإفلات، واستمارات قابلة للترجمة.
  • لا override للنواة، ولا اتصال خارجي، ولا ملفات تعريف ارتباط.
  • 3.9 كيلوبايت من CSS و2.2 كيلوبايت من JavaScript بعد الضغط، والسكربت في صفحة /faq وحدها.

أسئلة شائعة في المكان الذي يُطرح فيه السؤال

صفحة الأسئلة الشائعة المنعزلة قليلة الزيارة: يطرح العميل سؤاله في صفحة المنتج أو في مسار الطلب، ونادرًا ما يبحث عن رابط صفحة الأسئلة. ترتّب LNK FAQ Pro الأسئلة في فئات، ثم تعرض كل فئة في المواضع التي تختارها:

الموضع النطاق
صفحة /faq صفحة الأسئلة الشائعة الخاصة بالوحدة، برابطها القصير
الصفحة الرئيسية داخل متن الصفحة
صفحات المنتجات جميعها، أو المنتجات التي تحددها فقط
صفحات الفئات جميعها، أو الفئات التي تحددها فقط
صفحات CMS جميعها، أو الصفحات التي تحددها فقط، أسفل الصفحة

يمكن للفئة الواحدة أن تجمع ما تحتاجه من المواضع. أسئلة التوصيل تحت صفحات المنتجات، والإرجاع في الصفحة الرئيسية، وشروط الدفع في صفحة CMS المخصصة لها: الإجابة نفسها تُستخدم في كل مكان وتُحدَّث في موضع واحد.

كل هذه المواضع نقاط ربط (hooks) أصلية في PrestaShop، توفرها القوالب الرسمية. إذا لم يوفّر قالبك نقطة ربط في المكان المطلوب، نضيفها لك مجانًا.

صفحة أسئلة شائعة مع بحث

تجمع صفحة /faq الفئات الموضوعة فيها، مع عنوان ووسم title ووصف meta، وكلها قابلة للترجمة. يرشّح حقل البحث الأسئلة أثناء الكتابة، دون أي طلب إلى الخادم، ويُبرز الكلمة المطابقة ويعلن «النتائج: 2 من أصل 9». والرابط إلى /faq#سؤال-ما يفتح الإجابة المقصودة مباشرة. وتتيح كتلة اختيارية في التذييل رابطًا إلى الأسئلة الشائعة وإلى أولى أسئلتها (من صفر إلى عشرة).

تُفتح كل إجابة داخل عنصر <details> أصلي: يعمل الأكورديون بلوحة المفاتيح ودون JavaScript، مع إجابة واحدة مفتوحة في كل مجموعة.

تستخدم LNK FAQ؟ الاستيراد تلقائي

المتجر الذي يشغّل وحدتنا LNK FAQ (lnk_faq) لا يعيد كتابة أي شيء. عند تثبيت FAQ Pro أو تحديثها، يُستورد المحتوى: الكتل، والأسئلة، والإجابات، وكل اللغات (مطابَقة بمعرّف اللغة)، في الصفحات نفسها، وبالترتيب نفسه، وبالمظهر نفسه، مع النصوص نفسها حول الكتل.

ثم تُعاد قراءة كل نص مستورد ومقارنته بالمصدر، لغةً لغةً ومتجرًا متجرًا:

  • إذا تطابق كل شيء، تُعطَّل LNK FAQ (تبقى بياناتها في قاعدة البيانات، ولا يُلغى تثبيت أي شيء) وتأخذ FAQ Pro مكانها بالضبط في كل نقطة ربط؛
  • عند أدنى اختلاف، يُحذف كل ما استُورد، وتواصل LNK FAQ عملها، وتعرض لوحة التحكم السبب مع زر «إعادة محاولة الاستيراد».

تمرّ الإجابات المستوردة بالمرشّح نفسه الذي يطبّقه حقل الإجابة في الاستمارة (منقّي HTML في PrestaShop، ثم فحص isCleanHtml). وكل إجابة يغيّرها هذا المرشّح تغييرًا ظاهرًا تُدرج في التقرير لمراجعتها.

القياس على نسخة من متجر حقيقي بثلاث لغات (الفرنسية والإنجليزية والعربية، PrestaShop 9.1.4، PHP 8.4): 30 كتلة و222 سؤالًا مستوردة، و84 صفحة مقارنة قبل الاستيراد وبعده، دون أي اختلاف.

مظهر قالبك، قابل للضبط دون CSS

تأخذ الوحدة افتراضيًا ألوان القالب وخطوطه. وتتيح إعدادات المظهر الذهاب أبعد من ذلك، دون كتابة CSS:

  • الألوان: لون التمييز، والعناوين، ونص الإجابات، والخطوط الفاصلة.
  • الأحجام: العناوين، والأسئلة، ونص الإجابات، بالبكسل.
  • شدة نص الإجابات: تُطبَّق في اللون نفسه، ولا تُطبَّق بالشفافية أبدًا؛ وتحت 100 % تذكّرك شاشة الإعدادات بالتحقق من التباين.
  • عنوان الكتلة: عنوان صفحة الأسئلة الشائعة، أو اسم الفئة المعروضة.
  • النصوص حول الكتل، بكل لغة: السطر العلوي، والمقدمة، ونص رابط التواصل. إذا تُركت فارغة تُستخدم ترجمة الوحدة.

الحقل المتروك فارغًا يحافظ على مظهر القالب. تُطبَّق الإعدادات كمتغيرات CSS على الكتلة نفسها: لا يُنشأ أي ملف على القرص.

وللمدمجين، تُضبط المتغيرات العامة --lnk-faq-* (accent وborder وmuted وgap وtitle-color وmuted-opacity وtitle-size وquestion-size وtext-size) من القالب بسطر واحد. وهي ترجع إلى الأساس المشترك لقوالب LNK (--lnk-accent و--lnk-border و--lnk-muted)، وما زالت الأسماء القديمة --lnkfaq-* مقروءة.

لوحة تحكم أصلية في PrestaShop 9

في PrestaShop 9، بُنيت شاشات الوحدة بمكوّنات Symfony الخاصة بلوحة التحكم، دون AdminController ولا HelperForm:

  • جداول أصلية للفئات والأسئلة: تصفية، وفرز، وسحب وإفلات للترتيب، وتفعيل بنقرة، وحذف جماعي؛ وتُعرض الأسئلة فئةً فئة؛
  • استمارات Symfony بحقول قابلة للترجمة ومحرر نصوص منسّقة للإجابات؛
  • شاشة إعدادات تجمع صفحة الأسئلة الشائعة والكتل والمظهر.

بيانات FAQPage المنظَّمة

كل صفحة تحمل أسئلة شائعة تنشر كتلة JSON-LD من نوع FAQPage (schema.org) بأسئلتها وإجاباتها، وكتلة واحدة فقط في الصفحة، حتى لو عُرضت فيها عدة كتل. ويُستبعد السؤال الذي لا إجابة له، لأن المدخل الفارغ يُبطل الكتلة. ويوقف مفتاحٌ هذه البيانات إذا كانت وحدة أخرى تنشر FAQPage في الصفحات نفسها.

الأسئلة والإجابات نص داخل HTML الصفحة، يقرؤه محرك البحث أو المساعد المحادثي الذي لا ينفّذ السكربتات. تجعل الوحدة إجاباتك مقروءة، ومحتواها يتكفّل بالباقي. التفاصيل في SEO.md.

متعددة اللغات، والعربية منها

يُدخَل كل سؤال، وكل إجابة، وكل اسم فئة، وكل نص في صفحة الأسئلة الشائعة بجميع لغات المتجر. وتُحفظ النصوص في جداول _lang الأصلية في PrestaShop، بسطر لكل لغة. تُسلَّم الوحدة بالفرنسية والإنجليزية والعربية، وتدعم ورقة الأنماط الكتابة من اليمين إلى اليسار.

يقبل السؤال حتى 512 حرفًا.

متوافقة مع PrestaShop 9

الفرع إصدار الوحدة PHP لوحة التحكم
9.0 → 9.x 2.9.0 8.1 → 8.4 Symfony أصلية
1.7.6 → 8.x 2.1.0 (حزمة مستقلة) 7.1 → 8.1 كلاسيكية

لا تُثبَّت الحزمة 2.9.0 إلا على PrestaShop 9. وتحصل متاجر 1.7 و8 على الحزمة 2.1.0، بالميزات نفسها ودون أي ملف Symfony.

التحديث من إصدار 1.x تلقائي: تنتقل الفئات والأسئلة إلى جداول الربط الأصلية _shop الخاصة بتعدد المتاجر، ويحتفظ كل منها بمتجره وترتيبه، وتبقى نصوصك بكل لغة كما هي.

وحدة أسئلة شائعة دون override

لا تثبّت هذه الوحدة أي override. والمجلد override/ غير موجود.

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

خفيفة وسريعة

أرقام مقاسة على الوحدة المسلَّمة، مضغوطة بـ gzip (المستوى 9). في الواجهة: ورقة أنماط بحجم 3999 بايت (3.9 كيلوبايت) وسكربت بحجم 2279 بايت (2.2 كيلوبايت)، دون jQuery. لا يُحمَّل السكربت إلا في صفحة /faq، حيث يشغّل البحث ويفتح السؤال من رابطه؛ وتحمّل كل الصفحات الأخرى 0 بايت منه. ولا تُحمَّل ورقة الأنماط إلا في الصفحات التي يمكن أن تحمل أسئلة شائعة (الرئيسية، وصفحات المنتجات، وصفحات الفئات، وصفحات CMS، و/faq)، أو في كل المتجر إذا فُعّلت كتلة التذييل. لا خطوط بعيدة، ولا CDN، ولا أي اتصال خارجي.

الأسئلة الشائعة

ماذا أرى مباشرة بعد التثبيت؟

أسئلة شائعة للبدء: فئة «الطلبات والتوصيل» وثلاثة أسئلة، بكل اللغات المثبّتة، تظهر في صفحة الأسئلة الشائعة وتحت كل صفحة منتج. ونصّها نفسه يقول إنه موجود ليُستبدل. عدّلها، أو احذفها، أو ألغِ تحديد أحد المواضع في الفئة. وفي متجر لديه أسئلة شائعة من قبل، أو يستخدم LNK FAQ، لا يُضاف أي شيء.

هل هذه الوحدة متوافقة مع إصدار PrestaShop لديّ؟

نعم، من PrestaShop 1.7.6 إلى 9.x، في حزمتين. يغطي الإصدار 2.9.0 PrestaShop من 9.0 إلى 9.x (PHP من 8.1 إلى 8.4)، بلوحة تحكم Symfony أصلية. وتحصل المتاجر من 1.7.6 إلى 8.x على الإصدار 2.1.0 (PHP من 7.1 إلى 8.1)، بالميزات نفسها ولوحة التحكم الكلاسيكية.

أستخدم LNK FAQ حاليًا: هل عليّ إعادة كتابة كل شيء؟

لا. عند تثبيت FAQ Pro أو تحديثها، يُستورد محتوى LNK FAQ: الكتل، والأسئلة، والإجابات، وكل اللغات، في الصفحات نفسها، وبالترتيب نفسه، وبالمظهر نفسه. وتُعاد قراءة كل نص مستورد ومقارنته بالمصدر، لغةً لغةً ومتجرًا متجرًا. وعندما يتطابق كل شيء، تُعطَّل LNK FAQ وتبقى بياناتها في قاعدة البيانات، وتأخذ FAQ Pro مكانها بالضبط في كل نقطة ربط.

ماذا يحدث إذا فشل استيراد LNK FAQ؟

لا يتغير شيء بالنسبة إلى زوارك. عند أدنى اختلاف بين المصدر والاستيراد، يُحذف كل ما استُورد وتواصل LNK FAQ عملها. وتعرض لوحة التحكم سبب الاختلاف وزر «إعادة محاولة الاستيراد». وفي متجر بثلاث لغات يضم 222 سؤالًا، جرى التحقق من الاستيراد على 84 صفحة مقارنة قبله وبعده، دون أي اختلاف.

هل عليّ تعديل قالبي؟

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

هل تُبطئ هذه الوحدة متجري؟

لا. في الواجهة، تحمّل ورقة أنماط بحجم 3.9 كيلوبايت بعد الضغط، وفي صفحة /faq وحدها سكربتًا بحجم 2.2 كيلوبايت للبحث. ولا تحمّل الصفحات الأخرى أي JavaScript من الوحدة: الأكورديون عنصر <details> أصلي في المتصفح. لا خطوط بعيدة، ولا CDN، ولا اتصال بأي خدمة خارجية.

هل تحتوي الوحدة على override للنواة؟

لا، لا تحتوي الوحدة على أي override، والمجلد override/ غير موجود. لذلك لا يمكن أن تتعارض مع أي وحدة أخرى على صنف من أصناف النواة، ولا يترك تحديث PrestaShop أي ملف يتيم.

ماذا يحدث مع كتالوج كبير؟

لا شيء خاص. لا تمرّ الوحدة على كتالوجك: توضع فئة الأسئلة الشائعة إما على كل صفحات المنتجات دفعة واحدة، وإما على المنتجات التي تحددها، ولا تقرأ الصفحة إلا الأسئلة التي تخصها. ويرشّح البحث في صفحة /faq الأسئلة الموجودة في الصفحة أصلًا، دون أي طلب إضافي.

هل سيقرأ Google أسئلتي؟

إنها منشورة لكي تُقرأ. كل صفحة تحمل أسئلة شائعة تتضمن كتلة بيانات منظَّمة FAQPage (schema.org)، كتلة واحدة في الصفحة، والأسئلة نص داخل HTML. ويبقى عرضها كنتيجة منسّقة قرارًا يعود إلى Google. وإذا كانت وحدة أخرى تنشر FAQPage في الصفحات نفسها، يوقف مفتاحٌ بياناتنا.

هل تعمل مع تعدد المتاجر وتعدد اللغات؟

نعم. ترتبط الفئات والأسئلة بالمتاجر عبر جداول الربط الأصلية في PrestaShop، ويُدخَل كل نص لغةً لغة. والسؤال المتروك فارغًا في لغة ما لا يُعرض بتلك اللغة. وتُسلَّم الوحدة بالفرنسية والإنجليزية والعربية، مع تخطيط من اليمين إلى اليسار.

هل يمكنني تغيير الألوان دون كتابة CSS؟

نعم. تشمل إعدادات المظهر لون التمييز، ولون العناوين ونص الإجابات والخطوط الفاصلة، وحجم العناوين والأسئلة والنص. والحقل المتروك فارغًا يحافظ على مظهر القالب. ويتاح للمدمجين أيضًا متغيرات CSS من نوع --lnk-faq-*.

ماذا يبقى إذا ألغيت تثبيت الوحدة؟

لا شيء. يحذف إلغاء التثبيت إعدادات الوحدة ومداخل قائمتها وجداولها، ومعها أسئلتك وإجاباتك. ويعرض PrestaShop تأكيدًا يذكر ذلك قبل التنفيذ: لإخفاء الأسئلة الشائعة فقط، عطّل الوحدة. أما بيانات LNK FAQ، إن كانت لديك، فتبقى سليمة.

هل تضع الوحدة ملفات تعريف ارتباط؟

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

أنتقل من الإصدار 1.x من الوحدة.

التحديث تلقائي. تنتقل فئاتك وأسئلتك إلى جداول الربط الأصلية الخاصة بتعدد المتاجر، ويحتفظ كل منها بمتجره وترتيبه، وتبقى نصوصك بكل لغة كما هي. ويقبل السؤال الآن 512 حرفًا بعد أن كان الحد 255. وفي PrestaShop 9، تنتقل الشاشات إلى لوحة تحكم Symfony.

سجل الإصدارات

6 إصدارات منشورة لـ PrestaShop

  1. الإصدار 2.9.0 PrestaShop 9

    فرع PrestaShop 9 (من 9.0 إلى 9.x، PHP من 8.1 إلى 8.4). لمتاجر PrestaShop من 1.7.6 إلى 8.x حزمتها الخاصة، الإصدار 2.1.0، بالميزات نفسها: لا يُسلَّم أي ملف Symfony إلى متاجر 1.7 و8، ولا تُثبَّت الحزمة 2.9.0 إلا على PrestaShop 9.

    الجديد

    • لوحة تحكم Symfony أصلية: جداول أصلية للفئات والأسئلة (تصفية، وفرز، وسحب وإفلات، وحالة، وحذف جماعي؛ وأسئلة فئة واحدة في كل مرة)، واستمارات Symfony بحقول قابلة للترجمة ومحرر نصوص منسّقة، وشاشة إعدادات. لم تعد الوحدة تتضمن أي AdminController أو HelperForm.
    • استيراد تلقائي من LNK FAQ (lnk_faq)، عند التثبيت أو التحديث: الكتل، والأسئلة، وكل اللغات (مطابَقة بـ id_lang)، في الصفحات نفسها، وبالترتيب نفسه، مع المظهر (الألوان) والنصوص حول الكتل. تُعاد قراءة كل نص مستورد ومقارنته لغةً لغةً ومتجرًا متجرًا. إذا تطابق كل شيء، تُعطَّل lnk_faq (دون إلغاء تثبيتها: تبقى بياناتها) وتأخذ FAQ Pro مكانها بالضبط في كل نقطة ربط. وعند أدنى اختلاف، يُحذف كل ما استُورد، وتواصل lnk_faq عملها، ويُعرض السبب مع زر «إعادة محاولة الاستيراد».
    • تمرّ الإجابات المستوردة بالمرشّح نفسه الذي يطبّقه حقل الإجابة (منقّي HTML، وisCleanHtml)؛ وتُدرج الإجابات التي تغيّرت تغييرًا ظاهرًا في التقرير.
    • إعدادات مظهر منفصلة: لون التمييز، ولون العناوين، ولون نص الإجابات، ولون الخطوط الفاصلة؛ وأحجام العناوين والأسئلة والنص؛ وشدة نص الإجابات، المطبَّقة في اللون ولا تُطبَّق بالشفافية أبدًا، مع تنبيه بشأن التباين تحت 100 %.
    • نصوص بكل لغة حول الكتل: السطر العلوي، والمقدمة، ونص رابط التواصل.
    • عنوان الكتلة حسب الاختيار: عنوان صفحة الأسئلة الشائعة أو اسم الفئة.
    • ترجمات بالفرنسية والإنجليزية والعربية (كتابة من اليمين إلى اليسار).
    • متغيرات CSS عامة --lnk-faq-* (accent وborder وmuted وgap وtitle-color وmuted-opacity وtitle-size وquestion-size وtext-size)، ترجع إلى الأساس المشترك لقوالب LNK (--lnk-accent و--lnk-border و--lnk-muted). وما زالت الأسماء القديمة --lnkfaq-* مقروءة.

    التعديلات

    • القائمة: شاشتا «الأسئلة الشائعة» و«فئات الأسئلة الشائعة» في المكان الذي تضع فيه وحدات LNK الأخرى شاشاتها: تحت «الوحدات»، أو تحت «Lnk - modules» ما دامت وحدة أخرى تستخدم هذا المدخل. لم تعد FAQ Pro تنشئه، وتزيله إذا بقي فارغًا.
    • تعدد المتاجر عبر جداول _shop الأصلية: ترتبط الفئات والأسئلة بالمتاجر عبر lnkfaq_category_shop وlnkfaq_question_shop. ينقل التحديث العمود القديم id_shop تلقائيًا؛ ويحتفظ كل سجل بمتجره، ويبقى ترتيب كل متجر كما هو.
    • يقبل السؤال 512 حرفًا (255 سابقًا).
    • كتلة بيانات FAQPage (schema.org) واحدة في الصفحة، حتى عندما تُعرض فيها عدة كتل أسئلة شائعة.
    • المتجر المحدَّث من 1.x يحتفظ بشدة 90 % لإجاباته، مطبَّقة الآن في اللون؛ ويبدأ التثبيت الجديد من 100 %.
    • عناوين ملفات CSS وJS الخاصة بالوحدة تحمل بصمة محتواها: بعد أي تحديث، لا تقدّم شبكة CDN ولا المتصفح النسخة القديمة.
    • القائمة: عنصر واحد «الأسئلة الشائعة». تُفتح الفئات من قائمة الأسئلة (زر «إدارة الفئات» في الترويسة، و«فئة جديدة» بجانب اختيار الفئة)؛ وعند عدم وجود أي فئة، تقود حالة فارغة إلى إنشاء الأولى. يبقى تبويبها مسجّلًا ومخفيًا من القائمة: لا تتغيّر صلاحيات الموظفين.

    الإصلاحات

    • البحث في الأسئلة الشائعة: كانت الكلمة المطابقة غير مرئية (أبيض على أبيض) عندما لا يُضبط لون مميز. صارت تُبرز بدرجة فاتحة من اللون المميز، أو بإبراز المتصفح، تحت نص يحتفظ بلونه: تباين مقيس من 7.7:1 إلى 15:1 على Classic وHummingbird، بالفرنسية والعربية.
    • عدّاد البحث: «النتائج: 1 من أصل 9» بدل «1 / 9 نتيجة»، مع صيغ الجمع الخاصة بكل لغة (0 و1 بالمفرد في الفرنسية)؛ وبالعربية صيغة دون مطابقة، صحيحة لأي عدد.
    • لم يعد تبويب لوحة التحكم الخاص بـ lnk_faq يُحذف عند التثبيت (خلل في 1.4.0: تشترك الوحدتان في اسم الصنف AdminLnkFaq).
    • يحافظ التحديث على نصوص الإعدادات بكل لغة؛ كان خلل يفرغها.
  2. الإصدار 2.1.0 PrestaShop من 1.7.6 إلى 8.x

    فرع PrestaShop من 1.7.6 إلى 8.x (PHP من 7.1 إلى 8.1). أصبح لـ PrestaShop 9 حزمته الخاصة، الإصدار 2.9.0، بالميزات نفسها: لا يُسلَّم أي ملف Symfony إلى متاجر 1.7 و8.

    الجديد

    • استيراد تلقائي من LNK FAQ (lnk_faq)، عند التثبيت أو التحديث: الكتل، والأسئلة، وكل اللغات (مطابَقة بـ id_lang)، في الصفحات نفسها، وبالترتيب نفسه، مع المظهر (الألوان) والنصوص حول الكتل. تُعاد قراءة كل نص مستورد ومقارنته لغةً لغةً ومتجرًا متجرًا. إذا تطابق كل شيء، تُعطَّل lnk_faq (دون إلغاء تثبيتها: تبقى بياناتها) وتأخذ FAQ Pro مكانها بالضبط في كل نقطة ربط. وعند أدنى اختلاف، يُحذف كل ما استُورد، وتواصل lnk_faq عملها، ويُعرض السبب مع زر «إعادة محاولة الاستيراد».
    • تمرّ الإجابات المستوردة بالمرشّح نفسه الذي يطبّقه حقل الإجابة (منقّي HTML، وisCleanHtml)؛ وتُدرج الإجابات التي تغيّرت تغييرًا ظاهرًا في التقرير.
    • إعدادات مظهر منفصلة: لون التمييز، ولون العناوين، ولون نص الإجابات، ولون الخطوط الفاصلة؛ وأحجام العناوين والأسئلة والنص؛ وشدة نص الإجابات، المطبَّقة في اللون ولا تُطبَّق بالشفافية أبدًا، مع تنبيه بشأن التباين تحت 100 %.
    • نصوص بكل لغة حول الكتل: السطر العلوي، والمقدمة، ونص رابط التواصل.
    • عنوان الكتلة حسب الاختيار: عنوان صفحة الأسئلة الشائعة أو اسم الفئة.
    • ترجمات بالفرنسية والإنجليزية والعربية (كتابة من اليمين إلى اليسار).
    • متغيرات CSS عامة --lnk-faq-* (accent وborder وmuted وgap وtitle-color وmuted-opacity وtitle-size وquestion-size وtext-size)، ترجع إلى الأساس المشترك لقوالب LNK (--lnk-accent و--lnk-border و--lnk-muted). وما زالت الأسماء القديمة --lnkfaq-* مقروءة.

    التعديلات

    • القائمة: شاشتا «الأسئلة الشائعة» و«فئات الأسئلة الشائعة» في المكان الذي تضع فيه وحدات LNK الأخرى شاشاتها: تحت «الوحدات»، أو تحت «Lnk - modules» ما دامت وحدة أخرى تستخدم هذا المدخل. لم تعد FAQ Pro تنشئه، وتزيله إذا بقي فارغًا.
    • النطاق المعلن: PrestaShop من 1.7.6 إلى 8.x. تنتقل متاجر PrestaShop 9 إلى الحزمة 2.9.0.
    • الإبقاء على لوحة التحكم الكلاسيكية (القوائم والاستمارات الأصلية في PrestaShop 1.7 و8)، بالميزات نفسها الموجودة في الفرع 9. وتظهر الإعدادات الجديدة وحالة استيراد LNK FAQ في صفحة إعدادات الوحدة.
    • تعدد المتاجر عبر جداول _shop الأصلية: ترتبط الفئات والأسئلة بالمتاجر عبر lnkfaq_category_shop وlnkfaq_question_shop. ينقل التحديث العمود القديم id_shop تلقائيًا؛ ويحتفظ كل سجل بمتجره، ويبقى ترتيب كل متجر كما هو.
    • يقبل السؤال 512 حرفًا (255 سابقًا).
    • كتلة بيانات FAQPage (schema.org) واحدة في الصفحة، حتى عندما تُعرض فيها عدة كتل أسئلة شائعة.
    • المتجر المحدَّث من 1.x يحتفظ بشدة 90 % لإجاباته، مطبَّقة الآن في اللون؛ ويبدأ التثبيت الجديد من 100 %.
    • عناوين ملفات CSS وJS الخاصة بالوحدة تحمل بصمة محتواها: بعد أي تحديث، لا تقدّم شبكة CDN ولا المتصفح النسخة القديمة.
    • القائمة: عنصر واحد «الأسئلة الشائعة». تُفتح الفئات من قائمة الأسئلة (زر «إدارة الفئات» في الترويسة، و«فئة جديدة» بجانب اختيار الفئة)؛ وعند عدم وجود أي فئة، تقود حالة فارغة إلى إنشاء الأولى. يبقى تبويبها مسجّلًا ومخفيًا من القائمة: لا تتغيّر صلاحيات الموظفين.

    الإصلاحات

    • البحث في الأسئلة الشائعة: كانت الكلمة المطابقة غير مرئية (أبيض على أبيض) عندما لا يُضبط لون مميز. صارت تُبرز بدرجة فاتحة من اللون المميز، أو بإبراز المتصفح، تحت نص يحتفظ بلونه: تباين مقيس من 7.7:1 إلى 15:1 على Classic وHummingbird، بالفرنسية والعربية.
    • عدّاد البحث: «النتائج: 1 من أصل 9» بدل «1 / 9 نتيجة»، مع صيغ الجمع الخاصة بكل لغة (0 و1 بالمفرد في الفرنسية)؛ وبالعربية صيغة دون مطابقة، صحيحة لأي عدد.
    • لم يعد تبويب لوحة التحكم الخاص بـ lnk_faq يُحذف عند التثبيت (خلل في 1.4.0: تشترك الوحدتان في اسم الصنف AdminLnkFaq).
    • يحافظ التحديث على نصوص الإعدادات بكل لغة؛ كان خلل يفرغها.
  3. الإصدار 1.4.0 PrestaShop من 1.7.6 إلى 8.x

    الجديد

    • تُنشأ أسئلة شائعة للبدء عند التثبيت: فئة واحدة، «الطلبات والتوصيل»، بثلاثة أسئلة، مترجمة إلى كل لغة مثبّتة في المتجر. توضع في صفحة الأسئلة الشائعة وفي صفحات المنتجات، لتُظهر الوحدة ما تفعله دون أي إعداد. ويقول النص صراحة إنه موجود ليُعدَّل، وإلغاء تحديد خانة واحدة في الفئة يزيل أحد الموضعين. ولا يُنشأ شيء في متجر لديه فئة أسئلة شائعة من قبل.

    المحذوفات

    • طبقة التوافق مع PrestaShop 1.6. بما أن النطاق المدعوم يبدأ من 1.7.6، كانت فروع 1.6 في Compat، وإعادة تعريف init() في متحكم الواجهة، والقالب faq16.tpl شيفرة لا يُوصل إليها، تُسلَّم مع ذلك إلى التجار وتوحي بدعم لا نقدّمه.
عرض 3 إصدارات سابقة
  1. الإصدار 1.3.1 PrestaShop من 1.7.6 إلى 8.x

    إصدار تصحيحي. لا تغيير في بنية قاعدة البيانات؛ يقتصر upgrade-1.3.1.php على إصلاح تسجيل نقاط الربط، ويُحتفظ بكل إعداد اختاره التاجر.

    التعديلات

    • أصبح إلغاء التثبيت يحذف جداول الوحدة، ومعها كل فئات الأسئلة الشائعة وأسئلتها. في السابق كان المحتوى يبقى بعد إلغاء التثبيت. يذكر ذلك بوضوح التأكيدُ الذي يعرضه PrestaShop قبل إلغاء التثبيت؛ لإخفاء الأسئلة الشائعة مع الاحتفاظ بالمحتوى، استخدم تعطيل.
    • أصبح النطاق المدعوم PrestaShop من 1.7.6 إلى 9.x، بعد أن كان يعلن 1.6. تستخدم الشيفرة public const، وهي صياغة PHP 7.1، و1.7.6 أول إصدار من PrestaShop يشترط PHP 7.1: على إصدار أقدم تتسبب الوحدة في خطأ صياغة في PHP، دون رفض سليم للتثبيت.
    • تُفتح الإجابات واحدة في كل مرة: يستخدم الأكورديون التجميع الأصلي details name، دون إضافة JavaScript.
    • انتقلت كل استعلامات SQL من متحكمات لوحة التحكم إلى المستودعات، وصارت استعلامات البحث عن المواضع الثلاثة المتشابهة استعلامًا واحدًا.

    الإصلاحات

    • لم يكن لصفحة /faq رابط قصير في PrestaShop 8. كانت الوحدة تتجاهل تسجيل أي نقطة ربط لا تعرف النواة اسمها مسبقًا، فبقيت moduleRoutes غير مسجلة في هذا الفرع. والنواة تنشئ السطر بنفسها، فلم يكن الشرط يمنع إلا تسجيلات كان PrestaShop سيقبلها. وتستعيد المتاجر التي على 1.3.0 نقطة الربط عبر سكربت التحديث.
    • قد لا تُفتح شاشات لوحة التحكم، مع الخطأ Attempted to load class "LnkFaqCategory" from the global namespace. كان محمّل الأصناف يتوقف بعد محمّل Composer عند وجود مجلد vendor/، وComposer لا يعرف إلا فضاء الأسماء LnkFaq\، فتبقى أصناف ObjectModel العامة في classes/ غير موجودة.
    • كانت كتلة الأسئلة الشائعة في صفحة CMS تُعرض دون تنسيق، وكانت روابط التذييل تفقد تنسيقها خارج صفحات الأسئلة الشائعة والرئيسية والمنتج والفئة. كانت ورقة الأنماط مقيّدة بقائمة ثابتة من أنواع الصفحات، أقدم من موضع CMS ومن كتلة التذييل.
    • كان التثبيت الفاشل يترك المتجر غير قابل للاستخدام: يسجّل PrestaShop الوحدة مثبّتة ومفعّلة دون مدخل في القائمة ولا نقاط ربط ولا إعدادات، ويرفض تثبيتها من جديد. لم تعد خطوات التثبيت تتوقف متسلسلة، ويُلتقط أي استثناء في أي خطوة ويُسمّى، ويتراجع الفشل عن كل ما نُفّذ.
    • التحديث من 1.1.0 أو 1.2.0 لم يكن يسجّل displayFooter أبدًا، فكانت كل فئة موضوعة في صفحة CMS غير مرئية دون أي تنبيه. أصبح upgrade-1.3.0.php يعيد ضبط نقاط الربط والتبويبات والإعدادات لكل متجر أقدم من 1.3.0.
  2. الإصدار 1.3.0 PrestaShop من 1.7.6 إلى 8.x

    أول إصدار مُتتبَّع في نظام إدارة الإصدارات؛ الإصدارات السابقة أقدم من المستودع ولا يُعاد بناؤها هنا.

    • صفحة أسئلة شائعة على الرابط /faq، مع بحث وبيانات schema.org من نوع FAQPage. - أسئلة مجمّعة في فئات، مترجمة لكل لغة ومرتبطة بمتجر. - وضع الفئة في صفحة الأسئلة الشائعة، أو الصفحة الرئيسية، أو صفحات المنتجات، أو صفحات الفئات، أو صفحات CMS: في كل صفحات النطاق، أو في صفحات مختارة. - روابط في التذييل، ورابط تواصل اختياري، ولون تمييز يأخذ افتراضيًا لون القالب.
  3. الإصدار 1.1.0 PrestaShop من 1.7.6 إلى 8.x
    • حلّت المواضع محل الإعداد الوحيد المثبّت في الشيفرة «الفئة المعروضة في صفحات المنتجات»؛ ويحوّل upgrade-1.1.0.php الإعدادات القديمة إلى مواضع، فتبقى الواجهة كما هي بعد التحديث. - انتقلت شاشات لوحة التحكم مباشرة تحت القائمة المشتركة «Lnk - modules»، بعد أن وضعها الإصدار 1.0.0 مستوى أعمق من اللازم فلم تكن تظهر.

سلتك

سلتك فارغة.