ماهي WooCommerce وكيف تعمل؟

قراءة 3 دقائق
2026-03-19
2026-06-04
2,560
أنا أحصل على عمولة عند التسوق عبر الروابط أدناه، ولا يُضاف أي تكلفة عليك.

ماهي WooCommerce وكيف تعمل؟

WooCommerce هو إضافة تجارة إلكترونية مفتوحة المصدر مبنية على منصة WordPress، والتي تسمح بتحويل أي موقع ويب قياسي لـ WordPress إلى متجر إلكتروني متكامل الوظائف. جوهر هذه الإضافة يكمن في كونها جسرًا يربط بين نظام إدارة المحتوى الخاص بـ WordPress ووظائف التجارة الإلكترونية. تم تطوير WooCommerce في البداية بواسطة شركة WooThemes، وقد أصبحت الآن جزءًا من مجموعة Automattic، وهي متكاملة بشكل عميق مع بيئة منصة WordPress.

مبدأ عمله يكمن في أنه يضيف جداول قاعدة بيانات مخصصة إلى قاعدة بيانات ووردبريس، وذلك لتخزين بيانات التجارة الإلكترونية مثل المنتجات والطلبات ومعلومات العملاء. عند التفعيل… WooCommerce بعد تثبيت الإضافة، ستضيف مجموعة من القوائم والخيارات إلى واجهة مدير ووردبريس، وفي الوقت نفسه ستقوم بإنشاء الصفحات اللازمة في الجزء الأمامي من الموقع، مثل صفحة المتجر الرئيسية وصفحة عربة التسوق وصفحة الدفع. أما المنطق الخلفي للإضافة فهو يتم تنفيذه من خلال مجموعة من خ woocommerce_before_main_content و woocommerce_after_shop_loop_itemيتيح ذلك للمطورين تخصيص الميزات والمظهر بشكل متعمق.

تتبع هذه المنصة نموذج البنية التحتية النموذجي MVC (النموذج – واجهة المستخدم – وحدة التحكم)، على الرغم من أنه تم تعديله قليلاً في سياق ووردبريس. يتم تمثيل نموذج البيانات (النموذج) من خلال فئات المنتجات والطلبات (مثل…). WC_Product و WC_Orderيتم التحكم في طبقة الإدارة وطبقة العرض (الواجهة) من خلال ملفات قوالب المواضيع، بينما يتم معالجة المنطق التجاري (المتحكم) بواسطة جوهر الإضافة والعديد من الأدوات المساعدة (الهوكات). تضمن هذه البنية مستوى عالٍ من المرو

القراءة الموصى بها دليل WooCommerce النهائي لعام 2025: بناء متجرك الإلكتروني من الصفر

كيفية تثبيت وتكوين متجرك الأول باستخدام منصة WooCommerce

عملية تثبيت WooCommerce لا تختلف عن تثبيت أي إضافة أخرى لـ WordPress. أسهل طريقة هي البحث عن الإضافة وتثبيتها من خلال صفحة “الإضافات” -> “تثبيت إضافات” الموجودة في واجهة واجهة إدارة WordPress.

خادم ووردبريس من شركة UltaHost
ضمان استرداد المال خلال 30 يومًا، عرض نطاق ترددي وقواعد بيانات غير محدودين، حماية مجانية ضد هجمات DDoS، خصم 50% عند الشراء لمدة 3 سنوات (السعة المتاحة: 501–4 تيرابايت).

بعد تثبيت وتفعيل الإضافة، سيبدأ النظام بتشغيل مرشد إعدادات يساعدك على إكمال الإعدادات الأساسية الضرورية. هذه المرحلة مهمة للغاية، حيث أنها تحدد الإطار الأساسي للمتجر. فيما يلي شرح مفصل لخطوات الإعدادات الرئيسية.

إجراء إعدادات المعلومات الأساسية للمتجر

