2020.03.11

WordPressでアメブロ特定テーマの記事を自動で記事化する機能を作ってみよう④【おまけ編】

こんにちは、webエンジニアのゾノ( @ozonosho )です。

さて、全3回に渡って実装してきたWordPressでアメブロ特定テーマの記事を自動で記事化する機能は一応のところ昨日のブログで完結しました。

しかし、昨日のブログで紹介したコードだとcronに登録して自動実行されるようにするためには引数を動的に渡す必要があるせいかその部分で質問が届いたので、今回はおまけとして「僕のサイトでの実装コード」をそのままご紹介いたします。

関数で紹介する形になりますが、この関数で出来ることは下記のとおりです。

前提
  • WordPressユーザーのカスタムフィールドに「アメブロID」「アメブロテーマID」の2つをセットしておく
  • 実装した関数はwp-cron等のcronを利用して毎日深夜0時に自動実行する
  • アメブロで特定のテーマ(=ブログカテゴリー)で書いた記事をWordPressで管理している別サイトに転送して記事化する
仕様
  • WordPressユーザーの情報を取得して「アメブロID」「アメブロテーマID」がセットされているユーザーがいれば処理を実施
  • 指定した「アメブロID」「アメブロテーマID」の記事のうち、前日に書かれた記事があれば取得
  • 取得した記事はWordPressの投稿データに変換して「本番公開前(pending)状態」で保存

こんな感じです!

これらを叶えてくれる関数がこちら

下記のコードをfunctions.phpに追加すればどなたでも利用できます。

※①について
僕のサイトでは権限を指定してユーザーを取得するために「role=mama-staff」を入れていますが、指定しない場合は空で構いません。

※②について
アメブロIDのカスタムフィールドkeyを「ameblo_id」、テーマIDのカスタムフィールドkeyを「ameblo_theme_id」に設定しています。keyのネームを違う値にした場合はご自身の設定に合わせて変更してください。

※③について
wp-cronに登録するために作成した関数をアクションフックに登録しています。

おわりに

以上、今回はWordPressでアメブロ特定テーマの記事を自動で記事化する機能のおまけでした(*´`)

当サイトではWordpressのカスタマイズ制作依頼を請け負っています。運営中のサイトで何かお困りのことがある方は、下記の記事を参照のうえ気軽にご相談ください。

どんな機能・要望でもOK!『Wordpressのカスタマイズ制作』はじめました。

こんにちは、webエンジニアのゾノ( @ozonosho )です。 このたびWordpressのカスタマイズ制作をはじめました。......

→この記事を読む
チャレンジを応援する無料オンラインコミュニティ運営中!

生きづらさを抱える人のチャレンジを応援する無料オンラインコミュニティ『Cree』をスタートしました。ただいま参加者100名突破!お互いの目標を共有したり、就労・就職のサポートするサービスを無料で提供しています。

オンラインコミュニティの詳細はこちら

ゾノについて

お仕事のご相談はこちら