Intereting Posts
Проблема с высотой в коротком кодеке wp_insert_term – проблема родителя и ребенка Добавить таблицу стилей на макет Как разрешить пользователю создавать подборку категорий через бэкэнд Как реализовать только область комментариев wp на моем пользовательском сайте? Обрезаемая фатальная ошибка в персонализированной публикации категории Удалить «Комментарии закрыты» Уведомление из шаблона пользовательского типа отправки Обратный URL-адрес детской темы Как изменить теги рядом с отображаемым изображением на моих сообщениях? Как создать меню на четыре строки, включая изображения Как получить значение, хранящееся в многомерном массиве, и SUM записи? Пользовательский тип сообщения не относится к назначенным категориям Пользовательская структура Permalink для страниц и сообщений Как эхо-значение метаданных в формате валюты Как перенаправить незарегистрированных пользователей на страницу входа в WordPress и обойти некоторые идентификаторы страниц?

Как эта функция получает идентификатор последней записи?

Вот функция, которая делает то, что мне нужно. Кто-то написал это. Я хочу понять, как это делается. (К нему добавится больше FYI.)

Цель здесь заключалась в том, чтобы получить идентификатор последнего сообщения. Я понимаю, что делает функция функции WordPress. Я не понимаю, что происходит, чтобы установить значение для $thePostID после того, как функция WordPress нашла первое сообщение. В частности, [0] и [ID].

Может кто-нибудь объяснить?

 function prepare_payment() { $recent_posts = wp_get_recent_posts( array( 'numberposts' => '1' ) ); $thePostID = $recent_posts[0]['ID']; echo $thePostID; } 

Solutions Collecting From Web of "Как эта функция получает идентификатор последней записи?"

prepare_payment() вызывает wp_get_recent_posts() который по умолчанию возвращает массив сообщений. В этом случае возвращается только одно сообщение из-за параметра $numberposts , установленного в 1 .

$recent_posts содержит массив сообщений, возвращаемых wp_get_recent_posts() . Следующая строка устанавливает $thePostID в идентификатор первого сообщения в массиве $recent_posts ( массивы нулевые индексируются ):

 $thePostID = $recent_posts[0]['ID']; 

Наконец, идентификатор echo'd используется с использованием echo $thePostID;

Изменить: Вот пример массива, возвращаемого wp_get_recent_posts() , который сам является оберткой для get_posts()

 Array ( [0] => Array ( [ID] => 418 [post_author] => 2 [post_date] => 2025-01-01 00:00:00 [post_date_gmt] => 2025-01-01 00:00:00 [post_content] => This post is scheduled to be published in the future. It should not be displayed by the theme. [post_title] => Scheduled [post_excerpt] => [post_status] => future [comment_status] => open [ping_status] => closed [post_password] => [post_name] => scheduled [to_ping] => [pinged] => [post_modified] => 2016-04-11 04:28:22 [post_modified_gmt] => 2016-04-11 04:28:22 [post_content_filtered] => [post_parent] => 0 [guid] => http://wpthemetestdata.wordpress.com/?p=418 [menu_order] => 0 [post_type] => post [post_mime_type] => [comment_count] => 0 [filter] => raw ) ) 

Вы можете реплицировать это, добавив простое заявление отладки в prepare_payment() :

 function prepare_payment() { $recent_posts = wp_get_recent_posts( array( 'numberposts' => '1' ) ); // Temporary debugging statement print_r( $recent_posts ); $thePostID = $recent_posts[0]['ID']; echo $thePostID; }