Получите последний отредактированный контент от оптимизации CMS

Есть несколько сценариев, в которых вы можете захотеть извлечь самые последние обновленные блоки и страницы от оптимизации CMS:

  • На многоязычном веб -сайте вам может потребоваться проверить, требуют ли другие языковые версии обновления при изменении только одного языка.

  • Для целей отчетности.

  • Или просто потому, что вы можете.

Пример кода ниже создает запрос против Журнал деятельности (Тот же, который вы найдете в пользовательском интерфейсе настроек CMS Optimizely CMS). Он получает весь контент, который был опубликован (включая редакторы, которые были опубликованы) в течение последнего дня.

Поскольку журнал деятельности может содержать несколько событий для одного и того же элемента контента, запрос выбирает только отдельные идентификаторы контента. Оттуда вы можете обработать контент, как вам нравится.

var query = new ActivityQuery
{
    Action = (int)ContentActionType.Publish,
    ActivityType = "Content",
    Order = ActivityOrder.AsRecorded,
    CreatedAfter = DateTime.Now - TimeSpan.FromDays(1),
};

var activities = _activityQueryService.ListActivitiesAsync(query).GetAwaiter().GetResult()
    .Cast()
    .DistinctBy(x => x.ContentLink.ID)
    .Select(x => x)
    .ToList();

foreach (var activity in activities)
{
    var content = _contentLoader.Get(activity.ContentLink);
    // Do something with content updated during the last 24 hours
}

Вот и все!

Читайте также

Read more:  Памятник в честь 80-летия национального природного заповедника «Гора Кунью» | Ателье Масштаб

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.