برای اینکه واقعا در کاری خبره شوید، باید آن را از هم جدا کنید و دوباره سرهم کنید. مکانیکها این کار را با ماشینها انجام میدهند؛ متخصصان کامپیوتر این کار را با هارد دیسک و مادربرد انجام میدهند؛ و گیمرها این کار را با سیستمهای قدیمی و دستگاههای بازی پیشرفته انجام میدهند.
در WP Engine، این کار را با وردپرس انجام میدهیم.
تیمی کوچک از ما به تازگی رویدادی به نام «شکستافکنی» برگزار کردیم که در آن با ایجاد اختلالات عمدی در وردپرس، تیم پشتیبانی خود را آموزش میدهیم. به این ترتیب، اگر در محیط مشتری با چنین مشکلاتی مواجه شویم، دانش لازم برای حل آنها را خواهیم داشت. همه چیز در مورد یادگیری از طریق عمل است.
در این مسابقهی شکستن رکورد، رکوردها بر اساس معیارهای زیر داوری شدند:
- باید چیزی را آموزش میداد که بیشتر با عمل یاد گرفته میشود تا خواندن یا شنیدن از قبل.
- مهارت یا دانشی که کسب میشود باید بهطور گسترده قابل استفاده در بیش از یک شکست خاص باشد.
- این باید در دنیای واقعی بهعنوان یک مسئله رایج یا واقعگرایانه مرتبط باشد (این در نهایت یک تمرین آموزشی بود).
دهها درخواست برای استراحت ارسال شد، در اینجا ۱۱ درخواست برتر آمده است:
- حداکثر حافظه مجاز وردپرس خیلی کم است. اگر این تنظیم مقدار حافظه بسیار کم است و ممکن است عملیات در wp-admin با کمبود حافظه مواجه شوند. گاهی اوقات افزونهها یا پوستهها این مقدار را با استفاده از تابع ini_set() در PHP تنظیم میکنند که یافتن آن میتواند دشوار باشد.
- نقل قولهای «پیچیده» یا «فرفری» به طور مخفیانه در فایل wp-config قرار داده شدهاند. این حشرات کوچک لعنتی همیشه در وبسایتها ظاهر میشوند و اگر کد حاوی آنها را کپی و پیست کنید، میتواند همه چیز را به هم بریزد.
- ریداکشن جاوااسکریپت به موبایل افزونهها معمولا باعث تغییر مسیر میشوند، اما گاهی جاوااسکریپت به محتوای یک پست یا صفحه خاص اضافه میشود. پیدا کردنش ممکن است سخت باشد، اما خوشبختانه رفع آن آسان است.
- خطای اتصال به پایگاه داده این مشکل معمولا به دو دلیل پیش میآید: خرابی MySQL یا تنظیمات نادرست در فایل wp-config.php. در این مورد خاص، روی مورد دوم تمرکز کردیم، چون رایجتر است. البته تدابیر و اسکریپتهایی برای جلوگیری از این مشکل داریم، اما آگاهی از آن مفید است.
- خطای فاجعهبار PHP در افزونه یا پوسته این خطاها معمولا در لاگ خطای آپاچی/PHP به وضوح نمایش داده میشوند. ممکن است ناشی از تفاوت نسخههای PHP یا صرفا کد نویسی غلط PHP باشد.
- دادههای خودکار بارگذاری شدهی بیش از حد وردپرس (یا افزونهها و پوستهها) برخی اطلاعات در جدول «options» را برای هر بار بارگذاری صفحه مهم میداند (autoload=‘yes’). اما گاهی اوقات این اطلاعات بیش از حد میشود و سرعت سایت را به شدت کاهش میدهد. گاهی اوقات نیز افزونهها پس از غیرفعال یا حذف شدن، دادههای زیادی را در پایگاه داده باقی میگذارند. در این موارد، راهحل ساده است: فقط سطرهای مشکلساز پایگاه داده را حذف کنید.
- فایل .htaccess گم شده است. بازنویسیهای اینجا بسیار مهم هستند، بهخصوص برای استفاده وردپرس از پیوندهای یکتا یا آدرسهای اینترنتی زیبا. اگر فایل htaccess حذف شود چه اتفاقی میافتد؟ معمولا خطاهای ۴۰۴ غیرمنتظره رخ میدهد که برای هیچکس خوشایند نیست. خوشبختانه، این یک… راهحل خیلی آسانی است .
- لینکهای نامناسبمشابه مشکل قبل، اگر تنظیمات نادرستی در پایگاه داده ذخیره شود پیوندهای دائمی ممکن است چیزهای عجیبی در آدرسهای وب سایت خود ببینید. همیشه بررسی تنظیمات پیوندهای ثابت در رفع مشکلات مربوط به آدرسها مفید است.
- نوار مدیریت پس از ورود نمایش داده نمیشود. گاهی اوقات (به هر دلیلی)، یک پوسته یا افزونه ممکن است دستوری مانند show_admin_bar(false) را در کد خود قرار دهد. چرا؟ نمیدانیم، اما چنین اتفاقی میافتد. برخی افزونهها حتی ممکن است بهطور خاص برای این کار طراحی شده باشند (به چه دلایلی؟)!
- اجازه کافی ندارید (در پنل مدیریت وردپرس)اغلب این مشکل به دلیل تنظیمات نادرست در usermeta است. دقت در جزئیات در اینجا بسیار مهم است؛ گاهی فقط چند کاراکتر از پیشوند پایگاه داده قبلی متفاوت است!
- نوع MIME اشتباه در فایل .htaccessآیا سایت شما به جای نمایش صفحه در مرورگر، فایلی را دانلود میکند؟ مشکل ممکن است از تنظیمات htaccess شما باشد.
خراب کردن (و سپس تعمیر) وردپرس یکی از راههای پیشتاز ماندن ما و تقویت تخصص وردپرسیمان است تا بتوانیم بهتر به مشتریانمان خدمت کنیم. ماراتن خرابکاری موفقیت چشمگیری داشت.