問題タブ [episerver-7]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1881 参照

hyperlink - EPiServer、アンカー/ハッシュタグへのリンク方法

ページ内のセクションにリンクする方法が必要です (アンカー/ハッシュタグを使用)。このリンクを処理するはずのプロパティは LinkItemCollection 型ですが、コレクションに新しいリンクを追加すると作成するリンクの種類を選択できる新しい「ダイアログ」が表示されます。たとえば、ページ、メディア、外部リンク、電子メールの選択肢があります。

私が最初に考えたのは、「外部リンク」オプションを使用してから単に /#services と入力することでしたが、EPiServer は私を「修正」し、これを「http:slashslashslash#services」(スラッシュ = /) に変更します... . LinkItemCollection プロパティを実際に使用して、内部リンク/アンカーおよびリンク/ハッシュタグ リンクを作成できる方法はありますか?

ブラ、インクス

0 投票する
1 に答える
314 参照

block - EPiServer 7 で 3 番目のブロックごとに新しい行を作成します。

コンテンツエリアに追加された 3 つのブロックがあるといういくつかの問題があり、ユーザーが 4 番目のブロックを追加した場合、各行には最大 3 つのブロックしか含めることができないため、4 番目のブロック用に新しい行を作成する必要があります。 .

問題は、私が知る限り、コンテンツエリア内のアイテムは正しいブロックタイプではないため (contentArea.Items は IList 型です)、アイテムを繰り返し処理できないことです。繰り返し処理しても、on- HTMLは実際にプロパティをレンダリングする場所を指定していないため、ページ編集?..

何か案は?

0 投票する
1 に答える
318 参照

c# - 次のエラーを解決する方法: Episerver.PageBase には、0 の引数を取るコンストラクターが含まれていません

Episerver 7.5 プロジェクトで汎用ハンドラーを作成しました。

このハンドラーでは、PageBaseクラスからメソッドを継承したいと考えています。私のコードは次のようになります。

クラスから継承する他のクラスを見つけようとしてPageBaseいますが、見つけることができませんでした。PageBaseプロジェクトでメタデータとしてロックされているため、クラスを変更できません。

これを回避する別の方法はありますか?PageBaseクラスを変更してコンストラクターを追加することはできないと言ったことに注意してください。

0 投票する
1 に答える
39 参照

asp.net-mvc-4 - IIS 上のサイトへのユーザー アクセスの規制

開発時にインターネットに公開する必要があるアプリケーションがあります。アプリケーションには独自の承認 (フォーム) があります。

サーバーへのアクセスを一定範囲の IP アドレスで制限することはできません。また、グローバル アクセス チェックがない場合と同様にサイトが動作する必要があります (この環境での QA テスト アプリケーション)。

アクセス方法は IIS で手配できますか?

ユーザーの手順:

  1. site.com に移動
  2. ユーザーにポップアップ ウィンドウが表示されます (グローバル ユーザー名、グローバル パスワード - すべてのユーザーで同じ)
  3. サイトにリダイレクト (匿名ユーザーとして)
  4. ログインページに移動し、ローカルユーザー名とパスワードを入力します (現在のユーザーに固有)

どんなアドバイスにも感謝します

ありがとう

0 投票する
1 に答える
865 参照

c# - EPiServer 7 & Mvc - コントローラー (およびタグ) を使用したローカル ブロック - オンページ編集で自動更新されない

EPiServer 7.5+ を使用していますが、[ページ編集] ウィンドウで編集した後に一部ローカル ブロックが更新されないというシナリオがあります。

影響を受ける Local Block を編集した後にページ全体を更新するか、ページ全体を更新するだけのFullRefreshPropertiesMetaDataを使用する必要があります。

一部のローカル ブロックが正しく更新されないのはなぜですか?

少し調査した結果、この問題は独自のコントローラーを持つローカル ブロックにのみ影響することがわかりました。

サンプルコード

ページ/ブロック:

コントローラ:

使用するビューを制御するための列挙型:

表示 (Razor) - MyPage

ビュー (剃刀) - SimpleLocalBlock

ビュー (カミソリ) - ビュー 1

概要

編集時にオンページ編集を使用できSimple、ブロックはページ上でインラインで正しく更新されます (つまり、ページ全体を更新する必要はありません)。しかし、「詳細」でオンページ編集を使用すると、ページ全体を更新するまで更新が表示されません。

0 投票する
1 に答える
219 参照

c# - EPiServer コミュニティ メンバーのアバター エラー

コミュニティで EPiServer CMS 7 MVC サイトを開発しています。メンバーのアバターを取得して表示しようとしています (アバターは Contributed files フォルダーに物理的に存在します)。これが私のコードです:

