Получить идентификатор сообщения из URL-адреса запроса

Отказ от ответственности: я не могу опубликовать более двух ссылок, но …

Я знаю, что есть много подобных вопросов, но ни одно из решений не работает для меня.

Моя проблема заключается в том, что с url_to_postid() Live Composer (wordpress.org/plugins/live-composer-page-builder/) url_to_postid() не возвращает идентификатор сообщения для пользовательских типов сообщений Live Composer, например «Партнеры», «Проект ", "Сотрудники". URL-адрес постоянной ссылки для проекта с именем «Testproject» по умолчанию имеет форму http://localhost/wordpress/?dslc_projects=testproject . Это не будет разрешено url_to_postid() в действительный идентификатор сообщения.

Обходной путь заключается в том, чтобы установить структуру permalink на нечто иное, чем стандартная «простая» настройка. Тогда url_to_postid() фактически корректно разрешает типы пользовательских сообщений LC.

Однако я не доверяю пользователю запомнить этот обходной путь. Черт, я даже не доверяю себе. Следовательно, я хотел бы знать, если есть способ разрешить тип URL выше.

Я новичок в WordPress, поэтому я еще не запутался с базой данных напрямую, не реализовал пользовательские таксономии и не предоставил пользовательские правила перезаписи. Я даже не знаю, как http://localhost/wordpress/?dslc_projects=testproject тип URL-адреса, например http://localhost/wordpress/?dslc_projects=testproject , хотя мне кажется, что я dslc_projects запрос в базе данных, чтобы соответствовать dslc_projects для testproject .
Мне бы очень хотелось узнать, есть ли у этого типа URL-адрес имя, поэтому я могу его узнать и узнать об этом. Кроме того, если кто-то знает, как получить идентификатор сообщения, используя те URL-адреса, которые были бы даже awesomer. 🙂


Изменить: теперь я, вероятно, обнаружил небольшую ошибку в url_to_postid() . Функции возвращаются при достижении следующего if-предложения :

 // Check to see if we are using rewrite rules $rewrite = $wp_rewrite->wp_rewrite_rules(); // Not using rewrite rules, and 'p=N' and 'page_id=N' methods failed, so we're out of options if ( empty($rewrite) ) return 0; 

Я предполагаю, что это ошибка, поскольку, видимо, могут быть переписаны правила для пользовательских URL-адресов типа post, которые должны быть обнаружены здесь.

Он сообщается как билет № 38041 .

Solutions Collecting From Web of "Получить идентификатор сообщения из URL-адреса запроса"