سيطلب منك مرشد الإعدادات أولاً إدخال عنوان المتجر، ونوع العملة، وأنواع المنتجات المعروضة للبيع (منتجات مادية، منتجات رقمية، أو كلاهما)، بالإضافة إلى طرق الدفع ومناطق التوصيل المحددة مسبقًا. على سبيل المثال، عندما تختار العملة “اليوان الصيني”, سيقوم الإضافة بتعيين الإعدادات المناسبة في قاعدة البيانات.

تُخزن هذه الإعدادات بشكل أساسي في ملفات ووردبريس (WordPress). wp_options في الجدول، ما يلي… woocommerce_ يتم حفظ أسماء الخيارات التي تحتوي على هذا الرمز كبادئة. على سبيل المثال، تُخزن معلومات دول/مناطق المتاجر في… woocommerce_default_country موجودة ضمن الخيارات. هذه الإعدادات الأساسية توفر الأساس اللازم لتشغيل جميع الميزات اللاحقة.

تكوين إعدادات الدفع والشحن الأساسية

الدفع والشحن هما جوهر التجارة الإلكترونية. يحتوي WooCommerce على العديد من بوابات الدفع المدمجة، مثل النسخة القياسية من PayPal، والتحويلات البنكية، والدفع بالشيكات. يمكنك تفعيلها وتكوينها في صفحة “WooCommerce” -> “الإعدادات” -> “الدفع”. بالنسبة لدفع PayPal، ستحتاج إلى إدخال عنوان البريد الإلكتروني لحساب التاجر ومفتاح الواجهة البرمجية التطبيقية (API key).

القراءة الموصى بها دليل نهائي لبناء مواقع التجارة الإلكترونية باستخدام WooCommerce: من الصفر إلى إنشاء موقع تجاري إلكتروني مستقل ومتطور

تعتبر إعدادات النقل أيضًا مهمة للغاية. في صفحة “WooCommerce” -> “الإعدادات” -> “الشحن”, يمكنك إضافة مناطق التوصيل وتحديد طرق الشحن المختلفة لكل منطقة (مثل الشحن المجاني، أسعار ثابتة، أو الاستلام المحلي) بالإضافة إلى التكاليف المتعلقة بها. كما يمكنك استخدام الإضافات (البرامج الإضافية) لتسهيل إدارة هذه الإعدادات. WC_Shipping_Method تُستخدم الفئات (classes) لتجريد طرق التوصيل المختلفة، مما يسمح للمطورين بإنشاء منطق توصيل مخصص حسب احتياجاتهم.

مثال نموذجي على خطاف كود التوصيل بسعر ثابت موحد قد يكون كالتالي، ويُستخدم لإضافة رسوم إضافية بناءً على وزن سلة المشتريات:

add_filter( 'woocommerce_package_rates', 'add_shipping_surcharge_by_weight', 10, 2 );
function add_shipping_surcharge_by_weight( $rates, $package ) {
    $cart_weight = WC()->cart->get_cart_contents_weight();
    foreach ( $rates as $rate_key => $rate ) {
        if ( 'flat_rate' === $rate->method_id ) {
            if ( $cart_weight > 10 ) {
                $rates[$rate_key]->cost += 20;
            }
        }
    }
    return $rates;
}

استخدام الملحقات (extensions) والخطافات (hooks) للتخصيص المتقدم

القوة الحقيقية لـ WooCommerce تكمن في مكتبة التوسعات الضخمة الخاصة بها (المعروفة رسميًا باسم “WooCommerce Extensions”) ونظام الروابط (hooks) الصديق للمطورين. هذا يتيح لك تجاوز الميزات الأساسية المتوفرة مسبقًا وإنشاء متجر يلبي احتياجات عملك الخاصة بشكل مثالي.

استضافة.كوم استضافة مشتركة
أداء عالٍ مع وحدات المعالجة المركزية AMD EPYC، ووحدات تخزين NVMe SSD وLiteSpeed، ودعم داخلي متخصص على مدار الساعة طوال أيام الأسبوع، وتدابير أمنية متقدمة بما في ذلك SSL، وقوة الغاشمة، والحماية من البرامج الضارة والحماية من DDoS، وتوفير ما يصل إلى 731 تيرابايت 4 تيرابايت

