date. 2013/3/5

category. WordPress

WordPressの管理画面以外で簡単に『投稿・編集・削除』を行う方法です。

WordPressにはこの3つの作業用の関数が用意されています。

この3つの関数を利用すれば簡単に管理画面以外から『投稿・編集・削除』をすることができ、APIなども簡単に作成出来ます。

この3つの関数の使用方法です。

投稿 wp_insert_post

投稿を行うには『wp_insert_post($post)』を使用します。

この関数は、引数の値をWordPressに投稿します。

$postに渡す値は下記のとおりです。

$post = array(
  'ID' => [ <投稿 ID> ] // 既存の投稿を更新する場合。
  'menu_order' => [ <順序値> ] // 追加する投稿が固定ページの場合、ページの並び順を番号で指定できます。
  'comment_status' => [ 'closed' | 'open' ] // 'closed' はコメントを閉じます。
  'ping_status' => [ 'closed' | 'open' ] // 'closed' はピンバック/トラックバックをオフにします。
  'pinged' => [ ? ] // ピンバック済。
  'post_author' => [ <user ID> ] // 作成者のユーザー ID。
  'post_category' => [ array(<カテゴリー ID>, <...>) ] // カテゴリーを追加。
  'post_content' => [ <投稿の本文> ] // 投稿の全文。
  'post_date' => [ Y-m-d H:i:s ] // 投稿の作成日時。
  'post_date_gmt' => [ Y-m-d H:i:s ] // 投稿の作成日時(GMT)。
  'post_excerpt' => [ <抜粋> ] // 投稿の抜粋。
  'post_name' => [ <スラッグ名> ] // 投稿スラッグ。
  'post_parent' => [ <投稿 ID> ] // 親投稿の ID。
  'post_password' => [ <投稿パスワード> ] // 投稿の閲覧時にパスワードが必要になります。
  'post_status' => [ 'draft' | 'publish' | 'pending'| 'future' ] // 公開ステータス。 
  'post_title' => [ <タイトル> ] // 投稿のタイトル。
  'post_type' => [ 'post' | 'page' ] // 投稿タイプ名。
  'tags_input' => [ '<タグ>, <タグ>, <...>' ] // 投稿タグ。
  'to_ping' => [ ? ] //?
);

上記の中から、適宜変更し使用します。

使用例

$post = array( 
  'post_title' => 'test',
   'post_content' => 'test content'
);
wp_insert_post( $post );

と、すると投稿にタイトル『test』内容が『test content』が投稿されます。

このように簡単に投稿することが出来ます。

更新 wp_update_post

投稿を行うには『wp_update_post($post)』を使用します。

この関数は、引数の値をWordPressに投稿し、更新します。

$postに渡す値は下記のとおりです。

$post = array(
  'ID' => [ <投稿 ID> ] // 更新投稿IDする場合。
  'menu_order' => [ <順序値> ] // 追加する投稿が固定ページの場合、ページの並び順を番号で指定できます。
  'comment_status' => [ 'closed' | 'open' ] // 'closed' はコメントを閉じます。
  'ping_status' => [ 'closed' | 'open' ] // 'closed' はピンバック/トラックバックをオフにします。
  'pinged' => [ ? ] // ピンバック済。
  'post_author' => [ <user ID> ] // 作成者のユーザー ID。
  'post_category' => [ array(<カテゴリー ID>, <...>) ] // カテゴリーを追加。
  'post_content' => [ <投稿の本文> ] // 投稿の全文。
  'post_date' => [ Y-m-d H:i:s ] // 投稿の作成日時。
  'post_date_gmt' => [ Y-m-d H:i:s ] // 投稿の作成日時(GMT)。
  'post_excerpt' => [ <抜粋> ] // 投稿の抜粋。
  'post_name' => [ <スラッグ名> ] // 投稿スラッグ。
  'post_parent' => [ <投稿 ID> ] // 親投稿の ID。
  'post_password' => [ <投稿パスワード> ] // 投稿の閲覧時にパスワードが必要になります。
  'post_status' => [ 'draft' | 'publish' | 'pending'| 'future' ] // 公開ステータス。 
  'post_title' => [ <タイトル> ] // 投稿のタイトル。
  'post_type' => [ 'post' | 'page' ] // 投稿タイプ名。
  'tags_input' => [ '<タグ>, <タグ>, <...>' ] // 投稿タグ。
  'to_ping' => [ ? ] //?
);

上記の中から、適宜変更し使用します。

使用例

$post = array( 
  'ID' => 1,
  'post_title' => 'test',
   'post_content' => 'test content'
);
wp_insert_post( $post );

と、するとID『1』の投稿のタイトルがtest、内容がtest contentに変更されます。

削除 wp delete post

投稿を行うには『wp delete post($post_id, $force_delete = false)』を使用します。

この関数は、引数の値のIDの投稿を削除します。

$post_idには『削除するID』を渡し、$force_deleteには『完全に削除するかどうか』をbooleanで渡します。(初期値は完全に削除しない)

使用例

wp_delete_post( 1, true );

と、するとID『1』の投稿が完全に削除されます。

上記のようにWordPressでは簡単に『投稿』・更新・削除』が管理画面以外から出来てしまいます。

参考サイト

関連記事