Пользовательская кнопка ленты Sitecore не работает

Я создал пользовательскую кнопку ленты, выполнив действия, указанные в http://jondjones.com/how-to-add-a-custom-sitecore-button-to-the-editor-ribbon/

Я вижу, что кнопка появляется в sitecore:

Пользовательская кнопка

Команда не запускается при нажатии на кнопку.

Ниже мой код:

using System;
using Sitecore.Shell.Applications.Dialogs.ProgressBoxes;
using Sitecore.Shell.Framework.Commands;

namespace SitecoreVsPoc.Commands
{
    public class TranslateContent : Command
    {
        private static readonly object Monitor = new object();
        public override void Execute(CommandContext context)
        {
            if (context == null)
                return;
            try
            {
                ProgressBox.Execute("Arjun", "Title", "Applications/32x32/refresh.png", Refresh);
            }
            catch (Exception ex)
            {
                Sitecore.Diagnostics.Log.Error("Error!", ex, this);
            }
        }
        public void Refresh(params object[] parameters)
        {
            // Do Stuff
        }
    }
}

Ниже приведена команда, которую я зарегистрировал в commands.config:

<command name="contenteditor:translatecontent" type="SitecoreVsPoc.Commands.TranslateContent,SitecoreVsPoc" />

Примечание: я использую начальную версию Sitecore 8.2.

Может кто-нибудь предложить решение для этого?

1 ответ

Решение

В Sitecore 8 было изменено добавление кнопки ленты. Насколько я вижу, ваша ссылка с Sitecore 7 или 6.

Чтобы создать новый элемент кнопки для ленты Experience Editor:

  1. В базе данных Core откройте редактор содержимого и перейдите в /sitecore/content/Applications/WebEdit/Ribbons/WebEdit/Page Editor/Edit.

  2. Создайте новый элемент на основе соответствующего шаблона элемента управления ленты, например, шаблона "Маленькая кнопка". Шаблоны находятся по адресу / sitecore / templates / System/Ribbon/.

  3. Для нового элемента добавьте следующую информацию:

    В поле "Заголовок" введите отображаемое имя кнопки.

    В поле ID введите уникальный идентификатор для элемента. Например, вы можете включить имя группы лент в идентификатор.

    В поле "Значок" введите путь к соответствующему значку. В зависимости от кнопки, которую вы создаете, соответственно отрегулируйте размер значка.

  4. Откройте Sitecore Rocks и добавьте соответствующий элемент управления рендеринга, например SmallButton, в макет созданного вами элемента кнопки.

  5. Введите уникальный идентификатор для рендеринга.

  6. Для других элементов управления SPEAK можно указать другой элемент в поле "Источник данных" и указать конфигурацию в этом другом элементе. Важный

    Дополнительную информацию вы можете найти здесь: https://doc.sitecore.net/sitecore_experience_platform/content_authoring/the_editing_tools/the_experience_editor/customize_the_experience_editor_ribbon

    http://reyrahadian.com/2015/04/15/sitecore-8-adding-edit-meta-data-button-in-experience-editor/

    Прежде чем это было очень просто, вам не нужно было добавлять новый код:

    https://blog.istern.dk/2012/05/21/running-sitecore-field-editor-from-a-command/

Другие вопросы по тегам