نشر مقالات WordPress عبر Activepieces (بديل n8n بترخيص MIT)
سير عمل Activepieces لنشر مقالات WordPress تلقائياً عند موافقة المحرر في Notion. مثال workflow غير n8n يُظهر بديلاً للذين يفضّلون MIT الصرف.
الهدف من مسار العمل
إظهار أن Activepieces قادر على workflows مماثلة لـ n8n مع ترخيص MIT صرف. مفيد للوكالات التي تبيع automations للعملاء وتحتاج الترخيص الصريح.
مخطط البنية والربط الهندسي
خطوات التشغيل التفصيلية
الخطوات
التفاصيل البرمجية والتهيئة
مقدمة حول سير العمل
سير عمل Activepieces لنشر مقالات WordPress تلقائياً عند موافقة المحرر في Notion. مثال workflow غير n8n يُظهر بديلاً للذين يفضّلون MIT الصرف.
الهدف من سير العمل
إظهار أن Activepieces قادر على workflows مماثلة لـ n8n مع ترخيص MIT صرف. مفيد للوكالات التي تبيع automations للعملاء وتحتاج الترخيص الصريح.
الأدوات والتقنيات المستخدمة
تم استخدام الأدوات التالية: activepieces و notion و wordpress و slack
تفاصيل تنفيذ سير العمل
- مستوى الصعوبة: متوسط
- الوقت المتوقع للإعداد:
- محفز التشغيل (Trigger):
خطوات العمل (الآلية)
- في Activepieces، أنشئ Flow جديد
- Trigger: Notion → New/Updated Database Item
- اختر قاعدة المقالات في Notion، فلتر: status = ‘Approved’
- أضف Piece: Notion → Get Page Content (يجلب blocks)
- Code Piece (TypeScript): تحويل blocks → HTML. Notion blocks الشائعة (paragraph, heading, list, image) تُحوَّل سهلاً
- استخراج metadata من properties: title، excerpt، tags، category
- WordPress Piece: Create Post مع title، content (HTML)، excerpt، categories، tags، status: ‘publish’ أو ‘draft’
- Branch: إذا الاستجابة 201/200 → success path. إذا فشل → error path
- Success: تحديث Notion page بـ ‘Published URL’ property + Slack message
- Error: Slack alert مع رسالة الخطأ، Notion property = ‘Failed’
- Activepieces Tables: log كل publish attempt
وصف مفصل
## المشكلة غرفة محتوى تعتمد Notion كـ CMS داخلي للمسوّدات. عند الموافقة، المحرر ينسخ يدوياً إلى WordPress. خطوة متكررة عرضة للأخطاء. ## المُدخلات – Activepieces مثبت على Coolify – حساب Notion مع API integration – موقع WordPress مع Application Password – Slack أو Telegram للإشعارات ## المُخرجات – مقال WordPress منشور تلقائياً مع كل موافقة في Notion – إشعار Slack بالنشر الناجح أو الفشل – أرشيف Activepieces Tables بكل المقالات المنشورة ## مخطط Mermaid “`mermaid graph TD A[Notion DB: Articles] –>|Status changes to Approved| B[Activepieces Trigger] B –> C[Get full page content from Notion] C –> D[Convert Notion blocks to HTML] D –> E[Extract title, excerpt, tags] E –> F[WordPress: Create Post via REST] F –> G{Success?} G –>|Yes| H[Update Notion: Published URL] G –>|No| I[Slack alert with error] H –> J[Slack notification: published] H –> K[Activepieces Tables: log] “` ## نقاط الفشل – Notion blocks معقدة (databases مدمجة، toggles) لا تُحوَّل تلقائياً: التغطية تشمل 80% من المحتوى الشائع – صور Notion على نطاقاتها المؤقتة: تحتاج إعادة رفعها لـ WP أولاً – WordPress REST يرفض categories غير موجودة: تأكد من إنشائها أولاً – Application Password مكشوف: استخدم Activepieces Connections (مشفّرة) ## نقاط المراجعة البشرية – الـ trigger يتطلب ‘Approved’ status — قرار بشري قبل النشر – للحالات الحساسة (مقال خلافي): اضبط status = ‘Draft’ افتراضياً، المحرر يضع ‘publish’ بعد المراجعة النهائية ## اعتبارات الخصوصية Activepieces self-hosted على Coolify، البيانات محلية. Notion API يصلها محتوى المقال (طبيعي). WordPress يستلم المقال (طبيعي). ## ملاحظات الصيانة Activepieces إصدارات سريعة — راجع breaking changes قبل ترقية. تكامل Notion API قد يتغير سنوياً.