ホームページ  >  記事  >  バックエンド開発  >  wordPress 如何保存插件中上传的图片到对应插件的目录下面?

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

WBOY
WBOYオリジナル
2016-06-06 20:10:461145ブラウズ

开发了个插件中有个上传图片的功能,插件下面有个目录是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>
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。