Grav-plugin-admin: أذونات لتغيير وحذف الصفحات

تم إنشاؤها على ٢١ أبريل ٢٠١٦  ·  16تعليقات  ·  مصدر: getgrav/grav-plugin-admin

سيكون من الرائع لو تمكنا من قفل بعض الصفحات بحيث يمكن للمستخدمين تحرير صفحات معينة فقط ، وليس الموقع بأكمله. ربما شيء على رأس مجموعات المستخدمين؟

على سبيل المثال ، يمكن أن تكون هناك أذونات افتراضية ، ربما في user/config/admin/admin.yaml (أو ربما يكون ذلك أكثر منطقية في المخططات ، مما يسمح بتعيين هذا التكوين اعتمادًا على القالب):

# Only admins can delete pages
permissions:
  pages:
    write: [admin, editor]
    delete: [admin]

ويمكن لتهيئة YAML في كل صفحة استبدال هذه الإعدادات الافتراضية:

---
title: Awesome page
permissions:
  write: [admin] # Limit changes to the admin group in the admin plugin
  delete: [] # Protect this page from deletion from the admin plugin

---

حالات استخدام لتأمين الصفحة

  • إذا كانت بنية موقعك تستند إلى عدد قليل من صفحات "الحاوية" (مدونة ، القسم 1 ، القسم 2 ...) وتريد تجنب عمليات الحذف المتهورة لكل المحتوى في القسم عن طريق تأمين صفحات المستوى 1.
  • إذا كنت تريد حماية صفحة الخطأ أو صفحات "تقنية" أخرى.
  • موقع ويب للاتصالات التجارية حيث يجب أن يتمكن محرر أو مجموعة من المحررين من إنشاء منشورات مدونة جديدة ، وربما تعديل صفحة "المدونة" الأساسية ولكن لا تحذفها ، ويجب ألا يكون قادرًا على تعديل (ناهيك عن حذف) الصفحات الأخرى في أقسام أخرى (أو الصفحة الرئيسية).

    أنواع الأذونات

أعتقد أن التنفيذ البسيط يمكن أن يقتصر على إذنين:

  • اكتب
  • حذف

استبعاد أنواع الأذونات الشائعة الأخرى (أقل فائدة أو يصعب إدارتها):

  • قراءة (تبدو الحاجة إلى إخفاء المحتوى للمستخدمين المسؤولين منخفضة)
  • ملكية الصفحة (كتابة / حذف الصفحات "الخاصة بك") -> يضيف مستوى كبير من التعقيد
  • addchild (التحكم في ما إذا كان بإمكان مجموعة المستخدمين إضافة صفحة فرعية داخل الصفحة) -> يضيف بعض التعقيد أيضًا
1.10 enhancement fixed in repo

التعليق الأكثر فائدة

بعض الأفكار الجيدة هنا. لدي بالفعل ملاحظة مع بعض الأفكار حول كيفية تحسين الأذونات. سوف أتأكد من أخذ هذه التذكرة في الاعتبار أيضًا. شكرا!

ال 16 كومينتر

بعض الأفكار الجيدة هنا. لدي بالفعل ملاحظة مع بعض الأفكار حول كيفية تحسين الأذونات. سوف أتأكد من أخذ هذه التذكرة في الاعتبار أيضًا. شكرا!

rhukster مرحبًا ، أردت فقط معرفة ما إذا كان هناك أي تقدم في هذا الموضوع فاتني؟

بالنسبة لمشروع معين ، أحتاج إلى أذونات التحرير المستندة إلى المجموعة لصفحات أو صفحات معينة من المجلد. إنه المطلب الوحيد الذي يحتمل أن يمنعنا من استخدام Grav 😞

سيكون من المفيد حقًا ، إذا كان بإمكانك الإشارة في الاتجاه الصحيح ، والبحث في هذا.
شكرا جزيلا لتقديم مساعدتكم.

أكثر ميزة مطلوبة!

صدم

لدي طلاب يريدون العمل على موقع مدرستنا. في الوقت الحالي يقومون فقط بتمرير المعلومات لي لنشرها على المدونة ؛ سيكون من المفيد أن تكون قادرًا على منحهم حق الوصول إلى صفحات معينة ، لذلك لا داعي للقلق بشأن قيام الطالب بتحرير الصفحة الأولى عن طريق الخطأ أو عن قصد أو أي شيء آخر مهم.

شكرا - أتمنى أن يتم إحراز تقدم في هذه الميزة !!

متى يمكننا جانب هذه الميزة. أتمنى أن يكون في الإصدار القادم. :-))

brianjschott يمكنك التحقق من Editable باستخدام SimpleMDE Plugin واختبار ما إذا كان يناسب غرضك أم لا. يدعم أحدث إصدار الأذونات المستندة إلى الصفحة باستخدام نظام مستخدم Grav والأدوار. لذلك يمكنك إنشاء مجموعات أيضًا. التحرير مقصور على الصفحات وفي الواجهة الأمامية فقط.

