Можно ли использовать знак плюс вместо тире в качестве разделителя слов в URL-адресе? И если да, то как именно это будет сделано?
например: www.example.com/some-title/
становитсяwww.example.com/some+title/
Конечно, в идеале он должен работать с постами, страницами и пользовательскими постами.
Есть ли какая-то особая причина, по которой вы хотите это сделать? Не похоже, что это будет иметь много преимуществ, и это будет довольно сложно сделать.
Да, но
+
меняется на пробел, когда он проходит черезurldecode()
, что делает WP при сопоставлении с правилами перезаписи. Вам нужно убедиться, что вы проверяете правильный slug вWP_Query
, а также модифицируете вывод постоянной ссылки и, возможно, даже фильтруетеredirect_canonical
.Разве код Марка не запускается после применения перезаписи URL? (mod_rewrite все еще остается для меня загадкой)
Да, но пробелы в поиске — это нормально. Если у вас есть пробел в слаге, который вы ищете, он не будет соответствовать тому, что находится в базе данных.
Извините, чтобы ответить на ваш вопрос, я не знаю, когда запускается его код, но он перенаправляет запрос страницы, чтобы использовать знаки «плюс», поэтому вы получаете новую загрузку, начинающуюся со знаков «плюс».
Марк Джакит использует «+» в качестве разделителя строки поискового запроса в своем плагине Nice Search. Вот что он делает :
Может быть, это может быть полезным для справки?
НЕ ИСПОЛЬЗУЙТЕ
.HTACCESS
для этого!Это безумие, WP будет генерировать ссылки,
-
и ваш сайт будет вечно зацикливаться на.htaccess
… Вместо этого вам нужно изменить код генерации URL:Вставьте это в
functions.php
: