protected override DriverResult Display(OpenGraphMetaTagsPart part, string displayType, dynamic shapeHelper) { if (displayType != "Detail") { return(null); } var resourceManager = _wca.GetContext().Resolve <IResourceManager>(); var openGraphTagsSettings = _wca.GetContext().CurrentSite.As <OpenGraphMetaTagsSettingsPart>(); var contentItem = part.ContentItem; var dict = new Dictionary <string, object> { { "Content", contentItem } }; var defaultSettings = part.TypePartDefinition.Settings.GetModel <OpenGraphMetaTagsPartSettings>(); if (openGraphTagsSettings.RenderOutput) { if (openGraphTagsSettings.OgTitleTagEnabled && !String.IsNullOrWhiteSpace(GetValue(part.OgTitle, defaultSettings.OgDefaultTitle))) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("ogtitlekey", "og:title", _tokenizer.Replace(GetValue(part.OgTitle, defaultSettings.OgDefaultTitle), dict))); } if (openGraphTagsSettings.OgTypeTagEnabled && part.OgType != "select" && defaultSettings.OgDefaultType != "select") { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("ogtypekey", "og:type", _tokenizer.Replace(GetValue(part.OgType, defaultSettings.OgDefaultType), dict))); } if (openGraphTagsSettings.OgImageTagEnabled && !String.IsNullOrWhiteSpace(GetValue(part.OgImage, defaultSettings.OgDefaultImage))) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("ogimagekey", "og:image", _tokenizer.Replace(GetValue(part.OgImage, defaultSettings.OgDefaultImage), dict))); } if (openGraphTagsSettings.OgUrlTagEnabled && !String.IsNullOrWhiteSpace(GetValue(part.OgUrl, defaultSettings.OgDefaultUrl))) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("ogurlkey", "og:url", _tokenizer.Replace(GetValue(part.OgUrl, defaultSettings.OgDefaultUrl), dict))); } if (openGraphTagsSettings.OgDescriptionTagEnabled && !String.IsNullOrWhiteSpace(GetValue(part.OgDescription, defaultSettings.OgDefaultDescription))) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("ogdesckey", "og:description", _tokenizer.Replace(GetValue(part.OgDescription, defaultSettings.OgDefaultDescription), dict))); } if (openGraphTagsSettings.OgLocaleTagEnabled && !String.IsNullOrWhiteSpace(part.OgLocale)) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("oglocalekey", "og:locale", part.OgLocale)); } if (openGraphTagsSettings.OgSiteNameTagEnabled && !String.IsNullOrWhiteSpace(part.OgSiteName)) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("ogsitenamekey", "og:site_name", part.OgSiteName)); } if (openGraphTagsSettings.FbAdminTagEnabled && !String.IsNullOrWhiteSpace(part.FBAdmins)) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("fbadminskey", "fb:admins", part.FBAdmins)); } } return(null); }
protected override DriverResult Display(OpenGraphMetaTagsPart part, string displayType, dynamic shapeHelper) { if (displayType != "Detail") { return(null); } var resourceManager = _wca.GetContext().Resolve <IResourceManager>(); var OpenGraphTagsSettings = _wca.GetContext().CurrentSite.As <OpenGraphMetaTagsSettingsPart>(); if (OpenGraphTagsSettings.RenderOutput) { if (OpenGraphTagsSettings.OgTitleTagEnabled && !String.IsNullOrWhiteSpace(part.OgTitle)) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("ogtitlekey", "og:title", part.OgTitle)); } if (OpenGraphTagsSettings.OgTypeTagEnabled && part.OgType != "select") { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("ogtypekey", "og:type", part.OgType)); } if (OpenGraphTagsSettings.OgImageTagEnabled && !String.IsNullOrWhiteSpace(part.OgImage)) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("ogimagekey", "og:image", part.OgImage)); } if (OpenGraphTagsSettings.OgUrlTagEnabled && !String.IsNullOrWhiteSpace(part.OgUrl)) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("ogurlkey", "og:url", part.OgUrl)); } if (OpenGraphTagsSettings.OgDescriptionTagEnabled && !String.IsNullOrWhiteSpace(part.OgDescription)) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("ogdesckey", "og:description", part.OgDescription)); } if (OpenGraphTagsSettings.OgLocaleTagEnabled && !String.IsNullOrWhiteSpace(part.OgLocale)) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("oglocalekey", "og:locale", part.OgLocale)); } if (OpenGraphTagsSettings.OgSiteNameTagEnabled && !String.IsNullOrWhiteSpace(part.OgSiteName)) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("ogsitenamekey", "og:site_name", part.OgSiteName)); } if (OpenGraphTagsSettings.FbAdminTagEnabled && !String.IsNullOrWhiteSpace(part.FBAdmins)) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildPropertyMetaTag("fbadminskey", "fb:admins", part.FBAdmins)); } } return(null); }
protected override DriverResult Display(SummaryCardsMetaTagsPart part, string displayType, dynamic shapeHelper) { if (displayType != "Detail") { return(null); } var resourceManager = _wca.GetContext().Resolve <IResourceManager>(); var summaryCardsTagsSettings = _wca.GetContext().CurrentSite.As <SummaryCardsMetaTagsSettingsPart>(); if (summaryCardsTagsSettings.RenderOutput) { if (summaryCardsTagsSettings.CardTypeTagEnabled && part.CardType != "select") { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildMetaTag("twitter:card", part.CardType)); } if (summaryCardsTagsSettings.CardTitleTagEnabled && !String.IsNullOrWhiteSpace(part.CardTitle)) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildMetaTag("twitter:title", part.CardTitle)); } if (summaryCardsTagsSettings.CardDescriptionTagEnabled && !String.IsNullOrWhiteSpace(part.CardDescription)) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildMetaTag("twitter:description", part.CardDescription)); } if (summaryCardsTagsSettings.CardImageTagEnabled && !String.IsNullOrWhiteSpace(part.CardImage)) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildMetaTag("twitter:image", part.CardImage)); } if (summaryCardsTagsSettings.CardSiteTagEnabled && !String.IsNullOrWhiteSpace(part.CardSite)) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildMetaTag("twitter:site", part.CardSite)); } if (summaryCardsTagsSettings.CardCreatorTagEnabled && !String.IsNullOrWhiteSpace(part.CardCreator)) { resourceManager.SetMeta(SocialMetaTagsHelpers.BuildMetaTag("twitter:creator", part.CardCreator)); } } return(null); }
protected override DriverResult Display(AuthorshipMetaTagsPart part, string displayType, dynamic shapeHelper) { if (displayType != "Detail") { return(null); } var resourceManager = _wca.GetContext().Resolve <IResourceManager>(); var googleTagsSettings = _wca.GetContext().CurrentSite.As <AuthorshipMetaTagsSettingsPart>(); if (googleTagsSettings.RenderOutput) { if (googleTagsSettings.AuthorRelTagEnabled && !String.IsNullOrWhiteSpace(part.GPAuthorProfileUrl)) { resourceManager.RegisterLink(SocialMetaTagsHelpers.BuildLinkEntry("author", part.GPAuthorProfileUrl)); } if (googleTagsSettings.PublisherRelTagEnabled && !String.IsNullOrWhiteSpace(part.GPPublisherProfileUrl)) { resourceManager.RegisterLink(SocialMetaTagsHelpers.BuildLinkEntry("publisher", part.GPPublisherProfileUrl)); } } return(null); }