Home  >  Article  >  Backend Development  >  wordPress 如何保存插件中上传的图片到对应插件的目录下面?

wordPress 如何保存插件中上传的图片到对应插件的目录下面?

WBOY
WBOYOriginal
2016-06-06 20:10:461145browse

开发了个插件中有个上传图片的功能,插件下面有个目录是img保存图片的,想问如何课一保存上传的啊图片到这个目录?

<code>// Check that the nonce is valid, and the user can edit this post.
if (
    isset($_POST['my_image_upload_nonce'], $_POST['post_id'])
    && wp_verify_nonce($_POST['my_image_upload_nonce'], 'my_image_upload')
    && current_user_can('edit_post', $_POST['post_id'])
) {
    // The nonce was valid and the user has the capabilities, it is safe to continue.

    // These files need to be included as dependencies when on the front end.
    require_once(ABSPATH . 'wp-admin/includes/image.php');
    require_once(ABSPATH . 'wp-admin/includes/file.php');
    require_once(ABSPATH . 'wp-admin/includes/media.php');

    // Let WordPress handle the upload.
    // Remember, 'my_image_upload' is the name of our file input in our form above.
    $url=WPWSL_PLUGIN_URL . '/img/' . $imageSize . '.png';
//    update_option('upload_path',WP_CONTENT_DIR.'/uploads');
    update_option('upload_path',WPWSL_PLUGIN_URL.'/img/');
    $attachment_id = media_handle_upload('my_image_upload', $_POST['post_id']);

    if (is_wp_error($attachment_id)) {
        // There was an error uploading the image.
        echo "<p>There was an error uploading your file.</p>";
    } else {
        // The image was uploaded successfully!
        echo "<p>The image was uploaded successfully!</p>";
        add_filter('img', $attachment_id);
//        add_filter('img', 'custom_upload_directory');
    }

} else {
    echo "<p>The security check failed, maybe show the user an error</p>";
    // The security check failed, maybe show the user an error.

}</code>
  1. 列表项目

 <td>
                    <input type="file" name="my_image_upload" id="my_image_upload" multiple>
                    <input type="hidden" name="post_id" id="post_id" value="55">
                    <?php wp_nonce_field('my_image_upload', 'my_image_upload_nonce'); ?>
                    <input id="submit_my_image_upload" name="submit_my_image_upload" type="submit" value="Upload">

                            
                        


                                                                                                                        
                     <h2>回复内容:</h2>
                      
                                                            
<p>开发了个插件中有个上传图片的功能,插件下面有个目录是img保存图片的,想问如何课一保存上传的啊图片到这个目录?</p>
<pre class="brush:php;toolbar:false">&lt;code&gt;// Check that the nonce is valid, and the user can edit this post.
if (
    isset($_POST['my_image_upload_nonce'], $_POST['post_id'])
    &amp;&amp; wp_verify_nonce($_POST['my_image_upload_nonce'], 'my_image_upload')
    &amp;&amp; current_user_can('edit_post', $_POST['post_id'])
) {
    // The nonce was valid and the user has the capabilities, it is safe to continue.

    // These files need to be included as dependencies when on the front end.
    require_once(ABSPATH . 'wp-admin/includes/image.php');
    require_once(ABSPATH . 'wp-admin/includes/file.php');
    require_once(ABSPATH . 'wp-admin/includes/media.php');

    // Let WordPress handle the upload.
    // Remember, 'my_image_upload' is the name of our file input in our form above.
    $url=WPWSL_PLUGIN_URL . '/img/' . $imageSize . '.png';
//    update_option('upload_path',WP_CONTENT_DIR.'/uploads');
    update_option('upload_path',WPWSL_PLUGIN_URL.'/img/');
    $attachment_id = media_handle_upload('my_image_upload', $_POST['post_id']);

    if (is_wp_error($attachment_id)) {
        // There was an error uploading the image.
        echo &quot;&lt;p&gt;There was an error uploading your file.&lt;/p&gt;&quot;;
    } else {
        // The image was uploaded successfully!
        echo &quot;&lt;p&gt;The image was uploaded successfully!&lt;/p&gt;&quot;;
        add_filter('img', $attachment_id);
//        add_filter('img', 'custom_upload_directory');
    }

} else {
    echo &quot;&lt;p&gt;The security check failed, maybe show the user an error&lt;/p&gt;&quot;;
    // The security check failed, maybe show the user an error.

}&lt;/code&gt;</pre>
<ol><li><p>列表项目</p></li></ol>
<pre class="brush:php;toolbar:false">&lt;code&gt; &lt;td&gt;
                    &lt;input type=&quot;file&quot; name=&quot;my_image_upload&quot; id=&quot;my_image_upload&quot; multiple&gt;
                    &lt;input type=&quot;hidden&quot; name=&quot;post_id&quot; id=&quot;post_id&quot; value=&quot;55&quot;&gt;
                    &lt;?php wp_nonce_field('my_image_upload', 'my_image_upload_nonce'); ?&gt;
                    &lt;input id=&quot;submit_my_image_upload&quot; name=&quot;submit_my_image_upload&quot; type=&quot;submit&quot; value=&quot;Upload&quot;&gt;

                            
                        &lt;/td&gt;&lt;/code&gt;</pre>
</td>
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn