WordPressでコーポレートサイトを構築するときに、毎回functions.phpに書いているコードがあって、それに修正があったり、ちょっとした変更の際にオプション的に設定変更ができたら便利だなーと思っていました。そこで、それらをプラグインとして1つにまとめてみました。ついでに設定ページもつけたので簡単に設定することができます。
MW WP Hacksでできること
プロフィールページにGoogle+ IDの入力フィールドを追加
プロフィールページに追加されたGoogle+ IDの入力フィールドにID(半角数字)を入力すると、シングルページを表示した際、head内に次のタグを出力します。
<link rel="author" href="https://plus.google.com/{ID}/" />
メインフィードに表示する投稿タイプを設定
設定ページからメインフィードに表示する投稿タイプを設定できます。
抜粋の後に追加するテキスト(HTML)を追加
テンプレートタグ<php the_excerpt(); >で出力される抜粋の後に追加するテキストを設定できます(HTML利用可)。「%link%」を入力すれば出力時には<php the_permalink(); >に変換して出力されます。
ソーシャルアカウント設定
Google+ ID、Facebook AppID、Google Analytics Tracking IDの入力フィールドが追加されます。Google+ IDを入力すると、シングルページ以外の表示時に、head内に次のタグを出力します。
<link rel="publisher" href="https://plus.google.com/{ID}/" />
Facebook AppIDを入力すると、ページ下部に下記のコードが追加されます。
<div id="fb-root"></div> <script type="text/javascript"> window.fbAsyncInit = function() { FB.init({ appId : xxxxxxxxxx, // App ID status : true, // check login status cookie : true, // enable cookies to allow the server to access the session xfbml : true // parse XFBML }); }; </script>
Google Analytics Tracking IDを入力すると、Google Analyticsのスクリプトが読み込まれます。
ソーシャルJavaScriptの読み込み
Facebook、Twitter、はてなブックマーク、Google+1 のボタン等を設置するときに読み込む必要があるJavaScriptを非同期読み込みします。読み込むJavaScriptはチェックボックスで選択できます。
カスタムサムネイル設定
サムネイルサイズを追加するときは、通常、functions.phpにコードを追加する必要がありますが、それを管理画面から行うことができます。
ウィジェットエリア設定
ウィジェットエリアを追加するときは、通常、functions.phpにコードを追加する必要がありますが、それを管理画面から行うことができます。
日本語環境における wp_title() の不具合の解消
日本語環境で wp_title() を使うと、日付アーカイブページや検索結果ページ表示時に少し表示がおかしくなってしまいます。それを正しい表示になるように修正します。
$content_width の設定
WordPressにはグローバル変数 $content_width というものがあり、functions.phpにコードを追加して、コンテンツエリアの範囲を定義するようになっています。毎回書くのは面倒なので、画像の「大サイズ」はコンテンツエリアいっぱいに設定するであろうという想定のもと、$content_width には「大サイズ」で設定してある値が自動的に設定されるようになります。
フィルターフックを用意しているので、下記のコードで変更することも可能です。
function my_content_width( $width ) { return 600; // 任意のサイズを指定 } add_filter( 'mw-wp-hacks-content_width', 'my_content_width' );
ページャー
次のコードでページャーを表示することができます。
<?php mw_wp_hacks::pager(); ?>
最上位の固定ページのIDを取得
WordPressでコーポレートサイトを作る場合、固定ページを良く使うことになりますが、そのときに今のページの親のIDを取得して使用したいときがあります。固定ページ表示時に下記のコードで最上位ページのIDを取得することができます(今のページが最上位の場合は今のページのID)。
<?php echo mw_wp_hacks::get_top_parent_id(); ?>
カスタム投稿タイプかどうか判定する
下記のコードで、今のページがカスタム投稿タイプかどうか判定することができます。引数に投稿タイプ名を入力すれば、その投稿タイプかどうか判定します。
<?php // 投稿タイプかどうか mw_wp_hacks::is_custom_post_type(); // カスタム投稿タイプ product かどうか mw_wp_hacks::is_custom_post_type( 'product' ); ?>
ローカルナビゲーション出力
sidebar.phpなどに下記のコードを記述すれば、ローカルナビゲーションを表示することができます。
<?php mw_wp_hacks::the_localNav(); ?>