ryan
  • 0
Эксперт

Можно ли изменить URL-адрес обычного типа сообщения, не затрагивая URL-адрес других настраиваемых типов сообщений?

  • 0

Дилемма

У меня есть несколько пользовательских типов сообщений:

  • Элементы портфолио
  • Отзывы
  • Часто задаваемые вопросы

Структуры URL для этих настраиваемых типов сообщений:

  • mysite.com/портфолио/имя-пользовательской-записи _ _
  • mysite.com/ отзыв / имя пользовательского поста
  • mysite.com/faq/имя-пользовательской-записи _ _

Я хотел бы использовать обычный встроенный тип записи WordPress для управления нашими записями в блоге и иметь такой URL-адрес для каждой записи в блоге:

  • mysite.com/блог/название-сообщения _ _

Если я зайду в «Настройки»> «Постоянные ссылки» и настрою структуру URL, чтобы она была похожа на…

/blog/%postname%/

… то затрагиваются URL-адреса для всех моих типов сообщений, что приводит к:

  • mysite.com/blog/portfolio/name-of-custom-post _ _
  • mysite.com/blog/testimonial/имя-пользовательской-записи _ _
  • так далее…

Вопрос

Что я хотел бы знать: можно ли настроить структуру URL для встроенного типа записи WordPress, не влияя на структуру URL других настраиваемых типов записей?

Единственный другой способ, который я вижу для решения моей дилеммы, — это создать еще один настраиваемый тип сообщений под названием «Блог». Это кажется расточительным, потому что тогда я вообще не буду использовать встроенный тип записи WordPress.

Если кому-то это нужно, почему

Если кто-то задается вопросом, почему мне так сильно нужен «блог» в URL-адресе, это потому, что мы объединяем наш блог в ту же установку, что и наш сайт, и хотим сохранить URL-адреса нетронутыми, чтобы не потерять ценный сок Google.

Любая помощь приветствуется — спасибо!

Share
  1. Я только что задал этот же вопрос почти слово в слово, рад, что нашел это, спасибо

    • 0
  2. Вы можете сделать это при регистрации пользовательского типа сообщения.

    1) Установите постоянную ссылку по умолчанию в панели администратора WordPress на желаемую структуру, например:

    /блог/%имя_записи%

    2) Добавьте параметр «slug» и «with_front» в rewrite-array в функции register_post_type. «slug» должно быть названием вашего типа поста.

      $args = array(<font>
        //...<font>
        'rewrite' => array(<font>
            'slug' => 'your_post_type',<font>
            'with_front' => false<font>
        ),<font>
        //...<font>
      ); <font>
      register_post_type('your_post_type',$args); 
    

    Это должно сгенерировать следующие правила перезаписи:

    Сообщение по умолчанию: http://example.com/blog/%postname%
    Страница по умолчанию: http://example.com/%postname%
    Пользовательский тип сообщения: http://example.com/your_post_type/%postname%
    

    РЕДАКТИРОВАТЬ

    Параметр «slug» является необязательным. Если вы не установите его, будет использоваться имя вашего пользовательского типа записи. Ознакомьтесь со справкой по функциям register_post_type: http://codex.wordpress.org/Function_Reference/register_post_type.

    • 0
  3. Альтернатива — вы можете настроить постоянную переадресацию 301. Это направит людей по правильной ссылке и сохранит ваш сок Google нетронутым. Хотя я не знаю ответа на ваш конкретный вопрос.

    • 0

Оставить ответ

You must login to add an answer.