如何通过magento后端引用magento中的静态块的类别名称和图像?我正在运行1.7。magento - 静态块中的类别名称和图像?
回答
我不知道有一种方法可以轻松地从静态块中引用这些值。
相反,我会建议你创建并使用一个小部件(在我看来,Magento中使用最少的功能之一),它将提供一个更清洁和更可扩展的方式来实现这一点 - 虽然它确实需要更多的工作: )
请参见下面的代码Magento的窗口小部件的完整(简体)例子不正是你从静态块问:
应用程序的/ etc /模块/ YourCompany_Categorywidget.xml
<config>
<modules>
<MyCompany_Categorywidget>
<active>true</active>
<codePool>community</codePool>
</MyCompany_Categorywidget>
</modules>
</config>
ap P /代码/小区/ MyCompany的/ Categorywidget的/ etc/config.xml中
<?xml version="1.0"?>
<config>
<modules>
<MyCompany_Categorywidget>
<version>1.0.0</version>
</MyCompany_Categorywidget>
</modules>
<global>
<blocks>
<categorywidget>
<class>MyCompany_Categorywidget_Block</class>
</categorywidget>
</blocks>
<helpers>
<categorywidget>
<class>MyCompany_Categorywidget_Helper</class>
</categorywidget>
</helpers>
</global>
</config>
应用程序/代码/小区/ MyCompany的/ Categorywidget的/ etc/widget.xml
<?xml version="1.0"?>
<widgets>
<category_widget type="categorywidget/catalog_category_widget_info" translate="name description" module="categorywidget">
<name>Category Info Block</name>
<description>Category Info Block showing name, image etc</description>
<parameters>
<block_title translate="label">
<required>1</required>
<visible>1</visible>
<label>Block Title</label>
<type>text</type>
</block_title>
<template>
<required>1</required>
<visible>1</visible>
<label>Template</label>
<type>select</type>
<value>categorywidget/info.phtml</value>
<values>
<default translate="label">
<value>categorywidget/info.phtml</value>
<label>Category Widget Info Block - Default Template</label>
</default>
<!-- Add different temmplates here for different block positions -->
</values>
</template>
<category translate="label">
<visible>1</visible>
<required>1</required>
<label>Category</label>
<type>label</type>
<helper_block>
<type>adminhtml/catalog_category_widget_chooser</type>
<data>
<button translate="open">
<open>Select Category...</open>
</button>
</data>
</helper_block>
<sort_order>10</sort_order>
</category>
</parameters>
</category_widget>
</widgets>
应用程序/代码/小区/ MyCompany的/ Categorywidget /助手/ Data.php
<?php
class MyCompany_Categorywidget_Helper_Data extends Mage_Core_Helper_Abstract
{}
应用程序/代码/社区/ MyCompany的/ Categorywidget /座/目录/分类/空间/ info.php的
<?php
class MyCompany_Categorywidget_Block_Catalog_Category_Widget_Info
extends MyCompany_Categorywidget_Block_Catalog_Category_Info
implements Mage_Widget_Block_Interface
{
protected function _prepareCategory()
{
$this->_validateCategory();
$category = $this->_getData('category');
if (false !== strpos($category, '/')) {
$category = explode('/', $category);
$this->setData('category', (int)end($category));
}
return parent::_prepareCategory();
}
}
应用程序/代码/社区/ MyCompany的/ Categorywidget /座/目录/分类/ info.php的
<?php
class MyCompany_Categorywidget_Block_Catalog_Category_Info extends Mage_Core_Block_Template
{
protected $_category;
protected function _beforeToHtml()
{
$this->_category = $this->_prepareCategory();
return parent::_beforeToHtml();
}
protected function _prepareCategory()
{
$this->_validateCategory();
return Mage::getModel('catalog/category')->load($this->_getData('category'));
}
protected function _validateCategory()
{
if (! $this->hasData('category')) {
throw new Exception('Category must be set for info block');
}
}
public function getCategoryName()
{
return $this->_category->getName();
}
public function getCategoryImage()
{
return $this->_category->getImageUrl();
}
}
应用程序/设计/前端/基/默认/模板/ categorywidget/info.phtml
<?php
$_categoryName = $this->getCategoryName();
$_categoryImage = $this->getCategoryImage();
?>
<div class="categoryinfo_block block">
<p><strong><?php echo $_categoryName ?></strong></p>
<img src="<?php echo $_categoryImage ?>" alt="<?php echo $_categoryName ?>" />
</div>
我想链接到类别的图像,以及,所以我说...
应用程序/代码/社区/ MyCompany的/ Categorywidget /座/目录/分类/ info.php的
public function getCategoryUrl()
{
return $this->_category->getUrl();
}
应用程序/设计/前端/基/默认/模板/ categorywidget/info.phtml
<?php
$_categoryName = $this->getCategoryName();
$_categoryImage = $this->getCategoryImage();
$_categoryUrl = $this->getCategoryUrl();
?>
<div class="categoryinfo_block block">
<p><strong><?php echo $_categoryName ?></strong></p>
<a href="<?php echo $_categoryUrl ?>" title="<?php echo $_categoryName ?>" alt="<?php echo $_categoryName ?>">
<img src="<?php echo $_categoryImage ?>" alt="<?php echo $_categoryName ?>" />
</a>
</div>
如果帮助别人?
如何获得我正在使用的类别1.9的简短说明? – TheBlackBenzKid
- 1. Magento类别静态块未显示
- 2. 数据库magento中“静态块”和“Cms页”的表名称?
- 3. magento静态块图像间歇消失
- 4. Magento类别图像
- 5. 静态类的别名System.Configuration.ConfigurationManager;
- 6. Magento - 在顶部类别菜单名称旁边放置图像
- 7. Magento如何链接到静态块/页的ID按类别
- 8. Magento产品目录 - 使用静态块的重复类别
- 9. Magento类别的静态块只能不工作
- 10. Magento的类别图像
- 11. Magento的静态块URL
- 12. 显示所有产品在Magento静态块所属类别
- 13. 如果启用了静态块,则隐藏类别标题(magento)
- 14. 如何根据Magento中的类别id获取类别名称
- 15. 获取magento中根类别的特定/特定类别名称
- 16. 的Magento如何获得的使用静态块ID产品类别总数...和
- 17. 在静态块Magento的Java脚本的鼠标经过图像
- 18. 匿名块像个静态块
- 19. 在类别模块中显示父类别名称模块
- 20. 上传每行更多的图像在Magento静态块
- 21. 获取php源中的类别名称Magento主要和子类别
- 22. Magento静态块JavaScript变量
- 23. Magento“静态块”包装
- 24. Magento目录产品子类别名称
- 25. 获取Magento类别URL&名称
- 26. 1.9.2.2中的Magento静态块问题
- 27. Magento - 静态块中的cms页标题
- 28. Magento:类别名称,而不是类别路径中的类别标识。
- 29. 静态类型别名Java类
- 30. 如何添加动态元标记,类别名称:subcategoryname:产品名称在Magento
我按照这个教程 - 窗口小部件在哪里出现? – TheBlackBenzKid