Show message from backend

时间:2016-11-18 作者:Ismael Moral

当页面更新时,我需要在wordpress页面编辑器上显示消息。我知道有一个admin_notice 钩子显示消息。我有一个save_post_page 我的代码做得很好,但我需要知道如何连接它们,我不知道为什么?

任何帮助都将不胜感激,

顺致敬意,

伊斯梅尔

1 个回复
最合适的回答,由SO网友:kovshenin 整理而成

问题是,保存帖子时,会重定向回编辑帖子页面,并且admin\\u notices操作永远不会运行。这意味着在重定向过程中,您在任何save post操作(save\\u post、transition\\u post\\u status等)上放置的任何管理通知都将被丢弃(因为它们不是持久的)。

解决方法是保存一个状态(用户设置/用户元、后元、瞬态、选项),该状态表示应该显示管理通知,并在下一个请求中查找该状态。

add_action( \'save_post\', function( $post ) {
    // some checks here
    update_user_option( get_current_user_id(), \'_my_show_notice\', true );
});

add_action( \'admin_notices\', function() {
    if ( get_user_option( \'_my_show_notice\' ) ) {
        delete_user_option( get_current_user_id(), \'_my_show_notice\' );
        echo \'<div class="notice notice-success"><p>Some notice</p></div>\';
    }
});
希望有帮助!

相关推荐

menu customization

我正在我的页面上使用高级主题。该主题在整个站点中只接受一个菜单。该网站是一个单页网站。主题的工作方式是,我们必须建立一个主页,然后使用菜单项来制作网站的各个部分。因此,我创建了一个菜单,其中包含我想要的所有部分,使用我创建的页面已经设置为部分。例如:我有主页、照片、视频等。这些都是单独的页面,但当我将它们作为菜单的一部分时,它们将在一个页面中显示在另一个页面的下方,菜单项将滚动到该页面上的锚定位置。许多主题都是这样工作的。My problem is :我需要翻译菜单或设置另一个页面(不是作为节,而是一个正