我正在寻找删除“由狂欢驱动”页脚。有人知道吗 它位于何处?
另外,添加新分类法时,“Shop By”如何被覆盖?
感谢
答案 0 :(得分:5)
免责声明:这些提示可能与最新版本的Spree中所写的完全不同。我最近没有和Spree合作过。
对于Spree 1.0版,您可以覆盖 app / views / spree / layouts / spree_application.html.erb 。我认为当前版本与之前(1.0之前版本)版本的路径略有不同。
作为一个更干净的选项,您可以使用Deface删除页脚中的“Powered by Spree”语句,如下所示:
Deface::Override.new(:virtual_path => "spree/layouts/spree_application",
:name => "footer-left",
:remove => "#footer-left")
如果您想要替换它,您可以执行以下操作:
Deface::Override.new(:virtual_path => "spree/layouts/spree_application",
:name => "footer-left",
:replace_contents => "#footer-left",
:text => "My Left Footer Text")
甚至更轻松:
Deface::Override.new(:virtual_path => "spree/layouts/spree_application",
:name => "footer-left",
:replace_contents => "#footer-left") do
'<div id="footer-left" class="columns alpha eight" data-hook>
<p><%= t(:powered_by) %> <%= link_to "YuriTek", "http://yuritek.com" %></p>
</div>'
end
将上面的语句放入rb文件并将其放在app / overrides目录中。我认为将它放入配置/初始化器也可以。
P.S。 Spree开箱即用,包含在Spree中。
答案 1 :(得分:3)
这更新了Binary和yuri对 Spree v1.3
的回答页脚已移至部分app/views/spree/shared/_footer.html.erb
所以要使用Deface覆盖它,你可以使用以下两种方法之一:
Deface :: Override - 这是传统方法(根据yuri的回答)
Deface DSL - .deface文件(根据Binary的回答)
因此,要使用Deface :: Override,请创建一个包含以下内容的文件app/overrides/remove_footer.rb
Deface::Override.new(:virtual_path => 'spree/shared/_footer',
:name => 'remove_footer',
:remove => '#footer[data-hook]'
)
或强>
要使用Deface DSL,请创建一个包含以下内容的文件app/overrides/spree/shared/footer/remove_footer.deface
remove '#footer[data-hook]'
请参阅https://github.com/spree/deface上的文档以获取更多信息,这很好。
答案 2 :(得分:1)
Yuri的答案很好,但我更喜欢Deface DSL语法。对于Spree 1.0或更高版本,在目录remove_powered_by.deface
中创建一个名为app/overrides/spree/layouts/spree_application/
的文件,并添加以下内容:
<!--
remove '#footer-left > p:first-child'
-->
那就是它。
您可以在我公司的Spree商店代码中看到大量覆盖示例 https://github.com/binaryphile/spree_dibs_1.3