2016-06-20 12 views
0

イメージをメディアライブラリにアップロードするためのプラグインを作成しています。WordPress:イメージがメディアライブラリに保存されないのはなぜですか?

しかし、私はそれを格納することができません。整理するのを助けてください。

<?php 
    /* 
    Plugin Name: **** 
    */ 
    add_action('admin_menu', 'my_file_upload'); 
    function my_file_upload() { 
      $uploaddir = '/uploads'; 
      $uploadfile = $uploaddir . basename($_FILES['userfile']['name']); 
      echo "<p>"; 
      if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) { 
       echo "File is valid, and was successfully uploaded.\n"; 
       } else { 
        echo "Upload failed"; 
       } 
       echo "</p>"; 
       echo '<pre>'; 
       echo 'Hiiiiii'; 
       print_r($_FILES); 
       print "</pre>"; 
       echo"<imgsrc=$_FILES[userfile][tmp_name]>"; 
       ?> 
        <form enctype="multipart/form-data" action="#" method="POST"> 
        Send this file: <input name="userfile" type="file" /> 
        <input type="submit" value="Send File" /> 
       </form> 
      <?php  
       } 
?> 

私は最後の数時間からそれに取り組んでいないと多くのことを探索したが何の結果:(

+0

エラーが発生しましたか? – Milap

+0

あなたを見せてください。 ファイルは有効であり、正常にアップロードされました。 アレイ( [userfile] =>配列 ( [名] => Desert.jpg [タイプ] =>画像/ JPEG [tmp_name] => C:\ WAMP \ TMP phpE6D.tmp [\エラー] => 0 [サイズ] => 845941 ) ) しかし、それは以下のこのイメージ – Daniel

+0

チェックアウト私の答えでメディアライブラリを更新しません。 – Milap

答えて

1

あなたはmove_uploaded_file機能を使用してファイルをアップロードすることができますが、ファイルので、それは、WordPressのメディアライブラリに表示されませんされています名前はまだデータベースに存在しないので、あなたは以下のようにWordPressの機能を使用する必要が

PHP:。

require_once(ABSPATH . "wp-admin" . '/includes/image.php'); 
require_once(ABSPATH . "wp-admin" . '/includes/file.php'); 
require_once(ABSPATH . "wp-admin" . '/includes/media.php'); 

$attachment_id = media_handle_upload('userfile', $post_id); 
update_post_meta($post_id, '_thumbnail_id', $attachment_id); 

HTML:

<input type="file" name="userfile" id="file-upload" /> 

これで、WordPressメディアに画像をアップロードする必要があります。

+0

これは機能しません。 :( どこそれどちらattachsファイル:( – Daniel

+0

'$のpost_id'の$ post_idの??? を割り当てるために - 。メディアが関連付けられているあなたは、このメディアは、特定の投稿に添付したくない場合は、あなたが渡すことができます0 – Milap

+0

まだ動作していません。編集したコード全体を1つのスクリプトに書くことができますか? – Daniel

関連する問題