دليل المادة
如果 WordPress إن اختيار الإضافات الخاطئة قد يعطل موقعك الإلكتروني، بغض النظر عن مدى جمال الكود.
هذا ليس مبالغة. لقد رأيتُ الكثير من المواقع الإلكترونية التي كانت تعمل بشكل ممتاز، ولكن بعد إضافة بعض أجزاء من التعليمات البرمجية، قفزت سرعة الوصول من 0.8 ثانية إلى 3 ثوانٍ. وبعد بحثٍ مطوّل، تبيّن أن جزءًا معينًا من التعليمات البرمجية كان يُشغّل عددًا كبيرًا من الاستعلامات غير الضرورية في قاعدة البيانات.
لذا اليوم، دعونا نتحدث عن WPCode و Fluent Snippets، وهما مكونان إضافيان لإدارة مقتطفات التعليمات البرمجية يتم مقارنتهما غالبًا في مجتمع WordPress.
بصراحة، لقد استخدمتُ كليهما بكثرة، بل وساعدتُ أصدقائي على تجنّب بعض المشاكل. اليوم، سأشارككم جميع تجاربي الصادقة.
دعوني أبدأ ببعض المعلومات الأساسية.
توجد عدة طرق أساسية لإضافة أكواد مخصصة في ووردبريس. إحداها هي تعديل ملف functions.php الخاص بالقالب مباشرةً، وهي طريقة بسيطة وسهلة، ولكن جميع البيانات تُفقد مع كل تحديث؛ طريقة أخرى هي استخدام قالب فرعي، وهي أفضل قليلاً، ولكنها لا تزال تتطلب تكاليف صيانة أعلى؛ وطريقة ثالثة هي إيجاد إضافة موثوقة لإضافة مقتطفات من الأكواد، وهي أكثر أمانًا في الإدارة والتنفيذ.
WPCode و Fluent Snippets هما هذان المتنافسان.
كود WPCodeإنه منتج عريق، صنعه فريق WPCode، ولطالما حظي بسمعة طيبة في مجتمع ووردبريس.
مقتطفات سلسةمنتج آخر من فريق WPManageNinja - نعم، نفس الفريق الذي صنع FluentCRM.
دوى الصوت.

