Открываем нашу страницу, находим нужный пост и открываем его.
В адресной строке, смотрим на ссылку и все, что мы видим между двумя слэшами и после буквы p – это и есть ID поста
В данном случае, ID поста = CfEPyAjrhqw
Если остались вопросы – смело задавай вопрос в техподдержку. Мы всегда поможем 🙂
💟
Как задать вопрос в поддержку?
Когда я методом wall.post публикую отложенную запись, мне выдается массив с id этого поста, например, 37
, но когда запись выходит из таймера, она имеет уже другой id при условии, что до выхода этого поста были опубликованы еще посты, или пост.
Как получить именно тот айди, который будет после выхода отложенной публикации? Спасибо
-
Вопрос заданболее трёх лет назад
-
1679 просмотров
Он будет иметь другой id даже если до него новых постов не публиковалось.
Заранее никак не узнать какой будет id, но он как минимум будет id отложенного поста + 1.
Далее может быть много вариантов, в зависимости от конечной задачи.
Если это группа, то можно примерно так (но это не точно):
Время предполагаемой публикации пишем в базу, по callback получаем уведомления о новых записях, если время записи о которой пришло уведомление и время нашего отложенного поста совпадают – меняем айди и все.
Пригласить эксперта
-
Показать ещё
Загружается…
24 мая 2023, в 13:53
8500 руб./за проект
24 мая 2023, в 13:38
1 руб./за проект
24 мая 2023, в 13:36
1000 руб./за проект
Минуточку внимания
Понимаю, что я уже немного подзадолбал прошаренных в WordPress читателей своего сайта публикацией постов для новичков. Что же, постараюсь в итоге найти в этом золотую середину.
В этом уроке рассмотрим 13 вариантов (да, целых 13!) получения айди постов в WordPress. Способы будут усложняться от самых простых в начале до самых хитрых в конце. Также в конце урока, теперь уже традиционно, вас ждёт его видео обзор.
1. Его содержит URL страницы редактирования записи/страницы
Тут всё просто, в админке переходим на страницу редактирования записи и видим в URL параметр post
, он нам и нужен!
То есть переходите в Записи или в Страницы, выбираете нужную и открываете её редактирование.
2. При отключенных постоянных ссылках сайта, вы его точно не упустите
Если вы не используете постоянные ссылки (ЧПУ), в чём я сильно сомневаюсь, то URL записей и страниц будут в чистую содержать их айдишники.
Можете прямо сейчас попробовать, если не знали об этом раньше. Для этого переходим в Настройки — Постоянные ссылки и там выбираем самую первую опцию — Простые.
После этого перейдите непосредственно на страницу какой-либо записи или страницы WordPress и вот что вы увидите. Это и есть ID записей и страниц.
Тут только важно обратить внимание, что для записей параметр будет называться p
, а для страниц page_id
.
3. Добавление дополнительной колонки с ID записей и страниц в админку
Примерно так это будет выглядеть:
Я не хочу дублировать один и тот же код со своих разных уроков, поэтому реализацию своей собственной колонки с ID постов вы найдёте по этой ссылке. Не беспокойтесь, там очень просто — достаточно скопировать готовый код в functions.php
текущей темы.
4. ID поста можно найти, заглянув в phpMyAdmin
Окей, простыми словами, начну с того, что phpMyAdmin — это такое место, которое вы можете найти у себя на хостинге (или на локалке), в котором вы можете управлять своей базой данных сайта. Это я на всякий случай, для тех, кто не имеет представления о ней.
Так вот, когда вы её откроете, то сможете спокойно подсмотреть ID любой записи, любой страницы, да и вообще любого поста произвольного типа, если перейдёте в таблицу wp_posts (или вашпрефикс_posts, о том как и зачем менять префикс, читайте тут ).
5. ID поста содержится в объекте этого поста
И так плавно мы переходим в код. Тут я буду подразумевать, что у вас уже есть какие-то базовые знания о PHP, если нет, то дальше можно не читать 🙂 Ну хотя в принципе можете глянуть видео.
В зависимости от ситуации, объект поста можно получить разными способами. Но так как в начале этого урока подразумевается, что мы не в курсе, какой ID искомой записи, то будем использовать именно глобальный объект:
global $post; echo $post->ID; // вывели ID текущей записи или страницы
Глобальный объект поста — это либо запись/страница, на которой вы находитесь, либо та, которая прокручивается в данный момент в цикле.
6. Внутри цикла мы всегда можем воспользоваться функциями the_id() и get_the_id()
На самом деле этот пункт практически эквивалентен предыдущему. Суть в том, что, когда вы находитесь внутри страницы записи или внутри цикла, то можете смело получать или выводить ID текущего материала при помощи get_the_id() или the_id() соответственно.
7. Как определить ID записи или страницы по её заголовку?
О, а сейчас вам предстоит познакомиться с некоторыми функциями WordPress, о которых вы возможно не знали. И первая из них — get_page_by_title(). Пусть вас не смущает её название, она прекрасно работает не только со страницами, но и с записями, да и вообще с любыми другими типами постов.
Покажу как:
$misha_post = get_page_by_title( 'Привет, мир!', '', 'post' ); echo $misha_post->ID;
8. А по ярлыку? (слагу)
Удивляюсь, что когда-то описывал эти функции у себя в Кодексе, но сейчас я очень рад, что это сделал, так как могу спокойно на них ссылаться. Итак, функция get_page_by_path().
И сразу опробуем её в действии:
$misha_post = get_page_by_path('privet-mir', '', 'post'); echo $misha_post->ID;
Ну, и я думаю, не нужно лишний раз напоминать, что если хотите почитать больше о функции, просто переходите по этим ссылкам, я же не просто так их сюда вставляю.
9. В WordPress даже есть функция, которая возвращает ID поста, если мы передадим в неё его URL
Сразу выведу ID в примере:
echo url_to_postid( 'https://misha.agency/wordpress/kak-poluchit-id-posta.html' );
10. Как определить ID страницы, отображаемой на главной?
Если бы меня спросили, где чаще всего косячат люди, которые начинают работать с WordPress, я бы не задумываясь ответил — это главная страница и Настройки — Чтение, а также иерархия всего этого добра.
Тем не менее, если вы выставили тут какую-то страницу для отображения на главной:
То тогда вы можете вывести её ID в любом месте, где захотите, используя эту строчку кода:
echo get_option( 'page_on_front' );
То же самое кстати касается и страницы, которую вы выбрали в качестве Блога.
echo get_option( 'page_for_posts' );
11. Внутри WP_Query
На самом деле это просто частный случай пятого способа, но тем не менее не все его знают, поэтому я его сюда включаю и даже объясню всё.
Смотрите, мы создаём объект WP_Query и присваиваем его в переменную:
$x = new WP_Query( 'posts_per_page=-1' );
После этого все функции работы с циклом чудесным образом превращаются в методы этого объекта.
if( $x->have_posts() ) : // без WP_Query это просто have_posts() while( $x->have_posts() ) : $x->the_post(); // без WP_Query это просто функция the_post();
Так же и объект поста внутри цикла превращается из $post
в $x->post
, а значит ID поста будет выглядеть:
Как только в этом разобраться, оно становится очень просто.
Не нашёл подобной функции в WordPress, поэтому решил соорудить её сам:
function truemisha_post_id_by_metas( $key, $value ){ global $wpdb; // получаем массив из всех ID, подходящих под заданные мета ключ и значение $all_posts = $wpdb->get_col( $wpdb->prepare( "SELECT post_id FROM $wpdb->postmeta WHERE meta_key = %s AND meta_value = %s", $key, $value ) ); // это уже необязательно, я просто сделал, что если ID найден только один, то он и возвращается в виде числа, // а если несколько постов удовлетворяют условию, то они и будут возвращены в виде массива if( count( $all_posts ) > 1 ) return $all_posts; // массив else return $all_posts[0]; // целое }
Конечно, если вы умеете строить SQL-запросы, то вы можете создать любую подобную функцию, но если нет, то вставляете её куда-нибудь в functions.php
и потом используете в любом месте темы.
echo truemisha_post_id_by_metas( 'post_views', 1000000 ); // а лучше не echo а print_r - ведь у нас там может быть массив
13. И напоследок, получим все ID постов, содержащихся в определенной рубрике или отмеченные определенным тегом
И ещё одна готовая функция для вас, очень похожа на функцию из предыдущего способа.
function truemisha_post_id_by_cat_tag( $cat_or_tag_id ){ global $wpdb; $all_posts = $wpdb->get_col( $wpdb->prepare( "SELECT object_id FROM $wpdb->term_relationships WHERE term_taxonomy_id = %d", $cat_or_tag_id ) ); return $all_posts; }
Видеоурок
Не забывайте подписываться на мой YouTube-канал 🙂 Это будет меня мотивировать и дальше записывать видео. P.S. У меня там реклама отключена! И не планируется.
Миша
Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.
Пишите, если нужна помощь с сайтом или разработка с нуля.
0
2 ответа:
0
0
Нажмите на пост или на фото пользователя, и смотрите ссылку сверху. Там будет что-то подобное
https://vk.com/…..<wbr />….=photo ……..%2Falbum….<wbr />……_0%2Frev
вот в промежутках, какие будут цифры – то и есть ID пользователя
0
0
Я бы так ответил на этот вопрос про id (адрес) поста вконтакте (vkontakte). Дело это очень простое.
Насколько мне это известно, варианты, конечно здесь могут быть самые разные того, как можно это сделать – узнать id поста (видео, фото, текст, статья и так далее) вконтакте (vkontakte).
Для это можно сначала выбрать или зайти на нужный Вам пост вконтакте (например по какой-либо ссылке на этот самый пост). Когда нужный Вам пост вконтакте будет открыт, то если Вы смотрите (зашли на этот самый пост) этот пост например на компьютере – через браузер. Тогда сверху – в адресной строке можно увидеть соответствующую информацию – id (адрес) поста вконтакте (vkontakte).
Вот пример на фото, выглядит это обычно примерно так:
Читайте также
Ничего особенного для пользователей социальной сети ВК в повседневной жизни, а вот на первое апреля, это специальная возможность потешиться над фотографиями своих друзей, посредством данной кнопки, а именно у вас на целый день есть возможность украсить свои или чужие фотографии, смайлами, зарисовками и прочими титрами, которые входят в данную программу.
Если у вас нет смартфона, но есть компьютер, то нужно просто скачать эмулятор и тогда сможете пользоваться на компьютере теми же функциями, во всех приложениях, что есть на смартфонах
Сделать это совсем не сложно просто зайдите на сайт и выберите себе подходящий эмулятор и пользуйтесь с удовольствием.
Это кубок игры DOTA. Доступен, как подарок очень многим пользователям. А в честь чего? Так скоро сама игра четырехлетие отмечать будет, момент создания в скриншоте есть.
Ну а социальная сеть, понятно, игру рекламирует, распространяя подобный подарок. Это легкий намек на то, какая награда в игре ждать может. Только основная цель, разумеется, человека заинтересовать. И судя потому что, вопрос задан, цель достигнута. Пользователь заинтересован, а значит игроков в стане данной игры, может прибавиться.
Довольно часто, кстати, наши социальные сети используют такой прием, облекая в бесплатный подарок что- то значительное и ожидаемое.
Коины – виртуальные деньги, криптовалюта. Но они сейчас – лишь цифирки на экране. Хотя интерес к ним подогревается. Уже сейчас можно дарить их друзьям. Зафиксированы сделки обмена коинов на реальные деньги. Курс конечно невелик, но начало положено.
В первую очередь появится возможность приобретать за коины голоса ВК, чтобы приобрести что-то полезное (стикеры или примочки для игр, например, золото в Аватарии).
Развитие валюты покажет, будет ли она что-то стоить и надо ли добавлять вывод средств.
Конечно поможет! Самое главное подобрать правильно аудиторию. Выберите такую аудиторию, которой будет интересна ваша группа, тогда точно численность участников возрастет. Также не менее важно написать заманивающее описание, прочитав которое человеку захочется посетить вашу группу. Ну и конечно же картинка.
Но таргетированная реклама – это не единственный способ раскрутки. Можно разместить рекламу в популярных сообществах, но это конечно же не бесплатно.
Часто WordPress-пользователям бывает необходимо узнать уникальный идентификатор (ID) поста (записи). Обычно это нужно при исключении вывода того или иного поста в каком-то плагине (например, при построении карты сайта или скрытия из главной конкретной записи). Кроме того, ID нужен во время разработки, когда предметом внимания является один или несколько постов, и их нужно обрабатывать произвольным образом.
Для решения задачи существует большое количество разнообразных способов, начиная от самых легких (установка плагина) и заканчивая более сложными (работа с базой данных). Рассмотрим наиболее популярные из них. Так как все они дают один и тот же результат — выбор того или иного способа остается за Вами.
Способ 1. Плагин Show IDs by 99 Robots
Наиболее простым способом является использование бесплатного плагина Show IDs by 99 Robots. Во-первых, его необходимо установить и активировать. Особенностью дополнения является то, что оно не требует каких-либо настроек со стороны пользователя. После активации плагин уже выполняет свою работу. Чтобы узнать ID той или иной записи (поста), следует просто в админ-панели перейти Записи > Все записи. Видно, что напротив каждого поста, в колонке ID, отображается его уникальный идентификатор.
Более подробно том, как в админ-панели WordPress отобразить ID записей и страниц.
Способ 2. Страница редактирования записи
Если по каким-либо причинам Вы не хотите устанавливать дополнительные плагины на свой сайт или если ID записи нужно узнать лишь один раз, то будет проще воспользоваться этим способом. Для этого необходимо открыть на редактирование запись, идентификатор которой нужно узнать. В окне редактора следует обратить внимание на адресную строку. Например,
http://site.ru/wp-admin/post.php?post=12&action=edit
Видно, что возле символов «?post=» указано некое число. Это и есть тот самый ID записи (в нашем примере — это 12).
Отметим, что если в настройках постоянных ссылок (Настройки > Постоянные ссылки) выбрана опция Простые, то на странице редактирования записи, под ее заголовком, Вы сможете увидеть тот самый идентификатор.
Способ 3. Страница списка всех записей
Есть еще один простой способ решения задачи. Он подразумевает переход на страницу списка всех записей (Записи > Все записи), но не обязывает открывать для редактирования какую-либо из них. При наведении на тот или иной пост, в самом низу Вашего браузера появится ссылка, аналогичная предыдущему способу, где после «?post=» Вы увидите требуемый ID.
Способ 4. Утилита phpMyAdmin
В одной из наших прошлых статей мы рассматривали бесплатную утилиту phpMyAdmin и работу с ней. Будем считать, что выбрана и открыта база данных Вашего сайта. Чтобы узнать ID того или иного поста, следует перейти в таблицу wp_posts, найти название нужного поста (колонка post_title) и в колонке ID посмотреть идентификатор.
Как узнать ID рубрики (категории)
- Окройте админ-раздел Записи > Рубрики.
- Наведите мышкой на рубрику.
- В самом низу браузера найдите ссылку типа
http://site.ru/wp-admin/term.php?taxonomy=category&tag_ID=555&post_type=post
Значение «555» — это и есть уникальный ID рубрики.
Как узнать ID тега (метки)
- Откройте админ-раздел Записи > Метки.
- Наведите мышкой на метку.
- В URL-адресе
http://site.ru/wp-admin/term.php?taxonomy=post_tag&tag_ID=8&post_type=post
значение «8» — ID метки.
Как узнать ID товара (WooCommerce)
- В админ-панели WordPress откройте раздел Товары — Все товары.
- Найдите нужный товар, используя поиск по товарам или фильтры; «Выбрать категорию», «Фильтровать по типу товара», «Фильтрация по статусу».
- Наведите на его название мышкой и посмотрите на адресную строку внизу экрана. Цифра 117, указанная после
post=
и является искомым ID для WooCommerce-товаров.
Как узнать ID категории товара (WooCommerce)
ID товарной категории для интернет-магазина, работающего на WordPress+WooCommerce, можно определить похожим образом:
- Перейдите в раздел админки Товары — Категории.
- Найдите нужную вам категорию, наведите на ее заголовок курсор и взгляните в адресную строку внизу экрана.
- Вам нужна цифра 26, указанная после
tag_ID=
.
Нажмите, пожалуйста, на одну из кнопок, чтобы узнать понравилась статья или нет.