2014-08-28 4 views
1

Клиент мой установил плагин WordPress, который добавляет расширение .html на каждую страницу. Он называется «.html on Pages», который не обновлялся с 2008 года. Его веб-сайт имеет 3 уровня навигации - родительский, 1-й подпункт и второй вариант. Когда вы удаляете расширения .html с любой из страниц родительского или 1-го вспомогательных параметров, он правильно перенаправляет на эквивалент html. Однако, когда вы делаете то же самое на странице с дополнительными опциями, она не перенаправляется и отправляет вас на номер 404.Добавление расширения .HTML для каждой страницы WordPress.

Так, например, если у вас есть domain.com/parentpage/, он будет правильно перенаправлен в домен. ком/parentpage.html. Аналогично, domain.com/parentpage/1stsubpage/ отправится на домен.com/parentpage/1stsubpage.html. Но это прекращает работу с 2-ю дополнительными страницами.

Я понимаю, что это древний плагин. Но есть ли способ установить его там, где вторичные вспомогательные страницы будут правильно перенаправляться на расширение .html, как предыдущие уровни? Я полностью готов отказаться от плагина и добиться этого по-другому.

Заранее благодарим за понимание, которое может предоставить это сообщество.

+0

возможно правило перезаписи будет работать [Link] (http://stackoverflow.com/questions/4548860/replacing-php -ext-with-html-through-htaccess) – TerryG

+0

Это действительно немой плагин. – Anthony

ответ

0

В идеале вам понадобится что-то, что добавит расширение .html независимо от уровня каталога. Этот плагин выглядит, как он будет делать трюк: https://wordpress.org/plugins/wp-page-extension/

+0

Эй, Redleaf, спасибо за ответ. Я попытался использовать этот плагин ранее сегодня, но не видел способа автоматически добавлять его ко всем существующим страницам. Кроме того, из того, что я читал на форумах поддержки, все еще есть некоторые проблемы, над которыми нужно работать. – user2325396

0

Просто зайдите на Permalinks страницу, затем выберите Выборочная структуру, а затем что-то вроде

/%postname%.html 

вариантов обновления и вы будете устанавливать, но это работает только для сообщений ,

Чтобы справиться со всем остальным, попробуйте это в вашем HTAccess файл:

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_URI} !\..+$ 
RewriteRule ^(.*)$ /$1.html [R=301,L] 
+0

Hey Fabio, Thx для ответа. Это похоже на решение, которое я ищу. Однако, когда я попытался вставить /%postname%.html в пользовательскую структуру, он не работает. Я не вижу никаких расширений .html, появляющихся на страницах. Я забыл упомянуть, что это касается страниц, а не сообщений. Любые идеи, что мне может не хватать ? – user2325396

+0

ах, ты прав. См. Править – Devin

+0

Привет, Фабио, я только что создал файл .htaccess с кодом, который вы указали. К сожалению, теперь на каждой странице 404 не найдено. Я попытался стереть файл .htaccess, чтобы восстановить его, но все страницы - 404. Это живой сайт, и это в значительной степени понизилось, поэтому любая дополнительная помощь была бы высоко оценена. – user2325396

Смежные вопросы