質問

挨拶すべてのヘルパー!

私が読んでいるとテストDrupalは最近特長と私は、このCMSは非常にスケーラブルで面白いです。私はテーマ、ビュー、コンテンツタイプと電気ショック療法で働き始めた...しかし、私は私がインターネット上で見つけることができない何かを探しています。

コンテキスト:私は10周年記念のための鉱山の一つの非営利団体のための新しいウェブサイトを作成しています。主に、このサイトでは、それのルール内のさまざまな能力を持っているゲームのためです。私は、さまざまな能力のための用語集を作成したいと思います。それは大きな挑戦ではありません。

これは私がアーカイブしたいものです。 この用語集では、私は、能力の記述には、コンテンツに遭遇するたびに好きしたいと思います。

能力の用語集(リスト): http://conflitseternels.net/index.php?id=habiletesする

1つの能力がコンテンツに遭遇するたびに、それはそれの説明にリンクします。

あなたが求めるこのの達成を通して私を導くことができる場合は、

は、私は非常に幸せになる!

ありがとう、ウィル

役に立ちましたか?

解決

私はそのような何かをしているようだ一つのモジュールを発見した:Glossify( http://drupal.org/プロジェクト/ glossify に)。私はそれを自分自身を使用したことがないが、それは試してみる価値はあります。 Glossifyがあなたのために動作しない場合は、自分でモジュールを向上させる、またはカスタムモジュールを記述するために助けを検討します。

理論的には、リンクに単語を変換するための2つの方法があります:ノードが保存されるとき、またはノードが表示されているとき。どちらの場合も、あなたは、ノード内のすべての単語をチェックし、それは能力のいずれかと一致するかどうかを確認します。どちらのソリューションには、長所と短所があります。ソリューションを選択するとき、あなたは多くのユーザー、長い文章や能力の多くを持っている場合は特に、システムリソースの多くを取ることができるアクションを検索はと置換するので、パフォーマンスに目を維持する必要があります。

ノードはhook_nodeapi($オペアンプ= presave)を実装することにより、Drupalの中で行うことができます保存されている内容を変更します。内容がデータベースに書き込まれる直前に、あなたのnodeapi機能は、その魔法を行います。アドバンテージ:検索と置換は、各ノードに対して1回のみ実行されます。短所:あなたは(あなたがない限り、ノードを再保存)の新しい機能を追加したときに新しいリンクが既存のノードに追加されません。

ノードはhook_nodeapi($のOP =ビュー)またはhook_filterを実装することによって行うことができる見た内容を変更します。リンクは、データベースに保存されますが、オンザフライユーザーがノードを閲覧するたびに追加しません。利点:新しい能力も以前に保存ノードにリンクされます。短所:パフォーマンス、検索と置換は、(キャッシュがおそらく部分的にこの問題を解決するだろうが)、すべてのノードビュー上で実行する必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top