WordPress にフックを追加する
公開: 2022-09-17WordPress にフックを追加することは、WordPress サイトにコード スニペットを追加するプロセスです。 フックを追加するには、コードの基本を理解し、WordPress のコーディング標準に精通している必要があります。 フックには、アクション フックとフィルター フックの 2 種類があります。 アクション フックを使用すると、特定のイベントが発生したときに実行されるコードを追加できます。 フィルター フックを使用すると、特定のイベントが発生する前後に実行されるコードを追加できます。
この記事では、自分のフックを作成して、他のユーザーが自分の作業を基に構築できるようにする方法を説明します。 フックは、名前が示すように、フレームワークを持つ API の一種です。 重要なデータを保存している場合は、データを自動的にキャプチャし、他のユーザーがデータを操作できるようにフックを設定する必要があります。 WP_trim_excerpt() は、抜粋を生成するために WordPress によって内部的に使用されます。 この関数は、WordPress で次の形式で見つけることができます: WP-includes/formatting.php。 その結果、すべての関数がexcerpt_length フックにバインドされ、最終的な値が返されます。 抜粋の長さを変更する 3 つのプラグインを使用するとどうなりますか?
これらの関数のリストを 1 か所に示します。 フックは、2 つの方法のいずれかを使用してデータベース クエリに追加できます。 この例では、特定の日付の画像のみを取得するクエリを作成し、日付順に並べ替え、最大 10 件の結果を取得します。 その結果、この情報に基づいて WordPress ギャラリーのショートコードを作成しました。 my_gallery/ query_args フックを使用するプラグインなど、他のプラグインでギャラリー表示の機能を調整できるようになりました。
カスタム フックを使用してステートフル ロジックを再利用できるのは事実ですが (たとえば、サブスクリプションを作成して現在の値を記憶するなど)、フックを使用するたびに、内部のすべての状態と効果が完全にわかりにくくなります。 カスタムフックの分離形式とは? フックへの呼び出しは含まれるものです。
WordPress のどこにフックを追加しますか?
フックは WordPress で最も強力なツールの 1 つであり、コア コード全体で広く使用されています。 フックを使用すると、コア ファイルを編集しなくても WordPress の動作を変更できます。
フックには、アクションとフィルターの 2 種類があります。 アクションは、WordPress リクエストの有効期間中の特定の時点でトリガーされる関数です。 フィルターは、データを表示する前に変更するために使用される関数です。
プラグインを作成するか、独自のコードをテーマの functions.php ファイルに追加することで、独自のフックを追加できます。
フックとも呼ばれる WordPress プラグイン API を使用することは、コードをオーバーロードしないように注意するために重要です。 プラグイン API からの最適化は必ずしも実用的ではありませんが、重要な目標です。 この記事では、フックを追加する場所とその長所と短所をいくつか見ていきます。 クラスの代わりに関数を使用する場合は、フックを処理する必要があり、オブジェクト指向の設計にも役立ちます。 これは、関心の分離の原則に従ってビジネスを行う方法の優れた例です。 実際、カテゴリに関係なく、どの投稿でもクラスを再利用できます。 クラスを使用するとコードを構造化できるため、編成上の利点も得られます。
システムの単一ユニットがすべての機能を実行します。 依然として非常に強く結合されていますが、関連するコードを同じ場所に保持する価値がある場合があります。 その結果、コンストラクターはオブジェクトの状態の表示と 2 番目の関心事の両方を提供するため、コンストラクターの使用はまだ好きではありません。 単一の責任を定義する場合、扱いやすく、簡単にリファクタリングできるコードを作成することが重要です。 このクラスは、この例で、プラグイン API から完全に切断されても存続できる方法によって示されています。 フックはさまざまな場所に追加できます。
WordPress フックの使用方法
これらのフックは、WordPress に機能を追加するために使用されます。 カスタム フックは任意のプラグインで作成でき、別のプラグインへのリンクを避けるためにフック名にプレフィックスを付けることができます。 アクションフックは引数を取り、wp_actions() 関数を使用して値を返すことができます。 WP_filter() 関数によって定義されるフィルター関数は、引数を取り、値を返すことができます。
WordPress でフックを呼び出す方法

