روزمرگی فنی
روزمرگی فنی
خواندن ۲ دقیقه·۳ سال پیش

غیرفعال کردن افزونه سئوی Yoast روی برخی صفحات/برگه‌ها

شاید در مواردی نیاز داشته باشید که افزونه یوست (Yoast) را روی برخی پست‌ها یا برگه‌ها غیرفعال کنید. قاعدتا زمانی مجبور به این کار هستید که در برخی صفحات تداخلی با این افزونه معروف وجود داشته باشد؛ در این حالت مطلوب این است که به جای غیرفعال کردن افزونه در کل سایت، آن را فقط روی برگه موردنظر غیرفعال کنید.

به عنوان نمونه پیش می‌آید که برگه‌ای را با افزونه صفحه‌سازِ SiteOrigin طراحی کرده باشید که متاسفانه بنا به تجربه و توضیحات بسیاری از کاربران با افزونه یوست تداخل دارد و باعث عدم نمایش یا نمایش برهم‌ریخته برگه می‌شود. پس در این حالت چه کنیم؟

راه اول

طبق توضیح صفحه رسمی توسعه‌دهندگان یوست، برای غیرفعال‌سازی این افزونه (از نسخه 14 به بعد) بر روی پست‌ها یا برگه‌ها، می‌توانید از این کدها در فایل functions.php خود استفاده کنید. اما متاسفانه این کد عمل نمی‌کند (دستکم نسخه 16.9 یوست و 2.13 سایت‌اوریجین را که بر روی وردپرس 5.8 امتحان کردم، این کد عمل نمی‌کرد).

در عوض برای حل مشکل می‌توانید کد زیر را به جای قبلی به انتهای فایل functions.php سایت خود اضافه کنید که عمل می‌کند:

add_action( 'template_redirect', 'remove_wpseo' );function remove_wpseo() { if ( is_single ( 123) ) { global $wpseo_front; if ( defined( $wpseo_front ) ) { remove_action( 'wp_head', array ($wpseo_front, 'head' ), 1 ); } else { $wp_thing = WPSEO_Frontend::get_instance(); remove_action( 'wp_head', array( $wp_thing, 'head' ), 1 ); } }}

و به جای 123، آی‌دی یا شماره پست موردنظر خود را قرار دهید. اگر هم بخواهید بر روی چندین پست اعمال کنید، کافیست سایر آی‌دی‌ها را هم اضافه کنید؛ مثلا:

if ( is_single ( 123, 456, 789 ) ) {//…}

اگر قصد دارید به جای پست، افزونه را روی یک برگه غیرفعال کنید، باید is_single را در کد بالا به is_page تغییر دهید و مشابه روش قبل، آی‌دی برگه مورد نظر را وارد کنید.

راه دوم

اما غیر از این، یک راه ساده‌تر و بدون پیچیدگی هم هست و آن هم اینکه پست یا برگه موردنظر را باز کنید، از بالای صفحه دکمه «تنظیمات صفحه» را بزنید، تیک مربوط به یوست را بردارید و در نهایت پست/برگه را مجددا به‌روزرسانی کنید.

راهکار اصولی

اما غیرفعال‌سازی یوست به این شیوه که بر سئوی پست/برگه تاثیر منفی می‌گذارد، نه یک راهکار اصولی که یک روش موقت و ازسرناچاری نیست. قاعدتا اصولی این است که یا افزونه سئوی خود را تغییر دهید (مثلا Rank math به جای Yoast) یا از افزونه‌های صفحه‌ساز دیگر استفاده کنید (مثلاافزونه به مراتب حرفه‌ای ‌تر Elementor به جای Siteorigin). اما از آنجایی که قابلیت‌های یوست در صفحه‌ساز المنتور هم ادغام نمی‌شود و بنابراین از این جهت سازگاری کامل ندارد، بهترین گزینه استفاده از رنک‌مث است.

وندا نوژن

yoastrank math
روزها درگیر مصائب فنی، شب‌ها مشغول ثبت راه‌حل‌های یافتنی
شاید از این پست‌ها خوشتان بیاید