[英]Where should I place block icons and CSS in magento extension
我的magento扩展添加了一个新块(例如poll块)到侧边栏。 我使用与poll块使用的相同的html结构,使块看起来像它的系统部分。
即
<div class="block block-myblock">
<div class="block-title">
<strong><span><?php echo $this->__('block title') ?></span></strong>
</div>...
我知道由于CSS规则,轮询上的图标会阻止apear:
.block-poll .block-title strong { background-image:url(../images/i_block-poll.gif); }
从/skin/frontend/base/default/css/widgets.css
返回
我也知道图像本身存储在: skin/frontend/default/default/images/
我有两个问题:
添加我自己的需要CSS规则以显示我的块附近的图标的适当方法是什么? 即.block-myblock .block-title strong { background-image:url(../images/i_block-myblock.gif); }
.block-myblock .block-title strong { background-image:url(../images/i_block-myblock.gif); }
直接进入某些文件? 以及使用addCSS之类的调用或者类似的东西,通过块的代码添加哪个文件?
我存储i_block-myblock.gif
图像的合适路径是什么?
请记住,这完全是在扩展的背景下,而不是对我自己的商店的本地修改。
这是一个非常好的问题,+1用于保持你的CSS中的Magento措辞! 为了避免混淆可能使用我的模块的开发人员,我个人做的是创建一个专用于模块的皮肤子文件夹。 这样,无论是否为非实验用户正确运行,都将在正确的主题文件夹中轻松查找和剪切/粘贴其css规则和图像。
1-创建文件夹和文件体系结构
喜欢 :
2-编辑你的/skin/frontend/default/default/[your_module_name]/css/styles.css
...像往常一样但只包含与您的模块相关的CSS类,即:
.block-myblock .block-title strong { background-image:url(../images/i_block-myblock.gif); }
3-从模块的布局XML中调用CSS文件
打开,让我们说/app/design/frontend/default/default/layout/[your_module_name].xml并在第一个打开节点之后添加以下行,如下所示:
<?xml version="1.0"?>
<layout version="0.1.0">
<!-- Code to add -->
<default>
<reference name="head">
<action method="addItem"><type>skin_css</type><name>[your_module_name]/css/styles.css</name><params/></action>
</reference>
</default>
<!-- [end] -->
.
.
.
</layout>
这应该在尊重Magento标准的同时工作,不会污染现有的主题,也不会给那些希望完全融合你的皮肤的开发者带来麻烦。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.