2015-07-11 4 views
1

Мне не удалось создать пустую панель с фиксированным статусом CMS в категории> настройки дисплея.Статический блок категории Magento не отображается

Содержание app/design/frontend/base/default/template/catalog/category/view.phtml представляется правильным в соответствии с similar question on SE. Здесь вы идете:

<?php if($this->isContentMode()): ?> 
    <?php echo $this->getCmsBlockHtml() ?> 

<?php elseif($this->isMixedMode()): ?> 
    <?php echo $this->getCmsBlockHtml() ?> 
    <?php echo $this->getProductListHtml() ?> 

<?php else: ?> 
    <?php echo $this->getProductListHtml() ?> 
<?php endif; ?> 

Я настроил 3 категории, позволяет сказать

  1. category_a (только продукты)
  2. category_b (как продукты и КМВ)
  3. category_c (только КМВ блок).

Вещи, которые я пробовал, не работает:

  1. нетрудоспособных собственную тему и используемую тему Magento по умолчанию.
  2. Заменен view.phtml из другой установки пурпурного цвета (там, где ее работает отлично).
  3. Заменить, если-то блок с

    <?php if($this->isContentMode()): ?> 
    MODE: CMS 
        <?php echo $this->getCmsBlockHtml() ?> 
    
    <?php elseif($this->isMixedMode()): ?> 
    MODE: MIXED 
        <?php echo $this->getCmsBlockHtml() ?> 
        <?php echo $this->getProductListHtml() ?> 
    
    <?php else: ?> 
    MODE: PRODUCTS 
        <?php echo $this->getProductListHtml() ?> 
    <?php endif; ?> 
    

    Это отображается MODE: PRODUCTS для всех 3-х случаях (продукт/CMS/смешанный)

  4. Извлечение если-то блок и использовать только линии, чтобы заставить Magento для отображения как cms, так и блоков продуктов. Предполагая, что управление не течет, чтобы исправить блок.

    <?php echo $this->getCmsBlockHtml() ?> 
    <?php echo $this->getProductListHtml() ?> 
    

    блок только продукт получил отображается для всех 3-х категорий, упомянутых выше (продукта/СХ/смешанного)

  5. я могу видеть, что есть 2 проблемы здесь, или по крайней мере я так думаю. Режим отображения

    1. категория всегда приходит как "продукты только"
    2. getCmsBlockHtml() не возвращает ничего

поэтому я попытался следующий фрагмент кода на основе Mage_Catalog_Block_Category_View

Product: 
<?php echo $this->getCurrentCategory()->getDisplayMode()==Mage_Catalog_Model_Category::DM_PRODUCT; ?> 
MIXED: 
<?php echo $this->getCurrentCategory()->getDisplayMode()==Mage_Catalog_Model_Category::DM_MIXED; ?> 
CMS: 
<?php echo $this->getCurrentCategory()->getDisplayMode()==Mage_Catalog_Model_Category::DM_PAGE; ?> 

и получил ответ как >>Product: MIXED:1 CMS: для всех трех категорий ry (продукт/cms/mixed).

Может кто-то помочь мне, пожалуйста. У меня отключены кеши и попробовали переиндексацию.

ответ

0

Я нашел фикс для моего вопроса здесь Magento 1.9.2.0

App/код/​​ядро ​​/ Mage/Каталог/Block/Категория/вид.PHP внутри функции getCmsBlockHtml

On Line 109 он прочитал возвращение

но следует читать вернуть $ this-> GetData ('cms_block_html');

С уважением, paul