Php 自定义功能图像从前端上载仅上载文件夹名称
谢谢你看我的问题 问题 我需要能够上传功能图像(缩略图)是与一个职位,该网站正在工作有能力使从网站前端的职位 实现的自定义代码 在提交后表单中,我使用了file类型的输入元素:Php 自定义功能图像从前端上载仅上载文件夹名称,php,jquery,ajax,wordpress,file-upload,Php,Jquery,Ajax,Wordpress,File Upload,谢谢你看我的问题 问题 我需要能够上传功能图像(缩略图)是与一个职位,该网站正在工作有能力使从网站前端的职位 实现的自定义代码 在提交后表单中,我使用了file类型的输入元素: <form class="compose-post-form" method="POST" enctype="multipart/form-data"> ... <input type="file" name="featured" id="featured"> ... </
<form class="compose-post-form" method="POST" enctype="multipart/form-data">
...
<input type="file" name="featured" id="featured">
...
</form>
这是保存缩略图的代码,现在我只是用post ID 22进行测试:
add_action( 'wp_ajax_thumbnail_up', 't_thumbnail_up' );
function t_thumbnail_up(){
$uploaddir = wp_upload_dir();
$file = $_FILE['featured'];
$uploadfile = $uploaddir['path'] . '/' . basename( $file['name'] );
move_uploaded_file( $file['tmp_name'] , $uploadfile );
$filename = basename( $uploadfile );
$wp_filetype = wp_check_filetype(basename($filename), null );
$attachment = array(
'post_mime_type' => $wp_filetype['type'],
'post_title' => preg_replace('/\.[^.]+$/', '', $filename),
'post_content' => '',
'post_status' => 'inherit',
'menu_order' => $_i + 1000
);
$attach_id = wp_insert_attachment( $attachment, $uploadfile );
update_post_meta(22, '_thumbnail_id',$attach_id);
set_post_thumbnail( 22, $thumbnail_id );
exit();
}
结果是有些东西被上传了,但似乎只有文件夹名,即11月份的月份号,该文件夹实际上没有在服务器上创建:
非常感谢您对我如何实现此功能的任何帮助。使用此函数处理来自ajax的文件
<?php
$thumbnail = $_FILES[ 'featured' ];
$thumbnail_id = media_handle_sideload( $thumbnail, $post_id );
set_post_thumbnail( $post_id, $screenshot_id );
谢谢你的建议,似乎不起作用,但我很感激你的回答:)@david mendienta你能告诉我var file=$(“#特色”).val()是什么吗;和$file=$\u file['featured'];返回?返回数组(0){}@david mendienta两者都返回空?这意味着您没有正确获取上传的图像。您可以在上载图像后检查文件字段,并查看图像名称存储的位置。您可能可以使用javascript获取它并将其传递给ajax。如果您需要进一步帮助,请告诉我:))
<?php
$thumbnail = $_FILES[ 'featured' ];
$thumbnail_id = media_handle_sideload( $thumbnail, $post_id );
set_post_thumbnail( $post_id, $screenshot_id );