1

Drupal 7 でページ マネージャーとパネルを使用してアートギャラリーを構築しています。

ギャラリーの作品はノード型で、それぞれがノード型である期間に関連付けられています。

ある期間を表示するページを表示するとき、その期間に関連するすべての芸術作品にユーザーを連れて行くリンクが必要です。

そのため、期間のノード ID をコンテキスト フィルターとして使用し、その特定の期間ノードに関連するすべてのアートワーク ノードを取得するビューを作成しました。

問題は、その期間のページにいるときに、その特定の期間のノード ID を取得し、現在のノード ID が引数として渡されるページへのリンクを動的に生成するにはどうすればよいかということです。(正しい芸術作品がビューで取得されるように)。

4

1 に答える 1

4

カスタム コードの一部で使用arg(1)して、現在のノード ID を取得できます (ただし、それが現在のノードである場合のみ)。http://api.drupal.org/api/drupal/includes%21bootstrap.inc/function/arg/7を参照してください。たとえば、次のように、選択したテンプレートまたはテーマ関数内にビューを簡単に埋め込むことができます。

views_embed_view('name_of_your_view', 'display_name', arg(1));

3 番目のパラメーターは引数で、現在の (期間) ノードのノード ID です。http://api.drupal.org/api/views/views.module/function/views_embed_view/7を参照してください。

その期間ノードにそのページ (ビューによって生成されたもの) へのリンクを配置するには、おそらくテンプレート (設定されている場合は印刷) と組み合わせて前処理関数を使用します。そこには数え切れないほどの可能性があるため、リンクを配置する場所に関する詳細情報を提供する必要がある場合があります。しかし、基本的には `arg(1)' を使用することで実現できます。

于 2012-12-07T22:22:40.593 に答える