変数画像は値を取得します:

しかし、ビューでは画像アイコンしか表示されません(画像をアップロードまたは表示できない場合など)。この画像リンクを新しいタブで開こうとすると、EPiServer ログイン ページにリダイレクトされます。ユーザーが承認されている場合にログインページにリダイレクトされる理由がわかりません。何か案は?

追加情報: Deployment center を使用して EPiServer Relate サイトをインストールしました。EditProfile ユーザー コントロールまたは MyPage でユーザー アバターを取得する同じ方法があります。そして、取得した URL を使用して新しいタブで画像を開こうとすると、それが表示されます。Web.configファイルにいくつかの権限があると思いますが、わかりません....

新しい情報を追加 (2014/11/10)。問題はセクションにあります。つまり、EPiServerCommunity セクションのセクションです。以前にインストールした EpiServer Relate サイトで拒否するように変更すると、画像を開こうとするとログイン ページが表示されます。web.config ファイルで、すべての拒否を許可に変更しましたが、URL で画像を開こうとすると、まだログイン ページが表示されます。Episerver は web.config ファイルにこのセクションを表示しないと思います。

新しい情報を追加 (2014/11/11)。のセクションにもう 1 つの役割「全員」を追加しました。localhost:18000\episerver を開こうとすると、ログイン ページがスキップされることがわかります。同じロール「Everyone」を EpiServerCommunity セクションに追加しました。これで次のようになります。

しかし、URLで画像を開こうとすると、まだログインページが表示されます:(

PS この質問はEPiServer Worldに投稿しましたが、ここでもっと早く回答を得られることを願っています。

0 投票する
1 に答える
4397 参照

c# - ブロックのコントローラーから現在のページにアクセスする

EPiServer 7.7 MVC を使用しており、ローカル/グローバル Block があるシナリオがありますMyBlockMyBlockコントローラを持っていますMyBlockController。を呼び出したページの ID を取得する必要がありますMyBlockController

BlockDataとクラスを調べましたContentDataが、ホストへの参照がないようです。

おそらくコントローラーコンテキストから現在のページのIDを取得できますか?

0 投票する
1 に答える
400 参照

asp.net-mvc - Locate() の EPiServer 7 名前空間が解決されない

私は EPiServer を初めて使用し、作成したニュース リストから子ニュース記事ページを取得しようとしています。オンラインで見つけた例では Locate() メソッドを使用していましたが、自分のコードに Locate を適用しようとすると、見つかりませんでした。

これは私が見た記事の1つです。 http://world.episerver.com/Blogs/Johan-Bjornfot/Dates1/2012/8/EPiServer7-Working-with-IContentRepositoryDataFactory/

基本的には、ニュース項目のリストの子記事のリストを返す必要があるだけなので、そもそも試みているアプローチが正しくない可能性があります。

とにかく、これは using ステートメントを使用した現在のモデルです。

Locate() メソッドを解決するために欠落している参照は何ですか? EPiServer 7 と MVC を使用しています。ご協力いただきありがとうございます。

2014 年 11 月 18 日の更新

これが、私がモデルに入れた最終的な解決策です。Vsevolod Goloviznin が提案したものとほぼ同じです。ありがとう。

0 投票する
0 に答える
511 参照

c# - ContentArea の一部としてのローカル ブロック

前文

のインスタンスを作成する際に、ローカル ブロックのインスタンスを定義済みのブロックとして_FixedBodyLayoutPage配置したいと考えています。また、編集ページにインスタンスのプロパティのみを表示し、 .ThreeColumnRowBlockContent1ThreeColumnRowBlockContent1

ThreeColumnRowBlock問題は、Content1 コンテンツ領域内のインスタンスを登録する適切な方法が見つからないことです。API には ContentReference が必要ですが、ローカル ブロックにはそれがありません。

部分的に見つかった解決策: ローカル ブロックの代わりに共有ブロックを使用できます。

しかし、その後、深いナビゲーションなしで編集ページのプロパティを編集できなくなります。極力避けたいもの。これらすべての入れ子は CMS の概念を壊しており、オブジェクトの階層ではなくコンテンツに集中する必要があります。

何らかの方法でローカル ブロックを共有ブロックにバインドすることは可能ですか? または、ページ エディター内に共有ブロック プロパティを表示するように episerver に強制しますか?

また、ローカル ブロックの代わりに共有ブロックのインスタンスを抽出して返す get/set を実装しようとしています。しかし、それはエピサーバーをだますものではありません。編集ページに間違ったインスタンスのデータが表示される。