2017-04-26 8 views
1

&のコピーを新しいローカリゼーションにコピーした画像のwppostmetaテーブルで "_wp_attachment_metadata"を更新する必要があります。

WPのドキュメントは私にとってはっきりしていないので、私は$ data引数に何を入力すべきですか?

wp_update_attachment_metadata($post_id, $data); 

$ post_idはかなり明確ですが、データベースから取得できます。 $データはどうですか?私はまた何かをしようとした

$data = wp_get_attachment_metadata(98); 
wp_update_attachment_metadata($post_id, $data); 

それがない作品を、この(98はpost_idの/添付ファイルページID)を試してみました

https://codex.wordpress.org/Function_Reference/wp_update_attachment_metadata


EDIT like:

`while ($row = $post_id->fetch_assoc() and $media = $meta_value->fetch_assoc()) { 
$row_id = $row['post_id']; 
$media_name = $media['meta_value']; 

update_post_meta($row_id , '_wp_attachment_metadata' , $media_name); 
}` 

それは動作します私は画像/サムネイルを見ることができますが、画像を編集しようとすると「ファイル内に画像データがありません。画像をサーバーに再度送信してください」

答えて

1

文書から、その画像の(シリアライズされた)メタデータです。基本的に、画像を説明する大規模な連想配列です。データ値(変更したい知っているものだけでなく)すべての

それは次のようになります変更:。

$data = wp_get_attachment_metadata($attachment_id); // get the data structured 
$data['width'] = 680; // change the values you need to change 
wp_update_attachment_metadata($post_id, $data); // save it back to the db 

あなたは連想配列がin the documentation for wp_update_attachment_metadata

+0

どのように見えるかを見ることができます最初の投稿に編集を追加しました私はここで返信でコードを書式設定する方法がわからないので、迷惑を掛けてしまいます。 – riten

+0

私が記述した方法で試してみましたが、何が起こったのですか?エラーが発生しましたか、単に更新に失敗しましたか?また、コメントに書式を設定することはできませんが、 'backticks'を使用して強調表示することができます。 – vlasits

+0

私はあなたの方法をテストした方が良いでしょう。 1.アップロードされた2つの新しい写真(標準年/日付フォルダ)2.画像のアップロード/画像/移動画像のための新しいフォダーの定義3.年/月の隔離の無効4.ウルコードのテストと更新失敗:(私が言ったようにwhileループのコードはうまくいくようですが、私はエラーが発生しています。私はすでに編集中の私の最初の投稿で引用しています – riten

関連する問題