Accessing theme images
Sitefinity Support,
I am having an issue whereby I cannot access the images that I've already included as part of my theme. In Administration - Files, I can navigate to App_Data/Sitefinity/WebsiteTemplates/%Name%/App_Themes/Default/images and can see the images file names there. In Design - Page Templates, I have selected my custom master page template, selected Theme and I have selected my registered theme from the Set Theme dropdown. I then click on Content and drag an image widget on to my template. However, the problem is when I click "Select an Image" and then click on "From already uploaded" I do not see my images. I can navigate in the browser using the direct URL to the images folder and I can access the image from there. Why can't I access those images from within the Select an Image widget?
Thank you.
Mark
Image Selector widget doesn`t show images from your current theme folder. Its shows the images that are uploaded to the Image Library in different albums.
You can make your own widget with the RadFileExplorer in it, configured to show only images of the current theme. Current theme can be set to the InitialPath property of the control.
Here is a sample code:
protected void Page_Load(object sender, EventArgs e) string[] paths = new string[] "~/App_Data/Sitefinity/WebsiteTemplates/" + GetCurrentTheme() + "/App_Themes/Default/images" ; // This code sets RadFileExplorer's paths RadFileExplorer1.Configuration.ViewPaths = paths; RadFileExplorer1.Configuration.UploadPaths = paths; RadFileExplorer1.Configuration.DeletePaths = paths; // Sets Max file size RadFileExplorer1.Configuration.MaxUploadFileSize = 10485760; // Enables Paging on the Grid RadFileExplorer1.AllowPaging = true; // Sets the page size RadFileExplorer1.PageSize = 20; public static string GetCurrentTheme() Guid currentPageId = GetCurrentPageId(); PageNode pn = GetPageNode(currentPageId); return GetPageTheme(pn); public static Guid GetCurrentPageId() Guid pageId; PageSiteNode psn = SiteMapBase.GetActualCurrentNode(); if (psn == null) PagesConfig pagesConfig = Config.Get<PagesConfig>(); pageId = pagesConfig.HomePageId; else pageId = psn.Id; return pageId; public static PageNode GetPageNode(Guid pageId) var pf = App.WorkWith().Page(pageId); return pf.Get(); public static string GetPageTheme(PageNode pn) return (pn.Page.Template != null) ? pn.Page.Template.Theme : "";