【问题标题】:How to add admin_notices to wordpress Custom Menu Page如何将 admin_notices 添加到 wordpress 自定义菜单页面
【发布时间】:2018-05-23 13:54:34
【问题描述】:

我正在尝试制作一个插件,并在我的自定义菜单页面上使用了以下简单的代码行。

            <div id="message" class="updated below-h2 notice is-dismissible">
            <p><?php echo $message_string; ?></p>
            <button type="button" class="notice-dismiss"><span class="screen-reader-text">Dismiss this notice.</span></button>
        </div>

在这种情况下,当我单击按钮时,它没有附加的单击处理程序,因为设置->常规设置在保存时具有。

然后我使用了这个功能。

    function display_admin_notice() {
  ?>
  <div class="notice notice-success is-dismissible"><p>The secret to success is to know something nobody else knows ~ Aristotle Onassis</p>

  </div>
  <?php
}
add_action( 'admin_notices', 'display_admin_notice' );

这是怎么回事,是不是全屏显示管理员提示,有以下几种情况。

  1. 我的自定义菜单页面“ADMIN NOTICE”没有点击处理程序。

  2. 所有其他页面都有一个自定义事件处理程序,它在点击时起作用。

我在网上得到的信息很少,管理员通知只加载在默认的 wordpress 菜单上。

但我遇到了一个很大的插件,它使用相同的代码行来显示工作中的可点击管理员通知。

有人可以提出建议吗?

【问题讨论】:

  • 您希望何时显示通知?一直在这个自定义页面上,或者说什么时候提交了表单?
  • @DanielJames 我想一直在自定义菜单页面上显示它,当我点击关闭按钮时,它应该会消失。仅用于测试目的。

标签: wordpress


【解决方案1】:

我从我的问题中得到了解决方案。那些在您的网站上使用管理员通知时遇到问题的人可能会遇到这个问题。

我注销了 jquery 句柄并将我自己的 jquery 加入队列,但使用了句柄 jquery-latest 。为了加载依赖于 jquery 的功能。 Wordpress 搜索句柄 jquery。因此,请确保使用相同的句柄来加载 jquery。

正确的方式。

wp_deregister_script('jquery');
wp_enqueue_script('jquery',  plugins_url( '/assets/js/jquery-3.3.1.min.js',__FILE__ ), array(), '4.1.1', false);

走错路

wp_deregister_script('jquery');
wp_enqueue_script('jquery-latest',  plugins_url( '/assets/js/jquery-3.3.1.min.js',__FILE__ ), array(), '4.1.1', false);

【讨论】:

    猜你喜欢
    • 2012-10-24
    • 1970-01-01
    • 1970-01-01
    • 2018-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-10
    相关资源
    最近更新 更多