将数据库值调用到Magento静态块的最佳方法是什么?

时间:2013-12-10 01:45:55

标签: magento

如果这是一个非常基本的问题我很抱歉,但我想知道最好的方法是什么。

我有一个Magento商店,我想在产品描述中插入一个静态块。不确定如何去做...

我希望静态块也调用产品规范,因此在更新属性时它们会自动更新描述。当我单击“插入变量”按钮时,只会出现有限数量的值。有没有办法可以扩展此列表以添加产品规格,如制造商,高度,完成等?

有关如何执行此操作的任何建议?先感谢您!

1 个答案:

答案 0 :(得分:1)

我不知道在产品说明字段中调用自定义变量或动态变量。

您可以调用返回相应属性值的静态块。要做到这一点......

  1. 安装Static Blocks Everywhere extension,以便您可以在产品说明中使用块代码标记。

  2. 在以下位置创建新模板文件:app/design/frontend/default/default/template/catalog/product/view/attribute_block.phtml

  3. 在您的attribute_block.phtml模板文件中,粘贴以下代码:

    <?php
    $_product = Mage::registry('current_product');
    $attribute_code = $this->getAttributeCode();
    
    if($_product && $attribute_code) {
        $attribute_value = $_product->getResource()->getAttribute($attribute_code)->getFrontend()->getValue($_product);
    
        echo $attribute_value;
    }
    
  4. 在产品说明中使用以下区块代码:

    {{block type="core/template" template="catalog/product/view/attribute_block.phtml" attribute_code="color"}}

    *将color中的attribute_code="color"更改为您要为此产品加载的属性代码值

  5. 确保属性在产品视图页面上可见设置为Yes。在目录&gt;下查找属性&gt;管理属性&gt; *修改您的属性

  6. 通过一切设置,您现在应该可以在描述中调用产品属性值。例如,以下内容:

    The color of this product is <strong>{{block type="core/template" template="catalog/product/view/attribute_block.phtml" attribute_code="color"}}</strong> and the name is <strong>{{block type="core/template" template="catalog/product/view/attribute_block.phtml" attribute_code="name"}}</strong>.`
    

    将输出:

      

    此产品的颜色为黑色,名称为我的黑色   产品