4

ビューを使用して、コンテンツタイプフィールドのノードを選択したいと思います。このビューは、コンテンツタイプの別のフィールドである引数を受け取る必要があります。誰かがフィールドからビューに引数を渡す方法を教えてもらえますか?

すみません、私の貧弱な英語

4

3 に答える 3

2

Views Arguments Extrasモジュールを使用できる場合があります。ビューの引数を cck フィールドから取得できるようにします。このモジュールに関する詳細 (プロジェクト ページから):

このモジュールには、次のオプションを追加するビュー ハンドラーとプラグインのグループが含まれています。

  • 引数 デフォルト 現在のノード CCK

    現在のノードの cck フィールド値をデフォルト引数としてロードできるようにします

  • 引数のデフォルトのリクエスト パラメータ

    get および post パラメータをデフォルト値として許可

  • 引数の順序の並べ替え

    複数値の引数の順序に基づいて項目の順序を設定できるようにする、並べ替えハンドラ

于 2010-03-22T15:24:37.310 に答える
0

引数の検証を使用して引数を検証できると思います。その時点で、Viewsに渡される前に$handler->argumentの値を自由に変更できます。

于 2010-03-16T20:57:17.460 に答える
0

CCK フィールドの値に基づいてビューの表示内容を変更したいだけの場合、私が見つけた最も簡単な方法は、 を使用してビューをテンプレートに埋め込むことviews_embed_view()です。テンプレートファイルで次のようなものが機能すると思います:

//Use the dsm function to print out your $node object
//to get the name of the field you want to pass as an arg
//like this: dsm($node); 
//Assuming that the value of that field is in $node->cck_field['0']:
print views_embed_view('name_of_view', 'name_of_display', $node->cck_field['0'];

views_embed_view()機能するために必要なのは、ビューの名前である最初の引数だけです。名前付きビューのデフォルト表示用の HTML を返します。2 番目の引数として特定のディスプレイを渡します。2 番目の引数より後のものは引数としてビューに渡されるため、フィールドの値を引数としてビューに渡します。関数の仕組みに関するドキュメントについては、このリンクを参照してください。

于 2010-03-17T04:04:06.967 に答える