~/icsd.ir — bash
SYSTEM_ONLINE

🚀 فصل ۱۵: سئو فروشگاه و راه‌اندازی

آخرین قدم: تبدیل فروشگاه به یک ماشین فروش که در گوگل رتبه می‌گیرد. در این فصل، استراتژی کامل سئو، Schema.org پیشرفته، Google Merchant Center و چک‌لیست لانچ را یاد می‌گیرید.

🎯 پایه‌های سئو ووکامرس

اصول حیاتی

عنصر توضیح بهترین کار
Title Tag عنوان صفحه ۵۰-۶۰ کاراکتر، نام محصول + برند + کلیدواژه
Meta Description توضیح صفحه ۱۵۰-۱۶۰ کاراکتر، فعل + ارزش پیشنهادی
URL آدرس صفحه کوتاه، با کلیدواژه: /product/farsh-dastbaft-6m
H1 عنوان اصلی یک H1، حاوی کلیدواژه اصلی
Image Alt متن جایگزین تصویر توصیفی، با کلیدواژه
Internal Links لینک‌های داخلی ۳-۵ لینک به محصولات و دسته‌های مرتبط

تنظیمات اولیه ووکامرس

  1. Permalinks: /product/%postname%/
  2. Category base: product-category (یا دسته-بندی)
  3. SSL/HTTPS فعال
  4. WWW vs non-WWW یکسان (با redirect)
  5. Mobile responsive الزامی

🏷️ Schema.org Product کامل

این Schema باعث می‌شود محصول در نتایج گوگل با ⭐ امتیاز، 💰 قیمت، و ✅ موجودی نمایش داده شود:

includes/seo-schema.php
add_action('wp_head', function() {
    if (!is_product()) return;
    global $product;
    
    $availability = $product->is_in_stock() 
                    ? 'https://schema.org/InStock' 
                    : 'https://schema.org/OutOfStock';
    
    $schema = [
        '@context'    => 'https://schema.org',
        '@type'       => 'Product',
        'name'        => $product->get_name(),
        'description' => wp_strip_all_tags($product->get_short_description() ?: $product->get_description()),
        'sku'         => $product->get_sku(),
        'mpn'         => $product->get_meta('_mpn'),
        'brand'       => [
            '@type' => 'Brand',
            'name'  => $product->get_meta('_brand') ?: get_bloginfo('name'),
        ],
        'image'       => array_filter([
            wp_get_attachment_url($product->get_image_id()),
            ...array_map('wp_get_attachment_url', $product->get_gallery_image_ids())
        ]),
        'offers' => [
            '@type'         => 'Offer',
            'url'           => $product->get_permalink(),
            'priceCurrency' => get_woocommerce_currency(),
            'price'         => $product->get_price(),
            'priceValidUntil' => date('Y-m-d', strtotime('+30 days')),
            'availability'  => $availability,
            'itemCondition' => 'https://schema.org/NewCondition',
            'seller' => [
                '@type' => 'Organization',
                'name'  => get_bloginfo('name'),
            ],
        ],
    ];
    
    // امتیاز محصول (در صورت داشتن)
    if ($product->get_review_count() > 0) {
        $schema['aggregateRating'] = [
            '@type'       => 'AggregateRating',
            'ratingValue' => $product->get_average_rating(),
            'reviewCount' => $product->get_review_count(),
            'bestRating'  => '5',
            'worstRating' => '1',
        ];
        
        // نمونه نظرات
        $reviews = get_comments([
            'post_id' => $product->get_id(),
            'status'  => 'approve',
            'number'  => 3,
            'type'    => 'review',
        ]);
        
        $review_schemas = [];
        foreach ($reviews as $review) {
            $rating = get_comment_meta($review->comment_ID, 'rating', true);
            $review_schemas[] = [
                '@type' => 'Review',
                'reviewRating' => [
                    '@type' => 'Rating',
                    'ratingValue' => $rating,
                    'bestRating'  => '5',
                ],
                'author' => [
                    '@type' => 'Person',
                    'name'  => $review->comment_author,
                ],
                'reviewBody' => $review->comment_content,
                'datePublished' => $review->comment_date,
            ];
        }
        
        if ($review_schemas) {
            $schema['review'] = $review_schemas;
        }
    }
    
    echo '';
});

Schema برای BreadcrumbList

add_action('wp_head', function() {
    if (!is_singular(['product', 'page', 'post']) && !is_archive()) return;
    
    $breadcrumbs = [
        ['@type' => 'ListItem', 'position' => 1, 'name' => 'خانه', 'item' => home_url()],
    ];
    
    if (is_product()) {
        global $post;
        $cats = wp_get_post_terms($post->ID, 'product_cat');
        if (!empty($cats)) {
            $cat = $cats[0];
            $breadcrumbs[] = [
                '@type' => 'ListItem',
                'position' => 2,
                'name' => $cat->name,
                'item' => get_term_link($cat),
            ];
        }
        $breadcrumbs[] = [
            '@type' => 'ListItem',
            'position' => count($breadcrumbs) + 1,
            'name' => get_the_title(),
        ];
    }
    
    echo '';
});