خبرة في التحرير
يستخدم WPCode محرر ACE، الذي يبدو، بصراحة، كأداة تقليدية على غرار ووردبريس. صحيح أنه يدعم تمييز الأكواد، لكن أسلوبه متحفظ نوعًا ما؛ فلا تتوقع إكمالًا تلقائيًا للأكواد. إذا كنت معتادًا على VS Code، فاستخدامه هنا سيشعرك بالارتباك وكأنك عدت خمس سنوات إلى الوراء.
أصبحت مقتطفات Fluent مختلفة الآن أيضًا، حيث تتصل مباشرة بمحرر Monaco.
نعم، إنه نفس محرر VS Code. تمييز الكود، والإكمال التلقائي، وتلميحات بناء الجملة - التجربة بأكملها تكاد تكون مطابقة لكتابة الكود محليًا. في أول استخدام لي له، أعجبت به فورًا. شعرت وكأنني أقول: "أخيرًا، إضافةٌ قادرة على أداء وظيفة محرر نصوص جيدة!"
لكن السؤال هنا: هل استخدام برامج التحرير أفضل دائمًا؟
غير مؤكد.
أعرف صديقًا في شنتشن يدير موقعًا إلكترونيًا متخصصًا في المحتوى. إنه صاحب الموقع بمفرده، ويتولى صيانته لأكثر من ثلاثين موقعًا. أخبرني أنه يعشق WPCode. لماذا؟ ببساطة، لأنه بمجرد فتح لوحة التحكم، والنقر بضع مرات، يظهر الكود، وانتهى الأمر. لا يحتاج إلى أي ميزات معقدة؛ بل يحتاج إلى الاستقرار والتشغيل الخالي من الأخطاء.
لقد أثرت بي تلك الجملة حقاً في ذلك الوقت.
نعم، محرر موناكو رائع، لكن ميزاته محدودة. ومع ذلك، بالنسبة لشخص يدير أكثر من ثلاثين موقعًا يوميًا، فإن عملية التعلم بحد ذاتها تُشكل عبئًا.
شكرا جزيلا
بعد مناقشة موضوع المحرر، دعونا ننتقل إلى شيء أكثر جدية.
كود WPCodeيتم تخزينها في قاعدة بيانات؛ جميع المقتطفات مخزنة في جدول `wp_options`. تتضمن كل عملية قراءة استعلامًا في قاعدة البيانات، وفي سيناريوهات التزامن العالي، يمكن أن يتراكم عدد هذه الاستعلامات.
مقتطفات سلسةيتم تخزين مقتطفات الشفرة كملفات PHP في الدليل wp-content/fluent-snippets/. يقوم ووردبريس بتضمينها مباشرةً أثناء التنفيذ، متجاوزًا استعلامات قاعدة البيانات.
من الناحية النظرية، يعتبر تخزين الملفات أسرع وأكثر أماناً.
لأن تخزين الملفات يعزل بطبيعته خطر حقن SQL، فلا توجد أجزاء من التعليمات البرمجية في قاعدة البيانات يمكن حقنها.
لكن هناك "لكن".
يُعاني تخزين الملفات أيضًا من مشاكله الخاصة. ففي كل مرة يتم فيها تحديث جزء الكود، يلزم الحصول على أذونات كتابة الملفات. وإذا كان الخادم مُهيأً بشكل غير صحيح، أو في بيئات استضافة افتراضية خاصة، فقد تواجه عملية كتابة الملفات مشاكل. في السابق، اشتكى أحد المستخدمين في مجموعة من أن الكود لم يعمل بعد تحديث جزء الكود، وبعد التحقيق، تبيّن أن المشكلة تكمن في أذونات الملفات.
لذلك لا يوجد حل سحري؛ لكل حالة ظروفها الخاصة.
شروط التحميل
وهنا يكمن الاختلاف الأكثر وضوحًا بين الإضافتين.
يُعدّ التحميل المشروط في WPCode بسيطًا للغاية، إذ يدعم التحميل في المقدمة والخلفية. كما يمكنك تفعيله أو تعطيله على مستوى النظام. الأمر بهذه البساطة.
تُعدّ خاصية التحميل المشروط في Fluent Snippets مذهلة؛ إذ يُمكن تطبيقها بناءً على دور المستخدم، وقواعد عناوين URL، ونوع الجهاز، وحتى الحقول المخصصة. إنّ احترافيتها لا تُضاهى.
هل هذا صحيح؟
هذا يعني أنه يمكنك التحكم بدقة متناهية. على سبيل المثال، "لا يمكن تحميل الكود إلا إذا كان عنوان URL الخاص بالجوال يحتوي على /product/ ولم يكن المستخدم مسجلاً دخوله". هذا النوع من الشروط يكاد يكون مستحيلاً تحقيقه في WPCode، ولكنه ميزة قياسية في Fluent Snippets.
بالطبع، هناك تكاليف مرتبطة بذلك. فكلما زاد تعقيد التكوين، ارتفعت تكلفة الصيانة. وبعد ستة أشهر، عندما تراجع الشروط والقواعد التي وضعتها، قد لا تتمكن حتى من فهمها.
مشاعري
يُشبه برنامج WPCode سكين الجيش السويسري: فهو كافٍ ومستقر، لكن وظائفه لها حدود.
تُشبه مقتطفات Fluent صندوق أدوات احترافي؛ يمكنك فعل المزيد، ولكنك تحتاج إلى معرفة ما تفعله.
بصراحة، هذان الاثنان ليسا منافسين متقاربين على الإطلاق.
إذا كنت تدير موقعًا شخصيًا أو مشروعًا صغيرًا، فإن WPCode كافٍ. تكمن قيمته الأكبر في إدارة الكود بشكل جيد، وتجنب الأخطاء، وضمان التشغيل المستقر.
إذا كنت تحقق عمليات دقيقة، أو إذا كان موقعك يحتوي على منطق أعمال معقد، فإن التحميل المشروط لأجزاء التعليمات البرمجية السلسة يمكن أن يكون بالفعل منقذًا للحياة.
التطبيق العملي: لا يمكن لأنواع المحتوى استدعاء الرموز المختصرة مباشرةً
حسنًا، الآن وقد غطينا المقارنات الأساسية، فلننتقل إلى بعض الأمثلة العملية.
يقوم العديد من الأشخاص بإنشاء مقتطف من نوع المحتوى في Fluent Snippets ثم يكتبون رموزًا مختصرة فيه.
استعارة
[你好wp]هذا صحيح.
قلت: لقد وقعت في هذا الفخ من قبل.
يدعم Fluent Snippets تصنيفات واضحة للقصاصات البرمجية: PHP، وContent، وCSS/JS. إذا كانت قصاصتك البرمجية من نوع Content (PHP+HTML)، فيمكنك إدخال رمز WordPress المختصر بداخلها.
[你好wp]لن يقوم بتحليلها؛ بل سيقوم فقط...
[你好wp]يتم إخراج هذه الأحرف تمامًا كما كانت.
إنه مجرد نص عادي، وليس ناتجًا مختصرًا.
لتنفيذ الكود المختصر فعليًا، يجب استخدام دالة PHP `do_shortcode()` لتجاوزه. الصيغة كالتالي:
<?php echo do_shortcode('[你好wp]'); ?>
سيقوم ووردبريس بعد ذلك بتحليل الكود المختصر وإخراج المحتوى المقابل.
استغرق الأمر مني وقتاً طويلاً لأفهم هذا الأمر؛ لم يكن مذكوراً بوضوح في الوثائق.
إذا كان جزء الكود الخاص بك يستخدم نوع PHP، فالأمر أبسط: ما عليك سوى كتابة `return` في الدالة، وتسجيلها باستخدام `add_shortcode`، وسيعمل الكود المختصر بشكل صحيح. لا يوجد أي لبس؛ تكمن المشكلة فقط في نوع `Content`.
أظن أن مطوّر هذه الخاصية افترض أن نوع المحتوى هو HTML في المقام الأول، وأن الرموز المختصرة تُعالج باستخدام PHP، ولذا لم يُذكر ذلك صراحةً في واجهة المستخدم. مع ذلك، عمليًا، يستخدم الكثيرون كلا الطريقتين بشكل متبادل، مما يُسبب مشاكل.
استنتاج
كود WPCodeلمن يناسب هذا البرنامج؟ للمواقع الصغيرة ذات الاحتياجات البسيطة، ولمن لا يرغبون ببذل جهد كبير. فهو جاهز للاستخدام فورًا، ولا يتطلب الكثير من التعلم، كما يسهل حل مشكلات النمو.
مقتطفات سلسةلمن يناسب؟ المواقع الإلكترونية متوسطة إلى كبيرة الحجم ذات عناصر تحكم شرطية معقدة وتركيز على الأداء. تخزين الملفات يعني سرعات تنفيذ أسرع، والتحميل الشرطي يعني تحكمًا أدق، ومحرر موناكو يعني تجربة تطوير أكثر سلاسة.
بالطبع، هذا مبني على افتراض أنك على استعداد لدفع تكلفة تجارب التعلم "الأكثر" تنوعًا.
بصراحة، إذا كنت تضيف فقط رمز Google Analytics أو إشعار حقوق الطبع والنشر إلى مقالتك، فإن WPCode مناسب تمامًا. لا داعي حقًا لعناء Fluent Snippets للحصول على "محرر أفضل".
ومع ذلك، إذا كان موقعك يتطلب اختبار A/B ويحتاج إلى تحميل أكواد مختلفة حسب الجهاز أو دور المستخدم أو نوع الصفحة، فإن التحميل المشروط لأجزاء الكود السلسة يمكن أن يوفر الكثير من التقدير اليدوي والبرمجة الثابتة.
شيء أخير.
الأدوات ليست سوى وسائل؛ تكمن قيمتها الحقيقية في حقيقة أنه لا يمكنك تحقيق أقصى استفادة من إمكانياتها.
يُعدّ WPCode أداة شائعة تتميز بالاستقرار وسهولة الاستخدام، وهي مناسبة للنشر السريع. أما Fluent Snippets فهي أداة احترافية توفر أداءً أقوى، وتحكمًا أكثر مرونة في الشروط، وهي مناسبة للمطورين والمواقع الإلكترونية المعقدة.
إن اختيار الإضافات لا يتعلق باستعراض مهاراتك، بل يتعلق بجعل موقعك الإلكتروني أكثر استقرارًا وسرعة وأمانًا.
أعتقد جازماً أن ما يناسبك هو الأفضل، وليس بالضرورة ما يحتوي على ميزات أكثر أو ما هو أقوى.
ملخص جملة واحدة
- موقع صغير، متطلبات بسيطة → كود WPCode
- موقع كبير، نظام تحكم معقد في الظروف →أجزاء ناعمة
وأخيرًا، إليكم نصيحة: أفضل طريقة للاستكشاف هي اكتساب الخبرة العملية وتشغيل الكود. لا تكتفوا بحفظه دون ممارسة، يا جماعة!
مدونة Hope Chen Weiliang ( https://www.chenweiliang.com/ قد تكون المقالة "WPCode vs Fluent Snippets: أيهما أفضل؟ مقارنة بين الإضافات وبرنامج تعليمي عملي" التي تمت مشاركتها هنا مفيدة لك.
مرحبا بكم في مشاركة رابط هذه المقالة:https://www.chenweiliang.com/cwl-34009.html