يوفر السوق الرسمي للتوسعات مجموعة متنوعة من الإضافات (plugins) التي تتراوح من خدمات الاشتراك إلى أنظمة الحجز ونظم العضوية، وغيرها من الميزات المتقدمة. ومع ذلك، بالنسبة للاحتياجات الأكثر تخصيصًا، فإن الطريقة القياسية للتطوير هي

تنفيذ عرض بيانات المنتجات المخصصة

لنفترض أنك تبيع النبيذ، وتحتاج إلى عرض معلومات “السنة” على صفحة المنتج. يسمح لك WooCommerce بإضافة حقول منتج مخصصة بسهولة وعرضها في الواجهة الأمامية للموقع. يتم ذلك عادةً عن طريق استخدام مربعات بيانات المنتج (product data fields) بالاقتران مع تعديلات القوالب (template overrides).

أولاً، يجب عليك استخدام… woocommerce_product_options_general_product_data يتم إضافة حقل في علامة التبويب “العادية” (Regular) ضمن صفحة تحرير المنتج باستخدام الخطاف (Hook). بعد ذلك، يتم استخدام هذا الحقل بالطريقة المناسبة في التطبيق. woocommerce_process_product_meta يقوم الخيار المحدد (“الخطاف”) بحفظ قيمة هذا الحقل. وأخيرًا، لعرض هذه القيمة، ستحتاج إلى تعديل ملف قالب تفاصيل المنتج المناسب. عادةً ما يتم ذلك عن طريق… woocommerce/templates/single-product/ قم بنسخ ملفات القوالب الموجودة في المجلد إلى مجلد المواضيع الخاص بك. your-theme/woocommerce/single-product/ تم إجراء التعديلات في المنتصف.

القراءة الموصى بها تطوير مواقع التجارة الإلكترونية باستخدام WooCommerce: دليل شامل لبناء متجر إلكتروني محترف من الصفر

على سبيل المثال، في price.php يتم عرض مقتطفات الكود الخاصة بالحقول المخصصة بالقرب من ملفات القوالب:

// 显示存储在 _product_year 自定义字段中的年份
$year = get_post_meta( get_the_ID(), '_product_year', true );
if ( $year ) {
    echo '<p class="product-year">السنة: ' . esc_html($year) . '</p>';
}

إنشاء حقول خاصة لعملية الدفع

تعديل عملية الدفع هو طلب شائع آخر. يمكنك استخدام… woocommerce_checkout_fields مكونات الفلتر (filter hooks) تُستخدم لإضافة أو حذف أو تعديل الحقول الموجودة في نموذج الدفع. على سبيل المثال، يمكن إضافة حقل رقم ضريبة الشركة للعملاء من نوع B2B.

الاستضافة المشتركة InterServer
استضافة مشتركة $2.50 دولار أمريكي في الشهر، الشهر الأول $0.1 دولار أمريكي الرمز الترويجي tryinterserver، 461 نص برمجي للتطبيقات السحابية، تثبيت بنقرة واحدة.

يوضح الكود أدناه كيفية إضافة حقل مخصص في منطقة حقول الفواتير:

add_filter( 'woocommerce_checkout_fields', 'add_custom_checkout_field' );
function add_custom_checkout_field( $fields ) {
    $fields['billing']['billing_vat'] = array(
        'label' => __( '增值税号', 'your-text-domain' ),
        'placeholder' => _x( '请输入您的公司税号', 'placeholder', 'your-text-domain' ),
        'required' => false, // 可以根据业务需求设置为 true
        'class' => array('form-row-wide'),
        'clear' => true,
        'priority' => 25, // 控制字段显示顺序
    );
    return $fields;
}

بعد إضافة الحقول، ستحتاج أيضًا إلى استخدامها في العمليات أو الوظائف المناسبة داخل النظام. woocommerce_checkout_update_order_meta يقوم الخيط (hook) بحفظ قيم الحقول في بيانات ميتاداتات الطلب (order metadata)، ومن ثم يتم استخدام هذه القيم… woocommerce_admin_order_data_after_billing_address يعرض الخطاف (hook) تفاصيل الطلب على صفحة تفاصيل الطلبات الخاصة بالمدير.

