小编rlf*_*low的帖子

尝试通过Magento的整页缓存获得动态内容

我正在使用Magento Enterprise 1.10.1.1,需要在我们的产品页面上获取一些动态内容.我在块中插入当前时间以快速查看它是否正常工作,但似乎无法通过整页缓存.

我尝试过各种各样的实现:

http://tweetorials.tumblr.com/post/10160075026/ee-full-page-cache-hole-punching http://oggettoweb.com/blog/customizations-compatible-magento-full-page-cache/ http:/ /magentophp.blogspot.com/2011/02/magento-enterprise-full-page-caching.html

欢迎任何解决方案,想法,评论和建议.

这是我的代码:

应用程序/代码/本地/菲/示例/ etc/config.xml中

<?xml version="1.0"?>
<config>
    <modules>
        <Fido_Example>
            <version>0.1.0</version>
        </Fido_Example>
    </modules>
    <global>
        <blocks>
            <fido_example>
                <class>Fido_Example_Block</class>
            </fido_example>     
        </blocks>
    </global>
</config>
Run Code Online (Sandbox Code Playgroud)

应用程序/代码/本地/菲/示例/ etc/cache.xml

<?xml version="1.0" encoding="UTF-8"?>
<config>
    <placeholders>
        <fido_example>
            <block>fido_example/view</block>
            <name>example</name>
            <placeholder>CACHE_TEST</placeholder>
            <container>Fido_Example_Model_Container_Cachetest</container>
            <cache_lifetime>86400</cache_lifetime>
        </fido_example>
    </placeholders>
</config>
Run Code Online (Sandbox Code Playgroud)

应用程序/代码/本地/菲/实施例/块/ View.php

<?php

class Fido_Example_Block_View extends Mage_Core_Block_Template
{
    private $message;
    private $att;

    protected function createMessage($msg) {
        $this->message = $msg;
    }

    public function receiveMessage() {
        if($this->message != '') {
            return $this->message;
        } 
        else {
            $this->createMessage('Hello World');
            return …
Run Code Online (Sandbox Code Playgroud)

enterprise caching magento hole-punching

8
推荐指数
1
解决办法
1万
查看次数

Magento将当前产品ID传递给模块

我有一个自定义模块,可以在我的产品页面上显示数据.我的模块需要获取当前的产品ID.我试过用:

Mage::registry('current_product');
Run Code Online (Sandbox Code Playgroud)

这适用于第一次加载,但是当我刷新时,current_product不再具有完整页面缓存的数据.

有任何想法吗?

caching magento

6
推荐指数
1
解决办法
5036
查看次数

Magento-产品属性索引和分层导航

默认情况下,Magento的分层导航逻辑用作OR,例如制造商是Nike OR Reebok,价格在$ 80-100之间或在$ 100- $ 120之间,等等。

但是,我们需要使用AND逻辑过滤一些多选属性-例如,我想找到一件颜色为蓝色AND绿色的T恤。

我们使用AND逻辑...但是,存在一个问题,因为产品属性索引是基于可配置产品而不是简单产品构建的,因此当我通过Blue AND Red过滤T恤时,我会得到所有具有Blue AND的可配置T恤在任何简单产品中为红色,因此:

T恤1(配置)蓝色和红色衬衫(简单)

T恤2(配置)蓝色衬衫(简单)红色衬衫(简单)

结果中同时显示T恤1和T恤2,但实际上我只想要T恤1。

有什么想法吗?

magento

5
推荐指数
0
解决办法
1583
查看次数

Magento的性能随着添加的购物车价格规则而下降

购物车价格规则导致“添加到购物车”和“结帐”按钮的速度显着下降。

我在两个地方找到了使用两种不同解决方案解决的问题:

http://www.magentocommerce.com/answers/discussion/1997/Huge-performance-problem-with-shopping-cart-price-rules-in-large-volumes-3000-5000-coupons/p1

我通过创建app / code / local / Mage / SalesRule / Model / Rule / Condition / Product.php的本地副本尝试了上述方法,并用以下代码 覆盖了验证函数:

 public function validate(Varien_Object $object)
{
    if(!Mage::registry("rule_condition_product_".$object->getProductId()))
    {
        $product = Mage::getModel('catalog/product')
                    ->load($object->getProductId());
        Mage::register("rule_condition_product_".$object->getProductId(),$product);
    }

        $product = Mage::registry("rule_condition_product_".$object->getProductId());

        $product->setQuoteItemQty($object->getQty())
                ->setQuoteItemPrice($object->getPrice())
                ->setQuoteItemRowTotal($object->getRowTotal());

    return parent::validate($product);
}
Run Code Online (Sandbox Code Playgroud)

性能没有改善

另一个建议的解决方案是:

http://www.neptuneweb.com/blog/29-improving-magento-checkout-performance-with-large-number-of-cart-rules.html

这建议覆盖product-> load()函数,但我不清楚他们建议如何/在何处执行此操作。我认为它不是app / code / core / Mage / Core / Model / Abstract.php的本地版本

有什么想法吗?

magento

5
推荐指数
1
解决办法
1496
查看次数

标签 统计

magento ×4

caching ×2

enterprise ×1

hole-punching ×1