WP Manifestindependent plugin directory
manifest / builders / projects-plugins

Projects Plugin for Elementor self-updates

Manage and display projects with Elementor widgets, filtering, pagination, and location support.

by Malka · github.com/yossef-weal/projects-plugins

★ 0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/yossef-weal/projects-plugins/archive/refs/heads/main.zip

Ships its own WordPress updater (built-in updater), so new versions show up under Dashboard → Updates.

إضافة ووردبريس لإنشاء وإدارة وعرض المشاريع عبر عناصر Elementor مخصصة مع فلاتر وتصفيـة، صفحات أرشيف مفصّلة، ودعم المواقع الجغرافية.

المتطلبات

  • WordPress 6.0 أو أحدث
  • PHP 7.4 أو أحدث
  • Elementor 3.10 أو أحدث

المزايا الرئيسية

  • نوع محتوى مخصص project مع تصنيف هرمي project_category.
  • قوالب جاهزة لصفحة الأرشيف والصفحة الفردية للمشروع.
  • حقل معرض صور للمشروع + حقول إحداثيات (خط العرض/الطول) مع اختيار طريقة العرض (رابط خرائط أو خريطة مضمّنة).
  • إعدادات عامة للتحكم في عدد المشاريع/الصفحات، وتفعيل أنماط العرض (شبكة، ماسونري، سلايدر، قائمة)، ومفتاح Google Maps.
  • واجهة REST جاهزة: ‎/wp-json/projects-plugin/v1/projects مع دعم التصنيف، التصفح، وتحديد العناصر الأخيرة.
  • 3 عناصر Elementor مخصصة (Projects، Latest Projects، Categories) مع فلاتر، ترقيم، زر «تحميل المزيد» أو تمرير لا نهائي، ودعم السلايدر عبر Swiper.

التثبيت

  1. انسخ المجلد malka-plugin إلى wp-content/plugins أو ثبّته كملف ZIP من لوحة ووردبريس.
  2. فعّل الإضافة من صفحة «الإضافات» (تقوم الإضافة بتسجيل نوع المحتوى ومسارات الروابط تلقائياً).
  3. من «الإعدادات > Projects Plugin» عيّن الخيارات الافتراضية (عدد المشاريع، نوع عرض الموقع، مفتاح خرائط جوجل، وأنماط العرض المتاحة).

الإعدادات (من لوحة التحكم)

  • Default Location Display: اختيار إما رابط خارجي لخرائط جوجل أو خريطة مضمّنة.
  • Google Maps API Key: مطلوب لعرض الخريطة المضمّنة إذا اخترت وضع «Map».
  • Default Projects Per Page: العدد الافتراضي لأرشيف project والتصنيفات.
  • Pagination Items Per Page: العدد الافتراضي لعنصر Elementor عند التصفح أو التحميل اللاحق.
  • Enable View Modes: تفعيل/تعطيل الشبكة، الماسونري، السلايدر، القائمة على مستوى الموقع.
  • Use Plugin Single Template: تفعيل/تعطيل القالب المدمج لصفحة المشروع المفردة. عند الإيقاف يتم ترك التحكم للقالب/Elementor.
  • Use Plugin Archive Template: تفعيل/تعطيل القالب المدمج للأرشيف والتصنيفات. عند الإيقاف يتم ترك التحكم للقالب/Elementor.

إنشاء المحتوى

  1. من «Projects > Add New» أضف عنواناً ومحتوى وصورة بارزة (تستخدم في البطاقات والسلايدر).
  2. أضف «Project Slider Images» لاختيار معرض الصور.
  3. أدخل العنوان الجغرافي، خط العرض، خط الطول، واختر أسلوب عرضه.
  4. أنشئ تصنيفات «Project Categories» مع إمكانية رفع صورة لكل تصنيف.

عناصر Elementor المضمّنة

  • Projects: عرض المشاريع مع اختيار المصدر (الكل، تصنيف محدد، أو أحدث X)، أنماط عرض متعددة، فلاتر تصنيف، ترقيم كلاسيكي، زر تحميل المزيد، أو تمرير لا نهائي، وضبط عدد الأعمدة والهوامش.
  • Latest Projects: سحب أحدث المشاريع بسرعة مع اختيار العدد والعرض.
  • Categories: إبراز تصنيفات المشاريع مع الصور المرفوعة لكل تصنيف.

واجهة REST

  • المسار: GET /wp-json/projects-plugin/v1/projects
  • وسيطات شائعة: page, per_page, category (معرّف أو slug), latest, image_size, show_image|title|excerpt|category|button, view_text.
  • الاستجابة تتضمن items, total, max_pages, page إضافة إلى HTML جاهز لكل بطاقة.

القوالب والواجهات الأمامية

  • تسجّل الإضافة قالب templates/archive-project.php للأرشيف والتصنيف، وtemplates/single-project.php للعرض الفردي.
  • أثناء التحرير عبر Elementor، يظل Layout القالب المدمج ظاهرًا في الصفحة الفردية للمشروع.
  • في وضع التحرير، يتم إخفاء هيدر/فوتر الثيم داخل قالب المشروع لتجربة أقرب إلى Elementor Full Width.
  • أقسام القالب التي لا تحتوي بيانات فعلية تظهر كـ placeholders بدل الاختفاء (خصوصًا المحتوى، الجاليري، والخريطة).
  • تمت إضافة مجموعة Dynamic Tags للمشروع: Project Main Image, Project Title, Project Excerpt, Project Description, Project Primary Category, Project Location Label, Project Location Link.
  • ملفات الستايل والسكريبت موجودة تحت assets/، وتُحمّل تلقائياً مع دعم CDN لمكتبة Swiper.

Hook للمطورين (اختياري)

  • يمكن التحكم في قرار استخدام قالب الإضافة عبر الفلتر:
    • pp_should_use_plugin_template
  • قيمة الفلتر الافتراضية true، ويمرر مصفوفة context تحتوي type (single أو archive) ومعلومات إضافية.

الترجمة

نطاق النصوص: projects-plugin. جميع السلاسل قابلة للترجمة عبر ملفات PO/MO أو إضافات الترجمة المعتادة.

معلومات الإصدار

  • النسخة الحالية: 1.0.6

التحديثات التلقائية من GitHub Releases

  • الإضافة تدعم فحص التحديثات تلقائيًا من: https://github.com/YOSSEF-WEAL/projects-plugins/releases/latest.
  • عند فتح صفحة Plugins أو Dashboard > Updates يتم عمل فحص مباشر لآخر Release.
  • أفضل ممارسة: ارفع ملف ZIP داخل كل Release (Asset) بحيث يحتوي مجلد الإضافة بالكامل.
  • رقم الإصدار المعتمد هو tag_name في GitHub (مثل: v1.0.2 أو 1.0.2).
  • يمكن إضافة توكن GitHub (اختياري) لتقليل مشاكل Rate Limit عبر تعريف ثابت في wp-config.php:
    • define('PP_GITHUB_TOKEN', 'YOUR_GITHUB_TOKEN');