Почему не сохраняются ссылки(ярлыки) для страниц, категорий WordPress?
Имеется страница "Страница", вписываю в поле URL "stranica" для формирования url, после обновления мой прописанный url переименовывается например в "8-2", где как я понял 8 это id страницы(записи). В настройках в разделе "постоянные ссылки" указана произвольная структура постоянных ссылок. Не могу понять в чем проблема, подскажите пожалуйста
Дополнительно:
Покажи скриншот настроек ЧПУ
Вы хотите в ссылке прописать stranica, указав что это типа ярлык? Оно вам ничего не созранит то шо у вас в настройках ссылок активное поле "Произволно". Если ссылка не соответствет настройкам то ничего не сохранится. Для этого существует в каждой странице, записи, категории поле "Ярлык". Впишите туда stranica, и оно сохранится. Название ярлыка должно быть на английском, начинаться с маленькой буквы и если надо тире. Но не нижнее подчёркивание. Например page-stranica, а не page_stranica. 8 необязательно id, чтобы посмотеть id страницы в общем списке страниц наведите курсор на название страницы, в самом низу появится ссылка, после ?post= и до & будут цифры, это и есть id вашей страницы.
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Если WordPress сам заменяет введённый slug страницы на что-то вроде
8-2, значит желаемый ярлык уже занят или конфликтует с существующим rewrite. WordPress не может иметь два одинаковых URL на одном уровне, поэтому добавляет суффикс.Что проверить первым делом:
Корзина важна: WordPress учитывает slug даже у записей в корзине. Очистите корзину или смените slug у удалённой страницы.
Можно быстро поискать по базе:
SELECT ID, post_title, post_type, post_status, post_name FROM wp_posts WHERE post_name LIKE 'stranica%';
Также проверьте термины:
SELECT t.term_id, t.name, t.slug, tt.taxonomy FROM wp_terms t JOIN wp_term_taxonomy tt ON tt.term_id = t.term_id WHERE t.slug LIKE 'stranica%';
Если slug занят старой записью, поменяйте его там или удалите объект окончательно. После этого сохраните нужную страницу заново.
Ещё один вариант — конфликт с числовым slug или зарезервированным словом. WordPress осторожно относится к некоторым значениям, особенно если структура permalink может пересекаться с датами, пагинацией или ID. Лучше использовать понятный латинский slug без специальных символов.
После исправления пересохраните постоянные ссылки в “Настройки → Постоянные ссылки”. Если есть кэш и редирект-плагины, очистите их.
Итог: WordPress не “теряет” ярлык просто так. Он защищается от конфликта URL. Найдите объект, который уже занял slug, освободите его и пересохраните страницу.