Skip to content

Widgets

Les widgets sont les blocs de contenu composables par les editeurs via le BlockGrid d'une page. Specs fonctionnelles detaillees : doc/Widgets-Modules-Packages.md.

Anatomie standard

Pour Widget<Nom> :

ElementEmplacementObligatoire
ViewComponentApp.Core/ViewComponents/Widget<Nom>ViewComponent.csoui
Vue RazorApp.Core/Views/Components/Widget<Nom>/Default.cshtmloui
View modelApp.Model/ViewModel/Component/oui
Document typesrc/Umbraco/uSync/v9/ContentTypes/widget<nom>.config (+ settings/item si besoin)oui
SCSSDesign/default/css/component/widget<nom>/ + bundle CSS dans Program.cssi style
TypeScriptTypeScript/ts/component/widget<nom>/ + bundle JS dans Program.cssi interactif

Le ViewComponent implemente InvokeAsync(...), recupere le skin via IDomainService.GetSkinName(), et retourne View("Default", model). Les bundles CSS/JS sont declares dans src/Umbraco/Program.cs (WebOptimizer), pas dans un fichier de config frontend.

Inventaire (ViewComponents reels)

Widgets (App.Core/ViewComponents/Widget*ViewComponent.cs) :

WidgetRole
WidgetAccordionSections accordeon depliables
WidgetButton / WidgetButtonGroupBoutons / groupes de boutons (CTA)
WidgetCardCartes / teasers
WidgetChezzenHomeSliderSlider d'accueil specifique Chezzen (avec items)
WidgetChezzenLocationCardCarte de magasin / point de vente Chezzen
WidgetChezzenLocationDetailDetail d'un magasin / point de vente Chezzen
WidgetChezzenTestimonialsTemoignages clients Chezzen
WidgetCodeInjection HTML/JS custom
WidgetContactAffichage d'infos de contact (Affiliate)
WidgetContactFormFormulaire de contact custom
WidgetDocumentListe / telechargement de documents
WidgetGalleryGalerie images/video
WidgetHeroBanniere pleine largeur
WidgetImageImage(s)
WidgetJobupOffres d'emploi (integration jobup) - specifique Chezzen
WidgetLatestFromFeedListe dynamique des derniers articles
WidgetLogoLogo / image avec lien
WidgetMapGoogle Maps
WidgetNavigationMenu de navigation
WidgetNewsletterInscription newsletter
WidgetOpeningHoursHoraires d'ouverture
WidgetSeparatorSeparateur visuel
WidgetSliderCarrousel
WidgetSocialNetworksLiens / feeds reseaux sociaux
WidgetTabContenu en onglets
WidgetTextTexte riche (WYSIWYG)
WidgetUmbracoFormsIntegration d'un Umbraco Form
WidgetVideoEmbed video (iframe / fichier)

Les widgets prefixes Chezzen (HomeSlider, LocationCard, LocationDetail, Testimonials) et Jobup sont des specificites de ce projet, absentes du starter kit generique.

ViewComponents non-widget (composants de layout)

App.Core/ViewComponents/ contient aussi des composants structurels : Header, Footer, Menu, LanguageSwitch, Announcement, CookieConsentManager, DebugBanner, GoogleAnalytics, GoogleTagManager, HeadTitle, HeadMetaTags, HeadJavascript, HeadCustomJavascript.

Ajouter un widget

Voir la procedure dans ../architecture/patterns.md.

Contributors

No contributors

Changelog

No recent changes