🔌 Yoast vs Rank Math

ویژگی Yoast SEO Rank Math
قیمت رایگان + Premium $99 رایگان + Pro $59
WooCommerce SEO افزونه جداگانه ($69) در نسخه رایگان
Schema پایه (پولی کامل) پیشرفته در رایگان
Sitemap کامل کامل + پیشرفته
کیورد فارسی پشتیبانی محدود پشتیبانی بهتر
سرعت متوسط سریع‌تر
✅ توصیه ICSD: Rank Math برای ووکامرس فارسی بهترین گزینه است — رایگان، سریع، Schema قوی.

تنظیم Rank Math برای محصولات

  1. نصب: Plugins → Add New → Rank Math SEO
  2. راه‌اندازی Wizard – گزینه Custom Mode
  3. Module: WooCommerce فعال
  4. Module: Schema (Structured Data) فعال
  5. Module: Sitemap فعال
  6. تنظیمات Sitemap: Products, Categories, Tags همه فعال

🗺️ XML Sitemap محصولات

اگر افزونه SEO ندارید، Sitemap دستی:

add_action('init', function() {
    add_rewrite_rule('^product-sitemap.xml$', 'index.php?icsd_sitemap=products', 'top');
    add_rewrite_tag('%icsd_sitemap%', '([^&]+)');
});

add_action('template_redirect', function() {
    if (get_query_var('icsd_sitemap') !== 'products') return;
    
    header('Content-Type: application/xml; charset=UTF-8');
    echo '' . "n";
    echo '' . "n";
    
    $products = wc_get_products([
        'limit' => -1,
        'status' => 'publish',
        'return' => 'objects',
    ]);
    
    foreach ($products as $product) {
        echo "  n";
        echo "    " . esc_url($product->get_permalink()) . "n";
        echo "    " . get_post_modified_time('c', false, $product->get_id()) . "n";
        echo "    weeklyn";
        echo "    0.8n";
        
        // تصاویر
        $images = array_merge(
            $product->get_image_id() ? [$product->get_image_id()] : [],
            $product->get_gallery_image_ids()
        );
        foreach ($images as $img_id) {
            echo "    n";
            echo "      " . esc_url(wp_get_attachment_url($img_id)) . "n";
            echo "      " . esc_xml($product->get_name()) . "n";
            echo "    n";
        }
        echo "  n";
    }
    
    echo '';
    exit;
});

سپس به Google Search Console اضافه کنید: https://shop.icsd.ir/product-sitemap.xml

🔍 سئو فارسی و کلمات کلیدی

تحقیق کلمه کلیدی فارسی

  • Google Keyword Planner – رایگان، نیاز به اکانت Ads
  • Ahrefs – حرفه‌ای، پولی
  • Ubersuggest – رایگان محدود
  • Google Suggest – تایپ در گوگل و دیدن پیشنهادها
  • Google Trends – روند فصلی
  • “People also ask” در نتایج گوگل

ساختار URL مناسب فارسی

✅ خوب:
shop.icsd.ir/product/farsh-dastbaft-isfahan-6m/
shop.icsd.ir/product-category/farsh-dastbaft/

❌ بد:
shop.icsd.ir/?p=12345
shop.icsd.ir/product/فرش-دستباف-اصفهان-۶-متری/  (encoding مشکل دارد)

۸ کاری که باید برای هر محصول کنید

  1. عنوان: نام دقیق + ویژگی + برند (مثل: «فرش دستباف اصفهان ۶ متری ICSD»)
  2. توضیح کوتاه: خلاصه ۱۵۰ کلمه‌ای با کلیدواژه اصلی
  3. توضیح کامل: ۸۰۰+ کلمه با ساختار H2/H3، شامل: مشخصات، نحوه نگهداری، تاریخچه، FAQ
  4. Alt تصاویر: «فرش دستباف اصفهان نقشه افشار رنگ شیری»
  5. تگ‌ها: ۳-۵ تگ مرتبط
  6. دسته: حداقل یک دسته اصلی + زیر-دسته
  7. محصولات مرتبط: لینک به ۳-۵ محصول مشابه
  8. FAQ Schema: ۵ سوال متداول درباره محصول

FAQ Schema برای محصولات

