HomeGuidesAPI Reference
Submit Documentation FeedbackJoin Developer CommunityOptimizely GitHubOptimizely NuGetLog In

Create a component

This topic describes how to create a component in the Optimizely Content Management System (CMS) user interface.

How it works

The Optimizely Content Management System (CMS) extension of the IFrameComponent has the following additional parameters:

  • UrlFromUtil – Optional. The URL to the source, relative the Utils folder. Used instead of Url property.
  • UrlFromUi – Optional. The URL to the source, relative the UI folder. Used instead of Url property.

Creating MVC component

First you need to add a controller. Controller has to be annotated with an IframeComponent attribute.

[IFrameComponent(Url = "/helloworld", Title = "Hello World Component", Categories = "content")]
    public class HelloWorldController : Controller
    {
        public ActionResult Index()
        {
            return View();
        }
    }

Then add a Index.cshtml view to the Views/HelloWorld directory:

@{
        Layout = null;
    }
    
    <!DOCTYPE html>
    
    <html>
    <head>
        <meta name="viewport" content="width=device-width" />
        <title>HelloWorld</title>
    </head>
    <body>
    <div>
        <div>Hello World</div>
    </div>
    </body>
    </html>