Wordpress 设置 Flashdata 错误

Posted

技术标签:

【中文标题】Wordpress 设置 Flashdata 错误【英文标题】:Wordpress Setting Flashdata Error 【发布时间】:2014-07-16 19:23:18 【问题描述】:

我用 codeigniter、cakephp、zend、magento 做了很多工作,它们都有设置我听说的 flashdata 错误的方法。

见:

http://inchoo.net/ecommerce/magento/magento-frontend/utilizing-magento-notification-system/ http://ellislab.com/codeigniter/user-guide/libraries/sessions.html

这基本上是一个在会话中设置的值,每个页面都会查找,如果找到则显示然后从会话中清除,以便它只显示一次。

通常这些以弹出窗口或短寿命小框的形式显示,根据级别进行颜色编码。

例如: 留言:蓝色 成功:绿色 警告:黄​​色 错误:红色

在 wordpress 中是否有类似的东西,例如,您可以通过帖子执行一些业务逻辑以说“wp_ajax”或“wp_ajax_nonpriv”,如果在添加闪存数据错误后出现重定向到上一页的中断?

【问题讨论】:

【参考方案1】:

如果您想在 wp-admin 区域内显示 Flash 消息,您可以将操作添加到 admin_notices 挂钩。它会像这样工作(取自here和here):

// Adds the action to the hook
add_action( 'admin_notices', 'your_custom_function' );

function your_custom_function() 
    ?>
    <div class="updated">
        <p><?php _e( 'Updated!', 'my-text-domain' ); ?></p>
    </div>
    <?php

至于 CSS 类,似乎有几个选项:

“更新”类将显示带有白色背景和绿色左边框的消息(在 WordPress 3.8 之前曾经是黄色背景。)。

“错误”类将显示带有白色背景和红色左边框的消息(在 WordPress 3.8 之前曾经是红色背景。)。

“update-nag”类将显示带有白色背景和黄色左边框的消息。此外,消息将移至页面标题上方(&lt;h2&gt;)。

但这不应该阻止您创建自己的 CSS 类并使用它们。


如果您想在 wp-admin 之外显示消息,您可能需要开发自己的解决方案或get user generated solutions。不幸的是,WP 没有内置功能,因为它可能因主题而异。

【讨论】:

非常正确,但是我想在前端显示这个(非管理员) @ajameswolf 好吧,不幸的是,AFAIK 答案的后半部分将是正确的选择。 这回答了我的问题,只是不是我希望的答案。谢谢 是的 @ajameswolf 很遗憾,我想这 answers 您的问题,但没有为您的问题提供 solution 等一下,这只适用于当前请求。重定向后,消息将丢失。是否没有标准方法可以在会话或其他内容中设置 Flash 消息,并在重定向后显示?

以上是关于Wordpress 设置 Flashdata 错误的主要内容,如果未能解决你的问题,请参考以下文章

CodeIgniter将html放入flashdata

在 CodeIgniter 3 中重定向后 Flashdata 未清除

重定向后 CodeIgniter flashdata 不起作用

在 mysql 中设置一个唯一列并在 codeigniter 中显示 flashdata

$this->session->set_flashdata() 然后 $this->session->flashdata() 在 codeigniter 中不起作用

获取flashdata