web-dev-qa-db-ja.com

管理者通知をプラグインエラーに対して機能させる

私はプラグインを作成するところから始めていますが、エラーメッセージを表示するプロセスをよく理解していません。例えば隠し場所からファイルをダウンロードするには、 php readfile 関数を使用します。何かがうまくいかない場合ファイルが見つからない場合、その時点でメッセージをどのように表示しますか

'admin_notices'に add_actionを使用する必要があることはわかっています /しかし、add_action呼び出しをどこに置くべきかがよくわかりません。

私が言うことができる限り、あなたはダウンロードを試みて<div class="error">をエコーする関数my_download_fileを作成しなければなりません。それから「どこか」でadd_action('admin_notices', 'my_download file');を呼び出す必要があります。

これは、 Action Reference を読んでから、admin_noticesが出力されるときに呼び出されます。しかし、それは常に呼び出されるのでしょうか、それとも do_action が呼び出されるときにのみ呼び出されるのですか?

1
icc97

(コメントで説明したように)あなたがする必要があるのは、add_actionが呼び出す関数の中であなたの条件付きロジックを実行することです。たとえば、admin noticesフックにアクションを追加しているとします。

アクションは実行されますが、そのアクションのコールバック内のものはそれを許可した場合にのみ実行されます。

add_action( 'admin_notices', 'your_custom_function' );

function your_custom_function() {

    // You need some way to set (or retrieve) the value of your $error here (if not already set)

    if( $error ) {
        // Put everything here
    }

}

テーマでは、これは通常あなたのfunctions.phpファイルまたはそれに含まれるファイルにあります。プラグインでは、メインのプラグインファイルに含まれていれば、どのファイルにも含めることができます。

3
Jared