أشهر مشاكل رفع الصور وطرق حلها في الووردبريس

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

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

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


أشهر مشاكل رفع الصور في الووردبريس

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

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

والآن دعنا نستعرض أشهر المشاكل التي يمكن أن تواجهك أثناء رفع الصور إلى موقعك الووردبريس وطرق حلها:

أولًا: خطأ في حجم الصورة

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

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

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

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

بعدها اضغط على زر "I understand. Enable this Editor." للإكمال.

سيظهر في الصفحة التالية محتوى ملف .htaccess الخاص بموقعك مع إمكانية التعديل عليه. فقط أضف في نهاية الملف قبل سطر "# END WordPress"، السطور البرمجية التالية:

php_value post_max_size 256M
php_value memory_limit 512M
php_value max_execution_time 300
php_value max_input_time 300

لا تنسى حفظ التعديل عبر الضغط على زر "Save Changes". كما يمكنك تعديل القيم كيفما تشاء، وبحسب ما يمكن لخادم الاستضافة السماح به.

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


ثانيًا: خطأ HTTP

يعتبر هذا الخطأ من الأخطاء واردة الحدوث كثيراً نتيجة تعدد أسباب حدوثه. وبالرغم من أن هذا الخطأ يبدو للوهلة الأولى مبهماً بسبب عدم وجود أي رمز أو رسالة تدل على نوعه أو سببه؛ إلا أن حله قد يكون بسيط.

إليك أهم أسباب وحلول خطأ HTTP:

1. مشكلة في الاتصال بالموقع

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

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

2. محدودية ذاكرة PHP

إن ضعف الذاكرة المستخدمة لتشغيل موقعك على خادم الاستضافة، والمعروفة باسم ذاكرة PHP (ذاكرة مختلفة عن التي رفعنا قيمتها سابقاً)؛ قد يكون سبب مشاكل رفع الصور في موقع الووردبريس وظهور خطأ HTTP.

حيث إن محاولة رفع صور كثافة بكسل عالية (مثلاً 3000 × 2000)، لن يستطيع الخادم معالجتها بسبب ضعف حجم الذاكرة التي يملكها.

لحل هذه المشكلة، يجب بالطبع زيادة حجم هذه الذاكرة. وزيادتها تكون بإضافة السطر البرمجي التالي إلى نهاية ملف .htaccess عبر إضافة Htaccess File Editor كما شرحنا سابقاً في المقال:

define( 'WP_MEMORY_LIMIT', '256M' );

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

3. عدم القدرة على المعالجة المتعددة

افتراضياً، يستخدم الووردبريس محرري الصور GD Library وImagick؛ اللذان يدعمان المعالجة المتعددة لمعالجة الصور بشكل أسرع. ولكن لا تدعم كل شركات الاستضافة هذه الميزة؛ الأمر الذي يؤدي لوقوع خطأ HTTP.

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

SetEnv MAGICK_THREAD_LIMIT 1

كما تستطيع حل المشكلة بطريقة أخرى، وذلك عبر استخدام "أداة الرفع من المتصفّح" لرفع الصور بدل استخدام محرري الصور GD Library وImagick الافتراضيين.

4. جدار الحماية في الخادم

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

<IfModule mod_security.c> 
SecFilterEngine Off 
SecFilterScanPOST Off 
</IfModule>

5. تعارض بين في الإضافات

قد يحدث أحياناً تعارض في عمل الإضافات فيما بينها ومع نظام الووردبريس، مما يؤدي لمنع رفع الصور وحدوث خطأ HTTP.

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

6. مشكلة في القالب

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

7. ذاكرة التخزين المؤقت

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


ثالثًا: معرض الوسائط فارغ

تحدث هذه المشكلة نتيجة خلل في أذونات مجلد الرفع (uploads) الذي يحتوي الصور، حيث لا تظهر الصور في معرض الصور الموجود في لوحة تحكم الووردبريس بسبب عدم منح الأذون المناسبة للوصول له.

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

لحل هذه المشكلة يجب إعادة منح الأذون اللازمة للوصول والقراءة والكتابة إلى مجلد الرفع الخاص بالصور. ويمكن القيام بذلك عبر الاتصال بالاستضافة من خلال برنامج FileZilla الذي يستخدم بروتوكول نقل الملفات FTP. ومن ثم تحديد مجلد "uploads" الموجود ضمن مجلد "wp_content".

ومن القائمة التي تظهر عند الضغط على زر الفأرة الأيسر، اختر "خصائص الملف...". ومن نافذة الخصائص، نعين "القيمة العددية" إلى 755 أو 744 (جرّب القيمة الأخرى إن لم تُصلح الأولى الخطأ)، ومن ثم نضغط زر "حسنا".

تستطيع تنفيذ نفس الحل ولكن من خلال التوجه إلى لوحة التحكم cPanel الخاصة بالاستضافة[11] ، ومنها إلى مدير الملفات File Manager، ومن ثم تحديد ملف uploads وتعديل أذوناته عبر تعديل القيمة العددية مثلما شرحنا قبل قليل.


رابعًا: لا يمكن رفع الصور لأسباب أمنية

في حال حاولت رفع صورة إلى مكتبة الوسائط ولم يسمح لك برفعها، وظهرت لك رسالة الخطأ "عذرًا، غير مسموح لك بتحميل هذا النوع من الملفات."، فقد يكون صيغة هذه الصورة ممنوعة (مثل الصيغة .svg) من الرفع من قِبل نظام الووردبريس.

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

لتجاوز هذه المشكلة يمكنك ببساطة تنصيب إضافة Enhanced Media Library في موقعك. يمكنك الاطلاع على دليل تنصيب الإضافات لمعرفة كيفية تنصيب الإضافة.

بعد تنصيب الإضافة يمكنك الانتقال في لوحة تحكم الووردبريس إلى قسم "الإعدادات"، ومن ثم "الوسائط"، ومنها إلى تبويب "MIME Types". حيث ستجد كل أنواع ملفات الوسائط (صور، فيديوهات، صوت.. إلخ) المسموح بها مدرجة في قائمة طويلة.

إن لم تكن صيغة الصورة التي تريد رفعها موجودة ضمن القائمة، يمكنك إضافتها عبر الضغط على زر "Add New MIME Type +"، وبعد الانتهاء من التعديلات لا تنسى حفظها عبر الضغط على زر "حفظ التغييرات".


حلول أخرى يمكن تجربتها

إن كانت مشكلة رفع الصور التي تحصل في موقعك الووردبريس غير مدرجة ضمن القائمة السابقة، أو إن لم تنفع معك حلول المشاكل السابقة فإليك قائمة بحلول عامة يمكنك تجربتها لإصلاح الخلل:

  • إعادة تسمية الصورة: قد يسبب اسم الصورة أحياناً مشكلة إن احتوى على أحرف خاصة (مثل: ñ، á، é) أو رموز (مثل: $، &، *). يكون الحل ببساطة عبر تغيير اسم الصورة، مع محاولة عدم تضمين أية رموز وأحرف خاصة.
  • تحديث إصدار PHP: يمكن أن تحدث مشاكل رفع الصور إذا كان إصدار الـ PHP في الخادم 7.3 أو أقل. حيث إنه يفضل أن يكون الإصدار برقم 7.4 فأعلى. بعض الاستضافات تتيح إمكانية تحديث إصدار PHP من لوحة تحكم الاستضافة cPanel، أو يمكنك التواصل مع شركة الاستضافة لمساعدتك.

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

مؤسس موقع ووردبريس بالعربية، وخبير في بناء وإدارة الأعمال عبر الإنترنت والتسويق عبر المنصات الرقمية.