WordPressの多機能プラグイン「JetPack」は、WordPress.comのアカウントと連携しないと実行できない。バージョン2の頃はそんなこと気にせずに使えたのだが、バージョン3からは連携必須の仕様になってしまった。
まぁ、WordPress.comにアカウントさえ作成(無料)すれば、連携するのは簡単なので、それはいいのだが、ローカルPCなどでWordPressサイトを開発していたりすると、JetPackの連携ができないケースに陥る。そんな時に表示されるのが、下記のエラー画面だ。

JetPackが連携できていないと、JetPackプラグインの機能をテーマ側からカスタマイズしようとか、プラグイン側で拡張しようとした場合、開発が進まなくなってしまう。
そういう場合のために、JetPackにはデバッグモードというものが実装されている。デバッグモードを有効化すると、JetPack連携をしていなくても一部の機能が利用できるようになるのだ。
デバッグモードの有効化の方法は、二通りある。
1. まず、wp-config.php にデバッグモードON用の定数をセットする方法だ。
やり方は簡単で、wp-config.php に下記のように追加するだけだ。
define( 'JETPACK_DEV_DEBUG', true);
2. もうひとつが、テーマやプラグインの functions.phpなどにフィルタを追加する方法だ。
こちらも簡単だ。テーマ別やプラグイン別にデバッグモードのON/OFFを切り替えられるので、こちらのほうがフレキシブルに対応できて良いかもしれない。
add_filter( 'jetpack_development_mode', '__return_true' );
デバッグモードでJetPackを利用中は下記のように「開発モード」の警告が出るようになる。

デバッグモードで利用できるJetPackの機能
なお、デバッグモードで利用できる機能(モジュール)は下記のとおりだ。
| モジュール名 | 開発モード |
|---|---|
| Beautiful Math | ○ |
| Gravatar ホバーカード | ○ |
| Markdown | ○ |
| ウィジェット表示管理 | ○ |
| カスタム CSS | ○ |
| カスタム投稿タイプ | ○ |
| カルーセル | ○ |
| コンタクトフォーム | ○ |
| サイトアイコン | ※ WordPress 4.3から本体にバンドル済み |
| サイト認証 | ○ |
| ショートコード埋め込み | ○ |
| タイルギャラリー | ○ |
| モバイルテーマ | ○ |
| 一括検索 | ○ |
| 共有 | ○ |
| 無限スクロール | ○ |
| 追加サイドバーウィジェット | ○ |
| JSON API | × |
| Photon | × |
| VaultPress | × |
| VideoPress | × |
| WP.me 短縮リンク | × |
| いいね | × |
| コメント | × |
| サイト統計情報 | × |
| シングルサインオン | × |
| スペルと文法 | × |
| パブリサイズ | × |
| プロテクト | × |
| メール投稿 | × |
| モニター | × |
| 拡張配信 | × |
| 購読 | × |
| 通知 | × |
| 関連投稿 | × |
| 集中管理 | × |
私がテーマ側でカスタムしようと思っていた「関連投稿」と「パブリサイズ」は開発モードでは使えなかった…orz
JetPackの機能を利用して機能拡張するようなテーマやプラグインの開発は、素直にWordPress.comと連携できる環境でしないとダメでした…残念。
Appendex
最後におまけとして、HTTPSプロトコルで公開しているWordPressサイトをHTTPS固定でJetPack連携する場合の設定方法があるので紹介しておこう。
まず、WordPressサイト側でSSL証明書がインストールされてHTTPSプロトコルでJetPack連携する場合、wp-config.phpに下記のように追加する。
/**
* Set port to 443
*/
$_SERVER['SERVER_PORT'] = 443;
もし、SSL証明書に問題があったり、HTTPSプロトコルでのアクセスに不具合が発生する場合で、それでもJetPack連携がしたい時は、wp-config.phpに下記を追加する。
define( 'JETPACK_CLIENT__HTTPS', 'NEVER' );
──まぁ、どちらをやっても上手くいかないケースもあって、そういう場合は素直にSSL証明書のエラーを解消するのが一番早かったりする。