Photo x Programming

写真家プログラマーKのIT効率化術

Intagrate Lite でWordPressタイトルからハッシュタグを除く方法

Intagrate Lite でWordPressタイトルからハッシュタグを除く方法

Instagramで写真を投稿したときに、
同時にWordPressにも記事を投稿してくれる、
Instagram – WordPress連携プラグインとしてよく使われているのがIntagrate Liteです。

とても便利に使わせていただいております。

しかし、1つ気に入らない点があります。

InstagramのキャプションがWordPress記事のタイトルになるのですが、
Instagramでハッシュタグに指定した文字列もタイトルに入ってしまいます。

WordPress記事のタイトルに “#◯◯ #△△” という文字列が入るので、
見にくくなってしまいます。

そこで、Instagramのハッシュタグを除いてWordPressに連携するようにしましょう。

実は、Intagrate LiteにはPRO版があり、
PRO版ではハッシュタグを取り除くことができます。

しかし、PRO版の名の通り、お金がかかります (Personal版で$35)。

Intagrate Lite のライセンスは、GPLなので、自分で作れるなら、
変更して使用しても大丈夫です。

ここではその方法を紹介します。

0. バックアップする

今回変更するIntagrate Lite は、
<WordPressをインストールしたディレクトリ>/wp-content/plugins/instagrate-to-wordpress に
インストールされています。

instagrate-to-wordpressフォルダをダウンロードして、バックアップしておきましょう。

バックアップしておけば、万一、変更を間違えても、
もとに戻すことができます。

1. ハッシュタグを取り除くための関数を用意する

下記のコードを、例えばhashtag.phpという名前で保存し、
<WordPressをインストールしたディレクトリ>/wp-content/plugins/instagrate-to-wordpress/php/ にFTPでアップロードします。

<?php

function hashtag_stripped($text) {
    $stripped = $text;
    if ($pos = strpos($stripped, "#")) {
        $stripped = substr($stripped, 0, $pos - 1);
    }
    return $stripped;
}

?>

2. hashtagを取り除くよう本体を変更する

<WordPressをインストールしたディレクトリ>/wp-content/plugins/instagrate-to-wordpress/instagrate-to-wordpress.php をダウンロードして、
下記を変更します。

instagrate-to-wordpress.php 37行目あたり

require_once ITW_PLUGIN_PATH . 'php/instagram.php';
require_once ITW_PLUGIN_PATH . 'php/emoji.php';
require_once ITW_PLUGIN_PATH . 'php/hashtag.php';  // 追加

instagrate-to-wordpress.php 478行目あたり

public static function strip_title( $title ) {

    $clean = '';

    $clean = filter_var( $title, FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_LOW );

    $clean = emoji_html_stripped( $clean );
    $clean = hashtag_stripped( $clean ); // 追加
    $clean = trim( $clean );

    return $clean;

}

変更したら、<WordPressをインストールしたディレクトリ>/wp-content/plugins/instagrate-to-wordpress/instagrate-to-wordpress.php に上書きアップロードします。

3. 動作確認する

コードの変更は以上です。

Instagramに投稿して、動作確認してみましょう。

今回は、簡易的に、最初の “#” 以降の文字列を削除するようにしています。

ハッシュタグは、キャプションの最後にまとめて指定して下さい。

まとめ

Intagrate Lite は、便利なプラグインで、ありがたく使用させていただいております。

こういった便利なプラグインをゼロから作るのは、なかなか大変な仕事です。

それに対して、すでにできあがっているコードを変更して、自分用にちょっとカスタマイズにすることは、
大した手間はかかりません (元のコードの作りがよければ)。

プログラミングの経験がなくても、少しずつ変更していくところから始めてみると、
「プログラミングってこういうものか」という間隔がつかみやすいでしょう。

バックアップを取っておけば安心ですから、
ぜひトライしてみて下さい。

Facebookでコメントする