يجب أن أعطي حق الوصول التحريري للمستخدمين غير التقنيين ، فهذا سيساعدني بالتأكيد على النوم ليلاً! : +1:

أي تقدم في هذا؟ أكثر ميزة مطلوبة.

أنا أعمل حاليًا على دعم Flex Pages ولدي بالفعل أذونات لحذف الصفحات (على الرغم من عدم وجود دعم المالك حاليًا).

بعض الأفكار الجيدة هنا. لدي بالفعل ملاحظة مع بعض الأفكار حول كيفية تحسين الأذونات. سوف أتأكد من أخذ هذه التذكرة في الاعتبار أيضًا. شكرا!

rhukster مرت أكثر من 3 سنوات من تعليقك. يريد بعض عملائي حقًا هذه الميزة ، لكننا كمطورين محبين لـ Grav ما زلنا لا نملك معلومات عنها.

mahagr ما هي الصفحات المرنة؟ إنه حول css flexbox أو شيء مختلف؟ يرجى إعطاء مزيد من المعلومات 😉

تعتمد الصفحات المرنة على Grav Flex Objects ، وهو مجرد اسم رائع للفئات (يمكنك العثور عليها في Grav\Framework\Flex . :)

باختصار ، سوف تحل Flex Objects محل البرنامج المساعد Flex Directory ؛ الفصول الأساسية موجودة في Grav نفسها ، ولكن بالنسبة لـ CRUD ، ستحتاج إلى المكون الإضافي Flex Objects ، والذي سيوفر عرض القوائم والتحرير الذي سيعمل في كل من المسؤول والواجهة الأمامية على الرغم من ذلك ، لست متأكدًا مما إذا كان سيشحن مع العمل تحرير الواجهة الأمامية أو إذا كنت بحاجة إلى القيام ببعض الفئات / التوجيه المخصص لتشغيله. على أي حال ، هذا البرنامج المساعد مطلوب فقط لمهام المسؤول ، ويعمل Flex نفسه بدونه.

تطبيق Flex Pages في تطبيق Grav Pages الحالي ، ولكن بناءً على فئات Flex الجديدة هذه. استخدام Flex له فوائد قليلة عن الحل القديم:

  • إنه يحتفظ بفهرس من جميع الكائنات ويعرف الكائنات التي تم تحديثها ومتى
  • بسبب الفهرس ، يتم تحميل الكائنات عند الطلب فقط
  • يحتوي على ذاكرة تخزين مؤقت مدمجة لعمليات بحث المجموعة واستدعاءات الطريقة وحتى التقديم
  • التخزين المؤقت يعتمد على الكائن ، لذا فإن تحديث عنصر واحد لا يبطل ذاكرة التخزين المؤقت من العناصر الأخرى
  • المجموعات أقوى بكثير من الصفحات القديمة ؛ يمكنك البحث عن أي شيء تقريبًا
  • FlexPage مستقل بذاته وأسهل بكثير في الاستخدام من Page
  • يسمح لك Flex بتخصيص الصفحات بسهولة لاحتياجاتك
  • يسمح لك بإنشاء قسم إداري خاص على سبيل المثال لمنشورات المدونة - منفصلة عن الصفحات الأخرى
  • ...

هناك المزيد من الفوائد ، لكننا استخدمناها بالفعل في بعض مشاريعنا والجميع متحمس جدًا حيال ذلك. نحصل بسهولة على أداء أفضل 10 مرات على موقع من 4000 صفحة. يمكننا إنشاء أنواع مخصصة ، حتى الصفحات التي يتم تخزينها بشكل منفصل عن الصفحات العادية وتكون في قسم منفصل داخل المسؤول. يمكن للمستخدمين إنشاء صفحاتهم الخاصة عن طريق ملء نماذج بسيطة وما إلى ذلك ...

شكرًا جزيلاً على مشاركة هذه المعلومات mahagr 👍 من بين كل ما ذكرته (يبدو كل شيء رائعًا!) ، فإن مجموعات الصفحات الأكثر تقدمًا وتخصيص الصفحة وقسم المسؤول المنفصل لأنواع الصفحات المختلفة هي الأكثر أهمية بالنسبة لي. الرجاء إضافة تصويتي للحصول على أذونات أفضل للصفحة ، سيكون ذلك ذا قيمة فائقة في السيناريوهات التعليمية مع Grav!

متابعة هذا المنصب. ماسة في حاجة هذا الآن.

60153027-8420fb80-9815-11e9-831b-7a32f4f48f7b

أنا حقا سأقدر هذه الوظيفة أيضا. المتعلقة بقضية التحسين المفتوحة هذه.

تم تنفيذ هذا بالفعل في Grav 1.7 / Admin 1.10

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات