4

これに対する答えを探してみましたが、フッターを変更する方法を示す解決策はないようです。テーマのビューにこれが表示されます:

    <div id="footer-sig" class="group">
        @Zone(Model.Footer)
    </div>

Model.Footer を変更するにはどうすればよいですか? Web インストーラーからインストールしたリリース バージョンがありますが、コントローラーやモデルは含まれていないようで、ビューだけです。フッターを変更するにはどうすればよいですか?

たとえば、「|」を入れたいだけです ダッシュボードと他のリンクの間。

4

2 に答える 2

9

まだ行っていない場合は、Orchard テーマのカスタマイズに関する背景情報を読む価値があります。

これは、何を変更したいかによって大きく異なりますModel.FooterTheThemeMachineテーマを使用していると仮定すると、投稿したコード スニペットは に含まれていLayout.cshtmlます。ソースをさらに調べると、次のスニペットが表示されます。

WorkContext.Layout.Footer.Add(New.BadgeOfHonor(), "5"); // Powered by Orchard
WorkContext.Layout.Footer.Add(New.User(), "10"); // Login and dashboard links

これは、Orchard に、フッターの一部として 2 つの新しい図形を作成するように指示しています (BadgeOfHonorおよびUser)。

形状は、テーマBadgeOfHonorにバンドルされているビューを単純にレンダリングするTheTimeMachineため、簡単に変更できます。

このUser形状はコアにデフォルト ビューを持ち、フッターの「Welcome XXX / Sign in」要素をレンダリングします。これは、Orchard の通常の方法でテーマによってオーバーライドできます。

あなたのコメントから、フッターを から変更したいように聞こえるTheThemeMachineので、次のように言う代わりに:

Powered by Orchard © The Theme Machine 2010. Welcome, admin! Sign Out Dashboard

それは言います:

Powered by Orchard © The Theme Machine 2010. Welcome, admin! Sign Out | Dashboard

テーマ内に適切なビューを作成することで、Orchard のビューをオーバーライドできます。したがって、Userシェイプのレンダリング方法を変更するには、ビューをテーマに追加して変更するだけです。これを行う最も簡単な方法は、既存のビューを見つけてテーマにコピーすることです。これにより、何か作業を行うことができます。この例では、ファイルsrc\Orchard.Web\Core\Shapes\Views\User.cshtmlをフォルダーsrc\Orchard.Web\Themes\ThemeMachine\Views\User.cshtmlにコピーする必要があります(変更していると仮定します)。 ThemeMachine)。次に、このコードを変更するだけです。

    <span class="user-actions">
        @Html.ActionLink(T("Sign Out").ToString(), "LogOff", new { Controller = "Account", Area = "Orchard.Users", ReturnUrl = Context.Request.RawUrl }, new { rel = "nofollow" })
        @if (AuthorizedFor(Orchard.Security.StandardPermissions.AccessAdminPanel)) {
            @Html.ActionLink(T("Dashboard").ToString(), "Index", new {Area = "Dashboard", Controller = "Admin"})
        }
    </span>

このようなものに:

    <span class="user-actions">
        @Html.ActionLink(T("Sign Out").ToString(), "LogOff", new { Controller = "Account", Area = "Orchard.Users", ReturnUrl = Context.Request.RawUrl }, new { rel = "nofollow" })
        |
        @if (AuthorizedFor(Orchard.Security.StandardPermissions.AccessAdminPanel)) {
            @Html.ActionLink(T("Dashboard").ToString(), "Index", new {Area = "Dashboard", Controller = "Admin"})
        }
    </span>

一般に、ディストリビューションに付属するものを直接変更するのではなく、独自のテーマのコピーで作業することをお勧めします。これにより、更新が行われたときに簡単に取得できるようになります。サイトのさまざまな要素を変更するためにオーバーライドする必要がある形状を特定できる、ShapeTracing モジュールの使用方法も調べる価値があります。Orchard.Netページのドキュメントには、いくつかの有用な情報が含まれています (ただし、開発はまだ非常に迅速に進行しているため、少し古くなっている可能性があります)。

于 2012-07-20T09:55:15.507 に答える
1

簡単な方法の 1 つは、Web サイトのファイルを調べて ~\Themes[ThemeNameOverHere]\Views\BadgeOfHonor.cshtml を見つけること
です。これには、簡単に編集できるコンテンツがあります: @T("Powered by Orchard", " http:/ /www.orchardproject.net ") @T("© The Theme Machine 2010.")

注: Orchard 1.9.1 バージョンを使用しています。これが役に立つことを願っています。

于 2015-08-21T09:24:09.833 に答える