我在json响应中得到了这一点
"main_image":
[
"11125,11122,11123,11127,11128"
],
这些是我帖子的ID,我需要以“缩略图”大小获取每个ID的URL。我没有找到任何解决方案,只有这段代码,但更多的是针对插件的自定义元。
function xxx_past_poss_custom_metadata( $post_response, $post, $context ) {
$meta = get_post_custom( $post[\'ID\'] );
$custom_fields = array();
$xxx_image_gallery = array();
foreach ( $meta[\'xxx_cmb_image_gallery\'] as $key => $value ) {
$value = wp_get_attachment_url($value);
$xxx_image_gallery[ $key ] = $value;
};
foreach ( $meta as $key => $value ) {
// Replace \'xxx_\' with any custom metakey prefix (ie. \'_\' for private metadata\'s)
if ( \'xxx_\' !== substr( $key, 0, 1 ) ) {
$custom_fields[ $key ] = $value;
};
}
$post_response[\'xxx_image_gallery\'] = $xxx_image_gallery;
$post_response[\'custom_fields\'] = $custom_fields;
return $post_response;
}
add_filter( \'json_prepare_post\', \'xxx_past_poss_custom_metadata\', 10, 3 );
我的meta名为“media\\u gallery”。
任何帮助都将不胜感激。
[更新]
似乎我甚至没有修改json响应,因为我激活了一个插件,关闭它让我在函数中声明了我的meta。php文件,不,我有这个。
add_action(\'rest_api_init\', \'register_custom_fields\', 1, 1);
function register_custom_fields(){
register_rest_field(
\'job_listing\',
\'thumbnail\',
array(
\'get_callback\' => \'show_image\'
)
);
}
function show_main_image($object, $field_name, $request){
$custom_fields = get_post_custom($object[\'id\']);
$main_image = $custom_fields[\'main_image\'];
return $main_image;
}
我现在可以修改响应,但我仍然无法将所有ID:“111251122111231112711128”转换为URL源。
我的自定义输入保存的图像id如下:“11125111221112311112711128”,所以佩德罗说是真的吗
是一个内部只有一个字符串的数组
我接下来尝试的是:
function show_main_image($object, $field_name, $request){
$custom_fields = get_post_custom($object[\'id\']);
$main_image = $custom_fields[\'main_image\'];
foreach ( $main_image as $key => $value ) {
$imagesID = explode(\',\',$value);
foreach ($imagesID as $id => $value) {
$result = wp_get_attachment_url($value);
$custom_fields[ $id ] = $result;
}
};
$image_urls = array();
return $result;
}
但仍然没有运气,现在“main\\u image”端点似乎为空。