ここで行う必要があることがいくつかあります。まず、register_activation_hook()
functionを使用してプラグインのアクティブ化を行います。 admin_notices
actionは、管理領域内に通知を追加するために使用されます(通知はどこにでも印刷できません)。
ただし、はのプラグインの有効化にはadmin_notices
アクションを使用できないという追加の問題があります。これは、WordPressがあなたのプラグインを「生き生きとしている」わけではないからです。それはバックグラウンドでそれをアクティブにし、起動を完了する前に致命的なエラーを引き起こさないように出力を抑制します。
幸いにも、this blog postはこの問題の解決方法の概要を示しています。この投稿の作者は、transientsを使用してプラグインの '状態'を保存するよう提案しています。これにより、プラグインがアクティブになった後に取得できるようになります。
このブログはこのサイトのようなCC-BY-SAライセンスを持っているので、ここにコードをコピーしてそれが生きるようにします。私はこのポストの長さを保つためにそれを少し凝縮しましたが、完全な解決策のためにview the whole blog postにすることができます。私はこれをテストして、WordPress 4.5.3をインストールしても動作することを確認しています。
register_activation_hook(__FILE__, 'fx_admin_notice_example_activation_hook');
function fx_admin_notice_example_activation_hook() {
set_transient('fx-admin-notice-example', true, 5);
}
add_action('admin_notices', 'fx_admin_notice_example_notice');
function fx_admin_notice_example_notice(){
/* Check transient, if available display notice */
if(get_transient('fx-admin-notice-example')){
?>
<div class="updated notice is-dismissible">
<p>Thank you for using this plugin! <strong>You are awesome</strong>.</p>
</div>
<?php
/* Delete transient, only display this notice once. */
delete_transient('fx-admin-notice-example');
}
}
あなたは正しい場所でそれを呼び出そうとしましたか? – SHR