Create a Vendor CPT & Native Multi‑Vendor Workflow – יצירת CPT 'ספק' ומערכת Multi‑Vendor ללא תוסף
מה נפתור: חנויות מרובות‑ספקים נאלצות להסתמך על תוספים כבדים כמו Dokan או WC Vendors.
נלמד ליצור CPT בשם vendor, לנהל הרשאות ספק ולנתב עמלות—all in‑house.
שלבי יישום מפורטים
- צור קובץ plugin חדש בשם
pablo-vendors.phpבתיקייתwp-content/plugins. - העתק את קוד ה־CPT והפעל את התוסף בלוח‑הבקרה.
- הקם משתמש Role חדש vendor‑admin כדי לתת גישה רק להזמנותיהם.
- בצד ה‑checkout, הוסף פילוח פריטי הזמנה לפי owner_id.
- חשוב על מיסוי: add_fee() נוסף פעמיים? טפל בהנחות.
קטע קוד מלא (PHP 8.3)
/*
Plugin Name: Pablo Vendors
Description: Native multi‑vendor workflow for WooCommerce.
Version: 1.0
Requires PHP: 8.3
*/
defined('ABSPATH') || exit;
register_post_type('vendor', [
'label' => 'ספק',
'public' => false,
'show_ui' => true,
'capability_type' => ['vendor','vendors'],
'map_meta_cap' => true,
'supports' => ['title','excerpt','thumbnail']
]);
add_action('woocommerce_checkout_order_processed', function($order_id){
// Split order items per vendor and add meta
// ...
});
הסבר שורה‑שורה
- שורה 8:
public => falseמסתירה עמודי ספק מה‑frontend. - שורה 9:
show_ui => trueמאפשרת ניהול באדמין ללא חשיפה. - פונקציה checkout_order_processed מפצלת הזמנות ב‑HPOS.
שיפור SEO ו‑Yoast
השתמש במילת המפתח WooCommerce vendor CPT בכותרת, בתיאור המטא וב‑URL הידידותי.
📊 נתוני צפיות
סה"כ צפיות: 33
מבקרים ייחודיים: 33
- 🧍 172.71.122.93 (
France) - 🧍 104.23.170.15 (
Netherlands) - 🧍 172.71.122.100 (
France) - 🧍 172.70.46.223 (
Netherlands) - 🧍 172.70.38.155 (
United States) - 🧍 172.70.42.119 (
United States) - 🧍 172.71.190.252 (
United States) - 🧍 104.23.166.79 (
Netherlands) - 🧍 162.158.42.81 (
United States) - 🧍 172.71.190.89 (
United States) - 🧍 172.68.245.128 (
United States) - 🧍 172.70.206.216 (
United States) - 🧍 172.70.135.189 (
United States) - 🧍 104.23.209.136 (
United States) - 🧍 162.158.79.59 (
United States) - 🧍 104.23.211.219 (
United States) - 🧍 172.70.39.67 (
United States) - 🧍 172.71.126.41 (
France) - 🧍 172.71.190.21 (
United States) - 🧍 162.158.152.152 (
United States) - 🧍 162.158.79.107 (
United States) - 🧍 104.23.211.53 (
United States) - 🧍 104.23.209.46 (
United States) - 🧍 172.71.146.146 (
United States) - 🧍 172.71.151.193 (
United States) - 🧍 172.68.22.213 (
United States) - 🧍 104.23.211.136 (
United States) - 🧍 172.71.127.85 (
France) - 🧍 172.71.146.128 (
United States) - 🧍 172.71.194.156 (
United States) - 🧍 172.68.244.201 (
United States) - 🧍 172.71.194.157 (
United States) - 🧍 172.71.178.144 (
United Kingdom)
France)
Netherlands)
United States)
United Kingdom)