店のサイトで記事を投稿すると、WordpressのPluginであるTweetableを利用してTwitterにも更新情報を流すようにしている。
通常、Tweetableは投稿記事のタイトルとそのリンクURLをツイートするのだが、これではツイッターをフォローしていただいている人のみ目にすることになる。
これでは商業ベースのツイッターとしては物足りない。そこで、ハッシュタグを自動で付加しようと思い検索したところ、「Leegal memo」の【PHP】WordPressのTweetableのカスタムが目にとまった。
そのブログを参考にtweetable.phpの250行からの関数を以下のように改造した。
- コメントを付加したところがちょこっと改造したところ
- 接頭にカテゴリーを付加
- 接尾にハッシュタグ #hiroshima #bowlingを付加(固定ハッシュタグ)
/*** Send tweet on post publish ***/ function tweetable_publish_tweet($post_id) { $installed = get_option('tweetable_account_activated'); if (get_option('tweetable_auto_tweet_posts') == '1' && $installed) { $post = get_post($post_id); if ($post->post_status == 'private' || $post->post_type == 'page') { return; } if ($post->post_date < $post->post_modified) { return; } $user_key = get_option('tweetable_access_token'); $user_key_secret = get_option('tweetable_access_token_secret'); $twitter = new Twitter_API(get_option('tweetable_app_key'), get_option('tweetable_app_key_secret')); $shortener = get_option('tweetable_url_shortener'); $shortener_login = get_option('tweetable_shortener_login'); $shortener_apikey = get_option('tweetable_shortener_apikey'); $tweet_prefix = get_option('tweetable_auto_tweet_prefix'); $googletags = get_option('tweetable_google_campaign_tags'); foreach((get_the_category()) as $cat); // 追加分 $permalink = get_permalink($post_id); if ($googletags == '1') { $tags = '?utm_source=twitter&utm_medium=social&utm_campaign='.urlencode($post->post_title); $permalink = urlencode($permalink . $tags); } $permalink = apply_filters('tweetable_autotweet_permalink', $permalink); $permalink = $twitter->shorten_url($permalink, $shortener, $shortener_apikey, $shortener_login); $title = '('.$cat->cat_name.')'.$tweet_prefix.' '.$post->post_title; // $cat->cat_nameを追加 $title = apply_filters('tweetable_autotweet_title', $title); $tweet = $twitter->fit_tweet($title, $permalink).' #hiroshima #bowling'; // 連結文字以後は改造分; $tweet = apply_filters('tweetable_autotweet_tweet', $tweet); $update = $twitter->update_status($tweet, $user_key, $user_key_secret); } }
うまい具合に投稿ができました。