У меня есть сайт 3.0.1 с включенной MULTISITE
, и я хочу, чтобы один из сайтов жил по адресу /blog
, но когда я пытаюсь создать новый сайт с таким путем, я получаю эту ошибку:
The following words are reserved for use by WordPress functions and cannot be used as blog names: page, comments, blog, files, feed
Как я могу получить сайт на /blog
?
Ты не можешь.
Это часть постоянной структуры основного сайта. Там нет никакого способа обойти это. Вы можете найти больше информации здесь:
Да, вы можете получить сайт с /blog
, работающий в MULTISITE
, но для этого нужно добавить некоторый код. Это потому, что WordPress имеет встроенную блокировку от детей, которую нужно разблокировать в первую очередь. Это можно сделать, добавив функцию перехвата в фильтр subdirectory_reserved_names
, который передает массив с именами, которые заблокированы в качестве параметра. Удалите записи, которые вы хотите использовать, и верните отфильтрованный массив.
Будьте осторожны, так как эта защита от детей была построена таким образом, чтобы слова 'page', 'comments', 'blog', 'files', 'feed' не могли использоваться по умолчанию. Например, /blog
зарезервирован для основного сайта.
Для получения дополнительной информации см. тикет # 13304 , соответствующее изменение, позволяющее переопределить зарезервированные имена, было 14928
На самом деле, корневой сайт может иметь блог как часть структуры постоянных ссылок. Фактически, любые Nice-URL для сообщений корневого сайта приводят к использованию префикса blog.
Так что, если вы не возражаете против использования учетной записи root, вы можете получить ее. Но вы должны быть осторожны, так как основной блог может отображаться на панелях дочерних сайтов и т.д. (AFAIK).
Есть способ, я делал это раньше, но он был на WPMU 2.X - не уверен, что в 3-м режиме их сложнее удалить, я не могу себе представить, почему они это сделали.
это плагин для удаления части/blog - http://buddydev.com/http//buddydev.com/public-download/cc-remove-blog-slug-v-1.1.Zip - Что касается записи фактической/blog/permalink на сайт, wp отфильтрует это, проще всего будет создать дочерний сайт "blog" с достаточно странным URL, чтобы он был быстро найден в phpMyAdmin (установите путь к "yoursite.com/"). wtfisgoingonhere "), затем войдите в php, найдите его в phpmyadmin и замените все экземпляры на/blog/- будьте очень осторожны, чтобы нигде не удалить и не добавить лишнюю косую черту. Удачи!
Используйте этот фильтр для разрешения blog
:
add_filter('subdirectory_reserved_names', function($reserved_names){
return array_diff($reserved_names, array('blog') );
} );