0

ビューまたはブロックを埋め込む 2 つのコンテンツ タイプ (Drupal 7.20 環境) があります。検索結果でこれらのコンテンツ タイプを許可すると、それらのコンテンツ タイプが結果セットに表示されるたびに、結果ページが横向きになります。ページャーは、結果ページごとに異なる合計ページ数を表示するか、[次へ] をクリックすると完全に消えます。 (!)、ページごとに表示される結果が 10 件未満 (まだページャーがあります...)、など。

これらのコンテンツ タイプを (カスタム検索を介して) 許可しない場合、ページネーションなどに問題は見られません。

私が気付いたのは、検索結果ページが構築されるときに実際のビュー/ブロックが実行されるということです。これは単に search_index テーブルで見つかったヒットの問題ではありません。

この問題に対処する方法を知っている人はいますか?

(私はスタックオーバーフローを検索し、Drupal.org の検索とカスタム検索の問題を検索しました。喜びはありません。)

前もって感謝します、リー

[編集: いくつかのタイプミスを修正...] [3/17/13 編集: 問題は、検索結果セットに含まれるビューまたはブロックのページャーが原因であることが判明しました。ビューが結果セットに含まれていても、ページャーがない場合は問題ありません。したがって、私の解決策は、hook_views_query_alter() で (リクエスト URI を見て) 検索結果ページにいることを検出し、設定することです。

$view->items_per_page = 0; 

ビューのページャーを効果的に取り除きます。

4

1 に答える 1

1

[自分の質問に答えられるとは思いませんでした。質問を編集して回答を含めることとどう違うのかわかりませんが、とにかくここにも回答を入れておきます。]

この問題は、検索結果セットに含まれるビューまたはブロックのページャーが原因であることが判明しました。ビューが結果セットに含まれていても、ページャーがない場合は問題ありません。したがって、私の解決策は、hook_views_query_alter() で (リクエスト URI を見て) 検索結果ページにいることを検出し、設定することです。

$view->items_per_page = 0; 

ビューのページャーを効果的に取り除きます。

于 2013-03-17T22:37:11.527 に答える