Posts

Sitecore Unicorn standard values field child ID warnings

I thought I'd share this just in case anyone else wonders why they get the following WARN message for every single template that has a standard values set, when performing a Unicorn Sync.

To get things started:

Unicorn - 4.03 and 4.04
Sitecore - 8.2 Update 6

This happened to us when fully syncing from disk into a blank Sitecore instance, using a gulp script that calls a PowerShell sync, see below.

WARN  The standard values field of template /sitecore/templates/User Defined/Foundation/Theming/Theme/Theme Options:{XXX-XXX-XXX-XXX-XXXXXXXXXXXX} does not contain an ID that points to a child

The issue (i think) is that when unicorn de-serialises the template item, it has a field for standard values.
At the point of creation that items children haven't been created, most importantly the standard values item.
Sitecore checks the standard values field value and see that the id doesn't exist at this point, and not as a child of the item, so outputs the WARN message.
Unicorn then sy…

Sitecore 8 Rebuilding historical path analyzer maps

I thought I would share and issue and resolution I found recently when rebuilding historical path analyser maps in Sitecore.

How to rebuild Path Analyzer maps

We found it in 8.1 update-2 and may have been fixed in a later release but it looks like there is a potential bug.

The code seems to be querying a config database to get a count. The issue we found with this is that that database doesn't exist and the user we are connecting to the Mongo database with doesn't have read permissions on that non existing database.
The error will be along the lines of

Cannot obtain number of chunks from config database Exception: MongoDB.Driver.MongoCommandException Message: Command 'count' failed: not authorized on config to execute command { count: "chunks", query: { ns: "analytics.Interactions" } } (response: { "ok" : 0.0, "errmsg" : "not authorized on config to execute command { count: \"chunks\", query: { ns: \"analytics.…

Automated Publish Module

Publishing restrictions are great they allow you to specify what date and time an item or version is publishable. This meets the use case where you might be creating content for your Christmas campaign and don't want it to go live until the 1st of December (or October if the current shop displays and adverts are anything to go by :S). The only issue with this is you have to manually publish after the time specified to get the content live. A common ask is for that content to go live out of normal office hours, say 00:01. Out of the box that would require someone to log in and hit publish. I was looking for something that would do this automatically.
Two options spring to mind, but both have disadvantages:
1. Run a publish scheduled task at a defined interval, say 1hr. This will get the content live at the time you want, however the downsides are that it will publish any content that's publishable regardless of restrictions, it’s not only as accurate as the interval, and it’s …

Web Forms for marketers and Bootstrap

Image
Just thought I'd share an issue I had using Bootstrap themes and web forms for marketers.
I had an issue embedding a wffm form in a bootsrap modal but got it working, not the most elegant solution but it did the job for me. The overall issue was that the modal dialog would grey out when opened with a wffm form embedded.



The first step was to isolate the scope of any jquery variables I used. Wffm includes jquery and it broke my scripts. This is the standard way as described here:
https://api.jquery.com/jquery.noconflict/

WFFM MVC also embeds the bootstrap css files and I had to modify this, this is probably not the most elegant way to do it but i simply changed the .modal { z-index: 1040 } to 1042.
This is located in sitecore \sitecore modules\Web\Web Forms for Marketers\mvc\content
It got it working for me so thought I would share.

Sitecore Continuous Integration DMS and the Marketing Centre

Hey all, as you know I'm a big advocate of implementing continuous integration or delivery for your Sitecore projects, in the Sitecore world much is made of the all important final step of the deployment being a Sitecore publish. 
We want to get the data from the master to the web database, then we can add steps to do automated web testing such as selenium testing etc, or deploy a package to DEV, UAT, PRD.
There are a few options to call a publish, you will probably have seen on many other Sitecore developers blogs,:
Use a publish.aspx page that calls the publish code.Web service route, by calling Sitecore ship to initiate the publish and then call a ship endpoint and parse the response to check the late completed date to check for completion.Use Sitecore rocks powercore powersell scripts to do it.Most of the time calling the publish isn't the problem from a CI sense its knowing when its finished, my preference is the Sitecore ship approach, however we use the publish.aspx page s…

Sitecore DMS and Analytics Considerations

Image
Recently I've been tasked with generating some simulated analytics traffic for our Officecore demo solution.
I've been using the TrafficGenerator to do this, this is available on marketplace, but get the package from here:
https://github.com/JimmieOverby/SitecoreTrafficGenerator
The link on marketplace goes to an older version 0.42, 0.43 is available in the packages section.

Getting the data in a has come with a few development considerations.
On that basis I thought I'd discuss them and share the solutions I found.


Caching:
The first thing to consider is that the data you see in the engagement analytics dashboard is not real time.
There are a couple of levels of caching that can make the results you see not what you expect.
These levels are:
Browser: The refresh button needs to be pressed, the graphs will not auto update.The file Silverlight creates will be cached by the browser,  I found a post here, http://sitecoreblog.alexshyba.com/2009/04/silverlight-client-caching.html that e…

Mo Money Mo Problems...to solve

Image
My current job title is "Technical Pre-Sales Consultant" its pretty self explanatory, but during my career I've worked as a developer, technical lead, consultant, scrum manager, I could probably go on but it would be a pretty boring post. I'll get to the point, the best career title I could assign myself is "problem solver". I just love to solve problems, a simple bug in a piece of code, complex distributed system architecture, or improving  process to accelerate project delivery and maximise margin, I'm not fussy, I'll solve them all. A notorious rapper once versed "Mo money, mo problems", I'm not sure if this makes me normal, but that's music to my ears.
As a technical consultant I'm aware of the benefits of service oriented architecture and agile delivery (when implemented correctly). Mediation between loosely couple distributed systems, small chucks of manageable work, and responding quickly to change. It got me thinking why…