WordPressでプラグインの作成/その2
せっかく会員限定のためのプラグインを作成したのなら、ログイン用のロゴ画像も専用の画像に変更したいと思います。よって、今回は、前回作成したプラグイン『dedicated site』にログイン画像を専用のロゴ画像に変更するための、関数を追加したいと思います。
①『wp-content/plugins/dedicated-site』フォルダの中に画像を保存する『images』フォルダを作成し、その中に、あらかじめ『326×67』の大きさで作成した画像を『login_logo.png』名で保存します。
②『str_replace関数』を使って、ロゴ画像のあるフォルダ名を取得します。つまり、プラグインのパスから、プラグインのファイル名を削除することによりフォルダ名を取得することができます。
$plugin_dir=str_replace(basename(__FILE__),"",plugin_basename(__FILE__));
③次に、ログイン画像のアドレスを取得します。
$login_logo_url=WP_PLUGIN_URL.'/'.$plugin_dir.'images/login_log.png';
④ロゴ画像を表示するためのCSSを設定します。
echo '<style type="text/css"> #login h1 a{ background:url('.$login_logo_url.') no-repeat; width=326px; height:67px; } </style>';
⑤最後に、アクションのためのフックを記載します。
add_action('login_head','the_login_logo');
それでは、まとめて全コードを下記に記載します。
<?php /* Plugin Name: dedicated site Plugin URI: http://w.builwing.info Description: 会員限定サイトの簡単なプラグイン Version: 1.0 Author: nakada Author URI: http://w.builwing.info */ function the_dedicated_site(){ if ( ! is_user_logged_in()){ auth_redirect(); } } function the_login_logo(){ $plugin_dir=str_replace(basename(__FILE__),"",plugin_basename(__FILE__)); $login_logo_url=WP_PLUGIN_URL.'/'.$plugin_dir.'images/login_logo.png'; echo '<style type="text/css"> #login h1 a{ background:url('.$login_logo_url.') no-repeat; width=326px; height:67px; } </style>'; } add_action('login_head','the_login_logo'); add_action('wp_head','the_dedicated_site'); ?>
それではブラウザで確認してみます。WordPressのロゴ画像がオリジナルのロゴ画像に変わりました。
本日は以上です。