繁体   English   中英

我应该在哪里放置块图标和CSS在magento扩展中

[英]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/

我有两个问题:

  1. 添加我自己的需要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之类的调用或者类似的东西,通过块的代码添加哪个文件?

  2. 我存储i_block-myblock.gif图像的合适路径是什么?

请记住,这完全是在扩展的背景下,而不是对我自己的商店的本地修改。

这是一个非常好的问题,+1用于保持你的CSS中的Magento措辞! 为了避免混淆可能使用我的模块的开发人员,我个人做的是创建一个专用于模块的皮肤子文件夹。 这样,无论是否为非实验用户正确运行,都将在正确的主题文件夹中轻松查找和剪切/粘贴其css规则和图像。

1-创建文件夹和文件体系结构

喜欢 :

  • /skin/frontend/default/default/[your_module_name]/css/styles.css
  • / skin / frontend / default / default / [your_module_name] / images /(包含所有模块的图像)

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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM