ارور دیتابیس مرتبط با ووکامرس به شدت مهمه - وردپرس

ببینید دوست عزیز من یکی از مشکلاتی که دیدم تو خیلی از سایتا اینه که از قالب درستی استفاده نمیکننو به مرور با 10 تا افزونه میخوان روی سایتشون اون قابلیتهارو بگیرن .
الان مثلا سایت شما قالب هلو المنتور هست . بعد با المنتور پرو و جت انجین ووووو سعی در اضافه کردن قابلیت دارین .
دقت کنید که قالبی مثل xstore یا woodmart یا flatsome بهتون کلی قابلیت میده و تنها برای اون موارد کد نویسی شده . اما افزونه مثلا 20 تا المان دارد و همه اونها برای شما نیاز نیست .
پس حتما دقت کنید بر حسب نیازتون قالب درست انتخاب کنید .

قالب هلو المنتور به نظر شخصی من فقط برای استفاده بلاگی خوبه که نیاز خاص ندارید و میخواهید ریکوعست زیادی به سرور نیاد .
پس قبل از هرچیزی نیازتون رو بدونید بعد میتونید تمامی موارد رو رفع کنید .

سلام من هم همین ارور رو دارم برای Jetpack، با اینکه نصب نیست و روزی تقریبا دو بار در لاگ ارور ها همین پیغامه میاد.
کسی راه حلی یافته که دیگه نبینیمش؟

هوش مصنوعی گفت با این کد مشکل حل میشه:
پس یعنی در نسخه‌ای که شما دارید، اون بخش “WooCommerce.com” یا “Marketplace” حذف شده و همه تنظیمات سرویس‌های وابسته به Jetpack/Automattic توی همین بک‌اند مخفی شدن.

چون امکان غیرفعال کردن مستقیمش وجود نداره، بهترین راه الان اینه که ما با کد، هر درخواست به دامنه‌های Jetpack یا WordPress.com رو قبل از اینکه بره بیرون، قطع کنیم.

برای این کار این کد رو در Code Snippets (PHP Snippet – Run Everywhere) بگذارید:

// بلاک کردن تمام درخواست‌ها به Jetpack و WordPress.com
add_filter( 'pre_http_request', function( $pre, $args, $url ) {
    $blocked_domains = [
        'jetpack.wordpress.com',
        'public-api.wordpress.com',
        'woocommerce.com',
        'stats.wp.com',
        'api.woocommerce.com'
    ];
    foreach ( $blocked_domains as $domain ) {
        if ( strpos( $url, $domain ) !== false ) {
            return new WP_Error( 'blocked_request', 'درخواست به ' . $domain . ' مسدود شد.' );
        }
    }
    return $pre;
}, 10, 3 );

این کد چه کار می‌کند؟

  • هر زمان ووکامرس یا هر پلاگین دیگه‌ای بخواد درخواست HTTP بفرسته به سرورهای Automattic (Jetpack / WooCommerce / WordPress .com)، قبل از ارسال، همونجا قطعش می‌کنه.
  • ارور cURL error 28 از بین میره چون درخواست اصلاً اجرا نمی‌شه (به جای Timeout، ارور سفارشی blocked_request ثبت میشه).
  • این روش حتی اگر بخش مربوط به سرویس‌ها در تنظیمات ووکامرس وجود نداشته باشه هم کار می‌کنه.

خب این کلا وردپرس و ووکامرس سایتم رو قط میکنه؟ سئو اسیب نبینه؟

نه، این کد کل سایت شما را قطع نمی‌کند و هیچ تأثیری روی سئو ندارد.

توضیح دقیق:

  1. عملکرد سایت:

    • فقط درخواست‌هایی که ووکامرس یا پلاگین‌ها به دامنه‌های Jetpack / WordPress. com / WooCommerce. com می‌فرستند، مسدود می‌شوند.
    • صفحات فروشگاه، محصولات، تسویه حساب، سبد خرید و محتوای سایت مثل قبل کار می‌کند.
    • فقط ویژگی‌های اختیاری سرویس‌های ابری Automattic (مثل آمار، بکاپ، همگام‌سازی سفارشات از راه دور، پیشنهادات ووکامرس) دیگر کار نمی‌کنند.
  2. سئو:

    • گوگل و موتورهای جستجو به این سرویس‌ها کاری ندارند.
    • محتوای صفحات و نقشه سایت، لینک‌ها، متا تگ‌ها، سرعت لود و همه چیز تحت تاثیر قرار نمی‌گیرد.
    • فقط اگر قبلاً داشبورد Jetpack برای آمار یا Performance استفاده می‌کردید، اون اطلاعات آمار دیگر ثبت نمی‌شوند، ولی تاثیری روی ایندکس شدن صفحات ندارد.
  3. مزیت:

    • جلوی ارور cURL Timeout گرفته می‌شود و سایت بدون مشکل روی هاست ایران کار می‌کند.
    • سرعت لود صفحات ممکن است کمی بهتر شود چون دیگر منتظر پاسخ سرورهای خارجی نمی‌ماند.

پس می‌توانید با خیال راحت این کد را فعال کنید بدون اینکه نگرانی از خراب شدن سایت یا افت سئو داشته باشید.