Intereting Posts
Как предоставить CPT (пользовательский тип сообщения), основанный на дате URL Я хочу использовать редактор изображений GD только для одной функции, а затем вернуться к ImageMagick Получить значение из столбца в таблице плагинов Zoninator zone manager plugin – получать и устанавливать зоны программно image srcset возвращает false Сохранение и получение значений параметров настраиваемого плагина Лучшая практика для плагина: всегда обнаруживать вызов admin-ajax? Использование категорий на панели навигации вместо страниц Пользовательский таксономический родитель из другой таксономии Предотвратить функцию comments_template () для загрузки comments.php Отображать избранные сообщения для пользовательского типа сообщений по таксономии Как переместить автора Metabox в «Опубликовать» метаболизм? Отображение greyed out nav link, когда нет следующего или предыдущего сообщения Каков эффективный способ изменения статуса должности сразу нескольких должностей? Как отправить сообщение Via cURL & PHP

Как удалить slug из иерархических пользовательских типов в 3.5.2

Я знаю, что это не предлагается и много дискуссий об этом аргументе. К сожалению, после недели попыток и тестов мне еще не удалили slug из моего пользовательского типа. Вот ситуация:

Мне нужна структура URL

  • post / blog / my-blog-post [ok!]
  • pages / parent-service / service [ok!]
  • портфолио / портфолио / my-first-work [ok!]
  • static / parent-static-page / static-page [<<< — вот проблема]

Моя конфигурация

  • WordPress 3.5.2
  • Пользовательский тип «статический»: иерархический; без какого-либо правила перезаписи.
  • Пользовательский тип «портфолио»: не иерархический; 'rewrite' => array ('with_front' => false)
  • Постоянная ссылка: / blog /% postname% /
  • В качестве первой страницы я установил статическую страницу 'blog'

Проблема

  • post blog / my-blog-post [ok!]
  • страниц / веб-сайтов / динамических сайтов [ok!]
  • портфолио / портфолио / my-first-work [ok!]
  • static / who-i-am / terms [<<< — вот проблема]

Что я пробовал

Ничего

В начале, как и ожидалось, URL-адрес статического сообщения «Моя тестовая страница» – это / blog / static / my-test-page

'rewrite' => array ('slug' => '', 'with_front' => false)

Я удалил фронт из URL … хорошо! Теперь у меня / static / my-test-page

'rewrite' => array ('slug' => false, 'with_front' => false)

Он не удаляет слизню. У меня есть / static / my-test-page .

'rewrite' => array ('slug' => '/', 'with_front' => false)

Он удаляет слизню! Теперь у меня есть / my-test-page . К сожалению, все страницы возвращают мне ошибку 404 .

'Удалить плагин из настраиваемого типа сообщения'

Несмотря на то, что это работает, только если моя структура permalink равна /% postname%, я попытался установить этот плагин и изменить свою структуру permalink для проведения теста. Он работает, но, к сожалению , не уважает иерархическую природу моего «статического» типа.

Учебник Joakin Lim

Это не работает. В частности, после добавления function book_rewrite_rule() нем говорится, что мой пользовательский тип теперь будет доступен с / my-test-page, а также / static / my-test-page , но это не работает для меня. Я могу получить доступ только с / static / my-test-page . Я также попытался применить все учебники, а также выполнить некоторые изменения и тесты, но без успеха

Учебник от vip.wordpress

Если я изменил «событие» на «статический» в обеих функциях, я могу получить доступ к своей странице с сайта blog / parent-page / my-test-page . Если я добавлю «rewrite» => ('with_front' => false), все будет работать, и я могу получить доступ только со статической / родительской страницы / моей тестовой страницы

Другие решения и тесты

К несчастью, с моей реальной репутацией, я не могу связать более двух ссылок. Но я также попытался найти решение, найденное в ryansechrest.com, shibashake.com и, конечно же, ВСЕ вопросы, размещенные на этом портале раньше. Off каждый раз, когда я очищал все правила permalinks, посещая страницу настроек, сохраняя параметры, меняя их дважды и сохраняя их снова, используя global $wp_rewrite; $wp_rewrite->flush_rules(); global $wp_rewrite; $wp_rewrite->flush_rules(); , Я пробовал много сочетаний с массивом «переписать» и различными решениями выше.

У вас есть какие-то предложения?

Solutions Collecting From Web of "Как удалить slug из иерархических пользовательских типов в 3.5.2"

Для этого я всегда отключаю slug при добавлении настраиваемого типа сообщения и добавляю пользовательские перезаписи с add_rewrite_rule функции add_rewrite_rule .

См. Также эту страницу codex: https://codex.wordpress.org/Rewrite_API/add_rewrite_rule