أفضل الممارسات لتحسين الأداء والأمان

مع نمو حجم المتاجر وزيادة عدد المنتجات والطلبات، بالإضافة إلى استخدام مختلف أنواع التوسعات، ستبدأ مشاكل الأداء والأمان في الظهور تدريجياً. المتجر البطيء أو غير الآمن سيؤثر بشكل مباشر على معدلات التحويل وثقة العملاء.

الإجراء الأساسي لتحسين الأداء هو اختيار خادم عالي الجودة وتطبيق آليات التخزين المؤقت (الكاش). بالنسبة لمنصة WooCommerce، نظرًا لأن صفحات عربات التسوق وعمليات الدفع ديناميكية وتحتوي على معلومات الجلسات (sessions) للمستخدمين، فإنه يتعين معالجتها بشكل خاص، وعادةً ما يتم استثناؤها من عمليات تخزين الصفحات بأكملها في الذاكرة. استخدام آليات التخزين المؤقت القائمة على الكائنات (مثل Redis أو Memcached) يمكن أن يحسن بشكل كبير سرعة العمليات التي تعتمد بشكل كبير على استعلامات قاعدة البيانات، مثل عرض عدد كبير من المنتجات ع

تحسين عمليات الاستعلام عن البيانات في قواعد البيانات وتحميل الصور

أثناء تشغيل منصة WooCommerce، يتم إجراء عدد كبير من عمليات الاستعلام على قاعدة البيانات. يمكن البدء بتحسين أداء النظام من خلال التأكد من أن فهارس جداول قاعدة البيانات صحيحة. كما يجب تنظيف بيانات الجلسات القديمة بش wp_woocommerce_sessions (في الجدول) والسجلات القديمة للطلبات التي تم إكمالها.wp_wc_admin_notes إلخ) يمكن أن تقلل من حجم قاعدة البيانات.

عادةً ما تكون الصور جزءًا كبيرًا من حجم الصفحة. تأكد من أن جميع صور المنتجات مضغوطة بشكل مناسب وأنها تستخدم تنسيقات حديثة مثل WebP. يقوم WooCommerce بشكل افتراضي بإنشاء صور مصغرة بأحجام مختلفة، ويمكنك إدارة هذه الأحجام في قسم “الإعدادات” -> “الوسائط”, لكن من الأفضل استخدام تنسيقات مثل WebP لتحسين أداء الموقع. add_image_size() تحديد أبعاد الصور بدقة وفقًا لمتطلبات تصميم الموضوع الخاص بك، وتجنب إنشاء صور غير ضرورية.

تعزيز إعدادات الأمان في المتجر

الأمان هو أمر في غاية الأهمية. أولاً، استخدم دائمًا كلمات مرور قوية وقم بتفعيل ميزة التحقق المزدوج (2FA) لحماية حسابات المسؤولين. تأكد من تحديث نسخة WordPress الأساسية، وإضافات WooCommerce، والقوالب (Themes)، وجميع الإضافات الأخرى إلى أحدث إصداراتها لتصحيح الثغرات المعروفة.

فيما يتعلق بأمان المدفوعات، من الضروري استخدام شهادات SSL، والتأكد من أن الموقع بأكمله، وخاصة صفحات الدفع، يتم الوصول إليه عبر بروتوكول HTTPS. يمكنك تحقيق ذلك عن طريق تفعيل هذا البروتوكول بش FORCE_SSL_CHECKOUT يمكن استخدام الثوابت (constants) لتعزيز هذا الإعداد.

في wp-config.php ملف مضاف:

define( 'FORCE_SSL_CHECKOUT', true );

بالإضافة إلى ذلك، فإن تقييد محاولات تسجيل الدخول، واستخدام مفاتيح أمان قوية، وإجراء عمليات فحص أمني دورية، بالإضافة إلى التحقق الدقيق وتطهير الملفات التي يقوم المستخدمون بتحميلها (مثل الصور المرسلة من خلال تقييمات المنتج)، كلها تعتبر إجراءات أمنية ضرورية للغاية. بالنسبة للمتاجر التي تتعامل مع بيانات عملاء حساسة، يجب التفكير في تنفي

