هيكل الدليل
plugin/
└── foo
├── app
│ ├── controller
│ │ └── IndexController.php
│ ├── exception
│ │ └── Handler.php
│ ├── functions.php
│ ├── middleware
│ ├── model
│ └── view
│ └── index
│ └── index.html
├── config
│ ├── app.php
│ ├── autoload.php
│ ├── container.php
│ ├── database.php
│ ├── exception.php
│ ├── log.php
│ ├── middleware.php
│ ├── process.php
│ ├── redis.php
│ ├── route.php
│ ├── static.php
│ ├── thinkorm.php
│ ├── translation.php
│ └── view.php
├── public
└── api
نرى أن لديك ملحق تطبيق له نفس هيكل الدليل وملفات التكوين كما في webman، وفي الواقع، تجربة التطوير لا تختلف بشكل أساسي عن تطوير تطبيقات webman العادية. يتم اتباع نمط التسمية والدليل وفقًا لمعيار PSR4، نظرًا لأن المكونات يتم وضعها في دليل plugin، فإن مساحة الأسماء تبدأ دائمًا بـ plugin، على سبيل المثال plugin\foo\app\controller\UserController
.
حول دليل api
يحتوي كل مكون على دليل api، إذا كانت تطبيقاتك توفر بعض الواجهات الداخلية لتطبيقات أخرى، فيجب وضع الواجهات في دليل api.
لاحظ أن الواجهات المشار إليها هنا هي واجهات استدعاء الوظائف، وليست واجهات استدعاء الشبكة.
على سبيل المثال، يوفر ملحق البريد
في plugin/email/api/Email.php
واجهة Email::send()
لتسمح لتطبيقات أخرى باستدعاء إرسال البريد.
بالإضافة إلى ذلك، فإن plugin/email/api/Install.php
يتم إنشاؤه تلقائيًا، ويستخدم للسماح لسوق ملحقات webman-admin باستدعاء تنفيذ عمليات التثبيت أو الإلغاء.