برای انتخاب کلیدenter انتخاب کنید یا برای لغو ESC فشار دهید.

پیاده‌سازی Schema Markup پیشرفته در وردپرس؛ راهنمای گام‌به‌گام اسنیپت‌های غنی

اسکناس‌ها و اسنیپت‌های غنی، پیام‌های متنی و اطلاعات ساخت‌یافته وب‌سایت را به موتورهای جست‌وجو منتقل می‌کنند؛ اما این امکان به‌تنهایی تضمین‌کننده نمایش آن‌ها نیست. برای داشتن داده‌های دقیق، پایدار و مقیاس‌پذیر، باید ساختار مناسب را با کدنویسی یا افزونه پیاده‌سازی کنید و قبل از انتشار، خروجی را اعتبارسنجی کنید.

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

۱. نقشه محتوا و نوع اسکیما را مشخص کنید

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

نمونه‌های پرکاربرد عبارت‌اند از Article یا BlogPosting برای نوشته‌ها، Product برای کالاها، FAQPage برای پرسش‌های رایج، HowTo برای دستورالعمل‌های مرحله‌ای و Event برای رویدادها. اگر صفحه چند هویت دارد، آن‌ها را با آرایه‌ای از نوع‌های داده ترکیب کنید؛ برای مثال یک مقاله آموزشی می‌تواند هم Article و هم Course باشد.

۲. از JSON-LD برای تولید کد تمیز استفاده کنید

روش پیشنهادی گوگل، افزودن داده‌های ساخت‌یافته در قالب JSON-LD و قرار دادن آن در بخش head است. این رویکرد کد قالب را از HTML جدا می‌کند، خوانایی را افزایش می‌دهد و مدیریت به‌روزرسانی را آسان‌تر می‌سازد.

برای یک مقاله نمونه، اسکما به این صورت است:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "راهنمای کامل سئوی تکنیکال",
  "image": ["https://wpblog.ir/images/technical-seo.webp"],
  "author": {
    "@type": "Person",
    "name": "آسمان وب"
  },
  "publisher": {
    "@type": "Organization",
    "name": "آسمان وب",
    "logo": {
      "@type": "ImageObject",
      "url": "https://wpblog.ir/logo.webp"
    }
  },
  "datePublished": "2025-02-10",
  "dateModified": "2025-02-12",
  "mainEntityOfPage": "https://wpblog.ir/technical-seo-guide/"
}
</script>

آدرس‌ها باید مطلق و قابل دسترس باشند، نه آدرس‌های نسبی یا پیش‌نمایش داخلی. تاریخ انتشار و تغییر باید با محتوای مشاهده‌شونده مطابقت داشته باشد. همچنین، اگر در HTML صفحه نام نویسنده یا تصویر اصلی وجود ندارد، آن را به اسکیما اضافه نکنید؛ داده‌های پنهان یا گمراه‌کننده می‌توانند اعتبار نشانه‌گذاری را کاهش دهند.

۳. کد را با هوک وردپرس به صفحات مرتبط وصل کنید

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

نمونه زیر برای برگه‌های دارای دسته‌بندی «آموزش»، JSON-LD ساده تولید می‌کند:

add_action('wp_head', function () {
    if (!is_page('training')) return;
    $data = array(
        '@context' => 'https://schema.org',
        '@type' => 'Article',
        'headline' => get_the_title(),
        'author' => array(
            '@type' => 'Person',
            'name' => 'آسمان وب'
        ),
        'publisher' => array(
            '@type' => 'Organization',
            'name' => 'آسمان وب',
            'logo' => array(
                '@type' => 'ImageObject',
                'url' => 'https://wpblog.ir/logo.webp'
            )
        ),
        'dateModified' => get_post_modified_time('c'),
        'mainEntityOfPage' => get_permalink()
    );
    echo '<script type="application/ld+json">' . wp_json_encode($data) . '</script>';
}, 20);

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

۴. افزونه‌ها را هوشمندانه برای اسنیپت‌های غنی تنظیم کنید

افزونه‌هایی مانند Rank Math یا Yoast SEO می‌توانند هویت، نویسنده، تصویر و بسیاری از نوع‌های داده را به‌طور خودکار تولید کنند. پس از نصب، ابتدا تنظیمات سازمان و نویسنده را تکمیل کنید و سپس برای هر قالب محتوا، نوع اسکیما را جداگانه بررسی کنید.

در Rank Math Pro، از تنظیمات پیشرفته Rank Math Pro برای تعریف قالب‌های اختصاصی و فعال‌سازی بخش‌های لازم استفاده کنید. در Yoast، الگوهای اسکیما را برای برگه‌ها، نوشته‌ها و انواع محتوای سفارشی تنظیم کنید. اگر افزونه‌ای بیش از یک اسکریپت JSON-LD صادر می‌کند، یکی را غیرفعال کنید تا داده‌های متناقض تولید نشود.

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

۵. اعتبارسنجی، رفع خطا و پایش نتایج

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

خطاهای مهم شامل JSON نامعتبر، آدرس‌های غیرقابل دسترسی، نوع داده نادرست، نبود داده الزامی و تناقض میان HTML با نشانه‌گذاری و اسکما هستند. هشدارها را نیز جدی بگیرید؛ برای نمونه، نبود تصویر در Article ممکن است نمایش غنی را محدود کند.

در Google Search Console، گزارش Experience را زیر بخش Structured Data بررسی کنید و تغییرات را در صفحه نتایج جست‌وجو مشاهده نمایید. اگر اسنیپت غنی نمایش داده نشد، به‌طور کامل فرض نکنید که اسکیما مقصر است؛ رتبه، رقابت، کیفیت محتوا و تصمیم خود گوگل نیز مؤثرند.

۶. مقیاس‌پذیری، امنیت و پایداری داده‌ها

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

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

نتیجه‌گیری

پیاده‌سازی مؤثر Schema Markup با انتخاب دقیق نوع داده، تولید JSON-LD تمیز، اتصال هوشمند آن به قالب وردپرس و اعتبارسنجی مداوم ممکن می‌شود. افزونه‌ها سرعت اجرای پروژه را افزایش می‌دهند، اما کدنویسی اختصاصی برای صفحات پیچیده انعطاف بیشتری فراهم می‌کند. هدف نهایی، ارائه اطلاعات شفاف و معتبر است؛ نه صرفاً کسب یک آیکون در نتایج جست‌وجو.