メディアライブラリでは、すべての添付ファイルの投稿に[添付先]列があります。私は著者のプロフィールとバナー画像のようなフェイスブックを追加するプラグインを開発しました。
私は今、プロフィール写真として使用されている添付ファイルの投稿が「添付」としてマークされていないことを発見しました。
私はWordpressのコンソールプラグインを使用して、リンクされた添付ファイルとリンクされていない添付ファイルのWP_Post
オブジェクトを取得しました。しかし、それらを手動で設定するために使用できる違いは見つかりませんでした。
添付ファイルポストの添付ststusを設定する方法はありますか?
添付ファイルは親投稿に添付されます。添付ファイルを取得したら、$attachment->post_parent
を調べます。それが0
である場合、ファイルは添付されていません。
親投稿IDは常にposts
テーブル内の別の投稿を参照し、ユーザーを参照することはありません。ファイルをユーザーに添付するには、非表示のカスタム投稿タイプとユーザーごとに1つのエントリを作成します。しかし、私はそれが努力に値するとは思わない。未添付ファイルに問題はありません。
post_parent
値を変更するには、 wp_update_post()
を使用します。
テストされていない疑似コード
$att = get_post( $attachment_id );
$att->post_parent = $new_parent_id;
wp_update_post( $att );