add_action('wp_head', function() {
    if (!is_product()) return;
    global $product;
    
    $faqs = $product->get_meta('_faqs'); // آرایه [['q' => '...', 'a' => '...']]
    if (empty($faqs)) return;
    
    $items = [];
    foreach ($faqs as $faq) {
        $items[] = [
            '@type' => 'Question',
            'name'  => $faq['q'],
            'acceptedAnswer' => [
                '@type' => 'Answer',
                'text'  => $faq['a'],
            ],
        ];
    }
    
    echo '';
});

💎 Rich Snippets و نمایش گوگل

تست Schema

  • Google Rich Results Test: https://search.google.com/test/rich-results
  • Schema Markup Validator: https://validator.schema.org
  • Google Search Console – تب «Enhancements»

چه چیزهایی در نتایج گوگل ظاهر می‌شود؟

نمایش نیازمندی
⭐ امتیاز و نظرات AggregateRating + Review schema
💰 قیمت Offer schema با price
✅ موجودی availability: InStock/OutOfStock
🚚 تحویل سریع shippingDetails schema
📦 برند Brand schema
🖼️ تصویر در گوگل image در محصول schema
📍 Breadcrumbs BreadcrumbList schema
❓ FAQ FAQPage schema

🛍️ Google Merchant Center و Shopping

برای نمایش محصولات در Google Shopping (تب «خرید»):

  1. ساخت اکانت در https://merchants.google.com
  2. تایید سایت (با Search Console همگام)
  3. ساخت Feed محصولات

تولید Feed XML خودکار

add_action('init', function() {
    add_rewrite_rule('^merchant-feed.xml$', 'index.php?icsd_merchant_feed=1', 'top');
});

add_action('template_redirect', function() {
    if (!get_query_var('icsd_merchant_feed')) return;
    
    header('Content-Type: application/xml; charset=UTF-8');
    echo '' . "n";
    echo '' . "n";
    echo "n";
    echo "  " . esc_xml(get_bloginfo('name')) . "n";
    echo "  " . esc_url(home_url()) . "n";
    echo "  محصولات " . esc_xml(get_bloginfo('name')) . "n";
    
    $products = wc_get_products(['limit' => 1000, 'status' => 'publish']);
    
    foreach ($products as $product) {
        if (!$product->is_visible()) continue;
        
        $availability = $product->is_in_stock() ? 'in_stock' : 'out_of_stock';
        $price = $product->get_price() . ' IRR';
        
        echo "  n";
        echo "    " . $product->get_id() . "n";
        echo "    " . esc_xml($product->get_name()) . "n";
        echo "    " . esc_xml(wp_strip_all_tags($product->get_description())) . "n";
        echo "    " . esc_url($product->get_permalink()) . "n";
        echo "    " . esc_url(wp_get_attachment_url($product->get_image_id())) . "n";
        echo "    newn";
        echo "    {$availability}n";
        echo "    {$price}n";
        echo "    " . esc_xml($product->get_meta('_brand') ?: get_bloginfo('name')) . "n";
        echo "    " . esc_xml($product->get_sku()) . "n";
        
        // دسته‌بندی Google
        echo "    1604n"; // Home & Garden > Decor
        
        echo "  n";
    }
    
    echo "n";
    exit;
});

در Merchant Center، URL Feed را وارد کنید: https://shop.icsd.ir/merchant-feed.xml

⚠️ توجه: Google Merchant Center در ایران به‌طور مستقیم در دسترس نیست. اما اگر مخاطب خارج از کشور دارید (مثل فروش فرش به اروپا)، این روش بسیار موثر است.

⚡ Core Web Vitals

سه شاخص اصلی گوگل که در رتبه‌بندی موثرند:

شاخص توضیح هدف
LCP Largest Contentful Paint – زمان رندر بزرگترین عنصر زیر ۲.۵ ثانیه
INP Interaction to Next Paint – پاسخگویی زیر ۲۰۰ میلی‌ثانیه
CLS Cumulative Layout Shift – پایداری زیر ۰.۱

چک‌لیست بهینه‌سازی Core Web Vitals

  • تصویر اصلی محصول با fetchpriority="high" و preload
  • فونت‌ها با font-display: swap
  • JavaScript به صورت defer یا async
  • CSS بحرانی (Critical CSS) inline
  • Lazy loading برای تصاویر زیر fold
  • ابعاد ثابت (width/height) برای همه img و iframe
  • کاهش CSS و JS بلامصرف
  • Page Cache فعال
  • CDN برای تصاویر و assets
  • HTTP/2 یا HTTP/3 در سرور

تست

  • PageSpeed Insights: https://pagespeed.web.dev
  • Lighthouse در DevTools
  • WebPageTest: https://www.webpagetest.org

📋 چک‌لیست راه‌اندازی

قبل از لانچ نهایی، این موارد را تیک بزنید:

