Получить ID публикации по адресу (slug, path, name) в WP

WordPress API очень разрослось, и почти на каждый случай есть своя функция. И в этой куче функций найти то, что нужно, бывает не просто.

Задача — получить ID публикации по её адресу, а вернее значению slug или post_name.

В кодексе есть подходящая функция, которая вернет нам целиком объект публикации:

Обязательным является только первый параметр.

$output — задаёт то, в каком виде будет выдан объект публикации. Возможны три варианта OBJECT, ARRAY_N, or >ARRAY_A, по умолчанию — OBJECT.

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

Осталось только получит ID объекта, если функция вернула что то кроме null.

Мало букафф? Читайте есчо !

Добавляем flash (swf) файлы в медиатеку сайта на Wordpress

Июнь 20, 2016 г.

Файлы Adobe Flash с расширением .swf нельзя загрузить в wordpress из коробки. Сделано так не без веских на то оснований. Но если вы осознаёте риски, то ...

Читать

Отключаем /wp-json/oembed/ в WP

Август 11, 2018 г.

Разработчиков WP не очень заботит SEO, и обновления движка могут оказывать негативные эффекты на индексацию сайта, т.к. могут появляться новые технические страницы, дубли и т.п. В версии 4.4 разработчики добавили RESTful интерфейс, который создаёт дополнительные ...

Читать

Создание системы хлебных крошек в WordPress

Февраль 27, 2026 г.

Есть готовые решения, плагины, которые могут решать ваши задачи в области генерации хлебных крошек. Они отлично подойдут для готовых к использованию тем оформления. Здесь я их не рассматриваю. В статье я покажу пару "собственных" подходов к генерации ...

Читать

Inactive User Deleter Tool 1.62

Август 26, 2023 г.

Небольшие обновления для плагина, который я поддерживаю для WP. Я хотел убрать ограничение, связанное с переменной PHP - max_input_vars. Дело в том, что каждый пользователь в списке - это отдельная переменная формы, и если список большой, то можно ...

Читать
 

Комментарии к «Получить ID публикации по адресу (slug, path, name) в WP»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: