Как в uCoz выставить дату публикации ранее 2022 года: 2 рабочих способа
Инструкции и готовые решения для вебмастеров uCoz
При переносе архивов, оцифровке старых публикаций или наполнении сайта материалами «задним числом» администраторы uCoz сталкиваются с неприятным ограничением: стандартный выпадающий список выбора даты содержит только текущий год и 3–4 года назад. Выбрать дату ранее 2022–2023 гг. штатными кнопками невозможно.
<select>.Шаг 0. Проверка настроек модуля
Прежде чем менять дату, убедитесь, что в системе активирована возможность ручного выбора времени:
- Перейдите в Панель управления uCoz.
- Откройте нужный модуль (например, Новости сайта или Каталог статей) → Настройки модуля.
- В блоке «Тонкие настройки» включите галочку «Включить возможность выбирать дату добавления материала».
- Сохраните изменения.
Способ 1. Разовое изменение через консоль браузера (1 минута)
Подходит, если нужно изменить дату у одного или нескольких материалов без редактирования шаблонов сайта.
- Откройте страницу добавления или редактирования новости/статьи.
- Нажмите на клавиатуре клавишу F12 (или комбинацию
Ctrl + Shift + I) и перейдите во вкладку Console (Консоль). - Если браузер заблокировал вставку и выдал предупреждение безопасности (часто бывает в Chrome/Яндекс), напечатайте вручную команду:
allow pasting
и нажмите Enter. - Вставьте следующую команду и нажмите Enter:
После нажатия Enter раскройте выпадающий список года в форме — в нем мгновенно появятся все годы с 1990 по 2021. Выберите нужный и сохраните материал.
Способ 2. Автоматическое расширение списка через шаблон
Если публикаций много, проще встроить небольшой скрипт в шаблон. Он будет сам добавлять архивные годы при каждом открытии формы (включая всплывающие окна быстрого редактирования AJAX).
Инструкция по установке:
- Перейдите в Панель управления → Управление дизайном (шаблоны).
- Выберите модуль Новости сайта (или другой модуль) → шаблон «Страница добавления/редактирования материала».
- Прокрутите код шаблона в самый низ и вставьте перед тегом
</body>следующий код:
(function() {
var MIN_YEAR = 1990; // Задайте нужный минимальный год
function addArchiveYears() {
var selects = document.querySelectorAll('select[name="nyear"], select[name="year"], select[name="f_year"], select[id*="year"]');
if (!selects.length) selects = document.querySelectorAll('select');
for (var i = 0; i < selects.length; i++) {
var sel = selects[i];
if (sel.getAttribute('data-years-fixed') === 'true') continue;
var hasYearOption = sel.querySelector('option[value="2022"], option[value="2023"], option[value="2024"]');
var isNamedYear = /year/i.test(sel.name) || /year/i.test(sel.id);
if (hasYearOption || isNamedYear) {
var firstOpt = sel.options[0];
if (!firstOpt) continue;
var startVal = parseInt(firstOpt.value, 10);
if (isNaN(startVal)) continue;
var fragment = document.createDocumentFragment();
for (var y = startVal - 1; y >= MIN_YEAR; y--) {
var opt = document.createElement('option');
opt.value = y;
opt.textContent = y;
fragment.appendChild(opt);
}
sel.insertBefore(fragment, sel.firstChild);
sel.setAttribute('data-years-fixed', 'true');
}
}
}
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', addArchiveYears);
} else {
addArchiveYears();
}
var observer = new MutationObserver(addArchiveYears);
if (document.body) observer.observe(document.body, { childList: true, subtree: true });
setInterval(addArchiveYears, 600);
})();
</script>
Сохраните шаблон и обновите форму добавления новости через Ctrl + F5. Теперь в списке всегда будут присутствовать годы вплоть до 1990.
-Платформа и движок: uCoz, юкоз, cms ucoz, вебмастер, сайты на ucoz
-Тематика проблемы: дата публикации, дата добавления материала, старая дата, архив сайта, изменить дату задним числом
-Технические решения: скрипт ucoz, javascript, devtools, консоль браузера, шаблоны ucoz, код ucoz
