我试图找到一个解决方案来修改路径信息,使文件上传路径url将是一个图像,而不是一个网址。
add_filter( 'gform_upload_path', 'change_upload_path', 10, 2 );
function change_upload_path( $path_info, $form_id ) {
$path_info['path'] = '/home/public_html/wp-content/uploads/photo_uploads/';
$path_info['url'] = 'http://www.domain.com/wp-content/uploads/photo_uploads/';
return $path_info;
}
但是,$path_info‘’url‘需要包装在img标记中。有没有办法在前面加上img src=“,在它后面加上一个结束标签>?
$path_info['url'] = append <img src=" in front of the file name 'http://www.domain.com/wp-content/uploads/photo_uploads/' append > to close the tag ;
此处的目的是将URL转换为img src。
发布于 2016-03-14 20:00:40
您可能希望分成两部分来处理此问题。第一种方法是使用gform_upload_path
过滤器来更改图像的上传路径。第二种方法是在从数据库中检索URL时,使用gform_entry_field_value
过滤器将其包装在标记中。
几乎在显示字段值的任何地方,都会调用gform_entry_field_value
过滤器,因此您将始终拥有图像包装的URL。
使用代码更新:
add_filter( 'gform_upload_path', 'change_upload_path', 10, 2 );
function change_upload_path( $path_info, $form_id ) {
$path_info['path'] = '/home/public_html/wp-content/uploads/photo_uploads/';
$path_info['url'] = 'http://www.domain.com/wp-content/uploads/photo_uploads/';
return $path_info;
}
// update "10" to the ID of your form, update "3" to the ID of your field
add_filter( 'gform_entry_field_value', 'convert_to_image', 10, 4 );
function convert_to_image( $value, $field, $entry, $form ) {
return $field->formId == 1247 && $field->id == 2 ? sprintf( '<img src="%s" />', $entry[ $field->id ] ) : $value;
}
https://stackoverflow.com/questions/35901855
复制相似问题