我正在尝试将裁剪操作挂钩到图像编辑器上,因为我需要在图像编辑器中获取裁剪参数以便在之后使用它们。 但由于裁剪是由image-edit.js执行的,我无法弄清楚如何执行此操作。 那是否有特定的钩子?
修改
我发现裁剪数据被发送到$ _REQUEST数组中的wp-admin / includes / image-edit.php,裁剪的值包含在$ _REQUEST ['history']中 我正在尝试获取此值,但每次运行它时,我的函数都会中断保存过程,并且我在自定义字段中没有任何值。
我正在尝试这个:
add_action( 'wp_save_image_editor_file', 'custom_wp_save_image_editor_file');
function custom_wp_save_image_editor_file($saved, $filename, $image, $mime_type, $post_id ){
update_field('crop_data', $_REQUEST['history'], $post_id);
return $saved;
}
但它不起作用
编辑2 我正在使用高级自定义字段,因此该字段的更新是不同的。 现在,该操作仅适用于$ post_id的固定值(下一步获取附件的帖子ID)
答案 0 :(得分:0)
这是我将裁剪数据保存在名为crop_data
的ACF中的最终解决方案。
我希望它对某些人有用......
add_action( 'wp_save_image_editor_file', 'save_crop_data');
function save_crop_data(){
$attachment_id = $_REQUEST['postid'];
$parent = get_post_ancestors($attachment_id);
$post_id = $parent[0];
update_field('crop_data', $_REQUEST['history'], $post_id);
return $saved;
}