Как в quick_edit_custom_box получить переменную global $post ?
Как при работе хуков:
add_action( 'bulk_edit_custom_box', 'quick_edit_custom_box_video', 10, 2 ); add_action( 'quick_edit_custom_box', 'quick_edit_custom_box_video', 10, 2 ); https://codex.wordpress.org/Plugin_API/Action_Reference/quick_edit_custom_box
получить глобальную переменную global $post или ID соответствующего поста?
Есть варианты получения через jQuery и Ajax, но надо получить именно при работе этих хуков, так как выводимые поля надо заполнить данные, например из мета полей соответствующего поста.
https://codex.wordpress.org/Plugin_API/Action_Reference/bulk_edit_custom_box
В примере явно прописано:
add_action( 'wp_ajax_save_bulk_edit_book', 'save_bulk_edit_book' ); function save_bulk_edit_book() { // TODO perform nonce checking // get our variables $post_ids = ( ! empty( $_POST[ 'post_ids' ] ) ) ? $_POST[ 'post_ids' ] : array();В $post_ids как раз и будут ID постов, которые редактируются.
https://codex.wordpress.org/Plugin_API/Action_Reference/quick_edit_custom_box
Здесь пример будет получше.
Это:
А мне надо получить ID текущей записи еще при выводе полей:
https://codex.wordpress.org/Plugin_API/Action_Reference/quick_edit_custom_box#Examples
add_action( 'quick_edit_custom_box', 'display_custom_quickedit_book', 10, 2 ); function display_custom_quickedit_book( $column_name, $post_type ) { static $printNonce = TRUE; if ( $printNonce ) { $printNonce = FALSE; wp_nonce_field( plugin_basename( __FILE__ ), 'book_edit_nonce' ); } ?> <fieldset class="inline-edit-col-right inline-edit-book"> <div class="inline-edit-col column-<?php echo $column_name; ?>"> <label class="inline-edit-group"> <?php // Например здесь получить ID записи ... ? switch ( $column_name ) { case 'book_author': ?><span class="title">Author</span><input name="book_author" /><?php break; case 'inprint': ?><span class="title">In Print</span><input name="inprint" type="checkbox" /><?php break; } ?> </label> </div> </fieldset> <?php }Похоже нельзя там получить ID при выводе, что странно... зачем такой обход с использованием кучи кода и js скриптов..?
Смотрю в плагине WooCommerce тоже используются js для заполнения полей при быстром редактировании.
Вы все верно подметили.
Программно переменную ID поста не получить.
Только через JS: так и кодекс говорит и на stackoverflow.com такие же ответы.