آموزش رفع خطاهای اسکیما Product در سرچ کنسول

حل خطا اسکیما Product ووکامرس کاملا کاربردی

اگر در سرچ کنسول بخش Enhancements >> Product هشدار (warning) یا خطا (Error) دریافت کرده‌اید، این مطلب کمک می‌کند حل خطا اسکیما Product ووکامرس را یاد بگیرید. فروشگاه‌های وردپرسی که از افزونه ووکامرس استفاده می‌کنند، خطاهایی از جمله “review”، “aggregateRating”، “brand”، “sku” دریافت می‌کنند. استفاده از اسکیما محصولات قواعد ویژه‌ای دارد که در این مطلب بررسی خواهیم کرد که چگونه وارنینگ و ارورهای مربوط به اسکیما محصولات را در سرچ کنسول رفع کنید.

خطاهای اسکیما محصولات (Product) در سرچ کنسول

ارور و وارنینگ اسکیما محصولات ووکامرس در سرچ کنسول

به‌احتمال خطاها و هشدارهای تصویر بالا را در سرچ کنسول (Search Console) خود دیده‌اید! اسکیما محصولات (Product) فیلدهای فراوانی را نیاز دارد تا به‌درستی اجرا شود. فیلدهایی که در خطاها آمده است، توسط ربات‌ها دریافت نشده است و به این معنی که در اسکیما محصولات وجود ندارد؛ بنابراین 2 راه چاره برای حل خطا اسکیما Product ووکامرس وجود دارد.

  1. اسکیما Product را از ووکامرس غیرفعال کنید و به‌صورت دستی اسکیماهای جدید را وارد کنید.
  2. همه فیلدهایی که نیاز دارد را در محصولات خود فعال کنید. برخی از آن‌ها به‌سختی ممکن است فعال شود.

بهتر است اول، روش دوم را بیشتر باز کنیم. در روش دوم فیلدهایی که درخواست شده است را باید برای همه محصولات وارد کنید.

به‌طور مثال: «برای حل هشدار review باید در همه محصولات، دیدگاهی همراه با امتیاز ثبت کنید. برای حل کردن هشدار priceValidUntil باید روی همه محصولات تخفیف اعمال کنید.»

فرض کنید 1300 تا محصول در سایت وجود دارد؛ آیا می‌توان برای همه محصولات این هشدارها را رفع کرد؟ بی‌گمان خیر. روند حل خطای اسکیمای Product ووکامرس دشوار است. پیشنهاد می‌شود از روش نخست که غیرفعال کردن اسکیما ووکامرس است، استفاده کنید.

برطرف کردن وارنینگ اسکیما Product ووکامرس

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

رفع خطاهای “sku”،”mpn”، “gtin”

برای رفع این خطا کافی است برای محصولات، شناسه محصول در نظر گرفته شود. در اسکیما محصولات باید شناسه محصولات هم وجود داشته باشد؛ بنابراین به برگه ویرایش محصولات رجوع کنید و در بخش اطلاعات محصول >> انبار >> شناسه محصول، فیلد موردنظر را پرکنید. در این فیلد باید یکی از شناسه‌های gtin، mpn، sku قرار بگیرد. می‌توانید یک شماره را به‌صورت تصادفی وارد کنید.

اگر از افزونه Yoast SEO WooCommerce استفاده می‌کنید؛ در بخش اطلاعات محصول بخشی بانام Yoast SEO اضافه می‌شود؛ می‌توانید شناسه‌های گوناگونی را برای محصولات وارد کنید. با فعال شدن افزونه یواست سئو ووکامرس بخش شناسه محصول غیرفعال می‌شود و باید از این بخش شناسه‌های gtin، mpn، sku را قرار دهید.

رفع خطاهای “review” و “aggregateRating”

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

فعالسازی نقد و برسی و امتیازات برای اسکیمای محصولات ووکامرس

برای فعال‌سازی نقد و بررسی و امتیاز در ووکامرس به بخش پیکربندی >> محصولات، رفته و گزینه‌های «فعال کردن نقد و بررسی» و «امتیازهای محصول» را فعال کنید.

رفع خطای “offers”، “priceValidUntil”

محصولاتی که در سایت وجود دارند باید همیشه دارای یک تخفیف باشند؛ اما ایجاد این تخفیف متفاوت است. باید قیمت را با تخفیف وارد کنید و همچنین مدت‌زمان این تخفیف را مشخص کنید.

دقت کنید: با فعال شدن مدت‌زمان تخفیف این هشدارها رفع می‌شوند. تنها قرار دادن قیمت با تخفیف نمی‌تواند مؤثر باشد.

رفع خطای “brand”

اکثر سایت‌ها با این مشکل مواجه هستند به این دلیل که از برند، در محصولات استفاده نمی‌کنند. برای حل این مشکل باید در بخش ویژگی‌ها یک ویژگی با نامک brand ایجاد کنید، سپس در بخش ویژگی‌های هر محصول نام برند را وارد کنید.

نکته بسیار مهم اینجا است که برای قرارگیری شناسه محصول و نام برند در اسکیما محصولات باید کد زیر را به فایل Functions.php اضافه کنید.

function woo_structured_data_product_newseo ($data)
{global $product;
$data['brand'] = $product->get_attribute('brand')?? null;
$data['mpn'] = $product->get_sku()?? null;
return $data;}
add_filter('woocommerce_structured_data_product', 'woo_structured_data_product_newseo');

