Решение верху самом ОБЪЯВЛЕНИЕ
В globalTemplate найти
<div id='ipsLayout_header' class='ipsClearfix'>
Добавить ниже
{template="updateWarning" app="core" group="global" params=""}
ОБЪЯВЛЕНИЕ Над содержимым страницы
Найти widgetContainer заменить все на
{{if $id == 'header'}}
{template="announcementContentTop" app="core" group="global" params=""}
{{endif}}
{{if ( isset( \IPS\Output::i()->sidebar['widgets'][ $id ] ) && count( \IPS\Output::i()->sidebar['widgets'][ $id ] ) ) || ( \IPS\Dispatcher::i()->application instanceof \IPS\Application AND \IPS\Dispatcher::i()->application->canManageWidgets() )}}
<div class='cWidgetContainer {{if !isset( \IPS\Output::i()->sidebar['widgets'][ $id ] ) or !count( \IPS\Output::i()->sidebar['widgets'][ $id ] )}}ipsHide{{endif}}' {{if \IPS\Dispatcher::i()->application->canManageWidgets()}}data-controller='core.front.widgets.area'{{endif}} data-role='widgetReceiver' data-orientation='{$orientation}' data-widgetArea='{$id}'>
<ul class='ipsList_reset'>
{{if isset( \IPS\Output::i()->sidebar['widgets'][ $id ] )}}
{{foreach \IPS\Output::i()->sidebar['widgets'][ $id ] as $widget}}
{{$widgetHtml = (string) $widget;}}
<li class='ipsWidget ipsWidget_{$orientation} ipsBox{{if trim( $widgetHtml ) === ''}} ipsWidgetHide ipsHide{{endif}}' data-blockID='{{if isset($widget->app) AND !empty($widget->app)}}app_{$widget->app}_{{else}}plugin_{$widget->plugin}_{{endif}}{$widget->key}_{$widget->uniqueKey}'{{if $widget->hasConfiguration()}} data-blockConfig="true"{{endif}} data-blockTitle="{lang="block_{$widget->key}"}" data-blockErrorMessage="{lang="$widget->errorMessage" escape="true"}" data-controller='core.front.widgets.block'>{$widgetHtml|raw}</li>
{{endforeach}}
{{endif}}
</ul>
</div>
{{endif}}
Объявление в боковом блоке работает