WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru

attachment_fields_to_edit хук-фильтр . WP 2.5.0

Позволяет добавить произвольное поле к изображению (html код поля на странице редактирования вложения).

Этот хук только добавляет метаполе, но не сохраняет его данные. Для сохранения используйте хук attachment_fields_to_save.

Использование

add_filter( 'attachment_fields_to_edit', 'filter_function_name_5295', 10, 2 );
function filter_function_name_5295( $form_fields, $post ){
	// filter...

	return $form_fields;
}
$form_fields(массив)
Данные полей формы вложения.
$post(WP_Post)
Объект записи вложения.

Примеры

#1 Добавим метаполе для изображения

// Добавим метаполе для изображения
add_filter( 'attachment_fields_to_edit', 'pon_attachment_fields_to_edit', null, 2 );
function pon_attachment_fields_to_edit( $form_fields, $post ){

	$form_fields['carousel_price'] = array(
		'label' => 'Цена (если нужно)',
		'input' => '',
		'value' => get_post_meta( $post->ID, 'carousel_price', true )
	);

	return $form_fields;
}

// Сохраняем данные метаполя
add_filter("attachment_fields_to_save", "pon_attachment_fields_to_save", null, 2);
function pon_attachment_fields_to_save($post, $attachment) {
	if( isset($attachment['carousel_price']) ){
		update_post_meta( $post['ID'], 'carousel_price', $attachment['carousel_price'] );
	}
	else
		delete_post_meta( $post['ID'], 'carousel_price' );

	return $post;
}

Получим:

Где вызывается хук

get_attachment_fields_to_edit()
attachment_fields_to_edit
get_compat_media_markup()
attachment_fields_to_edit
wp-admin/includes/media.php 1393
$form_fields = apply_filters( 'attachment_fields_to_edit', $form_fields, $post );
wp-admin/includes/media.php 1784
$form_fields = apply_filters( 'attachment_fields_to_edit', $form_fields, $post );

Где используется хук (в ядре WP)

wp-admin/async-upload.php 64
add_filter( 'attachment_fields_to_edit', 'media_single_attachment_fields_to_edit', 10, 2 );
wp-admin/async-upload.php 74
add_filter( 'attachment_fields_to_edit', 'media_post_single_attachment_fields_to_edit', 10, 2 );
wp-admin/includes/media.php 2185
add_filter( 'attachment_fields_to_edit', 'media_post_single_attachment_fields_to_edit', 10, 2 );
wp-admin/includes/media.php 2405
<?php add_filter( 'attachment_fields_to_edit', 'media_post_single_attachment_fields_to_edit', 10, 2 ); ?>
wp-admin/includes/media.php 2712
<?php add_filter( 'attachment_fields_to_edit', 'media_post_single_attachment_fields_to_edit', 10, 2 ); ?>
wp-admin/media.php 75
add_filter( 'attachment_fields_to_edit', 'media_single_attachment_fields_to_edit', 10, 2 );
lincaseidhe 76lincaseidhe.ru
Редакторы: Kama 7450
Комментариев нет
    Здравствуйте, !     Войти . Зарегистрироваться