Should I say anything? The code explains itself 😊
Continue reading “Find item duplicates with Sitecore PowerShell”Diagnose Solr connectivity issues on production
This blog post is for you if you find the following warnings in Sitecore logs:
[Index=<indexname>] Crawling Paused
[Index=<indexname>] Synchronous Indexing Strategy is disabled while indexing is paused.
IndexingStateSwitcher: Indexing is not resumed since indexes have not been initialized yet…
Exception: SolrNet.Exceptions.SolrConnectionException, Message: Unable to connect to the remote server
Switching from TDS to Unicorn – some useful verifying SQL scripts
On of my project we switched from TDS to Unicorn. After we configured Unicorn and set up dependencies between configurations I wanted to verify that every item was migrated from TDS (*.item
) to Unicorn (*.yml
) in the database successfully.
Solr install – Unrecognized VM option ‘PrintGCDateStamps’
I wanted to install Solr 6.0.1 on my brand new laptop for Sitecore 8.2 after I already installed Solr 7.2.1 for Sitecore 9.1. I thought it will be easy because I have already a Java environment installed. I had 2 issues.
Continue reading “Solr install – Unrecognized VM option ‘PrintGCDateStamps’”Custom layout resolver
Sitecore provides you the possibility to implement your own layout resolver if the default one is not enough for you. Basically you can change the layout of a page based on a business logic without changing the item in the database.
Continue reading “Custom layout resolver”Glass Mapper – SitecoreContext.Database is null
In the last days I had to discover why on first load of the IIS site SitecoreContext.Database
is null.
What WorkflowUtility.ExecuteWorkflowCommandIfAvailable does?
This will be a short post about why the method above is tricky. As its name says ExecuteWorkflowCommandIfAvailable
, but what “available” means in this context?
Template dependent field validator WITHOUT Sitecore rules engine
A year ago I have posted about how to create template dependent field validator with rules engine. But it requires too many modifications, so I have decided to write this post about how to do the similar functionality without rules engine.
So at first I have implemented a base class which should be used by all validators which want to be dependent on a template or a base template. This class does the following steps:
- Checks the template ID and base template ID of the current item
- If it is true then the main part is called, this is the following line:
return evaluate();
This is the injected specific validation method which is passed as a parameter.
Continue reading “Template dependent field validator WITHOUT Sitecore rules engine”
WebEdit.AffectWorkflowForDatasourceItems – collect datasource children items
This feature appeared in Sitecore 8.2, which is changing the workflow state value for datasource items together with the context page item (only in Experience Editor). Here is a great summary article related to these improvements.
I was not fully satisfied with this because by default this only collects the datasource items and does not the children items of a datasource. This is an issue when you have something like a list component which shows the children items. What I have found is:
<command name="webedit:workflowwithdatasourceitems" type="Sitecore.ExperienceEditor.WebEdit.Commands.WorkflowWithDatasourceItems, Sitecore.ExperienceEditor" />
Continue reading “WebEdit.AffectWorkflowForDatasourceItems – collect datasource children items”
Editor Extensions – Copy a page with its components
What Sitecore standard copy functionality does:
- Copies the whole item tree under the selected item
- Copies all item versions (if you have more)
- All references (included the datasources in your components) remain the same
So in some cases it is good but especially when you have pages with local component datasources the standard copy function does not really for you.
Continue reading “Editor Extensions – Copy a page with its components”