WordPressをもっと便利にするスニペットが500個以上登録されている -WPSNIPP
Post on:2011年12月1日
WordPressにちょっと機能を追加したい時に役立つスニペットをまとめたサイトを紹介します。
目的をもって探すだけでなく、こんなこともできるのかという発見もあるかもしれません。
WPSNIPP – 500+ WordPress code snippets for your blog
[ad#ad-2]
WPSNIPPでは現在、545個のWordPressの便利なスニペットが登録されています。
下記にほんのちょっとだけ、その便利なスニペットをピックアップしました。
- よく使うショートコードをボタンから選択可能に
- 特定のページのみ特定のスタイルシートを適用
- アーカイブウィジェットの表示期間を制限する
- Google+1ボタンを設置する
- プラグインを管理画面を使わずに停止する
- CSSファイルのキャッシュを防止する
- 大切な「wp-config.php」を守る
よく使うショートコードをボタンから選択可能に
テーマファイルの「functions.php」に下記のコードを記述します。
PHP
add_action('media_buttons','add_sc_select',11); function add_sc_select(){ echo ' <select id="sc_select"> <option>Shortcode</option> <option value="[html][/html]">[html]</option> <option value="[css][/css]">[css]</option> <option value="[javascript][/javascript]">[javascript]</option> </select>'; } add_action('admin_head', 'button_js'); function button_js() { echo '<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js" type="text/javascript"></script> <script type="text/javascript"> jQuery(document).ready(function(){ $("#sc_select").change(function() {$("#content").val($("#content").val()+$("#sc_select :selected").val());}) }); </script>'; }
特定のページのみ特定のスタイルシートを適用
特定のページのbodyタグにclassを付与します。
テーマファイル内の「functions.php」に下記のコードを記述します。
PHP
add_filter( 'body_class', 'my_neat_body_class'); function my_neat_body_class( $classes ) { if ( is_page(7) || is_category(5) || is_tag('neat') ) $classes[] = 'neat-stuff'; return $classes; }
テーマファイル内の「header.php」のbodyタグを下記に書き換えます。
PHP
<body <?php body_class(); ?>>
アーカイブウィジェットの表示期間を制限する
アーカイブウィジェットの表示期間を12ヵ月に制限します。
テーマファイル内の「function.php」に下記のコードを記述します。
PHP
function my_limit_archives($args){ $args['limit'] = 12; return $args; } add_filter( 'widget_archives_args', 'my_limit_archives' );
[ad#ad-2]
Google+1ボタンを設置する
自動的にGoogle+1ボタンを設置します。`
テーマファイル内の「function.php」に下記のコードを記述します。
PHP
add_filter('the_content', 'google_plusone'); function google_plusone($content) { $content = $content.'<div class="plusone"><g:plusone size="tall" href="'.get_permalink().'"></g:plusone></div>'; return $content; } add_action ('wp_enqueue_scripts','google_plusone_script'); function google_plusone_script() { wp_enqueue_script('google-plusone', 'https://apis.google.com/js/plusone.js', array(), null); }
プラグインを管理画面を使わずに停止する
管理画面を使わずに特定のプラグインを停止します。
テーマファイル内の「function.php」に下記のコードを記述します。
PHP
add_filter( 'plugin_action_links', 'slt_lock_plugins', 10, 4 ); function slt_lock_plugins( $actions, $plugin_file, $plugin_data, $context ) { // Remove edit link for all if ( array_key_exists( 'edit', $actions ) ) unset( $actions['edit'] ); // Remove deactivate link for crucial plugins if ( array_key_exists( 'deactivate', $actions ) && in_array( $plugin_file, array( 'slt-custom-fields/slt-custom-fields.php', 'slt-file-select/slt-file-select.php', 'slt-simple-events/slt-simple-events.php', 'slt-widgets/slt-widgets.php' ))) unset( $actions['deactivate'] ); return $actions; }
CSSファイルのキャッシュを防止する
外部スタイルシートファイルの記述の後に「?v=1.0」などを付与してキャッシュを防いでると思いますが、これを自動で行う方法です。
外部スタイルシートを記述する箇所を下記に変更します。
PHP
ファイル名の後にtime()を付与します。
<style type="text/css" media="screen"> @import url( <?php bloginfo('stylesheet_url'); ?>?<?php echo time(); ?> ); </style>
バージョンを付与する際は、下記のようになります。
<style type="text/css" media="screen"> @import url( <?php bloginfo('stylesheet_url'); ?>?v=1.0 ); </style>
大切な「wp-config.php」を守る
「.htaccess」を使用して、「wp-config.php」への直接のアクセスを拒否します。
「.htaccess」に下記のコードを記述します。
<files wp-config.php> order allow,deny deny from all </files>
WPSNIPPでは他にも数多くのスニペットが登録されており、カテゴリやタグに分けられているので、探すのも便利です。
WPSNIPPのカテゴリ一覧
sponsors