子テーマにするほどでもないカスタマイズをプラグインで対応する方法

Twenty Seventeen のようなよくできたテーマに基本は乗っかりたい。

親テーマは直接変更したくない。

だけど、以下のようなことはしたい。

  • ちょっとだけフックを使ったカスタマイズをしたい。
  • スタイルシートの追加

であれば、プラグインで対応する方法があります。

自作するというとテーマのほうが注目されがちですが、テンプレートを変更するほどでもない場合はプラグインで対応できます。

プラグイン

ダウンロード

実物を見るのが簡単だと思います。

ダウンロード(myplugin.zip 434バイト)

これを、管理画面 > プラグイン > 新規追加 > プラグインのアップロード で、ファイル選択、今すぐインストールで、インストール完了です。

style.css に何も書いていないので、インストール後、すぐ有効化しても、見た目には何も変わりません。

ファイル構成

phpが1個と、cssが1個のシンプル構成です。

wordpress
|-- plugins
|   `-- myplugin
|       |-- myplugin.php
|       `-- style.css

具体的な中身

myplugin.php は、style.css を追加で読み込むことしか書いていません。追加のカスタマイズを続きで書いていくとよいです。

<?php
/*
Plugin Name: myplugin
*/

// style.css を読み込ませる
add_action('wp_enqueue_scripts', 'my_wp_enqueue_scripts', 20);
function my_wp_enqueue_scripts() {
	wp_enqueue_style('myplugin-style', plugins_url('style.css', __FILE__));
}

// 続きは自由に追記してください

プラグインの style.css を、テーマのCSSが読み込まれた後に読み込ませたいですが、テーマが不明だと指定が難しいので、優先順位を下げて、あとのほうに読み込まれるようにしています。

style.css は何も書いていないので、追加のCSSを自由に書いていくとよいです。

バージョンアップされて勝手に消えたりもしないので、安心して書き込めます。

個別投稿ページの上部にアイキャッチ画像が大きく表示されるのを止める

Twenty Seventeen では、twentyseventeen-featured-image というサイズ指定で get_the_post_thumbnail して、個別ページの上部にアイキャッチ画像を大きく表示しています。

get_the_post_thumbnail するときに、指定のサイズが twentyseventeen-featured-image だったら画像がないことにするフィルターを追加することで、投稿の上にアイキャッチ画像が表示されないようにできます。

“個別投稿ページの上部にアイキャッチ画像が大きく表示されるのを止める” の続きを読む

自作スパムコメントフィルター

WordPressでWebサイトを公開すると、記事へのスパムコメントが結構来るようになります。

承認前のコメントなら表に表示されないとしても、管理画面でいちいちスパムコメントをゴミ箱へ移動で削除するのも面倒です。

最初からスパムコメントを拒否するにはどうすればよいか?

“自作スパムコメントフィルター” の続きを読む