0

サイト検索がビューページに正しくリンクされないという問題があります。レシピデータを表示するように設定されたビューページがあります。次のURLプロパティがあります。

index.php?q=recipe/%1/%2

ここで、%1はたとえばレシピカテゴリでbreakfastあり、%2はたとえばレシピ名Muffinです。ビューはレシピノードのコンテンツを通過し、必要に応じて表示します。問題は、サイト検索モジュールがビューにリンクせず、次のように見えるノードにリンクすることです。

index.php?q=node/22

そのノードをURLエイリアスで編集すると、次のようになります。

index.php?q=recipe/muffin

しかし:これはサイトのビュー表示と衝突し、検索機能はそれらをビューではなくノードに移動します。私は本当に、本当に彼らが視界に連れて行かれる必要があります。

それは明らかですか?

どうすれば修正できますか?

編集:ビューには、レシピカテゴリとレシピ名の両方の変数があります(たとえば、朝食/マフィン)。ノードページ自体をフォーマットすることは不可能だったので、ビューを使用する必要がありました。

4

3 に答える 3

0

これはうまくいくかもしれませんか?

検索可能なビューフォームを設定しました-ページ(およびURL)にいくつかのフィルターが表示されています。

私はサイト検索を無効にしました。このレシピ領域の外では必要ありません。ビューへのデータを$GET(または$ POST、私はいつも忘れています)するための単純なブロックを作成できると思います。

次に、ビューはURLを読み取り、適切に表示します。

index.php?q=recipes%2Fsearch&time=All&keywords=pie

タイトルに「パイ」を含むレシピを示しています。

今すぐフォームを作成する必要があります...

編集-うん、これはおやつでした!

<form id="search-block-form" action="index.php?q=recipes%2Fsearch&amp;time=All" accept-charset="UTF-8" method="get">
<div>
<div class="container-inline right-search">
<div id="edit-search-block-form-1-wrapper" class="form-item">
<label for="edit-search-block-form-1">Quick recipe search: </label>
<input name="q" value="recipes/search" type="hidden" />
<input name="time" value="All" type="hidden" />
<input id="edit-search-block-form-1" class="form-text" title="Enter the recipe terms you wish to search for." maxlength="128" name="keywords" size="15" type="text" />
</div>
<input id="edit-submit" class="form-submit" name="op" type="submit" value="Search" />
</div>
</div>
</form>
于 2009-09-18T15:52:24.750 に答える
0

ビューは正確に何をしますか?

タイトルに引数(「Muffin」など)が含まれるノードを検索する場合は、ビューのURLをsearch_recipeのようなものに変更して、それで済ませればよいと思います。

単一のノードを表示するようなことをする場合(つまり、レシピ/マフィンが適切な一意のIDになる)、なぜこれにビューを使用しているのですか?

また、サイトの検索ページを公開されたビューフィルターに置き換えることができます。それはかなり強力です。

于 2009-09-18T14:32:45.670 に答える
0

これは一種の回避策ですが、次のとおりです。

Google カスタム検索エンジンをデフォルトの検索として試し、robots.txtを使用して Google が node/* URL を認識しないようにすることができます。

robots.txtDrupal ルートにあるファイルの「# パス (クリーン URL)」の下にこれを追加するだけです。

Disallow: /node/

(この行を追加すると、検索エンジンがすべての node/** URL をクロールしなくなることを忘れないでください。)

また、サイトマップにビューを追加すると、このプロセスに役立ちます。

私はこのプロセスを試したことがないので、うまくいくかどうかわかりません;)

于 2009-09-19T02:04:40.777 に答える