سرعة هذه الصفحة TTFB … LCP …

مفتوح المصدر · Ata

ارتقِ بإضافة WordPress الخاصة بك.
ببنية MVC-S.

تساعد ATA مطوّري إضافات WordPress على إبقاء قواعد الشيفرة المتنامية منظّمة وسهلة الصيانة باستخدام نمط التصميم MVC.

لمطوّري إضافات WordPress

لكل شيء مجلّده.

تمنح ATA كل إضافة البنية نفسها القابلة للتوقّع، فتبقى قواعد الشيفرة المتنامية منظّمة وسهلة الصيانة.

ATA Folder STRUCTURE

your-plugin-name/
├── app/
│   ├── apis/               # REST API endpoint classes
│   ├── controllers/        # Controller classes
│   ├── helpers/            # Global helper functions
│   ├── models/             # Data logic (database interaction)
│   │   └── structures/     # Optional: DTOs/data structure classes
│   ├── routes/             # API and custom URL definitions
│   ├── services/           # Business logic layer
│   └── views/              # View files (HTML/PHP templates)
│
├── base/                   # Base classes your app classes extend
├── config/                 # Plugin-wide configuration
├── constants/              # Custom constant definitions
├── inc/                    # Bootstrapping and initialization files
├── vendor/                 # Composer dependencies (includes the core ATA framework)
│
└── your-plugin-name.php    # The main plugin entry file

المبادئ الأساسية لـ Ata.

منظّمة افتراضيًا

توفّر ATA بنية مجلدات محددة مسبقًا تفصل منطقيًا بين أجزاء إضافتك المختلفة.

البرمجة الكائنية أولًا

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

فصل واضح للمسؤوليات

تطبّق صيغة من نمط MVC لضمان الفصل بين طبقات المنطق والبيانات والعرض.

توجيه مبسّط

تتضمن ATA موجّهًا مدمجًا يجعل تسجيل نقاط نهاية REST API المخصصة أو عناوين URL المخصصة أمرًا بسيطًا وتصريحيًا.

الفروق الرئيسية

ما هو MVC-S؟

تعتمد ATA صيغة من نمط Model-View-Controller ‏(MVC) نسمّيها MVC-S ‏(Model-View-Controller-Services).

Controller (المحرّك المركزي)

الـ Controller هو قلب عمل إضافتك. فهو مسؤول عن معالجة الطلبات الواردة، وتسجيل جميع خطّافات WordPress ومرشّحاتها، والتحكم في مسار التطبيق. في الإضافات البسيطة، يمكن للـ Controller أن يتولّى كل المنطق والوصول إلى البيانات مباشرةً. أما في التطبيقات الأكثر تعقيدًا فيتطوّر دوره ليصبح منسّقًا: يستدعي Service لمنطق الأعمال أو Model للبيانات، ثم يمرّر النتائج إلى View لعرضها.

View (طبقة العرض)

الـ View طبقة اختيارية لتوليد مخرجات HTML. تتلقّى البيانات من الـ Controller وتعرضها. ينبغي أن يحتوي الـ View على الحد الأدنى من منطق PHP، وأن يقتصر على عرض البيانات التي يتلقّاها.

Model (طبقة البيانات)

مسؤولية الـ Model الوحيدة هي التعامل المباشر مع قاعدة البيانات. داخل صنف Model يمكنك الوصول إلى كائن قاعدة بيانات WordPress عبر $this->db (مثلًا: $this->db->get_results(...)). هذه الطبقة اختيارية؛ فإن لم تتعامل إضافتك مع قاعدة البيانات فلا حاجة لها.

Service (طبقة المنطق)

طبقة الـ Service مكان اختياري لكنه موصى به لمنطق الأعمال الأساسي في إضافتك. حين يصبح المنطق أعقد من أن يتحمّله الـ Controller، ينبغي استخراجه إلى Service. هكذا تبقى الـ Controllers خفيفة ومركّزة على معالجة الطلبات.

إضافة نموذجية

Polylang RestAPI Helper

إضافة polylang-restapi-helper مثال مثالي ومركّز على إطار عمل ATA.

كيف تبني إضافة WordPress بأسلوب ATA MVC

التوثيق

كيف تبدأ استخدام ATA في إضافتك، بسرعة وسهولة

قصة نجاحك قد تكون التالية.

لديك أسئلة؟ نحن هنا لمساعدتك على اتخاذ الخطوة الصحيحة.