2

「poweredbyspree」フッターを削除したいと思っています。誰かがこれがどこにあるか知っていますか?

また、新しい分類法を追加するときに「ShopBy」はどのように上書きされますか?

ありがとう

4

3 に答える 3

5

免責事項:これらのヒントは、Spreeの最新バージョンで記述されたとおりに機能しない場合があります。私は最近Spreeと仕事をしていません。

Spreeバージョン1.0の場合、app / views / spree / layouts/spree_application.html.erbをオーバーライドできます。現在のバージョンでは、以前の(1.0より前の)バージョンとはパスが少し異なると思います。

よりクリーンなオプションとして、次のようにDefaceを使用してフッターの「PoweredbySpree」ステートメントを削除できます。

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ディレクトリに配置するだけです。config/initializersに入れてもうまくいくと思います。

PS Defaceは、箱から出してすぐにSpreeに含まれています。

于 2012-05-15T06:11:55.573 に答える
3

これにより、 Spree v1.3の Binary と yuri の両方の回答が更新されます

フッターはパーシャルに移動しましたapp/views/spree/shared/_footer.html.erb

Deface を使用してオーバーライドするには、次の 2 つの方法のいずれかを使用できます。

  1. Deface::Override - これは従来の方法です (yuri の回答による)

  2. 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のドキュメントを参照してください。

于 2013-05-01T04:26:04.033 に答える
1

Yuri の答えは結構ですが、私は Deface DSL 構文の方が好きです。remove_powered_by.defaceSpree 1.0 以降の場合、ディレクトリにというファイルを作成しapp/overrides/spree/layouts/spree_application/、次の内容を追加します。

<!--
  remove '#footer-left > p:first-child'
-->

それでおしまい。

https://github.com/binaryphile/spree_dibs_1.3で、私の会社の Spree ストア コードのオーバーライドの例を多数見ることができます 。

于 2012-12-08T20:40:26.840 に答える