سؤال

أرغب في إضافة قسم خاص بي إلى لوحة معلومات UMBRACO حتى أتمكن من دمج قطعة المسؤول الخاصة بي إلى هيكل تسجيل الدخول / المسؤول الموجود. هل هذا ممكن دون تحرير ومصدر umbraco نفسه؟ هل يوصى به؟ إذا كان الأمر كذلك، هل لدى أي شخص موارد للبدء في القيام بذلك؟

هل كانت مفيدة؟

المحلول

نعم هذا ممكن.

يمكن تمديد الجزء الخلفي من حيث Dashoard والأقسام وأشجار المحتوى.

يوجد ملف تكوين يمكنك استخدامه لتحديد أقسام لوحة المعلومات الجديدة. يمكن العثور على ملف التكوين في المجلد التالي: /config/dashboard.config

عادة ما يحتوي ملف Dashboard.config على بعض المثال XML من كيفية قيامه بتكييفه الذي يبدو الأمر مثل هذا (لقد مددت ذلك قليلا لإظهار المزيد من الميزات).

<dashBoard>
    <section>
        <areas>
            <area>default</area>
            <area>content</area>
            <area>member</area>
        </areas>

        <tab caption="Last Edits">
            <control>/usercontrols/dashboard/latestEdits.ascx</control>
        </tab>
        <tab caption="Latest Items">
            <control>/usercontrols/dashboard/newestItems.ascx</control>
        </tab>
        <tab caption="Create blog post">
            <control>/usercontrols/umbracoBlog/dashboardBlogPostCreate.ascx</control>
        </tab>
    </section>
    <section>
        <areas>
            <area>media</area>
        </areas>

        <tab caption="Last Edits">
            <control>/usercontrols/dashboard/latestEdits.ascx</control>
        </tab>
    </section>
</dashBoard>

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

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

ما يتم عرضه في علامة التبويب هو عنصر تحكم مستخدم .NET عادي. يمكن أن يكون ذلك منفصلا تماما عن UMBRACO أو يمكن أن يحتوي على رمز محدد من UMBRACO، اعتمادا على Wether أنت دمج تطبيق Legacy أو ببساطة تمديد UMBRACO.

إذا كنت ترغب في إنشاء قسم جديد (أحد الرموز التي تظهر في الزاوية اليسرى السفلى من UMBRACO BEADEND)، فستحتاج إلى الحصول على يديك أقاصا قليلا.

لإضافة قسم تحتاج إلى إضافة عدد من إدخالات قاعدة البيانات. تحتاج أولا إلى تحديد التطبيق في جدول UMBRACOAPP.

ثم أضف إدخالا إلى Umbracousers2app للمستخدم المسؤول (0).

ستحتاج بعد ذلك إلى تحديد شجرة محتوى جديدة وإنشاء عناصر تحكم المستخدم الداعمة.

هناك مزيد من المعلومات حول تحديد هذا هنا: http://www.geckonewmedia.com/blog/2009/8/3/how-to-create-a-custom-section-in-umbraco-4.

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

نصائح أخرى

رائع! 7 سنوات من العمر لا يزال أعلى على بحث جوجل.

لذلك يتيح تحديث الجواب:

هنا يمكنك العثور على الوثائق لتوسيع لوحة القيادة:لوحات المعلومات

لوحة القيادة

كما هو الحال مع ملفات .config الأخرى في دليل / تكوين دليل Dashboard.config يتيح لك تخصيص جزء من تجربة UMBRACO. في هذه الحالة، يقوم ملف DashBoard.config بالتحكم في ما يظهر في قسم لوحة المعلومات من UI عند وجود قسم من تحميل الموقع. لوحة القيادة هي المنطقة الموجودة على الجانب الأيمن من واجهة المستخدم حيث يحدث معظم إدخال البيانات والتفاعل الوظيفي.

بشكل افتراضي، يظهر UMBRACO لوحة معلومات فارغة عند تحميل قسم جديد ويعرض فقط نموذجا عند اتخاذ إجراءات داخل القسم (أي عند النقر فوق عقدة في قسم المحتوى، تظهر لوحة القيادة النموذج لتحديث بيانات العقدة). ولكن ماذا لو كنت ترغب في تقديم مستخدمي UI الخاص بك مع بعض الخيارات حتى قبل النقر فوق عقدة؟ حسنا، هذا هو ما يسمح لك Dashboard.config بالقيام به.

تخطيط

مثل ملفات Dashboard.config الأخرى هي ملف XML بسيط مع تخطيط مستقيم إلى حد ما كما هو موضح أدناه.

