افزونه Yoast SEO وردپرس نسخه 19.7 حاوی یک تضاد با سایر افزونه ها بود که منجر به خطاهای مرگبار در وب سایت ها شد.
این سومین بار در سال جاری است که درگیری با یک افزونه دیگر باعث میشود بهروزرسانی Yoast با شکست مواجه شود.
خوشبختانه Yoast گزارش ها را بررسی کرد و به سرعت یک به روز رسانی جدید منتشر کرد که مشکل را برطرف کرد.
خطای مرگبار وردپرس
دلایل متعددی برای یک خطای مرگبار وجود دارد، اما در این وضعیت به دلیل به روز رسانی Yoast SEO که در آن کدنویسی با افزونه دیگری در تضاد بود، ایجاد شد.
این ممکن است به این دلیل اتفاق بیفتد که دو افزونه سعی در انجام کاری دارند، اما یکی اساساً دیگری را لغو می کند یا در غیر این صورت مانع از عملکرد یکدیگر می شود.
یک استعاره برای تضاد پلاگین می تواند دو اتومبیل در جهت مخالف در یک جاده اتومبیل باشد.
در حالت ایدهآل، یک پلاگین برای سایر افزونهها، بهویژه پلاگینهای رایج، در کدنویسی خود محدودیتهایی ایجاد میکند، به طوری که هیچ یک از افزونهها سعی نمیکنند کاری انجام دهند که دیگر پلاگینها را از انجام کار خود باز دارد.
این دقیقا همان چیزی است که در به روز رسانی Yoast 19.7 اتفاق افتاد.
Yoast 19.7 با سایر پلاگین ها (یا کدنویسی سفارشی) که URL ورود به سیستم مدیریت را تغییر می دهند، تضاد داشت.
تغییر URL ورود به سیستم یک اقدام امنیتی است که برای فریب نرم افزار هکر طراحی شده است که به طور خودکار به URL پیش فرض برای ورود سرپرست هدایت می شود و سعی می کند اعتبار رمز ورود به سیستم را حدس بزند.
Yoast اشکال به روز رسانی را اعلام کرد
Yoast 100٪ در مورد این باگ شفاف بود و توییتی را ارسال کرد که برای کاربران توضیح می داد که چه اتفاقی می افتد.
Yoast توییت کرد:
پس از انتشار Yoast SEO 19.7، به ما اطلاع داده شد که این نسخه در ترکیب با پلاگین ها یا کدهایی که URL ورود پیش فرض وردپرس را تغییر می دهد، خطای مرگبار ایجاد می کند.
ما مشکل را شناسایی کردهایم و روی راهحل کار میکنیم.»
یکی از تغییراتی که با Yoast 19.7 (طبق تغییرات لاگ توسعه افزونه Yoast) معرفی شد، بهبود نحوه مدیریت Yoast با خطاهای مرگبار با جلوگیری از اجرای آن در صفحه ورود بود.
“با جلوگیری از اجرای Yoast SEO در صفحه ورود به سیستم، مدیریت خطاهای مرگبار را در قسمت جلویی بهبود می بخشد و به کاربران امکان می دهد به داشبورد خود دسترسی داشته باشند.”
ممکنه دلیلش همین بوده باشه؟
چرا خطاهای مرگبار با پلاگین ها اتفاق می افتد؟
تداخل پلاگین منحصر به Yoast نیست. وقتی برای Yoast اتفاق میافتد، به سادگی قابل توجهتر است، زیرا تعداد کاربران آنها میلیونها نفر است.
با این حال، این سومین بار در سال جاری است که درگیری پلاگین خطای مرگبار با به روز رسانی افزونه Yoast در سال جاری همراه است.
Joost De Valk، بنیانگذار افزونه Yoast SEO، در توییتی توضیح داد که همیشه نمی توان هزاران افزونه در اکوسیستم وردپرس را در نظر گرفت که ممکن است درگیری کدنویسی با آن ها اتفاق بیفتد.
او توییت کرد:
«این نوعی از موقعیت تضاد پلاگین #وردپرس است که من به معنای واقعی کلمه نمیدانم چگونه از وقوع آن جلوگیری کنم.
بیش از 60000 افزونه: چگونه پلاگین خود را در برابر همه آنها آزمایش می کنید.
اگر کسی ایده های خوبی داشته باشد، من همه گوش هستم.»
جوست هم توییت کرد که Yoast همیشه بهروزرسانیهای افزونه خود را قبل از انتشار با بسیاری از محبوبترین افزونهها آزمایش میکند.
ما در برابر بزرگها آزمایش میکنیم، اما نگران آنها نیستیم، اما چند مورد کوچک با هم هنوز به اندازه کافی سردرد ایجاد میکنند.»
وقتی چیزهایی را می شکنند، هرگز جالب نیست. ما به شدت آزمایش می کنیم و هنوز هم چیزها از بین می روند. ساختن پلاگین برای تعداد زیادی از کاربران “فقط” سخت است.”
راه حل ارائه شده در عرض چند ساعت
Yoast یک به روز رسانی جدید را در عرض دو ساعت پس از اعلام اینکه آنها یک باگ در به روز رسانی شناسایی کرده اند و در حال کار بر روی یک راه حل هستند منتشر کرد.
ما مشکل را حل کردیم و یک پچ منتشر کردیم. اکنون می توانید با خیال راحت به Yoast SEO 19.7.1 به روز رسانی کنید.
ما گزارش حادثه را در https://t.co/sBvJewCAeX علامتگذاری کردهایم.
– Yoast (@yoast) 20 سپتامبر 2022
اقدام توصیه شده برای انجام
Yoast آپدیت جدیدی با نسخه 19.7.1 منتشر کرد. تغییرات توسعه Yoast بیان کرد:
“رفع اشکالی که در آن یک خطای مرگبار در ترکیب با پلاگین های خاصی که URL صفحه ورود استاندارد را تغییر می دهند ایجاد می شود.”
کاربران افزونه Yoast SEO ممکن است بخواهند به آخرین نسخه Yoast، نسخه 19.7.1 به روز رسانی کنند.
تصویر برجسته توسط Shutterstock/Asier Romero
window.addEventListener( 'load', function() { setTimeout(function(){ striggerEvent( 'load2' ); }, 2000); });
window.addEventListener( 'load2', function() {
if( sopp != 'yes' && addtl_consent != '1~' && !ss_u ){
!function(f,b,e,v,n,t,s) {if(f.fbq)return;n=f.fbq=function(){n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)}; if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t,s)}(window,document,'script', 'https://connect.facebook.net/en_US/fbevents.js');
if( typeof sopp !== "undefined" && sopp === 'yes' ){ fbq('dataProcessingOptions', ['LDU'], 1, 1000); }else{ fbq('dataProcessingOptions', []); }
fbq('init', '1321385257908563');
fbq('track', 'PageView');
fbq('trackSingle', '1321385257908563', 'ViewContent', { content_name: 'yoast-seo-19-7-fatal-error', content_category: 'news wp' }); } });