In the Optimizely Content Management System (CMS), a headless approach is achieved using content delivery API. This handy package can get the data into JSON format using the REST API. In Single Page, Application, and content delivery, API works very well with JavaScript languages like React, Vue, and Angular. A headless system can work with […]
Posts Tagged ‘Optimizely (Episerver)’
Optimizely CMS – Getting all content of a specific property with a simple SQL script
When you need to retrieve all content of a specific property from a Page/Block type, normally you will use the IContentLoader or IContentRepository, or even IContentModelUsage to get all instances of a content type then select them by property. This is the correct implementation by code. But what if you only need to check the […]
Creating Dropdown Lists in Optimizely CMS 12 with Enum and Database
This blog will help to create single or multiple list options in CMS 12. Dropdown lists play an important role whenever we give the user to select a single value from the list. In CMS 12, single or multiple selection lists populate using “SelectOne” and “SelectMany” attributes. This attribute is in the “EPiServer.Shell.ObjectEditing” namespace. You […]
Optimizely CMS – Customize your Bulk Upload Confirmation
When you upload a media file to a specific location, if the file is already existed, you will be noticed by a warning: You can either choose “Skip this File” to ignore the replacement, or hit “Replace File” to replace the old existing file. The issue Things went well until you did a bulk upload […]
Maximizing Build Monitoring with Optimizely B2B Commerce Cloud: A Look at Two Powerful Approaches
Have you ever found yourself in the following situations: When you pushed your Extension changes in the Sandbox branch and wondering whether your build was deployed on Sandbox, Whether TeamCity picked up the right change-sets from the last build you pushed on the Sandbox branch, What happens when multiple team members pushed extension DLLs in […]
Custom XhtmlString Render Service – Force Absolute URL for Images
Working with a headless website setup sometimes can be challenging. For example, if you insert an image directly into the TinyMCE text editor sometimes (it depends on a lot of factors) you can see the relative path to the server storage where the image is saved. But because it’s a headless setup, the front end […]
Optimizely CMS – Adding Sort option to the Asset Pane
Have you ever felt tired of scrolling down the Asset Pane, looking for the item you’ve just created? I know someone would say, “Then just get a better structure for your content!”. Right, folder structure should be in a hierarchical order for best practice. However, in some cases (especially the Media), specific content must be […]
Optimizely CMS: Content Delivery API – The Case of the Duplicate API Refresh Token
A couple of weeks ago I came across an interesting case where a mobile app was calling into the Content Delivery API to retrieve some data, but the calls would fail with a 406 HTTP Status Code. After some investigation, we found that the duplicate refresh tokens were being added to the system. Revoking the […]
Content Delivery – Removing necessary fields and how to add new fields to the API response
What is a headless CMS? A headless CMS is a back-end only content management system (CMS) built from the ground up as a content repository that makes content accessible via a RESTful API or GraphQL API for display on any device. The term “headless” comes from the concept of chopping the “head” (the front end, i.e. the […]
Optimizely CMS – the Importance of GUIDs and Assembly Names
In the Optimizely CMS world, we see GUIDs everywhere. They are unique identifiers for content types and more. As part of Optimizely CMS development, developers are advised to always specify GUIDs in their Content-Type declarations. If one isn’t specified, the DB assigns one dynamically when saving the Content-type. A big reason for this is that […]
Is Optimizely A Good Fit For Portals?
This is a question that I am often asked and having seen many successful Optimizely portals, I can absolutely say the answer is yes. I’ve been amazed by what clients have been able to achieve with portals built on the platform. In this article, I would like to discuss a few topics that could potentially […]
Optimizely CMS 12 – Implementing a Reverse Proxy with YARP
The last few CMS implementations that I’ve done have required reverse proxies to surface external content. By the time I had completed my last CMS 11 project, I was a pro with reverse proxies. And then CMS 12 came and changed everything. CMS 12 moved to .Net Core on Linux web apps. This change removed […]