WordPressマルチサイトでプラグインをインストールする

バージョンが3以降のWordPressではマルチサイト機能が使えて便利です。 けれど従来のシングルサイトとは少し操作性に変わる部分も出て戸惑うことがあります。 今回プラグインのインストールで少し引っ掛かりましたので 問題と解決法をシェアします。

WordPressのプラグイン

WordPressは全世界に普及する最も使われているブログツール及びCMSですから、 多くの人が便利になるような周辺プログラムを開発し、 プラグインとして提供してくれています。 実現したいけれどWordPress本体に備えられていない機能の多くは 既に世界の誰かが同じ要請を抱き解決し、 そのプログラムをプラグインとして提供してくれています。 プラグインの充実はWordPressの優れた点の一つであり、 WordPressシステム採用の要因ともなり得ます。

プラグインのインストール


WordPressマルチサイトの更新情報を個別表示する

ブログ及びCMSの定番、 WordPressワードプレス) はバージョンが3となってマルチサイト機能を備え、 誰にとってもブログポータルの運営が身近になりました。

マルチサイト機能

ブログポータルを運営しないまでもWordPressでマルチサイト機能を利用する人はかなり増えているようです。 例えば少人数のグループで互いに独立したブログを運営する際などには重宝するでしょう。 無料ブログで個々に独立していたブログを無理矢理一つにまとめるよりは遥かにスマートに運営出来ます。

マルチサイトは工夫次第で様々な形に利用出来ますが その際に欲しくなる機能がブログの更新情報の表示です。 例えば少人数グループでマルチサイトを構成したときメインブログをグループのトップページとすれば 其処に個々に独立したグループメンバーのブログの新着情報を表示したくなろうと言うものです。

WordPress(ワードプレス)の検索エンジン拒否設定

WordPress(ワードプレス)管理画面ナビゲーションメニュー

WordPress(ワードプレス)を使って ブログを作るにせよ、ホームページを作るにせよ、 まだ完成前の製作中の状況はあまり他人には見られたくもありませんし、 見せても宜しくない時期でもあります。 けれどもその為だけに認証の仕組みを仕掛けて パスワードなしには見られないようにするのも煩雑なとき、 WordPress には簡単に非公開扱い出来る仕組みが用意されています。

現在インターネットに於いては検索エンジンがその中心にあり、 そのホームページのアドレスを知らない新規の訪問者となれば ほとんどは検索エンジン経由で閲覧に訪れます。 検索エンジンはクローラーと呼ぶプログラムを使って インターネット上から情報を四六時中集めまくっている訳ですが、 このクローラーにホームページは自分の処の情報は収集しないように依頼することができるのですね。 その依頼の設定を WordPress はボタン一つで出来るように仕組まれているのです。

その設定を実行するには例に拠って先ず管理者としてログインします。 左のメニューから

  1. 設定
  2. プライバシー
と進むと画面が プライバシー設定 に遷移します。 そこには サイトの表示状態 という項目が一つだけ用意され、 ラジオボタンで
  1. サイトの表示状態 サイトを検索エンジン (Google、Bing、Technorati など) やアーカイブも含め、だれにでも読めるようにする
  2. 検索エンジンはブロックするが通常の訪問者の閲覧は許可する
の二選択肢のどちらかを選ぶようになっています。 ここで2番目、下の選択肢を選べば検索エンジンを拒否する設定になります。 このときラジオボタンを選択した後は必ず項目に下に用意されている 変更を保存 ボタンをクリックすることを忘れないようにしましょう。 これをクリックしないと設定が保存されず反映されません。 上手く行けば 設定を保存しました。 と応答がある筈です。

設定はこれだけで完了です。 ホームページに検索エンジン拒否の呪文を書かなくても これで主要な検索エンジンに情報を拾わないように依頼することが出来ます。 WordPress を使う際にはこんな機能も出来るだけ利用したいものです。

※ なお、ここで言及、動作確認している WordPress のバージョンは 2011年8月時点で最新版の 3.2.1 です。

Contact Form 7 郵便番号入力で住所自動出力

WordPress(ワードプレス)でのメールフォームプラグインと言えば Contact Form 7 で、本ブログでも

  1. WordPressメールフォームプラグイン Contact Form 7 (2011年7月8日)
  2. Contact Form 7でメールアドレスの確認入力を促す (2011年7月12日)
  3. Contact Form 7で複数の宛先を設定する (2011年7月18日)