قبل از لانچ – فنی

  • ✅ SSL/HTTPS فعال + redirect 301
  • ✅ Permalinks تنظیم شده (/product/%postname%/)
  • ✅ HPOS فعال شده
  • ✅ Object Cache (Redis) فعال
  • ✅ Backup روزانه با UpdraftPlus یا All-in-One Migration
  • ✅ ایمیل‌های تراکنشی تست شده (با فروشگاه و مشتری)
  • ✅ همه درگاه‌ها تست شده (پرداخت موفق و ناموفق)
  • ✅ همه روش‌های ارسال تست شده
  • ✅ مالیات تنظیم شده
  • ✅ تومان/ریال درست تبدیل می‌شود

قبل از لانچ – SEO

  • ✅ Rank Math یا Yoast SEO نصب و تنظیم
  • ✅ Schema.org برای همه محصولات
  • ✅ XML Sitemap موجود و درست
  • ✅ robots.txt درست تنظیم شده
  • ✅ Google Search Console تایید شده
  • ✅ Bing Webmaster Tools تایید شده
  • ✅ Google Analytics 4 نصب شده
  • ✅ Google Tag Manager (در صورت نیاز)
  • ✅ همه محصولات Title و Meta Description دارند
  • ✅ Alt همه تصاویر تنظیم شده
  • ✅ صفحه ۴۰۴ زیبا

قبل از لانچ – محتوا

  • ✅ صفحه «درباره ما» کامل
  • ✅ صفحه «تماس با ما» با فرم و نقشه
  • ✅ صفحه «قوانین و مقررات»
  • ✅ صفحه «حریم خصوصی»
  • ✅ صفحه «شرایط ضمانت و بازگشت کالا»
  • ✅ صفحه «راهنمای خرید»
  • ✅ FAQ کلی فروشگاه
  • ✅ توضیحات کامل برای حداقل ۲۰ محصول اول
  • ✅ نمایش نماد اعتماد الکترونیکی (eNamad)

روز لانچ

  • ✅ تست خرید واقعی با کارت بانکی
  • ✅ ارسال خبرنامه به مشترکین
  • ✅ پست‌های شبکه‌های اجتماعی
  • ✅ ساخت کمپین گوگل ادز (در صورت بودجه)
  • ✅ Submit به Google Search Console
  • ✅ Submit به Bing Webmaster Tools
  • ✅ مانیتورینگ Uptime (UptimeRobot)
  • ✅ بررسی Server logs برای ارورها

هفته اول

  • 📊 پایش روزانه Google Search Console
  • 📊 بررسی Speed Insights هر ۲ روز
  • 📊 پاسخگویی سریع به نظرات و سوالات مشتریان
  • 📊 رفع باگ‌های گزارش شده
  • 📊 آنالیز رفتار کاربران در GA4
  • 📊 A/B Testing در صفحات اصلی
  • 📊 بهینه‌سازی محصولات با کم‌ترین CTR

ماه اول

  • 📈 محتوای جدید (پست بلاگ، راهنما، ویدیو)
  • 📈 لینک‌سازی (مهمان‌نویسی، PR)
  • 📈 ایمیل مارکتینگ به مشتریان
  • 📈 نظرسنجی از مشتریان
  • 📈 بهبود توضیحات محصولات بر اساس سوالات مشتریان
  • 📈 پاکسازی محصولات کم‌بازدید
  • 📈 ایجاد محصولات «پرفروش» و «ویژه»

🎉 پایان دوره!

تبریک! شما حالا یک متخصص ووکامرس پیشرفته هستید. در طول این دوره یاد گرفتید:

  • نصب و پیکربندی حرفه‌ای ووکامرس
  • مدیریت پیشرفته محصولات و سفارش‌ها
  • ساخت درگاه پرداخت ایرانی از صفر
  • روش‌های ارسال سفارشی
  • مالیات، ارز و فاکتور رسمی
  • Hooks و Filters پیشرفته
  • Custom Product Type
  • REST API و کلاینت Flutter
  • Blocks Cart/Checkout
  • اشتراک، رزرواسیون و Multi-Vendor
  • گزارش‌های پیشرفته با Chart.js
  • کارایی، امنیت و Audit Log
  • سئو، Schema، Merchant Center و راه‌اندازی
🎯 قدم بعدی: یک پروژه واقعی شروع کنید، آنچه یاد گرفتید را عملی کنید، و دانش خود را به اشتراک بگذارید. موفق باشید! 🚀

از دوره آموزش پیشرفته ووکامرس ICSD ممنون که همراه ما بودید!

نمایش سایت

رنگ سایت
حالت نمایش
اندازهٔ متن
خوانایی

این تنظیمات فقط روی مرورگر شما ذخیره می‌شود.