-
Continue reading →: OrderCloud Token Refresh in Next.js: A Production Pattern for SSR StorefrontsOrderCloud project I’ve worked on ships its first version with a token refresh bug. It rarely shows up in dev. It doesn’t show up in QA. It shows up in production — three weeks after launch, on a real device, when two requests happen to refresh at the same moment…
-
Continue reading →: Part 2 — Implementing a Reusable Sitecore Search + OrderCloud BridgeIn the first part, we discussed the architecture behind connecting Sitecore Search and OrderCloud through a centralized bridge. Now let’s look at the actual implementation approach. The idea was never to build something tightly coupled to a single project.The goal was to create a reusable pattern that can work across…
-
Continue reading →: Tracking Custom Click Events in Sitecore Search Using PageControllerProblem If you are using Sitecore Search (formerly Discover), it automatically tracks user interactions inside its official React widgets. For example: This works perfectly out of the box. However, real-world websites often contain CMS-driven components that are outside of Sitecore Search widgets, such as: Imagine a Hero Carousel managed by…
-
Continue reading →: Client-Side API Caching with IndexedDB in Sitecore XM CloudIn many Sitecore XM Cloud projects built with Next.js, components often call the same APIs or GraphQL queries multiple times. For example: Each time this happens, the browser sends the same request again. This leads to: In one of my projects, we noticed the same API being called repeatedly even…
-
Continue reading →: Handling Server Error (500) in a Sitecore JSS + Next.js Multisite Setup“Oh no… it’s a 500!” That all-too-familiar server error shows up and suddenly your site feels broken. The user sees a generic, ugly message — not the best experience, right? But what if we could handle server errors gracefully, even in a multisite Sitecore JSS + Next.js environment? This guide…
-
Continue reading →: Part 2: Optimizing Sitecore Context Injection with CachingIn Part 1, we saw how to inject global configuration data into the Sitecore context using a page-props-factory-plugin. While this reduces redundancy, repeatedly fetching this data from an external source can still impact performance. In this post, we’ll introduce a caching layer to avoid unnecessary API calls and further optimize…
-
Continue reading →: Part 1: Enhancing Sitecore JSS with Global Context Data InjectionWhen developing with Sitecore JSS, managing global data efficiently becomes a critical consideration for enterprise applications. While component-level GraphQL queries and page-specific resolvers have their place, there are scenarios where you need consistent data available across your entire application without repetitive fetching. This article explores how to enhance your Sitecore…
-
Continue reading →: Sitecore SetupEnable Internet Information Services (IIS) The first step is to enable the Internet Information Services (IIS) server on your machine. Here’s how you can do it: You’ll see a pop-up window with a list of features. Ensure the following checkboxes are enabled: Install WebDeploy Download and install the WebDeploy_amd64_en-us from…


