HTMLキャッシュとサブカテゴリの表示をブロックします


7

そのため、ストアを1.9.2.1に移動しました。BlocksHTMLキャッシュを除いて、すべてが正常に見えます。

私はこれをできる限り説明しようとします。

静的ブロックを使用してスクリプトを呼び出し、親カテゴリ内のサブカテゴリを表示する一般的な設定があります。 このチュートリアルに似たもの

それは何の問題もなく常に機能しています...私がアップグレードするまで。私が目にしている問題は、この静的ブロックスクリプトを使用してサブカテゴリを表示するカテゴリページが失敗し、これらのすべてのカテゴリが同じキャッシュされたサブカテゴリページを表示することです。再キャッシュせずに、これらのすべてのページに同じコンテンツを提供するだけのようなものです。つまり、サブカテゴリスクリプトを使用するすべてのカテゴリには、正しくないサブカテゴリのキャッシュされたレイアウトが表示されるため、顧客はサイトの正しいレイヤーに移動できません。

Mageクリーンアップスクリプトを実行して、奇妙なアクセス許可の問題をリセットしましたが、役に立ちません。お客様が実際にサイトを閲覧できるようにするための一時的な修正として、問題をすぐに修正するBlocks HTMLキャッシュを無効にしました。したがって、明らかに問題は、キャッシュがコンテンツを正しく提供していないか、実際には再キャッシュが必要であることを認識していることです。これを修正するにはどうすればよいですか?個々の製品をリストしない親カテゴリー内のサブカテゴリーを提供するより効率的な方法はありますか?

これがサブグリッドを素敵なグリッドに表示するために使用しているコードです(Pastbin):

<div class='category-grid'>
<?php 
if($_collectionSize):
    $i=0; 
    $layer = Mage::getSingleton('catalog/layer');
    ?>
    <ul class="products-grid">
    <?php
    foreach ($_categories as $_category):

        $layer->setCurrentCategory($_category);
        $_category = Mage::getModel('catalog/category')->load($_category->getId());


        $products = Mage::getModel('catalog/product')->getCollection()
                                                ->addCategoryFilter($_category)
                                                ->addAttributeToSort('price', 'asc')
                                                ->setPageSize(1)
                                                ->load();

        $prod = $products->getFirstItem();
        $lowestProductPrice = $taxHelper->getPrice($prod, $prod->getPrice(), true, null, null, null, null, false);
        $formattedPrice = Mage::helper('core')->currency($lowestProductPrice, true, false);

            //$originalCategory->getThumbnail();
             $_img = ($_category->getThumbnail()) ? "/media/catalog/category/".$_category->getThumbnail() : "/media/placeholders/small.jpg";
             $_img = Mage::getBaseUrl() . $_img;
        ?>
                    <li class="item <?php if(($i-1)%$_columnCount==0): ?> first<?php elseif($i%$_columnCount==0): ?> last<?php endif; ?>">
                        <a href="<?php echo $_category->getUrl(); ?>" title="<?php echo $_category->getName(); ?>" class="product-image">
                            <?php if($_img):?>
                                <img src="<?php echo $_img; ?>" alt="<?php echo $_category->getName();?>" />
                            <?php else:?>
                                <?php echo $_category->getName();?>
                            <?php endif;?>
                        </a>
                        <div class="product-detail">
                            <h2 class="product-name"><a href="<?php echo $helper->getCategoryUrl($_category); ?>" title="<?php echo $this->stripTags($_category->getName(), null, true) ?>"><?php echo $_category->getName(); ?></a></h2>

                        </div>
                    </li>
    <?php endforeach; ?>
    </ul>
<?php else: ?>
<p><?php echo $this->__('No categories found.'); ?></p>
<?php endif ?>
</div>

回答:


0

1.9.2で導入された静的ブロックキャッシュのバグが発生している可能性がありますが、1.9.2.1で修正済みと報告されていますが、静的ブロックでのキャッシュの問題がまだ発生しています。詳細はこちら

Magento 1.9.2.0静的ブロック表示の問題

このバグの適切な修正/回避策はこのモジュールです

https://github.com/progammer-rkt/Rkt_SbCache


リンクに感謝します。ステージングに修正を実装し、それがどのように実行されるかを確認します。
ジェイク

これまでの2017年の最新バージョンは1.9.3.6ですが、それでも問題は解決しません
Vaishal Patel
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.