استفاده از سیستمهای آماده مدیریت محتوا باوجود سریعتر جلو بردن کار شما، مشکلاتی را نیز در این مسیر برای شما بوجود میآورند که پیش از این یکی از رایجترین مشکلات وردپرس را به همراه چند راهکار معرفی کردیم. هماکنون هم در این بخش تلاش شده تعدادی از مشکلات رایج در سیستم مدیریت محتوای وردپرس را ارائه کنیم که در صورت بروز آنها بتوانید در کمترین زمان ممکن مشکل خود را برطرف نمایید.
خطای بارگذاری تصاویر در وردپرس
ممکن است برای شما نیز پیش آمده باشد که قصد آپلود تصویر در وردپرس را داشتهاید که با مشکل مواجه شدهاید! این مشکل را میتوان از دو منظر مورد بحث قرار داد؛ مورد اول را میتوان از این نگاه بررسی کرد که ممکن است شما تنها نیاز به آپلود تصاویر دارید در اینصورت با مشکل موقتی مواجه میشوید که در اینصورت معمولا با بارگذاری مجدد صفحه آپلود تصاویر شما آپلود میشوند و دیگر مشکلی وجود نخواهد داشت. اما گاهی این مشکل موقتی نیست و به صورت دائم در سایت وردپرسی شما مشاهده میشود که با بارگذاری صفحه یا موارد نظیر آن برطرف نمیشود و باید به دنبال راه حل اساسی باشید.
تغییر سطح دسترسی پوشه تصاویر
یکی از پوشههای موجود در پوشه wp-content پوشه Uploads است که درون آن پوشهای به نام images وجود دارد که ممکن است این خطا بخاطر سطح دسترسی آن باشد؛ در اینصورت باید سطح دسترسی پوشه یا همان File Premissions را بر روی ۷۷۷ قرار دهید تا مشکل آپلود تصاویر برطرف شود.
خطای HTTPS
یکی از مشکلاتی که سبب عدم آپلود تصاویر در وردپرس میشود خطای https است که از دو طریق حل میشود.
راه حل اول: حذف کش مرورگر و پوشه JS-Cache
کش مرورگر یا حافظه پنهان به سرعت لود سایت شما تا ۷ برابر کمک میکند که زمان سایت شما را تا هفت برابر کاهش میدهد که تایم کمی نیست. اما گاهی عدم آپلود تصاویر به خاطر وجود این قابلیت است که نیاز به حذف کش مرورگر یا کش وبسایت وردپرس خود دارید. برای حذف کش مرورگر خود میتوانید از طریق آدرس زیر اقدام کنید تا به حل مشکل خود یاری رسانید:
Option > Advanced > Network > Cached Web Content > Clear Now
اما اگر با راه حل بالا مشکل شما برطرف نشد میتوانید کش سایت وردپرس خود را حذف کنید. برای اینکار تمامی فایلهای درون پوشه JS-cache را پاک کنید که از آدرس زیر در هاست قابل دسترسی است:
public_html/wp-content/uploads/js_cache
راه حل دوم: رفع مشکل mod_security در هاست
اگر با مرحله اول مشکل شما پایان نیافت، راه حل دوم را پیش بگیرید. راه حل دوم رفع مشکل آپلود تصاویر از طریق mod_security است که میتوانید آموزش آن را دنبال کنید. در این راهحل خطای HTTP را حذف میکنیم که جای هیچگونه نگرانی نیست و با اضافه کردن کد زیر در فایل .htaccess میتوانید مشکل را رفع کنید:
SecFilterEngine Off
SecFilterScanPOST Off
</If Module>
قبل از هرگونه اعمال تغییرات در کد فایل های وردپرس نسخه پشتیبان از همان فایل را تهیه کنید تا در صورت وقوع مشکل بتوانیید آن را رفع کنید
خطای محدودیت زمانی وردپرس
محدودیت زمانی در وردپرس در واقع نوعی خطا نیست اما گاهی مشکلاتی را نیز به وجود میآورد؛ جالب است بدانید محدودیت زمانی در وردپرس امنیت کاربر را نیز تامین میکند، زیرا در هنگام نصب یا بروزرسانی در قالب و افزونههای وردپرس درگاههای سایت باز است و راهی بسیار راحت برای نفوذ هکران به سایت وردپرسی شما است که وردپرس با قرار دادن این محدودیت نفوذ از این طریق را بسیار کاهش میدهد. با این حال اگر احساس میکنید این مورد مشکلاتی را برای شما بوجود آورده است میتوانید محدودیت آن را بردارید. برای اینکار میتوانید زمان آن را افزایش دهید که برای اینکار کافی است میتوانید از افزونه WP Maximum Execution Time Exceeded استفاده کنید و یا قطعه کد زیر را در فایل .htaccess قرار دهید:
php_value max_execution_time 300 OR 600
با استفاده از افزونه یا کد بالا زمان مورد نظر تا ۳۰۰ یا ۶۰۰ ثانیه افزایش پیدا میکند و دیگر مشکلی وجود نخواهد داشت.
یکی از مشکلاتی که وبمستران و بهخصوص کاربران وردپرسی با آن مواجه هستند، راهبرد مرورگرهای مختلف است که هر یک به یک سمت و سو حرکت میکنند.
به طور مثال مرورگر کروم سعی در ذخیرهسازی اطلاعات ورود دارد ولی وردپرس سعی میکنند که مرورگر را از هرگونه اطلاعات در این زمینه تخلیه کند که در اینصورت این دو با هم در تداخل هستند و با مشکل مواجه میشوند. اگر از مرورگر کروم استفاده میکنید میتوانید با مراحل زیر مشکل را برطرف کنید.
راه حل اول: یکی از راههایی که در این زمینه وجود دارد تغییر عملکرد جاوا اسکریپت است تا این تداخل را از میان راه خود کنار بزنید. برای اینکار کافی است قطعه کد زیرا را به فایل Function.php قالب خود اضافه نمایید:
add_action("login_form", "kill_wp_attempt_focus");
function kill_wp_attempt_focus() {
global $error;
$error = TRUE;
}
با کد بالا دیگر تداخلی میان عملکرد جاوا اسکریپت مرورگر و وردپرس وجود نخواهد داشت اما گاهی این کد نیز کار ساز نمیشود که در اینصورت به راه حل دوم مراجعه کنید.
راه حل دوم: اگر راه حل اول پاسخگو نبود به سراغ این راه حل بیایید که معمولا با این کد مشکل کاربران حل میشود. برای استفاده از این روش نیز کد زیر را در فایل Function.php قالب خود قرار دهید:
add_action("login_form", "kill_wp_attempt_focus_start");
function kill_wp_attempt_focus_start() {
ob_start("kill_wp_attempt_focus_replace");
}
function kill_wp_attempt_focus_replace($html) {
return preg_replace("/d.value = '';/", "", $html);
}
add_action("login_footer", "kill_wp_attempt_focus_end");
function kill_wp_attempt_focus_end() {
ob_end_flush();
}
با کد بالا قطعا مشکل شما که همان تداخل میان وردپرس و مرورگر گوگل کروم است برطرف خواهد شد.
نتیجهگیری: در سیستمهای مدیریت محتوای مختلف در کنار مزیتهای منحصر به فرد ممکن است مشکلاتی نیز برای شما بوجود آید که در اینصورت باید با نحوه رفع آنها آشنا باشید تا بتوانید در کمترین زمان ممکن اقدام به رفع آنها کنید!
Leave a comment