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

فهرست مطالب
- سبد، تسویه و حساب کاربری اصلا کش نمیشوند — صفحههای نزدیک به فروش همیشه پرهزینهتریناند.
- وردپرس همه چیز را در یک جدول عمومی صفت و مقدار میریزد؛ انعطافش زیاد است و هزینهاش در مقیاس.
- محصول متغیر برای هر ترکیب یک رکورد جدا میسازد: پنج رنگ در شش سایز در سه وزن یعنی نود رکورد.
- با دهها هزار سفارش، فهرست سفارشها و جستجو در آن کند میشود.
- جدول اختصاصی سفارشها وضع را بهتر میکند ولی با همه افزونهها سازگار نیست.
- هر محصول فقط یک عدد موجودی دارد؛ دو انبار یا چند ویترین بدون افزونه ممکن نیست.
- ترس از بهروزرسانی نشانه فنی نیست، نشانه ساختاری است.
ووکامرس تا جایی خوب کار میکند و از جایی به بعد نه. مسئله این نیست که بد نوشته شده — مسئله این است که تصمیمهای معماریاش، که برای فروشگاه کوچک هوشمندانهاند، در مقیاس بزرگ به سقف میخورند.
این نوشته آن سقفها را نام میبرد و میگوید هر کدام معمولا در چه اندازهای خودشان را نشان میدهند. هدف ترساندن نیست؛ این است که وقتی رسیدی، بدانی چه اتفاقی دارد میافتد و دنبال مقصر اشتباه نگردی.
سقف اول: صفحههای نزدیک به فروش کش نمیشوند
کش یعنی صفحه یک بار ساخته شود و به همه یک نسخه آماده داده شود. این برای صفحه اصلی و صفحه محصول عالی است.
ولی سبد خرید، تسویه و حساب کاربری برای هر نفر فرق دارند، پس اصلا کش نمیشوند. یعنی دقیقا صفحههایی که به فروش نزدیکترند، همیشه با تمام توان پردازش ساخته میشوند.
کی خودش را نشان میدهد: وقتی کمپین میگذاری و صد نفر همزمان وارد تسویه میشوند. صفحه اصلی روان است و تسویه میخوابد — و این دقیقا برعکس چیزی است که انتظار داری.
سقف دوم: جدول متادیتا
وردپرس هر چیزی را که «نوشته» نیست در یک جدول عمومی صفت و مقدار ذخیره میکند. محصول، سفارش، تنظیمات افزونهها — همه در همان یک جدول.
این طراحی انعطافپذیری فوقالعادهای میدهد: هر افزونه میتواند هر فیلدی اضافه کند بدون تغییر ساختار. و همان انعطاف، هزینهاش را در مقیاس میگیرد — یک محصول با ده صفت یعنی ده ردیف، و یک فیلتر ترکیبی یعنی چند بار پیوند دادن همان جدول بزرگ به خودش.
کی خودش را نشان میدهد: معمولا بالای چند هزار محصول با صفتهای زیاد، یا وقتی فیلتر چندگانه به صفحه دسته اضافه میکنی و ناگهان همان صفحه چند برابر کندتر میشود.
سقف سوم: محصول متغیر
محصول متغیر یعنی یک محصول با چند حالت — رنگ، سایز، وزن. ووکامرس برای هر ترکیب ممکن یک رکورد جدا میسازد.
سه رنگ در چهار سایز یعنی دوازده رکورد. پنج رنگ در شش سایز در سه وزن یعنی نود. حالا این را در چند صد محصول ضرب کن.
کی خودش را نشان میدهد: صفحه ویرایش محصول کند و گاهی تایماوت میشود، و بهروزرسانی گروهی قیمت نصفه میماند.
سقف چهارم: فهرست سفارشها
سفارشها هم در همان ساختار عمومی ذخیره میشوند. تا چند هزار سفارش مشکلی نیست. با دهها هزار سفارش، باز شدن فهرست سفارشها در پنل کند میشود و جستجو در آن کندتر.
نسخههای جدید ووکامرس برای همین یک جدول اختصاصی سفارشها معرفی کردهاند که وضع را بهتر میکند. ولی مهاجرت به آن با همه افزونهها سازگار نیست، و این خودش یک تصمیم است نه یک کلید.
کی خودش را نشان میدهد: معمولا وقتی میخواهی گزارش بگیری یا سفارش قدیمی مشتری را پیدا کنی — یعنی وقتی مشتری پشت خط منتظر است.
سقف پنجم: موجودی در لحظه شلوغی
وقتی از یک کالا یکی مانده و دو نفر همزمان تسویه میکنند، سیستم باید تصمیم بگیرد کدام یکی برنده است. ووکامرس محافظت دارد، ولی این محافظت در شرایط بار بالا و با افزونههای واسط همیشه محکم نیست.
کی خودش را نشان میدهد: در فروش ویژه و کمپین. یعنی همان روزی که کمترین آمادگی را برای رسیدگی به آن داری.
سقف ششم: یک انبار، همیشه
در ووکامرس هر محصول یک عدد موجودی دارد. اگر دو انبار داری، یا انبار و فروشگاه فیزیکی، این عدد نمیتواند تفکیک شود مگر با افزونه.
و همینطور اگر همزمان روی بازارگاهها میفروشی: آن یک عدد باید بین چند ویترین تقسیم شود و ووکامرس ابزاری برایش ندارد. مدیریت موجودی چند کانال این را باز میکند.
سقف هفتم: جستجوی داخلی
جستجوی وردپرس برای متن نوشته ساخته شده، نه برای کاتالوگ. نه غلط املایی را میبخشد، نه مترادف میفهمد، و نه نتایج را بر اساس فروش مرتب میکند.
در فارسی این بدتر است، چون نیمفاصله و نویسههای مشابه نتیجه را کاملا عوض میکنند. ووکامرس راست چین این را با مثال نشان میدهد.
کی خودش را نشان میدهد: بیصدا، از همان روز اول. مشتری جستجو میکند، چیزی پیدا نمیکند، و میرود. در هیچ گزارشی نمیبینیاش.
نشانههای عمومی رسیدن به سقف
- پنل مدیریت کندتر از سایت است
- هر افزونه جدید چیز دیگری را میشکند
- بهروزرسانی را عقب میاندازی چون میترسی
- بخشی از کار روزانهات «هماهنگ کردن» است نه فروختن
- برای هر تغییر ساده باید کسی را صدا کنی
به مورد سوم دقت کن. ترس از بهروزرسانی نشانه فنی نیست، نشانه ساختاری است: یعنی سیستم آنقدر شکننده شده که دیگر قابل نگهداری امن نیست.
جمعبندی
هیچکدام از این سقفها یعنی «ووکامرس بد است». یعنی ووکامرس برای اندازهای طراحی شده و تو ممکن است از آن اندازه رد شوی. خیلی از فروشگاهها هیچوقت رد نمیشوند و برایشان انتخاب کاملا درستی است.
ولی اگر دو تا از نشانههای بالا را داری، وقتش است که بهجای وصله بعدی، یک بار به کل تصویر نگاه کنی. بهترین فروشگاه ساز ایرانی نشان میدهد آن نگاه از کجا شروع میشود.
سؤالهای پرتکرار
چرا صفحه تسویه از صفحه اصلی کندتر است؟
چون کش نمیشود. سبد، تسویه و حساب کاربری برای هر نفر محتوای متفاوتی دارند، پس نمیتوان یک نسخه آماده به همه داد و هر بار با تمام توان پردازش ساخته میشوند. نتیجهاش این است که در کمپین، صفحه اصلی روان میماند و تسویه میخوابد.
ووکامرس تا چند محصول جواب میدهد؟
عدد ثابتی ندارد، چون به تعداد صفتها و فیلترها بستگی دارد نه فقط به تعداد محصول. کاتالوگ چند هزارتایی با صفتهای زیاد و فیلتر ترکیبی زودتر به سقف میرسد تا کاتالوگ ده هزارتایی ساده. اولین نشانه معمولا کند شدن صفحه دسته بعد از اضافه کردن فیلتر چندگانه است.
محصول متغیر چه مشکلی درست میکند؟
ووکامرس برای هر ترکیب ممکن یک رکورد جدا میسازد. سه رنگ در چهار سایز یعنی دوازده رکورد؛ پنج رنگ در شش سایز در سه وزن یعنی نود. وقتی این را در چند صد محصول ضرب کنی، صفحه ویرایش محصول کند و گاهی تایماوت میشود و بهروزرسانی گروهی قیمت نصفه میماند.
با دهها هزار سفارش چه اتفاقی میافتد؟
فهرست سفارشها در پنل کند میشود و جستجو در آن کندتر. نسخههای جدید ووکامرس یک جدول اختصاصی سفارشها معرفی کردهاند که وضع را بهتر میکند، ولی مهاجرت به آن با همه افزونهها سازگار نیست و خودش یک تصمیم است نه یک کلید.
ووکامرس چند انبار را پشتیبانی میکند؟
یکی. هر محصول یک عدد موجودی دارد و تفکیکش بین دو انبار، یا بین انبار و فروشگاه فیزیکی، فقط با افزونه ممکن است. همین محدودیت وقتی همزمان روی بازارگاهها میفروشی هم خودش را نشان میدهد: یک عدد باید بین چند ویترین تقسیم شود و ابزاری برایش نیست.
از کجا بفهمم به سقف رسیدهام؟
پنج نشانه: پنل مدیریت کندتر از سایت است، هر افزونه جدید چیز دیگری را میشکند، بهروزرسانی را از ترس عقب میاندازی، بخشی از روزت صرف هماهنگ کردن است نه فروختن، و برای هر تغییر ساده باید کسی را صدا کنی. سومی مهمترین است — ترس از بهروزرسانی یعنی سیستم دیگر قابل نگهداری امن نیست.
فروشگاهی که این راهنما دربارهاش است، همینجا ساخته میشود.
محصول و قیمت و صفحه قوانین و یک فرایند خرید سالم — همان چیزهایی که کارشناسها دنبالشان میگردند — از روز اول سر جایشان هستند.