В чем разница между $post_id
и get_the_ID()
?
Я не мог найти документацию по $post_id
.
В чем разница между $post_id
и get_the_ID()
?
Я не мог найти документацию по $post_id
.
Ответы:
get_the_ID()
возвращает идентификатор текущего сообщения в виде get_post
. Функция Get post предполагает, что текущая запись является global
переменной,$post
если не переданы параметры, указывающие иное. Это означает, что get_the_ID()
должно возвращать то же значение, что и в $post->ID
. Использование get_the_ID()
позволяет избежать прямого обращения с глобальным, хотя вы имеете дело с ним косвенным образом. Использование get_the_ID()
имеет тенденцию быть менее подверженным ошибкам в файлах шаблона темы.
$post_id
это имя переменной, обычно используемое для ссылки на идентификатор записи, но это не переменная Core $post
, хотя она определена несколько раз в определенных контекстах:
grep -Rn '$ post_id' * | grep global wp-admin / includes / class-wp-comments-list-table.php: 25: global $ post_id; wp-admin / includes / class-wp-comments-list-table.php: 45: глобальный $ post_id, $ comment_status, $ search, $ comment_type; wp-admin / includes / class-wp-comments-list-table.php: 141: глобальный $ post_id, $ comment_status, $ comment_type; wp-admin / includes / class-wp-comments-list-table.php: 250: global $ post_id; wp-admin / includes / ajax-actions.php: 691: global $ wp_list_table, $ post_id; wp-includes / ms-deprecated.php: 115: функция clear_global_post_cache ($ post_id) {