Выследите следующий файл: wp-includes/formatting.php
Перейти к функции sanitize_title_with_dashes
. Вы найдете этот раздел кода внутри:
$title = strtolower($title);
$title = preg_replace('/&.+?;/', '', $title); // kill entities
$title = str_replace('.', '-', $title);
$title = preg_replace('/[^%a-z0-9 _-]/', '', $title);
$title = preg_replace('/\s+/', '-', $title);
$title = preg_replace('|-+|', '-', $title);
$title = trim($title, '-');
Поменяйте местами все тире / дефисы (-
) для подчеркивания (_
), например:
$title = strtolower($title);
$title = preg_replace('/&.+?;/', '', $title); // kill entities
$title = str_replace('.', '_', $title);
$title = preg_replace('/[^%a-z0-9 _-]/', '', $title);
$title = preg_replace('/\s+/', '_', $title);
$title = preg_replace('|-+|', '_', $title);
$title = trim($title, '_');
Обратите внимание, что все сообщения, созданные вами до этого изменения и использующие тег структуры %postname%
permalink, будут нарушены.
В этом случае вам нужно вернуться и переиздать эту запись, чтобы черточки были заменены на подчеркивания. Или просто напишите себе немного SQL, чтобы заменить их.