WordPress получает метаданные записи из функции обратного вызоваPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 WordPress получает метаданные записи из функции обратного вызова

Сообщение Anonymous »

Я работаю над своим первым плагином WP и застрял.

Я создал настраиваемое поле (поле 1) на странице публикации под редактором контента. Сохраняется правильно. :)

Я создал настраиваемое поле (поле 2) во всплывающем окне Медиа-библиотеки при добавлении мультимедиа. Сохраняется правильно. :)

Я хочу использовать значение из поля 1 в качестве значения по умолчанию для поля 2.

Я подозреваю, что проблема кроется в функции обратного вызова attachment_fields_to_edit.

Я думаю этот $post теперь относится к фактическому «сообщению с прикрепленным файлом», а не к самому сообщению, поэтому, когда я ссылаюсь на свои сохраненные значения:

Код: Выделить всё

$post_meta = get_post_meta( $post->ID );
на самом деле он извлекает всю мета-мету, связанную с этим вложением, а не с текущим сообщением. Можно ли вытащить мета из самого поста?

Этот код взят из Кодекса:

Код: Выделить всё

function my_add_attachment_location_field( $form_fields, $post ) {
$field_value = get_post_meta( $post->ID, 'location', true );
$form_fields['location'] = array(
'value' => $field_value ? $field_value : '',
'label' => __( 'Location' ),
'helps' => __( 'Set a location for this attachment' )
);
return $form_fields;
}
add_filter( 'attachment_fields_to_edit', 'my_add_attachment_location_field', 10, 2 );

function my_save_attachment_location( $attachment_id ) {
if ( isset( $_REQUEST['attachments'][$attachment_id]['location'] ) ) {
$location = $_REQUEST['attachments'][$attachment_id]['location'];
update_post_meta( $attachment_id, 'location', $location );
}
}
add_action( 'edit_attachment', 'my_save_attachment_location' );
Как мне получить_post_meta для текущего сообщения, в которое мы вставляем вложение? Это должно произойти в функции обратного вызова my_add_attachment_location_field в приведенном выше коде кодекса.

Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/228 ... k-function
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»