のように幾つかの記事にしました。 上の1番に書いたように標準のままでも充分使えるプラグインですが、 2番でのように少しカスタマイズしたい部分も出てきます。 本記事では住所入力をカスタマイズしてみたことを記しています。

WordPressのオートパラグラフ(自動整形表示)機能の利用

専門家に嫌われるWordPressのオートパラグラフ(自動整形表示)機能の有効利用 CMSとしても定評のあるブログシステム WordPress(ワードプレス) には オートパラグラフ(自動整形表示) と呼ばれる機能が備わっています。 はまぞうブログでもブログの投稿記事を書くときに 改行すればブログでも改行してくれますね。 しかし本当はHTMLというホームページを書く際の約束事の中では ここで改行しますよ、という記号を入力してやらないと 実際にホームページ上で確認したときは改行されていない状態になります。 それではHTMLを知らない方にはブログ記事も書きにくいものになってしまいますので、 自動改行機能が備えられているのですね。

WordPressでは…

Contact Form 7で複数の宛先を設定する

WordPressメールフォームプラグイン Contact Form 7 (2011年7月8日の記事) は定番として評価も高いようです。 インストールすれば特に設定も必要がなく ブログやホームページ上に入力内容がメールで届くメールフォームを実現できます。

Contact Form 7で複数の宛先を設定するときはカンマでメアドを区切る 設定画面ではメールの宛先が設定出来ます。 このとき宛先を複数設定することが出来ます。 そのためにはメールアドレスとメールアドレスの間を ,(カンマ) で区切って記述します。

インターネット上を見るとこの方法では上手く行かなかった旨の記述もいくつか見られましたが 手元の WordPress 環境(バージョン3.2)ではこの操作で機能を実現できることを確認しました。

※ なお、ここで言及、動作確認している WordPress のバージョンは 2011年7月時点で最新版の 3.2 です。

Contact Form 7でメールアドレスの確認入力を促す

WordPress(ワードプレス)を利用してブログやホームページを作成した際、 利用者が運営者に連絡を取るためのメールフォームはプラグインで実現出来ます。 その定番として Contact Form 7 を紹介したのは本ブログ2011年7月8日の記事 WordPressメールフォームプラグイン Contact Form 7 でした。 Contact Form 7 さえインストールすれば特に設定も必要がなく

  1. お名前 (必須)
  2. メールアドレス (必須)
  3. 題名
  4. メッセージ本文
  5. 送信ボタン
が最初から使えたのでした。

しかし簡単に欲しかった機能が手に入ってみれば人間欲の出てくるものです。 上の実現できるメールフォーム項目の内、メールアドレスについては 他サイトのメールフォームでもよく目にする 「確認のためにもう一度ご入力ください。」 という確認再入力の機能が欲しくなってくるのも自然かも知れません。 ところがこの機能は Contact Form 7 には2011年7月の現時点では実装されていません。 では諦めるしかないかと思えば然にあらず、 インターネットは異なもの味なもの、 ちゃんとこの機能を実現してくれている方がいました。 機能の紹介サイトが こぶたのラッパ (可愛い名前ですね)さんの2010年12月2日の記事…

WordPress3の親テーマと子テーマとファイルの継承

WordPress3の親テーマTwenty Ten(トゥエンティテン) WordPress(ワードプレス)はバージョン3よりテーマが親子関係を有することが可能となり 子テーマは親テーマの機能を継承することが出来るようになりました。 インストール時点でサンプルの Twenty Ten(トゥエンティテン) と呼ぶ WordPress開発チームのノウハウが詰まったテーマが既に備わっています。 これを親テーマとし、子テーマを新たに設けて 子テーマには新たに必要とする部分だけ書き足すことで 要求されるWebサイトを構築できることになります。 親テーマと子テーマについては本ブログ2011年7月9日の記事 WordPressの子テーマのパスの自動出力 でもテーマがネスト(入れ子)することで発生するパスの問題について少し触れています。

基本的には子テーマは親テーマを継承すれば style.css ファイルのみでオリジナルテーマが出来上がります。 テーマを新たに作成するのに必要なファイルはそれだけとも言えます。 これに必要な部分だけを書き足す、即ち必要ファイルを新たに作成して配置していくことで 所与の要請に沿ったWebサイトを構築していくことになります。

このファイル追加に関して或る規定に沿えば 親テーマと子テーマの継承関係を利用した旨みを味わえます。 その規定とは Twenty Ten テーマと同名のファイルを作成した場合、 子テーマのファイル内容が優先すると言うことです。

