1

N2からのページルーティングを使用せずに、N2CMSを使用してサイトのコンテンツを管理しています。したがって、コンテンツの一部を編集するときに、N2から「リンクを更新して...」「以前のURLに永続的なリダイレクトを追加しますか?」と尋ねられても、まったく役に立ちません。この動作を無効にできますか?

4

2 に答える 2

2

ページをパーツに変換することは、本質的に悪い考えです。あなたが抱えている問題の一時的な解決策かもしれませんが、悪い方法で跳ね返ります.

代わりに、これを行うことができます

  • web.config で LinkTracker をオフにする

    linkTracker enabled="false" permanentRedirectEnabled="false"
    
  • CommandFactory.cs を N2 ソースからソリューションにコピーし、名前を MyCommandFactory.cs に変更します。サービス代替属性を追加

    [Service(typeof(ICommandFactory), Replaces = typeof(CommandFactory))]
    

コンストラクターで、この行を変更します

updateReferences = new MyUpdateReferencesCommand();
  • 独自の空の Update リファレンス コマンド クラスを作成する

    public class MyUpdateReferencesCommand : UpdateReferencesCommand
    {
        public override void Process(CommandContext state)
        {
        }
    }
    
于 2013-01-30T09:11:39.683 に答える
0

ソース コードからわかる限り、N2 は、ContentItem がページ (つまり、[PageDefinition] 属性または .IsPage = true) であり、アドレスが更新されました。この場合の解決策は、問題の「ページ」を [PartDefinition] を使用して「パーツ」にすることでした。

于 2013-01-28T16:57:20.737 に答える