0

我正在重新设计客户的顶级类别页面,我想通过使其动态化来保证设计的未来。为了进一步澄清,我想要它,所以每当客户端添加、编辑或删除低于当前级别的类别时,它都会在前端反映这一点,而无需编辑代码。

现在,我遇到了一些关于该主题的博客文章,甚至是 Stack 论坛帖子: http ://www.templatemonster.com/help/magento-listing-sub-categories-on-a-category-page.html 如何在 Magento 中使用 getThumbnailUrl() 显示类别中的缩略图

但是,它们的处理方式不同。Stack 帖子还引导我访问: http: //www.douglasradburn.co.uk/getting-category-thumbnail-images-with-magento/

我发现我需要添加提取缩略图的功能(去 Magento 的方式)。但是,这就是我需要的!这里的最终目标是在类别的后端使用缩略图,而不是图像。我们按预期在其他地方使用图像。我还希望能够将类别描述从后端提取到前端,以便添加一些额外的信息,例如链接、真实描述等。

如果有人可以帮助我吗?我浏览了上面的示例和链接,但缩略图并没有拉到前端,总的来说,我只是得到了一些奇怪的行为。当我自己进一步研究时,任何提示都将不胜感激。

谢谢!

4

2 回答 2

0

新更新:

以下代码有效:

<?php echo $cur_category->getDescription(); ?>

但是,您需要确保检查您的范围!没有意识到我的个人商店范围没有被选中以遵循“所有范围”默认值,我修复了这个问题,当添加到“描述”区域时,上面的代码对我有用!

谢谢堆栈!

以前的更新:

我现在有我在网上找到的代码工作,它涉及我添加一个函数来提取类别缩略图。有用!这是模板的标记:

<div class="category-products">
<ul class="products-grid">

        <?php
            $_categories=$this->getCurrentChildCategories();

            if($_categories->count()):
                $categorycount = 0;

            foreach ($_categories as $_category):
            if($_category->getIsActive()):
                $cur_category=Mage::getModel('catalog/category')->load($_category->getId());
                $layer = Mage::getSingleton('catalog/layer');
                $layer->setCurrentCategory($cur_category);
                $catName = $this->getCurrentCategory()->getName();

            if ($categorycount == 0){
                $class = "first";
            }

            elseif ($categorycount == 3){
                $class = "last";
            }

            else{
                $class = "";
            }
        ?>


    <li class="item <?=$class?>">
        <a href="<?php echo $cur_category->getURL() ?>" title="<?php echo $this->htmlEscape($cur_category->getName()) ?>">
            <img src="<?php echo $cur_category->getThumbnailUrl() ?>" width="100" alt="<?php echo $this->htmlEscape($cur_category->getName()) ?>" />
        </a>

        <h2>
            <a href="<?php echo $cur_category->getURL() ?>" title="<?php echo $this->htmlEscape($cur_category->getName()) ?>">
                <?php echo $this->htmlEscape($cur_category->getName()) ?>
            </a>
        </h2>

        <p>
            DESCRIPTION
        </p>
    </li>

        <?php
            endif;
            if($categorycount == 3){
                $categorycount = 0;

                echo "</ul>\n\n<ul class=\"products-grid\">";
            }

            else{
                $categorycount++;
            }

            endforeach;
            endif;
        ?>

</ul>

现在,在您看到“DESCRIPTION”的地方,我想从后端提取类别描述数据并将其输出到那里。基本上,允许动态创建/修改顶级类别页面。

我怎样才能拉描述呢?我不是 Magento 的专家,也许我缺少一些基本的东西,但我无法让它工作。

谢谢!

于 2013-07-01T16:09:10.260 回答
0

请尝试以下代码。我已经用这个实现了相同的

<?php $category_path          =    Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA)."catalog/category/"; ?>
<?php if (!Mage::registry('current_category')) return ?>
<?php $_categories = $this->getCurrentChildCategories() ?>
<?php $_count = is_array($_categories)?count($_categories):$_categories->count(); ?>
<?php if($_count): ?>
    <div class="static-page-listing static-page-listing1">
        <ul class="products-grid">
            <?php $num = 0; ?>
             <?php foreach ($_categories as $_category): ?>
                 <?php if($_category->getIsActive()): 
                 $num++;
                    $selImage      =    "SELECT value FROM catalog_category_entity_varchar WHERE attribute_id = '126' AND entity_id = '".$_category->getId()."'";
                    $catImage      =    Mage::getSingleton('core/resource')->getConnection('core_read')->fetchOne($selImage);
                    if(!$catImage)  $catImage = "no_image.jpg"; ?>
                    <li class="category-item  <?php if($num%2==0) echo 'item-right'?>">
                        <a href="<?php echo $this->getCategoryUrl($_category) ?>">
                        <div style="float:left; width:100%;">
                                <img src="<?php echo $category_path.$catImage?>">
                        </div>
                        <div>
                            <h3><?php echo $this->htmlEscape($_category->getName()) ?></h3>
                            <h6 style = "color:red;">VIEW ALL</h6>
                        </div>
                         </a>
                    </li>

                 <?php endif; ?>
              <?php endforeach ?>
        </ul>
    </div>
<?php endif; ?>
于 2013-06-20T07:05:32.417 回答