Skip navigation

Эта тема решена. Вот описание проблемы и ее решения.

Проблема:
Клиент столкнулся с проблемой, когда URL без слэша в конце не редиректит на URL со слэшем на конце на русскоязычной версии сайта, используя плагин Custom Permalinks.
Решение:
1) Откройте файл

/wp-content/plugins/custom-permalinks/includes/class-custom-permalinks-frontend.php

.
2) Перейдите на строку 765.
3) Замените код:

wp_safe_redirect( home_url() . '/' . $url, 301 );

на:

wp_safe_redirect( trailingslashit(home_url()) . $url, 301 );

4) Сохраните изменения.
Перед внесением изменений рекомендуем сделать резервную копию базы данных.

Обратите внимание, что данное решение может быть неактуальным или не подходить для вашего случая. Если проблема сохраняется, рекомендуем открыть новый тикет в службе поддержки WPML. Также рекомендуем проверить известные проблемы, убедиться в версии исправления и подтвердить, что у вас установлены последние версии тем и плагинов.

Это форум технической поддержки WPML – плагина для многоязычной WordPress.

Доступно для чтения всем, но только клиенты, купившие WPML, могут оставлять сообщения. Сотрудники WPML отвечают на сообщения форума 6 дней в неделю, 22 часов в сутки.

Помечено: 

Эта тема содержит 9 ответов, имеет 2 голоса.

Последнее обновление: Andrey 1 год назад.

При содействии: Andrey.

Автор Записи
31 января, 2024 на 12:41 пп #15249206

Надежда Кутна

Добрый день, мы начали сео оптимизацию сайта и столкнулись с проблемой, возможно она связана с совместимостью плагина Custom Permalinks , но не исключаем, что дело в настройке
И так, у нас есть урл к примеру такой урл
" скрытая ссылка "
Если мы зайдем на урл " скрытая ссылка " то нас должно редирект на " скрытая ссылка "
Но вместо этого происходит сначала следующее: ПРИКРЕПИЛ ФОТО
Так со всеми страницами на ru версии ( как минимум это происходит на посттипе equipment )

Bulk URL HTTP Status Code, Header & Redirect Checker  httpstatus.io - Google Chrome.png
31 января, 2024 на 2:14 пп #15249744

Andrey
Supporter

Языки: Английский (English ) Русский (Русский )

Часовой пояс: Europe/Kyiv (GMT+02:00)

Добрый день,

Правильно я понимаю, что не добавляет слэш в конце URL? И такой проблемы нет на языке по умолчанию?

Вы пробовали для теста временно отключить все плагины кроме WPML?

31 января, 2024 на 2:33 пп #15249882

Надежда Кутна

Проблема в двойном слеше
Сначала делается редирект на него, а только после этого на правильную страницу
Я отключал все плагины, если отключить Custom Permalinks то такого не происходит, как только он включается баг возвращается
ЗАХОДИМ СЮДА - скрытая ссылка
___
РЕДИРЕКТ ДЕЛАЕТСЯ СЮДА
скрытая ссылка
___
И ТОЛЬКО ПОТОМ СЮДА:
скрытая ссылка

Нужно убрать промежуточный редирект на урл с двойным "//"

1 февраля, 2024 на 11:00 дп #15254382

Andrey
Supporter

Языки: Английский (English ) Русский (Русский )

Часовой пояс: Europe/Kyiv (GMT+02:00)

Если я правильно понимаю, то проблема скрывается где-то в Custom Permalinks плагине.

Я создал тестовый сайт, не могли бы попробовать воспроизвести проблему на тестовом сайте? Я установил WPML и Custom Permalinks плагины.

В следующем приватном сообщении, Вы найдете ссылку для входа.

1 февраля, 2024 на 11:40 дп #15254656

Надежда Кутна

Сделал, создал тестовую запись, изменил урл немного и эта проблема появилась

123 — Sandbox - Google Chrome.png
1 февраля, 2024 на 12:59 пп #15255025

Andrey
Supporter

Языки: Английский (English ) Русский (Русский )

Часовой пояс: Europe/Kyiv (GMT+02:00)

Спасибо за апдейт. Я сообщил об этой проблеме нашей команде. Буду держать Вас в курсе.

1 февраля, 2024 на 1:51 пп #15255245

Надежда Кутна

Благодарю, будем ждать ответ

5 февраля, 2024 на 5:37 пп #15267875

Andrey
Supporter

Языки: Английский (English ) Русский (Русский )

Часовой пояс: Europe/Kyiv (GMT+02:00)

Попробуйте применить следующее решение:

1) Откройте файл по адресу /wp-content/plugins/custom-permalinks/includes/class-custom-permalinks-frontend.php

2) Перейдите на линию 765

3) Измените код

			wp_safe_redirect( home_url() . '/' . $url, 301 );

на

			wp_safe_redirect( trailingslashit (home_url()) . $url, 301 );

4) Сохраните изменения

Мы сообщим автору плагина о проблеме, чтобы он сделал необходимые изменения.

Пожалуйста, не забудьте сделать резервную копию Вашей базы данных, прежде чем продолжить.

7 февраля, 2024 на 5:40 пп #15278279
Надежда Кутна

Добрый вечер, спасибо большое
Проблему решило, но мы нашли еще одну проблему
Это так же происходит только на тех страницах с "RU" и там, где использовался Custom Permalinks
Проблем в канонической ссылке, и так на многих страницах ( опять же этот двойной урл возле ru)
На сайте примере я не смог возобновить эту проблему, так как сайт скрыт от индексации и канонического урла не видно

Упаковочное оборудование товаров купить у производителя «Манупакеджинг» - Google Chrome.png
7 февраля, 2024 на 8:49 пп #15279085

Andrey
Supporter

Языки: Английский (English ) Русский (Русский )

Часовой пояс: Europe/Kyiv (GMT+02:00)

Добрый вечер,

Я создал другой билет, возможно это, что то другое. Продолжу здесь: https://wpml.org/ru/forums/topic/split-проблем-в-канонической-ссылке-и-так-н/