Skip to main content

Posts

My very first Sitecore meetup presentation

It was my pleasure to hold a presentation on the 8th Hungarian Sitecore User Group meetup along with two Sitecore MVP. I was so excited but I hope you enjoyed my presentation.  I would like to say thank you to the organizers. We had the following topics: 10x Your Sitecore development - Mark Cassidy (@Cassidy Consult & Sitecore Technology MVP) Experiences with Sitecore XC and some do's and dont's - Christian Hahn (@Freelancer & Sitecore Commerce MVP) From code to server: Case study in a programmer doing CI/CD - Bence Juhos (@ALLWIN & Sitecore Developer) How to start SPEAK3 if you are a backend developer - Mihály Árvai (@POSSIBLE) Useful links for SPEAK3  development Angular architecture TypeScript My Sitecore SPEAK3 starter application SPEAK3 UI Components Content Editor Toolbox  - It will be published to marketplace after some enhancement Official Sitecore SPEAK3 page  - Reference application and node packages

The strange behavior of Sitecore Search with cloned items

Today I would like to share some strange behavior noticed when using Sitecore search with cloned items. Sitecore support was also able to reproduce this. I tested it using Lucene and Azure searches, and both of them displayed the same behavior. I will update this post when I get an update from Sitecore Support. Context We have a multi-site solution where some types of items can be shared with other sites using item cloning features. eg The editor creates a news item on the first site, they can then clone this news item to any other site. If the editor wants to edit the news item, they need only edit the original item and any changes will be reflected the clones immediately.  Let's assume, we have the following structure within Sitecore: We have the following index configuration for the "Global Site", called global_site_master_index After an index rebuild, global_site_master_index  contains items from the  Global Site . Let's clone FirstSite_Ne...

Sitecore SPEAK 3 UI collection

Hi, I would like to present my Sitecore SPEAK 3 UI library to you in the hope it will be a helpful template. Please check out a previous Sitecore SPEAK3 related post here . I've created a SPEAK 3 application, in which several SPEAK 3 components and styling are collected. You can download it from GitHub and check what different sitecore/angular components look like and check predefined styles, etc Moreover, I am calling on you all to contribute, because SPEAK 3 is really awesome, and it is quite fun even if you have never used Angular 4 before. How to use the sample code 1) Clone this repository . 2) Run 'npm install ' command in the project directory 3) Run ' npm run start ' command in the project directory 4) Open http://localhost:4123 in your browser How to use directives/components in your SPEAK3 application In this example we are going to add the  BackButton ,  Tabs  component and Table  directive to our application.  1) Make sure if the...

Sitecore SPEAK3 Starter Template

Hi, I've created a starter application for SPEAK3 development. Source is available on GitHub . This starter application is based on offical SPEAK3 reference application which is available on the Sitecore's page . Starter template has the following features app.module.ts contains several Sitecore SPEAK component import You can check what different components look like in this repository Sample service page which has a sample service Sample service consumes mock service in disconnected  mode A sample datacontract Sample mock service which produces mock data in disconnected mode How to use Starter template Clone Github repository run npm install  command in the project directory run npm run start  to run project in disconnected mode Open http://localhost:4123 in your browser How to build starter application and add to your Sitecore Run npm build  command in project directory Copy < projectroot>\dist  folders content to <sit...

Create custom Sitecore Search Crawler

Hello, I would like to show an implementation of a custom crawler which prevents indexing items under specific paths. This is useful when you want to exclude a whole subtree from your index configurations. e.g: You have a multi-site structure which contains 3 sites. You want to implement search funcationlity on one of the sites (call site A) and visitors should be able to search in site B content, but content from site C should not be visible, and you dont want to break relevancy of the search result. The first step is create a class, call CustomCrawler.cs. This class should be derived from SitecoreItemCrawler class. Now, you can overwrite IsExcludedFromIndex method. If you are ready, you should change crawler in the search config. Add paths to ExcludeRoot node and seperate them by pipes. That's all. Now items are not indexed from the excluded paths, and you don't break the relevancy.

Experience profile is empty after converting old DMS data

Hi, I wrote a post a few weeks ago with regard to Sitecore upgrading from 7.2 to 8.1. Everything went well, except  I couldn't get Experience Profiles from historical data. I contacted with Sitecore support and after a few weeks I received the script for xDB's Contacts collection. I ran that script, performed the report db rebuild process (which is described here ) and the result was more than 3 million document in sitecore_analytics_index. So everything is working well after the upgrade process . Here is the mongo script:

Package generation with Search Operations

Hi, It's a short tutorial with regard to search operations. Search operations is used for performing actions on collections of items. By default you can copy, move, serialize, clone, delete, publish the results. On the other hand, you can extend the list of commands with your own commands. It is available from Sitecore 7.0. So let's add a simple command, which generates a sitecore package from the search result. Step 1: Create command item and register it.  Create (or duplicate an existing ) command to here: /sitecore/system/Settings/Buckets/Settings/Search Operations/Fields. Fill the "Type", "List Name", "Enable" field. Finally, register your command in commands.config or create a new config. Step 2: Create code base for command Your CommandContext contains the search query and the context item. So you can perform the same search and add items to the package. Here is the code:  That's all! It's really easy to customi...