web-dev-qa-db-ja.com

ビューにURL引数を渡す

ランディングページ/ポータルコンテンツタイプを作成し、そのための一連のビューを作成しました。しかし、問題が発生しました。これらのポータルページのURLからブロックビューに引数を渡す方法がわかりません。

基本的に、ユーザーが http://mysite.com/portal/action にアクセスした場合、分類用語であるactionをページのブロックビューの引数として使用します。何か案は?

編集:明確にするために、分類用語に基づいてサイトの他の部分から情報を取得するページを作成しようとしているため、たとえば http://mysite.com/portal/action はアクションカテゴリなどの最新のニュース投稿などを表示するブロックを含むページに移動します。

これまでのところ、ポータルと呼ばれるコンテンツタイプを作成しました。これにより、作成者はポータルのトピックを設定し、一連のテキストボックスでカスタムコンテンツをページに追加できます。

次に、ニュースなどのサイトの他の部分から情報を取得するブロックを作成する一連のディスプレイを含むビューを設定し、コンテンツタイプの作成中に作成されたカスタムフィールドをそのページのブロックとして表示しました。

私の問題は、このビュー内で引数を設定して、URLに基​​づいて変更されるようにすることです。したがって、mysite.com/portal/horrorでホラーポータルページを作成した場合、コンテンツはホラー分類用語でタグ付けされたアイテムになります。

これが理にかなっていると思いますか?

編集2解決済み:助けてくれてありがとう。私は最終的に提供するデフォルトフィールドに次のコードを追加してしまいました

    if (arg(0) == 'node' && is_numeric(arg(1))) {
$node = node_load(arg(1));
if ($node) {
return $node->title;
}
}
1
ghost1990

上記のページ自体がビューページであり、そのページに引数を渡していることを願っています。

その場合は、ビューを追加するときに[デフォルトを提供]の値を確認し、ドロップダウンから必要なプロパティを選択する必要があります。あなたはURLから用語IDを取得するようなものを持っているでしょうか、あなたの引数は何ですか?それを選択すると、必要に応じて表示されます。

さらに明確にする必要がある場合は、作成したビューをエクスポートしたり、ビューの作成方法を説明したりするとよいでしょう。

3

これにビューコンテキストフィルターを使用することはできませんか?コンテキストフィルターを使用すると、URLのパラメーターに基づいてコンテンツをフィルター処理できます。

次に、コンテキストフィルターの機能の例を示します。

http://www.metaltoad.com/blog/using-drupal-contextual-filters-views

2
Daniel Waters