Постоянно перезаписывается композитный кэш стриницы, в котором присутствует облать разметки компонента bitrix:sale.basket.basket.line
заключенная между вызовами методов $frame=$this->createFrame()->begin() и $frame->end();
Кэш страницы, который каждый раз перезаписывается из-за изменений в корзине товаров:
Код |
---|
<div id="bxdynamic_T0LpEu_start" style="display:none"></div><span id="bx_basket2" >
<div data-role="basket-item-list" class="bx-basket-item-list">
<div class="bx-basket-item-list-button-container">
<a href="/personal/order/make/" class="btn btn-primary">Оформить заказ</a>
</div>
<div id="bx_basket2products" class="bx-basket-item-list-container" style="display: none;">
<div class="bx-basket-item-list-item-status">Готовые к покупке товары</div>
<div class="bx-basket-item-list-item">
<div class="bx-basket-item-list-item-img">
<img src="/upload/resize_cache/iblock/394/70_70_1/39415fa6e5efd233a61456a7fe07ad9e.jpg" alt="MalleoTrain" />
<div class="bx-basket-item-list-item-remove" oncl ick="bx_basket2.removeItemFromCart(1142)" title="Удалить"></div>
</div>
<div class="bx-basket-item-list-item-name">
MalleoTrain </div>
<div class="bx-basket-item-list-item-price-block">
<div class="bx-basket-item-list-item-price"><strong>5 250 руб.</strong></div>
<div class="bx-basket-item-list-item-price-summ">
<strong>1</strong> шт на сумму <strong>5 250 руб.</strong>
</div>
</div>
</div>
<div class="bx-basket-item-list-item">
<div class="bx-basket-item-list-item-img">
<img src="/upload/resize_cache/iblock/394/70_70_1/39415fa6e5efd233a61456a7fe07ad9e.jpg" alt="MalleoTrain" />
<div class="bx-basket-item-list-item-remove" oncl ick="bx_basket2.removeItemFromCart(1143)" title="Удалить"></div>
</div>
<div class="bx-basket-item-list-item-name">
MalleoTrain </div>
<div class="bx-basket-item-list-item-price-block">
<div class="bx-basket-item-list-item-price"><strong>5 250 руб.</strong></div>
<div class="bx-basket-item-list-item-price-summ">
<strong>1</strong> шт на сумму <strong>5 250 руб.</strong>
</div>
</div>
</div>
</div>
</div>
<sc ript>
</sc ript>
</span>
|
Я не могу понять, почему в дисковый кэш композита попадает html код, расположенный между вызовами данных методов
Код шаблона компонента
Код |
---|
$this->setFrameMode(true);
$cartStyle = 'bx-basket';
$cartId = "bx_basket".$component->getNextNumber();
$arParams['cartId'] = $cartId;
if ($arParams['POSITION_FIXED'] == 'Y')
{
$cartStyle .= "-fixed {$arParams['POSITION_HORIZONTAL']} {$arParams['POSITION_VERTICAL']}";
if ($arParams['SHOW_PRODUCTS'] == 'Y')
$cartStyle .= ' bx-closed';
}
else
{
$cartStyle .= ' bx-opener';
}
?>
<sc ript>
</sc ript>
<?$frame = $this->createFrame()->begin();?>
<span id="<?=$cartId?>" >
<?
$cartId = $arParams['cartId'];
if ($arParams["SHOW_PRODUCTS"] == "Y" && $arResult['NUM_PRODUCTS'] > 0)
{
?>
<div data-role="basket-item-list" class="bx-basket-item-list">
<?if ($arParams["POSITION_FIXED"] == "Y"):?>
<div id="<?=$cartId?>status" class="bx-basket-item-list-action" oncl ick="<?=$cartId?>.toggleOpenCloseCart()"><?=GetMessage("TSB1_COLLAPSE")?></div>
<?endif?>
<?if($arParams["PATH_TO_ORDER"] && $arResult["CATEGORIES"]["READY"]):?>
<div class="bx-basket-item-list-button-container">
<a href="<?=$arParams["PATH_TO_ORDER"]?>" class="btn btn-primary"><?=GetMessage("TSB1_2ORDER")?></a>
</div>
<?endif?>
<div id="<?=$cartId?>products" class="bx-basket-item-list-container" style="display: none;">
<?foreach ($arResult["CATEGORIES"] as $category => $items):
if (empty($items))
continue;
?>
<div class="bx-basket-item-list-item-status"><?=GetMessage("TSB1_$category")?></div>
<?foreach ($items as $v):?>
<div class="bx-basket-item-list-item">
<div class="bx-basket-item-list-item-img">
<?if ($arParams["SHOW_IMAGE"] == "Y" && $v["PICTURE_SRC"]):?>
<?if($v["DETAIL_PAGE_URL"]):?>
<a href="<?=$v["DETAIL_PAGE_URL"]?>"><img src="<?=$v["PICTURE_SRC"]?>" alt="<?=$v["NAME"]?>"></a>
<?else:?>
<img src="<?=$v["PICTURE_SRC"]?>" alt="<?=$v["NAME"]?>" />
<?endif?>
<?endif?>
<div class="bx-basket-item-list-item-remove" oncl ick="<?=$cartId?>.removeItemFromCart(<?=$v['ID']?>)" title="<?=GetMessage("TSB1_DELETE")?>"></div>
</div>
<div class="bx-basket-item-list-item-name">
<?if ($v["DETAIL_PAGE_URL"]):?>
<a href="<?=$v["DETAIL_PAGE_URL"]?>"><?=$v["NAME"]?></a>
<?else:?>
<?=$v["NAME"]?>
<?endif?>
</div>
<?if (true):?>
<div class="bx-basket-item-list-item-price-block">
<?if ($arParams["SHOW_PRICE"] == "Y"):?>
<div class="bx-basket-item-list-item-price"><strong><?=$v["PRICE_FMT"]?></strong></div>
<?if ($v["FULL_PRICE"] != $v["PRICE_FMT"]):?>
<div class="bx-basket-item-list-item-price-old"><?=$v["FULL_PRICE"]?></div>
<?endif?>
<?endif?>
<?if ($arParams["SHOW_SUMMARY"] == "Y"):?>
<div class="bx-basket-item-list-item-price-summ">
<strong><?=$v["QUANTITY"]?></strong> <?=$v["MEASURE_NAME"]?> <?=GetMessage("TSB1_SUM")?>
<strong><?=$v["SUM"]?></strong>
</div>
<?endif?>
</div>
<?endif?>
</div>
<?endforeach?>
<?endforeach?>
</div>
</div>
<sc ript>
</sc ript>
<?
}
//$frame = $this->createFrame('bx_cart_block', false)->begin();
//require(realpath(dirname(__FILE__)).'/ajax_template.php');
//$frame->beginStub();
//require(realpath(dirname(__FILE__)).'/top_template.php');
//$frame->end();
?>
</span>
<?$frame->end();?>
|