الملخصات

يُعد WooCommerce حجر الزاوية في نظام ووردبريس (WordPress)، ونجاحه يكمن في دمجه بين ميزات التجارة الإلكترونية القوية ومرونة وسهولة الاستخدام غير المسبوقة. يبدأ الأمر بعملية تثبيت وإعداد سهلة، مع وجود أدوات توجيهية واضحة وواجهة إدارة خلفية مريحة، ويمتد ذلك إلى إمكانية التخصيص اللامحدود باستخدام مكتبة الإضافات الضخمة ونظام الروابط (hooks) المتقدم. يوفر WooCommerce أدوات مناسبة لبناء متاجر إلكترونية مثالية للشركات من جميع الأحجام. كما أن الاهتمام المستمر بأداء قاعدة البيانات، وتحسين جودة الصور، وتعزيز الأمان بشكل شامل أمر بالغ الأهمية لضمان استقرار وسرعة وأمان تشغيل المتجر. سواء كانت الشركة ناشئة أو متقدمة، فإن إتقان المبادئ الأساسية لـ WooCommerce وأفضل الممارسات يمكن أن يمنحها ميزة تنافسية قوية في مجال التجارة الرقمية.

الأسئلة الشائعة الأسئلة المتداولة

كيفية إخفاء الشريط الجانبي في صفحات متجر WooCommerce

يمكنك استخدام علامات شرطية (conditional tags) في ملفات التخصيص (theme files) الخاصة بك لإزالة الشريط الجانبي (sidebar). الطريقة الأكثر شيوعًا هي إنشاء ملف يحمل اسم… woocommerce.php قم بنقل ملف القالب إلى المجلد الرئيسي لموضوعك (theme root directory)، وذلك بناءً على موضوعك الحالي. page.php تم تعديل الملف، وتم أيضًا إزالة العناصر غير الضرورية منه. get_sidebar() استدعاء الدوال.

الطريقة الأكثر مرونة هي استخدام… is_shop() العلامات الشرطية تعمل بالتزامن مع “الخطافات” (hooks). على سبيل المثال، في موضوعك الفرعي… functions.php أضف الكود التالي إلى الملف لإزالة الشريط الجانبي من صفحات متجر WooCommerce:

add_action( 'wp', 'remove_sidebar_on_shop' );
function remove_sidebar_on_shop() {
    if ( is_shop() ) {
        remove_action( 'woocommerce_sidebar', 'woocommerce_get_sidebar', 10 );
        // 或者,如果你的主题使用不同的侧边栏钩子
        // add_filter( 'is_active_sidebar', 'deactivate_sidebar_on_shop', 10, 2 );
    }
}

هكذا يمكن التأكد من أن الشريط الجانبي يختفي فقط على الصفحة الرئيسية للمتجر، دون أن يؤثر ذلك على الصفحات الأخرى.

هل يمكن تغيير نص الزر الافتراضي “أضف إلى سلة التسوق”؟

نعم، هناك العديد من الطرق لتغيير نصوص الأزرار. أسهلها استخدام إضافات ترجمة مثل Loco Translate، حيث يمكنك ترجمة النص “Add to cart” إلى أي نص تريده (مثل “اشتري الآن”). هذه الطريقة لا تتطلب كتابة أي كود.

طريقة أخرى هي استخدام خطافات (hooks) المرشحات (filters). woocommerce_product_add_to_cart_text(يُستخدم لصفحات الأرشيف) و woocommerce_product_single_add_to_cart_text(يُستخدم في صفحات المنتج الفردي). ضمن موضوعك… functions.php أضف الكود التالي إلى المكان المناسب:

add_filter( 'woocommerce_product_add_to_cart_text', 'change_archive_add_to_cart_text' );
function change_archive_add_to_cart_text() {
    return __( '立即订购', 'your-text-domain' );
}

