Как настроить ЧПУ (человекопонятные ссылки) в WordPress?
Здравствуйте! У меня возникла проблема с настройкой ЧПУ (человекопонятные ссылки) в WordPress. Я хочу, чтобы мои ссылки на страницы сайта были понятными и легко запоминаемыми для посетителей. Но, к сожалению, у меня не получается настроить это самостоятельно.
Вот участок кода, где возникает проблема:
// Функция для настройки ЧПУ
function custom_rewrite_rule() {
add_rewrite_rule('^новости/([^/]*)/([^/]*)/?','index.php?category_name=$matches[1]&name=$matches[2]','top');
}
add_action('init', 'custom_rewrite_rule', 10, 0);
На текущий момент, ссылки для страниц с новостями выглядят примерно так:
https://example.com/index.php?category_name=новости&name=заголовок-новости
А я бы хотел, чтобы ссылка выглядела так:
https://example.com/новости/заголовок-новости
Буду очень благодарна, если кто-то поможет мне разобраться с этой проблемой и настроить ЧПУ в моем WordPress.
Ответы:
Для настройки ЧПУ в WordPress тебе понадобится внести некоторые изменения в код вашей функции custom_rewrite_rule. Вот как можно это сделать:
function custom_rewrite_rule() {
add_rewrite_rule('^новости/([^/]*)/([^/]*)/?','index.php?category_name=$matches[1]&name=$matches[2]','top');
}
add_action('init', 'custom_rewrite_rule', 10, 0);
function custom_rewrite_tag() {
add_rewrite_tag('%category_name%', '([^&]+)');
add_rewrite_tag('%name%', '([^&]+)');
}
add_action('init', 'custom_rewrite_tag', 10, 0);
function custom_rewrite_flush() {
flush_rewrite_rules();
}
add_action('after_switch_theme', 'custom_rewrite_flush');
Этот код добавляет два тега %category_name% и %name%, которые будут использоваться для замены значения в URL. Также, в функции custom_rewrite_flush, вызывается функция flush_rewrite_rules(), которая перезапишет правила ЧПУ при активации темы.
После добавления этих изменений, ссылки на страницы новостей должны отображаться в желаемом формате:
https://example.com/новости/заголовок-новости
Не забудь сохранить изменения в файле functions.php или в своем плагине, если используешь его.
Я надеюсь, что это решение поможет тебе настроить ЧПУ в WordPress. Если у тебя возникнут еще вопросы, не стесняйся задавать.
Удачи в разработке!