【问题标题】:How to remove already enqueued messages in joomla 2.5?如何在 joomla 2.5 中删除已排队的消息?
【发布时间】:2014-02-17 11:25:37
【问题描述】:

如何在 joomla 2.5 中删除已排队的消息? 提前致谢!

我试过了

$jAp = JFactory::getApplication();
$messagesexist = $jAp->getMessageQueue();

但上面的代码显示了所有已入队的消息。 我想从中删除特定消息。

【问题讨论】:

  • 来自什么的排队消息?一个组件?如果是,是哪个组件?你已经尝试过什么?
  • 是的,它来自组件
  • 尝试在控制器中查找组件的特定视图。您很可能会看到类似以下内容:$message = JText::_('LANG_STRING');,然后是 $this->setRedirect($url, $message, $messageType);

标签: joomla joomla2.5


【解决方案1】:

试试这个,

                $session = JFactory::getSession();
                $sessionQueue = $session->get('application.queue');
                if (count($sessionQueue)) {
                        $session->set('application.queue', null);
                }

希望它的作品..

【讨论】:

    【解决方案2】:

    要删除特定消息,您必须处理 getMessageQueue() 返回的 array

    所以是这样的:

    // Get the message queue
    $messages = JFactory::getApplication()->getMessageQueue();
    
    // If we have messages
    if (is_array($messages) && count($messages))
    {
        // Check each message for the one we want
        foreach ($messages as $message)
        {
            // do your checks here
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2017-12-22
      • 2012-04-07
      • 1970-01-01
      • 1970-01-01
      • 2016-07-18
      • 1970-01-01
      • 2014-06-07
      • 1970-01-01
      • 2018-02-28
      相关资源
      最近更新 更多