add_filter( 'woocommerce_product_single_add_to_cart_text', 'change_single_add_to_cart_text' );
function change_single_add_to_cart_text() {
    return __( '加入购物车', 'your-text-domain' );
}

يمكنك استخدام خيوط الفلاتر (filter hooks) للحصول على تحكم أكثر دقة بناءً على نوع المنتج (مثل المنتجات المتغيرة، المنتجات المجمعة، إلخ).

كيفية تحديد أسعار المنتجات المختلفة بناءً على أدوار المستخدمين؟

تحديد الأسعار بناءً على دور المستخدم هو ميزة متقدمة، وعادةً ما يتطلب ذلك تطوير كود مخصص أو استخدام إضافات متخصصة لنظام العضوية أو التسعير بالجملة (مثل WooCommerce Memberships أو Wholesale Suite). إذا تم تنفيذ ذلك من خلال الكود، فإن الفكرة الأساسية تكمن في استخدام… woocommerce_get_price تقوم خاصية “فلتر هوك” (Filter Hook) بتعديل أسعار المنتجات بشكل ديناميكي.

فيما يلي مثال أساسي يوضح كيفية تقديم خصم لعملاء يمتلكون دور المستخدم “wholesaler” على المنتج 20%:

add_filter( 'woocommerce_get_price', 'apply_role_based_pricing', 10, 2 );
function apply_role_based_pricing( $price, $product ) {
    if ( is_user_logged_in() && current_user_can( 'wholesaler' ) ) {
        $price = $price * 0.8; // 打八折
    }
    return $price;
}

يرجى ملاحظة أن هذا الكود مجرد عرض مفاهيمي. في التطبيقات العملية، ستحتاج إلى أخذ الأمور التالية في الاعتبار: الأداء (قد يكون من الضروري تخزين الأسعار في الذاكرة لتحسين الأداء)، وتوافق عربات التسوق وعرض الطلبات، وكيفية التعامل مع حسابات الضرائب. بالنسبة للبيئات الإنتاجية، فإن استخدام الإضافات (التوسعات) التي تم اخ

كيفية تصحيح المشاكل الشائعة المتعلقة بعدم ظهور الصفحة (الشاشة البيضاء) في منصة WooCommerce؟

عادةً ما يحدث مشكلة “الشاشة البيضاء الميتة” (White Screen of Death، WSOD) في منصة WooCommerce بسبب أخطاء فادحة في لغة PHP، وتكون رسائل الخطأ مخفية. أولاً، يجب عليك… wp-config.php قم بتفعيل وضع التصحيح الخاص بووردبريس (WordPress Debug Mode) في الملف. ابحث عن التعريف التالي أو أضفه إلى الملف:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_DISPLAY', false ); // 防止错误直接输出到屏幕
define( 'WP_DEBUG_LOG', true ); // 将错误记录到 /wp-content/debug.log 文件

بعد الإضافة، عدت لزيارة الصفحة التي كانت تعرض شاشة بيضاء عند الفتح. ثم قمت بفحص الملفات الموجودة في الموقع المحدد. wp-content الموجود في المجلد debug.log الملف يجب أن يحتوي على معلومات الأخطاء التفصيلية التي تسببت في المشكلة، مثل استنفاد الذاكرة، أخطاء نحوية، أو تعارض مع موضوع معين/إضافة (plugin).

الأسباب الشائعة المتعلقة بـ WooCommerce تشمل: تعارضات بين القوالب (Themes) أو الإضافات (Plugins) (يمكن تحديد المشكلة عن طريق تعطيل الإضافات واحدة تلو الأخرى والعودة إلى القالب الافتراضي)، أو نقص في حدود ذاكرة PHP (يمكن محاولة حل المشك wp-config.php إضافة إلى ذلك… define( 'WP_MEMORY_LIMIT', '256M' );أو قد تكون هناك مشاكل في جداول قاعدة بيانات WooCommerce (يمكنك محاولة تشغيل خيار “إنشاء جداول WooCommerce الافتراضية” في أداة حالة WooCommerce، أو استخدام إضافات لإصلاح قاعدة البيانات).