超現場ブログ

Technique,Design and Events

WordPressテーマにプラグインを同梱しよう![TGMPA]

Twitter Facebook Google+ はてブ

WordPressテーマにプラグインを同梱しよう![TGMPA]

WordPressのテーマをカスタマイズをしていると、他の人が作ったテーマって気になりますよね。
そこで色んなテーマを見ていると、テーマを適応させた時に「このテーマは次のプラグインが必要です」という表示が出てくるときがあります。

テーマを適応したタイミングでプラグインのインストールを誘導する方法。気になりませんか?
1度でもテーマを自分で作ったことがある人なら、非常に簡単に実装できてしまいます!
テーマ開発や自作テーマの横展開などに活用できるので便利ですよ!

TGM Plugin Activation を使う

まず、使うのはTGM Plugin Activationです。
テキストドメインにも対応しているので、言語ファイルを用意することで、日本語の表示もできます!

ちなみに TGM Plugin Activation は、WordPressのプラグインではありません。PHPのライブラリです。

TGM Plugin Activation の導入方法

公式サイトから TMG Plugin Activation をダウンロードします(2016/05/26 現在では v2.6.1が最新でした)

tgmpa_01
http://tgmpluginactivation.com/

ダウンロードしたフォルダから、class-tgm-plugin-activation.php をテーマのフォルダにコピー。
ダウンロードしたフォルダの中にある example.php のコードを functions.php にコピー。
必要な項目を変更したり、追加したり。
より詳細な説明は、公式サイト(英語)にも書いていますが、大体はこんな感じです。

そしてメインになるのは example.php のコードです。
簡単に説明すると以下のようになります。

require_once dirname( __FILE__ ) . '/class-tgm-plugin-activation.php';
add_action( 'tgmpa_register', 'my_theme_register_required_plugins' );
function my_theme_register_required_plugins(){
  $plugins = array(
    // 導入したいプラグインの数だけ増えます
    array(
      'name' => 'TGM Example Plugin', // プラグイン名
      'slug' => 'tgm-example-plugin', // プラグインのフォルダ名
      'source' => get_template_directory_uri() . '/lib/plugins/tgm-example-plugin.zip', // インストールするプラグインの場所
      'required' => true, // true:必須、false:推奨
      'version' => '', // 動作可能なプラグインの最低バージョンを決めることができる。空だと決めない。
      'force_activation' => false, // true:テーマが有効な時にプラグインが強制的に有効化。テーマを変更する以外ではプラグインを停止できない。
      'force_deactivation' => false, // true:テーマが変更された場合にプラグインを強制的に停止。
    ),
  );
  $config = array(
    // 基本、何も変更しなくでもOKです
    'default_path' => '', // 同梱プラグインのフォルダへの絶対パス
    'menu'         => 'tgmpa-install-plugins', // ダッシュボード内での、必須・推奨プラグインインストール用のページスラッグ
    'has_notices'  => true, // true:プラグインの導入を誘導する文言を表示
    'dismissable'  => true, // true:上記、has_notices の表示を無視する選択肢を表示
    'dismiss_msg'  => '', // 上記、dismissable を true とした場合に表示させるメッセージ
    'is_automatic' => false, // true:プラグインをインストール後に自動的に有効化
    'message'      => '', // プラグインのインストールページで表示する文言
  );
  tgmpa($plugins, $config);
}

まとめ

TGM Plugin Activation は、最初から使うプラグインが決まっているテーマを作りたい時は、非常に便利なライブラリです!
お仕事でWordPressを活用している方は「効率化」にも繋がるんではないでしょうか?

ご質問・ご相談の方はこちら

ご質問・ご相談ですか?

どんなことでもお気軽にご相談ください。

ご質問・ご相談はこちら

Copyright © 超現場主義 All rights reserved.