ブロックビューのコンテキストフィルター


19

分類用語であるトピック(「ニュース/デザイン」、「ニュース/コーディング」...)のコンテキストフィルターを備えたページビュー(「/ニュース」)があり、これは正常に機能しました。モバイルテーマの変更により、ページビューの代わりにブロックビューが必要になりますが、フィルターで動作させることができません。

古いフィルター設定では、すべての記事を「/ news」で取得しますが、使用しているフィルターはデフォルト値をフィルターから「taxonomy term ID from url」に変更しました。「/ news」の空のページ(これはブロックビューを含む単純なページです)および「/ news / design」などの「site not found」などが表示されます。ビューのプレビューでは、すべてが正常に機能します。 。

これらはビューの設定です。

スクリーンショット

回答:


33

一般に、このブロックが機能しない理由は、ブロックに割り当てられたパスがなく、コンテキストフィルターに作業するパスがないためです。コンテキストフィルタ設定へのパスリターンにブロックを接続して、セクションのためにWhat to do if the URL is not available選択Provide default valueし、選択しRaw value from URL、ドロップダウンボックスから。Path Componentボックスから、コンテキストフィルターが値を取得するURL内の位置を選択します。

特定のケースでは、URLを分類用語として解釈するようビューに指示しましたが、これはおそらくURLの形式(taxonomy / term / tid)ではありません。Views UIは、エイリアスがコンテキストフィルターで使用できない場合に使用できることを示唆しているため、少し誤解を招く可能性があります。Drupalは、ビューを呼び出すときにエイリアスをベースURL値に変換します。これは、コンテキストフィルターで直接使用できます。エイリアスを使用するには、上記のように具体的に通知する必要があります。ビューは強力ですが、使用するには少し注意が必要です。SQLクエリの経験がある場合に使用できるツールの1つは、[設定]タブの[プレビューの表示]ビューでクエリの表示をオンにすることです。これにより、ビューが呼び出されたときにビューが何をしようとしているかがわかります。

この問題の詳細については、この質問をご覧ください。


こんにちは、detailesの返信に感謝します。今、私は分類学の用語によって何がメントであるかを見る。残念ながら、「urlからの生の値」でも機能しません。プレビューではすべてが正常に機能するため、デバッグは非常に困難です。他に表示されないものはありますか?
user6670

プレビューでは機能するがサイトでは機能しない場合は、ビュー設定に問題がないことを意味します。ビューがURLを取得していない可能性があります。ビューブロックはテーマ領域に配置されていますか?ビューブロックを直接呼び出すクイックタブまたはその他の特殊な表示モジュールは直接関係していますか?
アシュラー

私はuser6670については知りませんが、この答えは今日私の尻を救った。ありがとう、@ Ashlar!
ベス

1
このソリューションを使用して成功しましたが、言及すべき1つのことは、すべてのコンテキストフィルターにデフォルト値が必要であるということです。すべてのコンテキストフィルターを[既定値の提供]、[URLからの未加工値]に設定し、位置を選択すると、このソリューションは非常にうまく機能しました。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.