<?xml version="1.0" encoding="utf-8" ?> 
<dashBoard> <!-- root of the dashboard xml tree -->
   <section>  <!-- defines a dashboard layout for a group of sections -->
        <areas> <!-- Declares which sections (i.e. content,media,users,[your own]-->
            <area>[area name]</area> <!-- A section to apply this to -->
            ...
        </areas>

        <tab caption="[caption]"> <!-- Creates a tab in the Dashboard with the assigned Caption -->
            <control>[path]</control> <!-- What control to load in that tab -->
        </tab>
        ...
   </section>
   ...
</dashBoard>

القسم (مختلف عن قسم UI UI) يحدد معلومات لوحة المعلومات لتطبيقها على قسم واحد أو أكثر. قد تتضمن Dashboard.config أقسام متعددة.

المناطق

تعرف على أقسام من UMBRACO UI لتطبيق مجموعة فرعية من معلومات لوحة القيادة. المنطقة - دائما صغيرة!

اسم * من قسم UMBRACO UI حيث تريد التحكم في المستخدم الخاص بك (مثل المحتوى أو الوسائط أو المطور أو الإعدادات أو الأعضاء أو اسم قسم مخصص). يمكنك إضافة عناصر التحكم الخاصة بك إلى أكثر من قسم عن طريق إضافة عقد متعددة.

المنطقة التي تحتوي على الاسم "الافتراضي" هي لوحة القيادة الأولى التي تظهر عند تسجيل دخول المستخدم، بغض النظر عن أقسام المستخدم الوصول إليها!

STCHA قليلا، تأكد من تضمين اسم التطبيق الخاص بك في أحرف صغيرة!

فاتورة غير مدفوعة

يحدد علامة تبويب الصفحة التي ترغب في إضافة عنصر تحكم المستخدم إليها. يحدد "التسمية التوضيحية" السمة النص المعروض في علامة التبويب. يمكن أن يكون هناك علامات تبويب متعددة لكل لوحة معلومات "صفحة"

يحدد المسار إلى عنصر تحكم المستخدم الذي ترغب في عرضه في علامة تبويب.

يجعل العنصر من الممكن تحديد أذونات على الأقسام والعلامات التبويب والضوابط ويمكنك إما منح أو رفض الوصول إلى بعض الوصول إلى الأمور.

انها تعمل عن طريق إضافة <access/> عقدة تحت إما <section />, <tab/> أو <control /> العقدة. كما يمكن لأطفالك إما إضافة

<grant /> التي منح أذونات لتلك الأنواع من المستخدمين (ورفض الوصول تلقائيا إلى أولئك الذين ليس هناك!)

<grantBySection /> الذي يمنح أذونات هؤلاء المستخدمين الذين حصلوا على أقسام محددة. هذا يمكن أن يكون مفيدا لمزيد من الأذونات الحبيبية

<deny /> الذي ينفي أذونات لتلك الأنواع من المستخدمين (والمنح تلقائيا الجميع)

بغض النظر عن الإعدادات يمكن للمستخدم الجذر (ID: 0) رؤية كل شيء، لذلك لا داعي للذعر إذا حددت أذونات رفض للمسؤولين وما زالت قادرة على رؤية كل شيء ؛-)

مثال على الأذونات:

<tab caption="Last Edits">
    <access>
        <grant>writer</grant>
        <grant>editor</grant>
        <grantBySection>content</grantBySection>
    </access>
    <control>/usercontrols/dashboard/latestEdits.ascx</control>
</tab>

تخصيص

من أجل تخصيص لوحة القيادة في Umbraco، يحتاج المرء إلى القيام بضعة أشياء. إنشاء واحد أو أكثر من UserControls

تقوم لوحة القيادة بتحميل واحد أو أكثر من UserControls ويعرضها في سلسلة من علامات التبويب. لذلك من أجل تخصيص عنصر التحكم، يحتاج المرء إلى أولا إنشاء UserControls التي سيتم عرضها على الصفحة. إذا كانت هذه للاستخدام الشخصي الخاص بك، فيمكنك فقط وضع UserControls في موقع على موقعك والتي يمكن الوصول إليها بواسطة UMBRACO. يوصى بوضعها في دليل / UserControl، ويفضل أن يكون ذلك في مجلد الفرعي الخاص بك. إذا كنت تقوم بإنشاء حزمة للآخرين لاستخدامها، يجب عليك تضمين UserControls في الحزمة للتثبيت مع بقية محتويات الحزمة. تحديث dashboard.config.

بمجرد أن تقوم بإنشاء UserControls التي تريد تحميلها عند تحميل القسم، يجب عليك بعد ذلك تحديث Dashboard.config لمعرفة UMBRACO لتحميل UserControls عند دخول المستخدم إلى قسم جديد. مرة أخرى إذا كنت تقوم بذلك بنفسك كل ما عليك فعله هو تحرير لوحة المعلومات .config على موقعك لإضافة عناصر التحكم. ومع ذلك، إذا قمت بإضافة قسم للذهاب مع حزمة، فسترغب في تضمين إجراءات حزمة لتحديث Dashboard.config أثناء التثبيت. انقر هنا لمزيد من المعلومات حول إجراءات الحزمة. عينة

فيما يلي مثال على Dashboard.config صالح:

<?xml version="1.0" encoding="utf-8" ?> 
<dashBoard>
    <section>
        <areas>
            <area>content</area>
        </areas>        
        <tab caption="Last Edits">
            <access>
                <deny>editor</deny>
            </access>
            <control>/usercontrols/dashboard/latestEdits.ascx</control>
        </tab>
        <tab caption="Latest Items">
            <control>/usercontrols/dashboard/newestItems.ascx</control>
        </tab>
        <tab caption="Create blog post">
            <control>/usercontrols/umbracoBlog/dashboardBlogPostCreate.ascx</control>
        </tab>
    </section>
</dashBoard>

ما هو هذا هو في كل مرة ينقر عليها المستخدم في قسم المحتوى في UMBRACO UI (الأقسام الموجودة في أسفل اليسار من الشاشة) يتم تحميل صفحة مع ثلاث علامات تبويب تسمى "أحدث التعديلات"، "أحدث العناصر" و "إنشاء مدونة بريد". لكل علامة تبويب يتم تحميل UserControl لتوفير الوظيفة التي تم إنشاؤها للمطور لتلك علامات التبويب. واجهة المستخدم تجد UserControls عبر المسارات المقدمة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top