6

誰かが脚注の良い解決策を思いついたのではないかと思っていました. 複数のコンポーネントを含むページの Tridion 内に脚注を実装しようとしています。すべての脚注をページの下部に表示し、コンテンツ セクションでも生成された正しい脚注番号を表示したいと考えています。

http://i.stack.imgur.com/dAxeh.png

コンテンツでは

「オレム・イプサム・ドロール・シット・アメット、コンセクトター* 1 * adipiscing elit. ビバムス・ブランディット、リグラ・ファレトラ・ラオレト・ポルタ、ニブ・オーグ* 2 * フリンジラ・テルス、エ・アリケット・クアム・ラクス・マティス・リサス. "

ページの終わり

1 脚注情報


たとえば、ユーザーはコンテンツを含むコンポーネントを作成し、そのコンポーネントには脚注コンポーネントへのコンポーネント リンクがあり、公開時にすべての脚注を収集してレンダリングする必要があります。コンテンツ自体に配置されている数字と一致する必要があります。

ありがとう

4

3 に答える 3

4

1 つのオプションは、アンカーtridion:anchorリンクをサポートするリンクを使用することです。また、アンカー リンクは、Tridion RTF から入手できる OOTB です。

アンカー リンクに関するドキュメント:

http://sdllivecontent.sdl.com/LiveContent/content/en-US/SDL_Tridion_2011_SPONE/task_INSHYP2DDAFF2CF95E4430AA0F27AD7A91B5F8

http://sdllivecontent.sdl.com/LiveContent/content/en-US/SDL_Tridion_2011_SPONE/idheading-359728360

その他のオプションとして、ページの最後で処理してアンカー タグを生成するカスタム TBB を作成することもできます。動的 CT を個別に公開できるため、このアプローチはうまく機能しない可能性があります。

于 2012-10-25T18:44:05.387 に答える
3

JavaScriptが利用可能であることに頼ることができるなら、それはこれに取り組む最も簡単な方法かもしれません。脚注を非表示の要素に「インライン」で公開し、ブラウザで目的の出力を作成するだけです。

Tridionで実行する場合は、ページテンプレートで最初にコンポーネントのプレゼンテーションを通常どおりにレンダリングしてから、「脚注」コンポーネントテンプレートを使用して関連するコンポーネントを再度レンダリングすることをお勧めします。最も難しい部分は、数値を正しく取得することですが、コンポーネントを実行するたびにページ内の順序で処理されるようにし、コンテキスト変数を使用してカウンターを管理することで、これを行うことができます。

このシナリオでは、標準のコンテキスト変数手法は機能しません。これは、1つのコンポーネントのレンダリングが、次のコンポーネントに「通知」できることに依存しているためです。(そしてもちろん、脚注のためにすべてを繰り返します)。TridionPracticeでこれを回避するためのテクニックの簡単なイラストを書きました。これは道を示すはずですが、実装はかなり複雑にする必要があると思います。

編集:私の答えは、脚注データがそれが参照するテキストと同じコンポーネントにあることを前提としていますが、質問を読み直すと、別々のコンポーネントがあることがわかります。それでも-テクニックのいくつかはまだ適用されるかもしれません。

于 2012-10-25T21:58:13.797 に答える
2

実装モデル (静的/動的/ハイブリッド) に応じて、カスタム コントロールを使用してレンダリング時にこれらを生成することもできます。

Lorem ipsum dolor sit amet, consectetur<dominic:FootNote>Footnote text goes here</dominic:FootNote> adipiscing elit. 
Vivamus blandit, ligula pharetra laoreet porta, nibh augue<dominic:FootNote>Footnote text goes here</dominic:FootNote> fringilla tellus, 
et aliquet quam lacus mattis risus. Praesent rutrum, leo eu ornare sagittis, tellus ante blandit arcu.

FootnoteContainer を使用するページの終わり:

<dominic:FootNoteContainer />

FootNote コントロールは、自動インクリメント番号を割り当て、次のようにレンダリングします。

<sup><a href="#footnotes">number</a></sup>

または、脚注リンクの表示形式として好みのもの。

コンテナーは、ページ上のすべての FootNote コントロールを検索し、各 FootNote の内部テキストをリストに書き出します。

<ul>
  <li>number 1 footnote info</li>
  <li>...</li>
</ul>

または同様のプレゼンテーションフォーム。

このアプローチの利点は、静的なコンポーネント プレゼンテーションに依存せず、テンプレート化されたソリューションを大幅に簡素化できることです。欠点は明らかに、リクエストのパフォーマンスを犠牲にしていることです...

于 2012-10-26T13:20:25.233 に答える