2018年7月20日金曜日

WEBページから記事を投稿する

wp_insert_post()を活用する。

参考記事1
WP関連リファレンス

こんな感じで使います。
[php]
//投稿
$post_id = wp_insert_post( array(
‘post_author’ => $user_id,
‘post_title’ => $post_title,
‘post_content’ => $post_content,
‘post_status’ => ‘publish’
) );
//画像を投稿サムネイルに。
set_post_thumbnail( $post_id, $post_photo_id);
//画像に投稿を関連づける
wp_update_post( array(‘ID’ =>$post_photo_id,’post_parent’ => $post_id ) );
[/php]
画像などのメディアも投稿として管理されているので、wp_update_post()でいじくる事ができます。
コレをページテンプレートに組み合わせることで、管理画面外から投稿の追加・編集ができるページを作成することができます。
ただ、当然のことながら、セキュリティにはかなり気を遣わないといけない事になりますね。
PHPのhtmlspecialchars()や、WordPressのattribute_escape()等の文字列のエスケープや、wp_nonce_field()・check_admin_referer()でフォームからの投稿かどうかをちゃんとチェックする等はやっぱり最低限やっておきたいですね。

0 件のコメント:

コメントを投稿