kakinotaneTweet前回はテンプレートタグ関数埋め込み型のプラグインを作成しました。今回はフックを使ったプラグインを作ってみたいと思います。フックとは?フックは、特定のタイミングでプラグインを作動させるための仕組みです。?>というように直接埋め込んだのでブラウザでその部分がロードされるときにhelloworld()が呼び出されました。フックを利用する場合は、タグを埋め込んだりしなくても予めプラグイン内にフックを登録しておくことにより、そのタイミングでプラグインを作動させることができます。タイトルに何か加工したい時は「the_title」、フッターが読み込まれる時に何かしたい時は「wp_footer」というフックに自己の関数を登録しておくと、そのタイミングで作動させることができます。フックの種類フックには次の2種類があります。特定のタイミングでテキストを改造するためのフックです。ブラウザに表示する前やデータベースを更新する前にテキストを改造したい場合などに使えます。特定のタイミングで処理を実行するためのフックです。テーマの変更後、投稿の公開後などにメールを送信したい場合などに使えます。コーディングフィルターフックの使用例フィルターフックを使ってプラグインを作ってみます。$title;}add_filter('the_title','hooksample');?>ソースコードの説明add_filter()は、作成した関数をフックと関連付けるものです。ここでは、hooksample()を作成し、the_titleというフィルターフックに関連付けています。これにより、the_titleにフックされてhooksample()が実行されます。その際に記事のタイトルが引数として渡されるので、これに「■」を付加してreturnします。非常に単純ですが応用範囲は広いですね。結果画面プラグイン有効化後ブログにアクセスすると上の図のように記事タイトルの先頭に「■」が表示されます。アクションフックの使用例ネットにいろいろサンプルがあり、基本的には考え方は同じなので割愛します。以下のリンクなどをご参考ください。プラグインを作成する。kakinotaneTweetいろいろな方が公開されているプラグインを使っていると、自分でも作りたくなってきます。プラグインをカスタマイズしようとする時にも最低限の知識がないとソースを理解するのが苦しいので、ちょっと勉強がてらプラグインの作成方法をブログに書いてみることにします。開発用エディタ簡単なプラグインの作成ならテキストエディタで十分です。開発用フォルダ当初、WordPressのwp-content/pulginsフォルダとは別に用意しましたが、動作確認する時にコピーするのが面倒なので直接wp-content/pulginsフォルダ内に置きました。空のphpファイルファイル名はhello-world.phpとしました。World');}?>ソースコードの説明ファイルのヘッダー部分にプラグインに関する情報(標準プラグイン情報)を記述し、その後にテンプレートタグ関数を記述しています。標準プラグイン情報の記述WordPressに作成したプラグインを認識させるためにはphpファイルのヘッダーに標準プラグイン情報を以下のような書式で記述する必要があります。(プラグインのバージョン番号。GPL2)*/?>これによりプラグイン管理画面に表示させたり、プラグインを有効化できるようになります。必須なのはPluginNameだけなので、すべて記述する必要はありません。詳しくは以下のページをご覧下さい。World'と出力するhelloworld()という関数を作成しました。普通に関数を定義してprint()するだけの単純なものなのであっという間に完成しました。使い方テンプレートタグの埋め込み使用中のテーマにあるheader.phpへ以下のコードを<body>タグの下に埋め込みます。先ほど作成した関数を普通に呼び出すだけです。?>プラグインの有効化すでにwp-content/pulginsフォルダ内にファイルがあるので、WP管理画面から[プラグイン]へアクセスするとプラグイン一覧の中に作成したものが登録されていることが確認できます。World」と表示されます。Worldを作ってみたいと思います。以下のコードをパンくずリストを表示したい箇所に挿入するだけです。here:」という余計な文字列が付加されてしまいます。これを消すには、breadcrumbs-plus.phpの以下の部分にある'title'を空にしてしまえばOKです。シンプルで最低限の機能を備えており設置もストレスなくできました。kakinotaneTweet画像にリンクを貼ると以下のように青い枠線で囲まれてしまいます。この青枠を消すには、img{border:0;}とやればOKです。やり方をよく忘れるのでメモっておきます。最近の投稿Windows10の起動が遅い。空文字列が渡されました。カキノタ:IT-Life。