Magento EE FPC 中的打孔法师_目录_块_产品_价格

2024-05-17

我花了很长时间找出代码/参数来为Mage_Catalog_Block_Product_Price块在magento中打孔全页缓存。我可以在第一次加载页面时显示价格,但是当缓存 id 是唯一的时,它不会正确呈现价格(当它应该被缓存时,它会正确缓存它)。我知道我需要向其发送参数,例如 Product_id 等,但不清楚需要从 getCacheKeyInfo 发送到缓存容器中的内容(例如“xx”)以便在 $this->_placeholder->getAttribute('xx' 中使用)。以及需要准备什么并从 _renderView() 发送到价格布局/视图。

到目前为止我已经成功完成了以下操作(它们各自输出测试数据)

  • 在我的模块 /etc 文件夹中创建了cache.xml
  • 创建缓存容器模型并验证工作(只需设置)
  • 将 Mage_Catalog_Block_Product_Price 重写/扩展到我自己的模型中以添加 getCacheKeyInfo()

所以问题是,我已经尝试了容器模型的 _getCacheId() 和 _renderBlock() 与 getCacheKeyInfo() 结合的许多变体,如上所述。但我遇到了绊脚石。如果有人能引导我走向正确的方向,我将不胜感激。


我也一直在努力解决全页缓存问题。
这些是我的发现,对我非常有帮助。

请看一下:app/code/core/Enterprise/PageCache/Model/Processor/Default.php Line 47

 /**
 * Check if request can be cached
 *
 * @param Zend_Controller_Request_Http $request
 * @return bool
 */
public function allowCache(Zend_Controller_Request_Http $request)
{
    foreach ($this->_noCacheGetParams as $param) {
        if (!is_null($request->getParam($param, null))) {
            return false;
        }
    }
    if (Mage::getSingleton('core/session')->getNoCacheFlag()) {
        return false;
    }
    return true;
}

看看这个函数,似乎有两种方法可以避免(禁用)全页缓存:

获取参数:
您可以使用带有三个下划线前缀的参数“store”或“from_store”来避免缓存。 例子:

http://magentourl.com/catelog/category/view/id/123?___store

Mage::getUrl('catalog/category/view', array('id' => 123, 'query' => array('___store' => '')))

会话变量:
您还可以通过设置(临时)会话变量来避免整页缓存:

