勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

WordPressの記事公開・更新時に何らかの処理を行う方法

  WordPress CMS

WordPressで記事を公開(予約公開含む)もしくは更新した際に何らかの処理を行いたい。尚、公開と更新で処理を分ける必要は無し。調べてみたところ「{status}_{post_type} フック」を使用するのが簡単そう。以下に対応方法をメモ。

 

ソースコード

//記事公開・更新時にtestFunctionを実行するアクションフック
add_action ( 'publish_post', 'testFunction' );

function testFunction( $post_id ){

    //post_idからパーマリンクやサムネイル等を取得可
    $permlink = get_permalink($post_id);
    $thumbnail = get_the_post_thumbnail_url($post_id, 'full');

}

注意点としてカスタム投稿を行っている場合はpublish_postではなくpublish_{カスタム投稿のpost_type}となる。例えばgadget(ガジェット)というカスタム投稿の記事に対してアクションフックを設定する場合はpublish_gadgetになる。

 

リファレンス

https://wpdocs.osdn.jp/%E6%8A%95%E7%A8%BF%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%E3%81%AE%E9%81%B7%E7%A7%BB#.7Bstatus.7D_.7Bpost_type.7D_.E3.83.95.E3.83.83.E3.82.AF

 

その他

記事公開時と更新時で処理内容を変えたい場合は以下が参考になりそう。

https://2inc.org/blog/2013/01/21/2526/

 - WordPress CMS

  関連記事

WordPressで固定ページに記事一覧を表示させるプラグイン

WordPressで固定ページ編集時にショートコードを書くことで、記事一覧を表示 ...

Advanced Custom FieldsでGoogleMapの使用する方法

Advanced Custom FieldsでGoogleMapを使用したかった ...

WordPressで運用中のサイトを停止しないままサーバ移設する方法

WordPressを設置しているサーバのリソースがそろそろ危ういので移設を検討す ...

WordPressで実行されているSQL文をページ上に表示する方法

WordPressにてWP_Queryで記事を取得しようとしたものの希望の挙動に ...

WordPressテーマファイル内のfunctions.phpの初期設定についてメモ

WordPressのテーマファイル作成時にfunctions.phpを書くが、い ...