Получить полный контроль над пользовательским типом почтового сообщения

Ситуация

У меня есть пользовательский тип сообщения, который позволяет называть его «CP», который имеет две родительские категории с именем «компании» и «категория». Сообщения типа CP могут иметь только одну компанию и несколько категорий. Таким образом, выбор может быть таким:

  • Компании
    • Компания A
    • Компания B
    • Компания C
    • Компания D
    • И т.д…
  • категории
    • питание
    • Здоровье
    • Технология
    • Автомобиль
    • жизнь

Когда создается CP-сообщение, URL-адрес, который он сейчас представляет, будет примерно таким: http://website-url.com/CP/companies/company-c/postname или http://website-url.com/ CP / categories / health / postname, в зависимости от того, какая категория имеет самый высокий идентификатор.

Цель

Имеет URL-адрес, похожий на http://website-url.com/company-c/postname . Таким образом, CP пользовательского сообщения должен быть отфильтрован из URL-адреса, а также родительской категории. Также должна использоваться только дочерняя категория «компаний» родительской категории, а не только категория с идентификатором наивысшей категории.

Проблема

Все цели могут быть выполнены, но устранение всех этих проблем представляется невозможным. Во-первых, фильтрация пользовательского типа сообщения из URL-адреса, достаточно вопросов о том, как это сделать, что также работает. Например: удалить пользовательский пул сообщений из URL

Во-вторых, фильтрация родительской категории из URL-адреса также работает независимо. См .: Удаление родительской категории из permalink? В основном только детская категория?

Наконец, выбрав, какую категорию использовать в URL-адресе, есть плагин для этого: https://wordpress.org/plugins/hikari-category-permalink/

Проведение нескольких вечеров по объединению этих решений не привело к созданию твердого решения. Я также осознаю тот факт, что не всегда самая умная попытка слишком сильно подстроить WordPress permalinks, поэтому, если у кого-то есть другие предложения, я готов их принять.

Solutions Collecting From Web of "Получить полный контроль над пользовательским типом почтового сообщения"