Mage::getSingleton('core/session')->setNoCacheFlag(true)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Magento EE FPC 中的打孔法师_目录_块_产品_价格 的相关文章

  • Magento 1.7.0.0 上的 SOAP V2 url 是什么

    1 7 0 0 版本中访问 Magento SOAP V2 的 url 是否已更改 当我尝试访问 上的服务 时http www somedomain com api v2 soap wsdl 1 http www somedomain co
  • 无法登录 Magento 管理员

    我在登录我们的一个临时站点上的 Magento 管理面板时遇到问题 它在我们的 webdev 服务器上 100 工作 不久前在临时服务器上也工作得很好 我做了一些研究 大多数人认为这与在本地主机上运行 Magento 以及浏览器不为域名中没
  • 在不破坏寻呼机的情况下获取第一个集合项

    我之前发布了一个关于此问题的问题 但我现在有了更多信息 我认为最好发布一个新问题而不是修改 抱歉 如果这不是正确的协议 你可以找到我原来的问题here https stackoverflow com questions 6311646 ma
  • 马根托。将块插入另一个块而不更改模板代码

    我尝试寻找解决方案但没有结果 我的任务是编写模块 它应该将一些 html 插入现有块中 我注意到 当我使用布局 xml 文件时 我可以将我的块插入到一些参考中 例如
  • Magento - 检查管理员和客户是否登录

    我有一个安装了 Magento 1 4 0 1 的 Web 服务器 我有另一个与之共享凭据的网站 我已经设法检查客户是否登录 在更改 Magento 中的 cookie 位置之后 但是当我还尝试确定管理员是否登录时 事情变得复杂 我只能得到
  • 查找商店的根类别

    我正在使用 Magento 1 6 1 版 我需要获取商店的根类别 我在谷歌中搜索没有得到任何好的想法 代码 请问如何获取商店的根类别 Mage app gt getStore gt getRootCategoryId 上面的代码给出了默认
  • Magento CSRF 保护

    我正在 Magento 中查看自定义表单 我看到了这些教程 http fastdivision com 2012 03 29 diy magento create ajax login registration forms for your
  • 如何在magento中将订单状态设置为“完成”

    如何手动将订单状态设置为 完成 我正在使用以下代码 但它给出错误消息 订单状态 完成 不得手动设置 order Mage getModel sales order gt loadByIncrementId order id order gt
  • 如何覆盖magento中的管理模板文件?

    我需要覆盖 adminhtml sales order create items grid phtml 文件 以在从管理员创建新订单时在每个项目下显示一些自定义文本 我希望通过自定义模块来完成此操作 任何人都可以建议如何覆盖管理模板文件 非
  • Magento 以编程方式删除产品图像

    这肯定是一个非常简单的编程任务 我绝对无法在网上找到任何有关它的信息 基本上 我正在尝试删除产品图像 我想删除产品媒体库中的所有图像 我可以在不为如此简单的任务编写一百万行代码的情况下完成此操作吗 请注意 我已经尝试过 attributes
  • 将搜索栏从 magento 主页的标题中移动

    我是 magento 的新手 我想将搜索栏从标题移动到主页的中间位置 以便它仅显示在主页上 我在 magento 论坛上阅读了许多相关答案 但所有人都在尝试编辑 box css 中的 mini search 元素 但不幸的是我在此文件中没有
  • Magento 如何通过静态块/页面中的 id 链接到类别

    我正在寻找使用以下方法从静态块链接到一个类别category id 有什么想法吗 我已经进行了通常的搜索 但没有结果 目前我可以做类似的事情 a href 但这并不稳健 使用类别链接小部件内联链接代码 widget type catalog
  • 在 Magento 控制器中使用 move_uploaded_file

    我是 magento 的新手 我正在 magento 管理中创建用于文件上传的自定义模块 现在我已将上传文件发布到我的模块控制器中 这里我用过move uploaded file将文件上传到与控制器文件夹相同的目录中 下面的代码我用于控制器
  • 在 Magento 中获取购物车详细信息

    我想通过使用 Magento 获取购物车详细信息getQuote功能 我怎样才能做到这一点 cart Mage getModel checkout cart gt getQuote 当我打印 cart页面停止执行并显示空白页面 但是当我写的
  • magento成功页面变量

    我正在尝试捕获一些 magento 成功页面变量以传递给我们的广告公司 到目前为止 我已经得到了这个 但变量没有输出任何内容 数据需要采用以下格式 price1 price2 price3 qty1 qty2 qty3 sku1 sku2
  • Magento 从 Observer 重定向始终有效

    我无法从观察者在 Magento 中创建工作重定向 据我所知 有很多事件都获得了响应对象 在 observer目的 另一种方法是使用类似的东西 Mage app gt getResponse gt setRedirect Mage getU
  • 将客户分配到 magento 的多个客户组

    您好 我想将多个组分配给特定客户 例如 Rajat 客户 属于 批发 零售商 电力 实际上我在上面看到了同样的话题每个客户有多个客户组 https stackoverflow com questions 6153011 multiple c
  • 如何在 dropzone.js 中显示上传进度百分比

    我在 magento 中使用 dropzone js 上传文件 进度条工作正常 但我也想显示进度百分比 以下功能正在向跨度添加样式 uploadprogress function a b var c d e f g if a preview
  • Magento 以编程方式创建捆绑产品

    在哪里可以找到使用 PHP 创建 BundleProducts 的完整且有效的示例 我正在使用 Magento 1 7 谷歌只给我片段 EDIT 到目前为止我正在使用这段代码 但是保存会抛出异常 致命错误 在第 73 行对 app code
  • Magento 中的 jquery/prototype 冲突

    这是一个基于 Themeforest 的 Acumen 主题的 Magento 商店 出乎意料的是 jquery 的东西现在不起作用了 Acumen 通过 magento 静态块加载 jquery 但这些都没有被触及 昨天我正在努力添加 j

随机推荐