【问题标题】:Magento online customers last URL rewriteMagento 在线客户上次 URL 重写
【发布时间】:2012-08-24 12:10:36
【问题描述】:

我正在运行 Magento CE 1.6.2.0。

Magento 的在线客户功能非常棒。唯一的问题是通过显示重写(如果存在),“最后一个 URL”列可能会更有帮助。

我从这里更改了app/code/core/Mage/Adminhtml/Block/Customer/Online/Grid/Renderer/Url.php

public function render(Varien_Object $row)
{
    return htmlspecialchars($row->getData($this->getColumn()->getIndex()));
}

到这里:

public function render(Varien_Object $row)
{
    $lastUrl = htmlspecialchars($row->getData($this->getColumn()->getIndex()));

    $lastUrlRewrite = Mage::getModel('core/url_rewrite')
        ->setStoreId(1)
        ->loadByRequestPath($lastUrl);

    $url = ($lastUrlRewrite) ? $lastUrlRewrite : $lastUrl;

    return $url;
}

StoreId 正确,但输出仍为空。

任何帮助将不胜感激!谢谢。

【问题讨论】:

    标签: magento url-rewriting


    【解决方案1】:

    loadByRequestPath() 方法返回一个Mage_Core_Model_Url_Rewrite 对象,而不是一个字符串。你可能想这样做:

     $url = ($lastUrlRewrite->getId()) ? $lastUrlRewrite->getTargetPath() : $lastUrl;
    

    【讨论】:

    • 不幸的是,这不起作用。如果我设置 return print_r($lastUrlRewrite); 我可以看到 Mage_Core_Model_Url_Rewrite 对象包含所有空值(尽管有一些键),所以我怀疑问题在我的代码中更进一步。
    • 是的,所以在这种情况下,听起来好像没有与相关 URL 匹配的 URL 重写?如果我是你,我会得到一个调试器设置,这将真正帮助你逐步完成逻辑。
    • 问题是有一些 URL 显示,我知道事实已经验证和工作重写......
    猜你喜欢
    • 2013-01-07
    • 2011-04-17
    • 2017-11-22
    • 1970-01-01
    • 2017-09-07
    • 2014-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多