Как добавить суффикс .html для url записей и страниц

Добавляем суфикс .html для урлов записей, страниц, товаров и произвольных типов записей.
Это бывает полезно, когда сайт переезжает с другой платформы и при этом важно сохранить вес ссылок.

Добавляем .html для записей

В этом случае все просто.
Заходим в админку, в раздел: Настройки — Постоянные ссылки — Общие настройки
Отмечаем Произвольно и пишем такую структуру:

/%postname%.html

 

Как добавить суфикс .html для урлов записей и страниц

Добавляем .html для страниц

Средствами WordPress добавить суфикс для страниц нельзя. И поэтому мы будем использовать специальный код.
Вставьте следующий код в файл functions.php:

/**
 * Добавляем .html в конец URL постоянных страниц
 * Чтобы код начал работать вам нужно сбросить правила ЧПУ, для этого
 * зайдите в настройки ЧПУ и просто нажмите кнопку СОХРАНИТЬ.
 */

// если у вас в ЧПУ не указан слэш на конце, то этот фильтр можно отключить,
// для этого закомментируйте следующую строку.
add_filter('user_trailingslashit', 'noPage_slash', 66, 2 );
function noPage_slash( $string, $type ){
global $wp_rewrite;

if( $wp_rewrite->using_permalinks() && $wp_rewrite->use_trailing_slashes == true && $type == 'page'){
return untrailingslashit( $string );
}
return $string;
}

// добавляем '.html' в структуру ЧПУ для page типа
add_action('init', 'htmlPage_permalink', -1);
function htmlPage_permalink() {
global $wp_rewrite;

 if( ! strpos( $wp_rewrite->get_page_permastruct(), '.html') ){
$wp_rewrite->page_structure = $wp_rewrite->page_structure . '.html';
 }
}

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

Вместо этого можно использовать плагин .html on PAGES.

Добавляем .html для произвольных типов записей

Чтобы добавить .html для произвольных типов записей, нам необходимо установить плагин Custom Post Type Permalinks

Настройки урлов выполняем в разделе: Настройки — Постоянные ссылки — Настройки структуры ссылок для записей произвольного типа

Добавляем .html для товаров WooCommerce

Идеальным и быстрым решением этого вопроса является использование плагина Perfect SEO Url

Плагин позволяет добавить суфикс .html для товаров, категорий и подкатегорий, создает автоматические редиректы и создает канонические URL-адреса.