WordPress では、フックはフック タイプにちなんで名付けられた PHP 関数です。 WordPress コアの機能やデフォルト値の表示方法を変更するために使用されます。 フックには、アクション フックとフィルター フックの 2 種類があります。 アクション フックを使用すると、WordPress の特定のポイントにコードを追加できますが、フィルター フックを使用すると、既存のコードを変更できます。
既存のWordPress アクションまたはカスタム定義のプラグインまたはテーマ アクションは、Run a WordPress フック アクションによって呼び出すことができます。 このシナリオの他のことは、Automator がその場所でコードを実行することを必要とします。 この強力なアクションは、機能するために特定のレシピを必要とする開発者や Web サイトの所有者にとって役立ちます。 カスタム アクション フックをまだ定義していない場合は、[変数を追加] ボタンをクリックして追加します。 [上から下へ] 列で定義した引数に、変数を渡す順序を割り当てることができます。 引数が 1 つしかないため、ここに 1 つのフィールド値を追加します。

WordPress でフィルターを呼び出す方法
これは非常に長い説明です。 コールバック/アクションをアタッチするときに、コールバック名をグローバル フィルター配列に追加するだけです。 配列内のコールバックを検索するために、WordPress はコード内でコールバックを呼び出します (たとえば、テンプレートまたはプラグイン ファイル内の do_action() 呼び出し)。
WordPress はどのようなタイプのフックですか?
アクションとフィルターは、最も一般的な 2 つのタイプのWordPress フックです。 フックは、WordPress Core によってほぼ独占的に使用されます。 WordPress では、独自のフックを定義する機能に加えて、開発者がコードにフックするためのカスタム フックを利用できます。
フックは、WordPress コアのファイルを変更せずにプロシージャを操作できるようにする機能です。 どちらの場合も、アクションとフィルターをフックに適用できます。 フックには HTML と PHP の知識が必要です。 アクション フックとフィルター フックの両方を作成するのは難しいように見えるかもしれませんが、思ったほど難しくはありません。 同じ target_hooks を使用すると、scale はインストールされた関数のリストを生成します。 priority_scale プロパティは、target_scale でいくつのフックを使用するかを決定します。 デフォルト値は 10 ですが、調整できます。 フィルター フックを作成するには、単純に application_filters() 関数を使用します。
値をフィルター処理するアクション フックのコンポーネントであることに加えて、フィルター関数 (apply_filter) があります。 Admin_post_thumbnail_size フィルター フックは、投稿のサムネイル画像を [注目の画像] セクションに表示します。 array() 関数を使用して、サムネイルのサイズを 240 x 400 に設定できます。 ユーザーがパスワードをリセットするときは、after_password_reset を使用する必要があります。 Customize_loaded_components は、コア プロセスに表示されないように WordPress コンポーネントを構成します。 フックは、WordPress ウェブサイトのデフォルト設定を変更できる機能です。 フックには、アクションとフィルターの 2 種類があります。 フィルター フックは既存の関数に新しいコードを追加しますが、アクション フックは新しい関数を追加します。 この機能をマスターすると、独自のプラグインを作成できます。
WordPress フック
WordPress では、フックは、WordPress サイトの機能を変更または追加するために、アクションまたはフィルターに適用できる関数です。 アクションとフィルターは 2 つの別個の概念ですが、目的の結果を得るために一緒に使用されることがよくあります。
アクションは、投稿が公開されたときやユーザーが投稿にコメントしたときなど、特定のイベントが発生したときにトリガーされる機能です。 フィルターは、投稿がデータベースから取得されているときや投稿にコメントが表示されているときなど、フィルターを通過するデータを変更する機能です。
フックを使用すると、開発者はコア コードを編集せずに WordPress のデフォルトの動作を変更できます。 これにより、WordPress サイトを構築する際の柔軟性とカスタマイズ性が向上します。
フックは、WordPress のオブジェクトにアクションまたはフィルターを適用するために使用できる関数です。 フックは、WordPress 開発者が Web サイトの機能をカスタマイズまたは拡張するために使用します。 さらに、Web からコード スニペットをテーマに追加すると、アクションを使用してカスタマイズできます。 初心者の方は、WordPress ファイルの編集を控えることをお勧めします。 フィルターフックとは? フィルターを使用して、特定の関数の動作を変更できます。 テキストの切り捨て、コンテンツの書式設定、投稿へのリンクの添付、ページ上のブロックの変更、データベースから取得したオプションの変更に役立ちます。 アクションフックとは? タスクを完了するために、WordPress からいくつかの情報を抽出して追加します。
フィルターフックを使用する際の注意事項
フィルター フックを使用する際に留意しなければならない点がいくつかあります。 タスクを完了するには、フィルター フック関数を使用する必要があります。 apply_filters() 関数の戻り値を調べて、それが有効であることを確認してください。