با استفاده از قطعه کد بالا به ووکامرس دستور داده می‌شود که در نام برند و شناسه محصول اسکیما Product از ویژگی برند و شناسه محصول استفاده شود. بدون درج کد بالا، اسکیما محصولات (Product) همچنان دارای هشدار و خطا هستند.

غیرفعال کردن اسکیما ووکامرس در وردپرس

ممکن است تا اینجای مطلب از حل خطا اسکیما Product ووکامرس صرف‌نظر کرده باشید و بخواهید این توانایی را از ووکامرس غیرفعال کنید و اسکیمای مربوطه را به روش دستی به محصولات اضافه نمایید. استفاده از این روش بسیار بهینه است. موتور جستجوگر Google و سایر جستجوگر اعلام کرده‌اند که: «استفاده نکردن از اسکیما ها تاوان ندارند اما استفاده اشتباه از اسکیما ها جریمه‌دارند.» به همین دلیل نبودن اسکیما Product بسیار می‌تواند سودمندتر باشد.

افزونه ووکامرس قابل توسعه است و می‌توانید با استفاده از هوک های ووکامرس کدهای اسکیما ووکامرس که در خروجی نمایش داده می‌شود را غیرفعال کنید.

function remove_output_structured_data() {
remove_action('wp_footer', array(WC()->structured_data, 'output_structured_data'), 10);
remove_action('woocommerce_email_order_details',
array(WC()->structured_data, 'output_email_structured_data'), 30);}
add_action('init', 'remove_output_structured_data');

قطعه کد بالا را در فایل Functions.php قرار دهید. با استفاده از این کد، تولید اسکیما Product متوقف می‌شود و در سورس (Source) سایت نمایش داده نمی‌شود. پس‌ازاین که کد موردنظر را در سایت برای حل خطا اسکیما Product ووکامرس درج کردید باید چند روز صبر کنید تا محصولات Crawl شوند و همه محصولات مورد برسی گوگل قرار بگیرد و خطاها برطرف شوند.

سؤالات متداول

آیا وجود خطا در اسکیما Product تاوان دارد؟

بله. هرکدام از اسکیماها در سایت به‌اشتباه استفاده شوند، باعث می‌شود از سمت موتورهای جستجوگر جریمه شوید.

برای سایت‌هایی که ووکامرس ندارند، چه اقدامی باید انجام داد؟

اگر سایت شما وردپرسی نیست و از ووکامرس استفاده نمی‌کنید، بهتر است با برنامه‌نویس خود در میان بگذارید تا خطاهایی که سرچ کنسول نماش داده است را در اسکیما محصولات به درستی درج کند. از سایت schema.org و سرچ کنسول می‌توانید اطلاعات بیشتری درباره اسکیما ها دریافت کنید.

آیا استفاده از اسکیما می‌تواند به بهبود سایت کمک کند؟

بله. اسکیما ها می‌توانند به ربات‌های جستجوگر کمک کنند صفحات شمارا بهتر تحلیل کنند. سپس بخش بزرگی از اسکیما ها برای کاربران است. در نتایج جستجو اگر از اسکیما ها به‌صورت درست استفاده شود، بنابراین می‌تواند نرخ کلیک (CTR) افزایش پیدا کند.

9 نظر در مورد مقاله “ آموزش رفع خطاهای اسکیما Product در سرچ کنسول ” ثبت شده است
  1. محمد

    سلام توی قسمت خطاهای “sku”،”mpn”، “gtin” هشدار برای من اومده که 497 محصول بدون شناسه داری من تمام محصولات رو چک کردم وداراای شناسه بودند


    • امیر قمصری

      دوست من ممکن نیست این مشکل پیش بیاد مگر اینکه در اون لحظه ای که گوگل به سایت شما سر زده صفحه به صورت کامل لود نشده. اگر مطمئن هستید درسته حتما از inspect url استفاده کنید


  2. حارث

    با سلام و احترام حتی اگر از افزونه برند نصب کرده باشیم و استفاده کنیم حتما باید کد را وارد کنیم؟


    • سیدمجتبی پورموسوی

      بله
      بهتره که کد رو وارد کنید


  3. م.باقری

    سلام – از کد شما در سایت testafa.com استفاده کردم مشکل هم رفع شد. سپاس از سایت خوبت


    • سیدمجتبی پورموسوی

      درود
      خوشحال شدم
      موفق باشید


  4. زهرا

    سلام.ممنون از متن مفیدتون.من تو سایتم از افزونه edd استفاده میکنم.امکان داره معادل تابع بالا رو برای اون افزونه هم بگید؟


    • سیدمجتبی پورموسوی

      سلام
      روزتون بخیر
      در بروز رسانی های اینده این رو اوکی می کنیم


  5. علی بیوک

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

    add_filter( ‘woocommerce_currencies’, ‘add_my_currency’ );

    function add_my_currency( $currencies ) {
    $currencies[‘IRR’] = __( ‘تومان’, ‘woocommerce’ );
    return $currencies;
    }

    add_filter(‘woocommerce_currency_symbol’, ‘add_my_currency_symbol’, 10, 2);

    function add_my_currency_symbol( $currency_symbol, $currency ) {
    switch( $currency ) {
    case ‘IRR’: $currency_symbol = ‘تومان’; break;
    }
    return $currency_symbol;
    }


دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

پیام شما بلافاصله پس از ثبت برای مدیران سایت ارسال می شود