但し一ファイルだけ例外があります。 それが functions.php ファイルです。 このファイルに関してのみは 子テーマのものが読み込まれた後に親テーマのものが読み込まれます。 従って例えば子テーマに親テーマからコピーしてきた functions.php を配置すると以下の関数が重複している旨のエラーが出力されます。

Fatal error: Cannot redeclare twentyten_page_menu_args() (previously declared in ...

上に類するエラーが出力された場合は先ず functions.php を見直すと案外早く解決に辿り着けるかも知れません。

wp_enqueue_script()で重複読み込みも安心

WordPress 日本公式キャラクター 本ブログでも javascript を多用し、 効率化を図る上で外部のライブラリ(プログラム集)を頻繁に利用します。 面白いホームページ上の機能を紹介するときなど 外部ライブラリは必須であることも多くあります。 jQuery の名前は本ブログにもしばしば登場する定番のライブラリです。

このようにWebサイト運営には今や外部ライブラリ読み込みは必須です。 ホームページを作成するときの定番 WordPress(ワードプレス)に於いても話は同じです。 WordPress ではまたプラグインも多用します。 本体にちょっとした機能を後付するのにとても便利です。 このプラグインが外部ライブラリを使用することがあります。 プラグインのインストールと共に外部ライブラリの読み込みは設定され、 それは wp_head() の命令時に実行されます。

ではこのプラグインとは別に外部ライブラリを読み込みたい時にはどうすればいいでしょうか? 下手をすれば同じ外部ライブラリの バージョンの異なるものを読み込んでしまうこともあるかも知れません。 この時よしなにはからってくれる命令文が WordPress には用意されています。 それが wp_enqueue_script() です。 この括弧内に引数を置き wp_head() の前に記述してやれば後は例え重複していようとも WordPress が問題の無いように上手く処理してくれます。 例えば上に出た jQuery をプラグインが読み込んでいるかどうかに関わらず、 読み込ませたいことを WordPress に伝えるには以下の様に記述します。

wp_enqueue_script('jquery')
実際に jQuery を利用するプラグインをインストールした WordPress で この命令文を記述したときには以下
<script type='text/javascript' src='http://hoge.jp/wp-includes/js/jquery/jquery.js?ver=1.4.4'></script>
一箇所でのみ 出力されました。 但し、jQueryを利用するときは注意が必要な場合もあり、うまく動かない場合は WordPressで自作のjQueryスクリプトを実行する方法 が参考になるかも知れません。

※ なお、ここで動作確認している WordPress のバージョンは 2011年6月時点の 3.1 です。 2011年7月時点では最新版の3.2 がリリースされています

WordPressの子テーマのパスの自動出力

WORDPRESSロゴ WordPress(ワードプレス)ではプログラムでホームページを表示しているためにはまぞうの 置換タグ2011年5月31日記事 参照)と同様の役割をする命令文が有ります。 その一つがホームページの構成上の情報を出力してくれる bloginfo() です。 括弧内に様々な文字列(引数と言います)を渡すことによって引数に対応した出力がされます。 引数を ‘template_url’ とするばテンプレートを配置したディレクトリの位置を出力してくれるのです。 このことに拠って例えば同ディレクトリ上でセキュア設定が効くときも

bloginfo(‘template_url’)
と指定すればカレントディレクトリに応じて httphttps の出力を自動的に判断して表示してくれます。

ところで WordPress のメジャーバージョンが3となった際大きく機能向上しました。 その一つに親テーマと子テーマがあります。 子テーマは親テーマを継承しつつ変化のある部分だけ書き足せば良くなりました。 この機能を利用した場合

bloginfo(‘template_url’)
と記述した部分では子テーマのパスの出力を期待します。 しかしそうは問屋が卸しません。 この場合親テーマのパスが出力されてしまいます。

実は子テーマのパスを出力を期待した場合は引数を ‘stylesheet_directory’ とします。 子テーマのパスを出力させたい位置に

bloginfo(‘stylesheet_directory’)
と記述すれば良い訳ですね。

なんだか釈然としない文字列ですが、 古い WordPress ユーザーには馴染みが有る引数だそうです。 因みに引数を ‘stylesheet_url’ として

bloginfo(‘stylesheet_url’)
と記述した場合には 子テーマのパス+/style.css とスタイルシートファイルの絶対パスが出力されます。 こちらは納得の命名だと感じます。

※ なお、ここで動作確認している WordPress のバージョンは 2011年6月時点の 3.1 です。 2011年7月時点では最新版の3.2 がリリースされています