記事本文からタグを検索して、タグを追加設定する

simpletagsは便利だけれど、自分の使い方とは少し違うなと思っていたので、自分で作ってみようかなと思ったので作ってみました。そこまで長くもない。

流れとしては、記事保存直前に記事本文データを読み込み・タグを全て読み込み→記事中検索→既に設定されているタグと混ぜてタグ設定。

function post_tag_maker($title) {
  global $post;
  //記事内容読み込み
  $postcontent = $_POST[content];
  //タグ一覧を取得。一つずつ内容と比較して同一の物があればタグリストに追加する。
  foreach (get_tags() as $tag) {
    if (strpos($postcontent, $tag->name) !== false) {
      $taglist .= $tag->name . ",";
    }
    //現在のタグと追加するタグを合わせる。同一名称はwordpress側で排除されるので気にしない☆
    $taglist = $_POST[tax_input][post_tag] . "," . $taglist;
  }
  wp_set_post_tags($post->ID, $taglist);
}
add_filter('save_post', 'post_tag_maker');