Question

Je voudrais ajouter ma propre section au tableau de bord Umbraco afin que je puisse intégrer ma propre pièce d'administration à la structure connexion / admin existante. Est-ce possible sans modifier et recompiler la source Umbraco lui-même? Est-il recommandé? Si oui, est-ce que quelqu'un a des ressources pour commencer à le faire?

Était-ce utile?

La solution

Oui cela est possible.

Le back-end peut être étendue à la fois en termes de dashoard, des sections et des arbres de contenu.

Il y a un fichier de configuration que vous pouvez utiliser pour définir de nouvelles sections du tableau de bord. Le fichier de configuration se trouve dans le dossier suivant: /config/dashboard.config

Normalement, le fichier dashboard.config a un certain XML exemple de la façon dont il doit être structuré qui ressemble à quelque chose comme ça (je l'ai étendu un peu pour montrer plusieurs des caractéristiques).

<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>

Le nœud de section vous permet de configurer différents groupes d'onglets pour les différentes sections d'administration. Dans l'exemple ci-dessus les onglets, Edits Derniers derniers articles et Créer billet de blog sera appliqué aux sections par défaut, membres et contenu. Defaut est la première chose que l'utilisateur voit lors de la connexion à l'arrière avant de sélectionner une section.

Pour contrôler ce qui est vu dans les différentes sections, vous configurez un nouveau nœud de section et de définir quelle zone il applique et l'onglet à afficher. Dans l'exemple ci-dessus la deuxième section concerne uniquement la section média.

Ce qui est affiché dans l'onglet est un contrôle utilisateur .NET normal. Cela peut être totalement séparé de Umbraco ou peut contenir Umbraco code spécifique, en fonction de wether vous intégrez une application héritée ou une simple extension Umbraco.

Si vous souhaitez créer une nouvelle section (une des icônes qui apparaît dans le coin inférieur gauche du backend Umbraco), alors vous aurez besoin d'obtenir vos mains un peu plus sale.

Pour ajouter une section, vous devez ajouter deux entrées de la base de données. D'abord, vous devez définir l'application dans le tableau umbracoApp.

Ensuite, ajoutez une entrée à umbracoUsers2App pour l'utilisateur admin (0).

Vous devrez ensuite définir un nouvel arbre contenu et créer les contrôles utilisateur de soutien.

Il y a plus d'informations sur cette mise en place ici: http://www.geckonewmedia.com/blog/2009/8/3/how-to-create-a-custom-section-in-umbraco-4

La première approche (juste définition des nouveaux onglets) est beaucoup plus facile que l'ajout d'une nouvelle section, donc je vous recommande de commencer par là. Puis, quand vous êtes plus à l'aise, vous pouvez plonger et créer ensemble de nouvelles sections et des arbres de contenu!

Autres conseils

Wow! après l'âge de 7 ans toujours en tête sur la recherche google.

permet donc la mise à jour la réponse:

Vous trouverez ici la documentation Extension Tableau de bord: Dashboards

Tableau de bord

Comme avec les autres fichiers .config dans le répertoire / config du fichier Dashboard.config vous permet de personnaliser une partie de l'expérience Umbraco. Dans ce cas, le fichier Dashboard.config contrôle ce qui apparaît dans la section Tableau de bord de l'interface utilisateur lorsque une partie des charges du site. Le tableau de bord est la zone sur le côté droit de l'interface utilisateur, où la plupart de l'entrée des données et l'interaction fonctionnelle a lieu.

Par défaut, Umbraco montre un tableau de bord blanc quand une nouvelle charge de section et montre qu'une forme lorsque vous prenez des mesures dans la section (lorsque vous cliquez sur un nœud dans la section Contenu, le tableau de bord présente sous la forme de mise à jour de ce noeud de Les données). Mais si vous vouliez présenter vos utilisateurs de l'interface utilisateur avec certaines options même avant de cliquer sur un nœud? Eh bien, c'est ce que le Dashboard.config vous permet de le faire.

Mise en page

Comme les autres fichiers .config Dashboard.config est un simple fichier XML avec une mise en page assez simple en avant comme on le voit ci-dessous.

<?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>

Section (différente d'une section UI Umbraco) Informations du tableau de bord Délimite à appliquer à une ou plusieurs sections. Le Dashboard.config peut inclure plusieurs sections.

Domaines

Définit à laquelle les sections de l'interface utilisateur Umbraco pour appliquer le sous-ensemble des informations de tableau de bord. zone - Toujours minuscule

Le nom * de l'interface utilisateur Umbraco section où vous voulez que votre contrôle utilisateur à afficher le contenu (par exemple, les médias, développeur, paramètres, membres ou un nom de section personnalisée). Vous pouvez ajouter vos commandes à plus d'une section en ajoutant plusieurs noeuds.

La zone avec « default » est le premier tableau de bord affiché lors d'une connexion de l'utilisateur, quel que soit l'utilisateur sections ont accès à!

Un peu Gotcha, assurez-vous d'inclure le nom de votre application en minuscules!

Tab

Définit un onglet de la page que vous souhaitez que votre contrôle utilisateur à ajouter. L'attribut « légende » définit le texte affiché sur l'onglet. Il peut y avoir plusieurs onglets pour chaque tableau de bord « page » contrôle

Définit le chemin d'accès au contrôle de l'utilisateur que vous souhaitez afficher sur un onglet.

L'élément permet de définir des autorisations sur des sections, des onglets et des contrôles et vous pouvez accorder ou refuser certains accès aux usertypes.

Il fonctionne par l'ajout d'un noeud de sous <access/> soit un <section />, <tab/> ou noeud de <control />. Comme les enfants de vous pouvez ajouter

<grant /> qui accorde des autorisations à ces types d'utilisateurs (et refuser automatiquement l'accès à ceux qui ne sommes pas là!)

<grantBySection /> qui accorde des autorisations aux utilisateurs qui ont eu accès à des sections spécifiques. Cela peut être utile pour les autorisations plus granulaires

<deny /> qui refuse des autorisations à ces types d'utilisateurs (et accorde automatiquement tout le monde)

Peu importe les paramètres de l'utilisateur root (id: 0) peut tout voir, donc ne paniquez pas si vous définissez refuser des autorisations pour les administrateurs et sont encore en mesure de tout voir; -)

Exemple sur les autorisations:

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

Personnalisation

Pour personnaliser le tableau de bord Umbraco, il faut faire deux choses. Créer un ou plusieurs UserControls

Les charges du tableau de bord d'un ou plusieurs UserControls et les affiche sur une série d'onglets. Ainsi, afin de personnaliser le contrôle, il faut d'abord créer les UserControls qui doivent être affichés sur la page. Si ceux-ci sont pour votre usage personnel, vous pouvez simplement placer les UserControls dans un endroit sur votre site qui peut être consulté par Umbraco. Il est recommandé de les placer dans le répertoire / usercontrol, de préférence dans votre propre subfplus âgée. Si vous créez un package pour les autres à utiliser, vous devez inclure les usercontrols dans le paquet pour l'installation avec le reste du contenu du paquet. Mise à jour du Dashboard.config

Une fois que vous avez créé les UserControls que vous voulez avoir chargé lors du chargement de section, vous devez alors mettre à jour le Dashboard.config de dire Umbraco pour charger vos UserControls lorsqu'un utilisateur entre dans une nouvelle section. Encore une fois si vous faites cela pour vous-même tout ce que vous devez faire est de modifier le Dashboard.config sur votre site pour ajouter les contrôles. Toutefois, si vous ajoutez une section pour aller avec un paquet, vous souhaitez inclure une action de package pour mettre à jour le Dashboard.config lors de l'installation. Cliquez ici pour plus d'informations sur les actions de l'emballage. Echantillon

Voici un exemple d'un Dashboard.config valide:

<?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>

Ce que cela fait est chaque fois qu'un utilisateur clique sur la section Contenu de l'interface utilisateur Umbraco (les sections sont en bas à gauche de l'écran), il charge une page avec trois onglets appelé « Last Edits », « Derniers articles » et « Créer un blog ». Pour chaque onglet un UserControl est chargé de fournir la fonctionnalité que le développeur a créé pour les onglets. L'interface utilisateur trouve les UserControls par les chemins fournis.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top