Добавление другого слова перед почтовым адресом

У меня есть сайт WordPress с кучей сообщений. Моя проблема в том, что мне нужно изменить URL-адреса из

website.com/post-name 

в

 website.com/specialword/post-name 

«Специальное слово» – это то, что мне нужно добавить перед этими именами, но ТОЛЬКО для сообщений типа post.

Кто-нибудь может мне помочь?

Мне нужно это плохо, в основном из-за целей SEO, поэтому я могу сохранить URL-адреса с предыдущего веб-сайта, которые не были выполнены в WordPress.

Спасибо! Славиша

Solutions Collecting From Web of "Добавление другого слова перед почтовым адресом"

Вы можете сделать это из « Settings > Permalinks .

Выберите переключатель « Custom Structure » и поместите его в текстовое поле рядом с ним:

 /myspecialword/%postname% 

Работает.

Я думаю, что единственным (самым простым) решением является изменение permastruct для пользовательских типов сообщений после их регистрации и добавление вашего «волшебного слова» в структуру постоянной ссылки.

Поэтому установите (в настройках parmalinks) вашу структуру permalink для: /my-magic-word/%postname%/ а затем вручную измените модификаторы ваших настраиваемых типов сообщений.

Вы можете сделать это так (добавьте его в файл functions.php):

 function my_init() { global $wp_rewrite; // Let's assume you register your CPT Books in here $args = array( 'public' => true, 'label' => 'Books' ); register_post_type( 'book', $args ); // after registering your CPT, you have to change it's permastruct $wp_rewrite->extra_permastructs['book']['struct'] = "book/%book%"; // it's without 'my-magic-word' - you should do this for every CPT that should not have 'my-magic-word' in url } add_action('init', 'my_init'); 

Затем перейдите в настройки постоянной ссылки и сохраните их, чтобы сбросить правила перезаписи.

PS. Я думаю, вы могли бы попробовать использовать параметр with_front , но я не уверен, будет ли это легче (или если оно даже будет работать), чем это решение.