2

メディア (WP) で画像サイズを定義し、functions.php で画像アップロード用に 2 つのカスタム ディメンションを追加しました。WP管理者から画像をアップロードすると、すべて問題ありません。

しかし、現在、FTP経由で100枚の画像を彼のサイトのフォルダーにアップロードしているクライアントがあり、この画像を追加してプログラムで投稿する方法があるかどうか疑問に思っていましたか?

すべての画像には post_ID.jpg (exam. 450.jpg) のような名前が付けられており、これがどの画像をどの投稿に追加するかを知る方法ですが、私の質問は wp 関数 (サイズ変更/クロップ (サイズ変更/クロップ) を使用してプログラムで追加する方法です)私はWP管理者を介して追加します))。

この画像はカスタム フォルダーにあります: /product_images/

手伝ってくれてありがとう

4

1 に答える 1

3

解決済み..

ここに解決策があります:

$post_id = 809; // example post_ID
$filename= '/my_images/809.jpg';
$description = 'some description';

# remove all attachments
$wpdb->query("UPDATE post_parent ='0' WHERE post_type='attachment' AND post_parent='".$post_id."'");

# upload / resize / crop image (to WP images folder)
media_sideload_image($filename,$post_id,$description);

$last_attachment = $wpdb->get_row($query = "SELECT * FROM {$wpdb->prefix}posts ORDER BY ID DESC LIMIT 1", ARRAY_A);
$attachment_id = $last_attachment['ID'];

# set featured image
add_post_meta($post_id, '_thumbnail_id', $attachment_id);
于 2012-06-15T12:37:54.277 に答える