הערה: כאשר חנות WooCommerce WooCommerce מתחילה למכור, בעלים נתקלים לעתים קרובות בבעיות בלתי צפויות: תשלום איטי, חישוב מס שגוי, קשיים במשלוח. ב-70% מהמקרים, שורש הבעיה הוא הגדרות לא אופטימליות. במשך 5 שנים, הקמנו 50+ חנויות ואנחנו יודעים כיצד להימנע מטעויות נפוצות. פעם הגיע אלינו לקוח עם חנות אלקטרוניקה: בחירת מוצר משתנה ארכה 8 שניות. הסיבה הייתה שאילתות מסד נתונים מסוג N+1 בעת טעינת מאפיינים. פתרנו זאת על ידי שמירת מטא-דאטה במטמון באמצעות transients והשבתת תוספים מיותרים. הזמינו הגדרת WooCommerce – והחנות שלכם תהיה מוכנה להשקה תוך 2-3 ימים.
מדוע WooCommerce דורש שיפור?
כברירת מחדל, התוסף מספק קטלוג, עגלה, תשלום ואנליטיקה בסיסית. אבל עבור השוק הרוסי, זהו שלד, לא חנות מוגמרת. אין שדה שם אב, אין שיעורי מע"מ של 10/20%, אין תשלומים פופולריים (YooKassa, Sberbank), אין משלוח עם סף חינם. יש להגדיר הכל. בניגוד ל-Easy Digital Downloads (מוצרים דיגיטליים בלבד), WooCommerce תומך בכל סוג מוצר אך דורש התאמה אישית לעסק ספציפי. בנוסף, תהליך התשלום הסטנדרטי אינו מותאם לגופים משפטיים – הוא זקוק לבלוק של ח.פ. (INN) ומ.ק. (KPP). כמו כן, ההתקנה ברירת המחדל אינה מותאמת ל-Core Web Vitals – סקריפטים רבים פוגעים ב-LCP ו-CLS. אנו מגדירים טעינה אסינכרונית של משאבים ודוחים סקריפטים שאינם נחוצים לעיבוד ראשוני.
כיצד להגדיר נכון מסים ומשלוח ב-WooCommerce?
שיעורי מס ואזורי משלוח הם הבסיס לפעולה נכונה של החנות. אנו מגדירים אותם פרוגרמטית כדי להימנע מהזנה ידנית וטעויות. עבור רוסיה, שני שיעורי מע"מ חשובים: 20% ו-10% (למוצרים מוזלים). המשלוח מוגדר עם סף חינם ועלות קבועה. למסחר רב-אזורי – אזורים לפי מחוזות פדרליים עם שיעורים שונים.
התקנה והגדרה
wp plugin install woocommerce --activate
wp wc tool run install_pages --user=1
wp option update woocommerce_default_country "RU"
wp option update woocommerce_currency "USD"
wp option update woocommerce_currency_pos "right_space"
wp option update woocommerce_price_thousand_sep " "
wp option update woocommerce_price_decimal_sep ","
wp option update woocommerce_calc_taxes "yes" שיעורי מס עבור רוסיה
הוספה פרוגרמטית של שיעורי מע"מ 20% ו-10%:
$tax_rates = [
[
'country' => 'RU',
'rate' => '20.0000',
'name' => 'НДС 20%',
'priority' => 1,
'compound' => false,
'shipping' => true,
'class' => '',
],
[
'country' => 'RU',
'rate' => '10.0000',
'name' => 'НДС 10%',
'priority' => 1,
'compound' => false,
'shipping' => false,
'class' => 'reduced-rate',
],
];
foreach ($tax_rates as $rate) {
WC_Tax::_insert_tax_rate($rate);
}חשוב: לחישוב מס נכון, ודאו שההגדרה של WooCommerce "חשב מס לפי כתובת החנות" מופעלת.
הגדרת משלוח
צרו אזור "רוסיה" עם עלות קבועה של $3–5 ומשלוח חינם מ-$45–65:
$zone = new WC_Shipping_Zone();
$zone->set_zone_name('Россия');
$zone->add_location('RU', 'country');
$zone->save();
$zone->add_shipping_method('flat_rate');
$zone->save();
update_option("woocommerce_flat_rate_{$instance_id}_settings", [
'enabled' => 'yes',
'title' => 'Доставка по России',
'cost' => '350',
'free_min_amount' => '5000',
]);לחנויות רב-אזוריות, ניתן להוסיף אזורים לפי מחוזות פדרליים עם שיעורים שונים.
שדות תשלום מותאמים אישית
הוספת שם אב וח.פ. (INN) באמצעות hook:
add_filter('woocommerce_checkout_fields', function (array $fields): array {
$fields['billing']['billing_patronymic'] = [
'label' => 'Отчество',
'placeholder' => 'Ивановна',
'required' => false,
'class' => ['form-row-last'],
'priority' => 25,
];
$fields['billing']['billing_inn'] = [
'label' => 'ИНН',
'required' => false,
'class' => ['form-row-wide', 'legal-field'],
'priority' => 90,
];
return $fields;
});
add_action('woocommerce_checkout_update_order_meta', function (int $order_id): void {
if (!empty($_POST['billing_patronymic'])) {
update_post_meta($order_id, '_billing_patronymic', sanitize_text_field($_POST['billing_patronymic']));
}
if (!empty($_POST['billing_inn'])) {
update_post_meta($order_id, '_billing_inn', sanitize_text_field($_POST['billing_inn']));
}
}); שילוב שער תשלום (דוגמה)
יישמו שער מותאם אישית המבוסס על wp plugin install woocommerce --activate wp wc tool run install_pages --user=1 wp option update woocommerce_default_country "RU" wp option update woocommerce_currency "USD" wp option update woocommerce_currency_pos "right_space" wp option update woocommerce_price_thousand_sep " " wp option update woocommerce_price_decimal_sep "," wp option update woocommerce_calc_taxes "yes" . ב-callback, אמתו את החתימה HMAC-SHA256:
class WC_My_Gateway extends WC_Payment_Gateway {
// ... полная реализация в кодовой базе
}
add_filter('woocommerce_payment_gateways', function (array $gateways): array {
$gateways[] = 'WC_My_Gateway';
return $gateways;
});עבור שערים פופולריים (YooKassa, Tinkoff), השתמשו בתוספים מוכנים – מהיר ואמין יותר.
כיצד לבחור שער תשלום עבור רוסיה?
| שער | עמלה | פופולריות | אינטגרציה |
|---|---|---|---|
| YooKassa | מ-3% | גבוהה | תוסף / מותאם אישית |
| Sberbank | מ-2.5% | גבוהה | תוסף |
| Tinkoff | מ-2% | בינונית | תוסף |
| Robokassa | מ-4% | נמוכה | תוסף / מותאם אישית |
כיצד לשפר את ביצועי WooCommerce?
כדי להאיץ את טעינת הדפים, אנו משתמשים בשילוב: מטמון דפים (Varnish או Nginx FastCGI Cache), מטמון אובייקטים של Redis, השבתת סקריפטים של WooCommerce בדפים שבהם הם אינם נחוצים (למשל, דף הבית). כמו כן, אנו משביתים emoji ו-oEmbed מיותרים. זה מפחית את TTFB ומשפר את LCP. עבור תהליך התשלום, אנו מיישמים טעינה עצלה של סקריפטים שאינם משפיעים על הפונקציונליות.
שגיאות נפוצות בהגדרת WooCommerce
| שגיאה | השלכות | פתרון |
|---|---|---|
| מסים לא מוגדרים | חישוב מע"מ שגוי | הגדרת שיעורים פרוגרמטית |
| אזור משלוח יחיד | חוסר גמישות | יצירת אזורים לפי אזורים |
| תהליך תשלום ברירת מחדל | אובדן גופים משפטיים | שדות מותאמים אישית עם ח.פ. |
| תוספים מיותרים רבים | טעינה איטית | השבתת מיותרים |
מה כלול בהגדרה במפתח מלא?
הגדרה במפתח מלא כוללת: התקנה והגדרה ראשונית של WooCommerce, הגדרת שיעורי מס (מע"מ 20/10% ואחרים), אזורי ושיטות משלוח (קבוע, לפי סכום, שליח), שדות תשלום מותאמים אישית (שם אב, ח.פ., הערה), אינטגרציה של 1-2 שערי תשלום, הודעות דוא"ל למנהלים ולקוחות, בדיקת כל תרחישי ההזמנה, תיעוד הגדרות והדרכת מנהלים.
מדוע הגדרת WooCommerce שלנו עדיפה?
WooCommerce קל פי 1.5 להגדרה מאשר Magento, ונטען פי שניים מהר יותר על אירוח טיפוסי. אבל הכי חשוב, אנו מספקים אחריות ל-30 יום על כל העבודה. אם מתגלה שגיאה לאחר ההשקה (למשל, חישוב מע"מ שגוי), אנו מתקנים אותה בחינם. ב-5 שנים, מעולם לא הפר�ו אחריות זו. פנו אלינו לייעוץ לפרויקט שלכם.
לוח זמנים ועלות
הגדרה בסיסית עם שער אחד ומשלוח סטנדרטי: 2-3 ימים. הגדרה מורכבת (עד 3 שערים, תשלום מותאם אישית, אינטגרציה עם 1C): 5-8 ימים. העלות מחושבת באופן אישי לאחר בדיקת המצב הנוכחי. צרו קשר כדי להעריך את הפרויקט שלכם.







