Book Image

Sitecore Cookbook for Developers

By : Yogesh Patel
Book Image

Sitecore Cookbook for Developers

By: Yogesh Patel

Overview of this book

This book will get you started on building rich websites, and customizing user interfaces by creating content management applications quickly. It will give you an insight into web designs and how to customize the Sitecore architecture as per your website's requirements using best practices. Packed with over 70 recipes to help you achieve and solve real-world common tasks, requirements, and the problems of content management, content delivery, and publishing instance environments. It also presents recipes on Sitecore’s backend processes of customizing pipelines, creating custom event handler and media handler, setting hooks and more. Other topics covered include creating a workflow action, publishing sublayouts and media files, securing your environment by customizing user profiles and access rights, boosting search capabilities, optimising performance, scalability and high-availability of Sitecore instances and much more. By the end of this book, you will have be able to add virtually limitless features to your websites by developing and deploying Sitecore efficiently.
Table of Contents (20 chapters)
Sitecore Cookbook for Developers
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Adding a custom command to item context menu


The context menu is designed to increase the efficiency of content authors. The requirements may vary for content authors across different organizations.

In this recipe, we will create a menu item in the context menu of a Sitecore item that will display the number of children that the selected item contains. In the same way, you will be able to create a command button for the Content Editor and Experience Editor ribbons as well.

How to do it…

We will first create a Command class:

  1. In the SitecoreCookbook project, create a GetChildCount class in the Commands folder. Inherit the class from Sitecore.Shell.Framework.Commands.Command.

  2. Override the Execute() method of the Command class to apply a command action as follows:

    public override void Execute(CommandContext context)
    {
      if (context.Items.Length == 1)
      {
        Item currentItem = context.Items[0];
        SheerResponse.Alert(string.Format("Children count: {0}", currentItem.Children.Count));
      }
    }
  3. Override...