2016-10-26 9 views
0

私は根やショップのページから何か、キツネの例「食」を検索する場合、それはURLWordpress検索で404ページが返されますか?

site.com?s=food

やショップからとなり正常に返されます。

をsite.com/shop/?s=foodが、私は連絡先や他のいくつかのページからそれを検索したとき、私は404を取得しますND URL:

site.com/contact/?s=food

私が最初のようルートにリダイレクトするために、第2の場合には必要なので、誰かがお問い合わせページから検索したとき、私は

をしたいです

site.com?s=food

これは、いくつかのカスタムテンプレートなので、デフォルトの検索は多分うまく動作しません。

+0

検索が正しく実装されていないようです。検索結果を常にルートページに送信する必要があります。検索フォームのテンプレートファイルを表示します。 – Shiv

+0

@ Shiv 問題は、私は現在ファイルにアクセスできないということです。 searchform.phpとproduct-searchform.phpの内部は、アクションhome_url( '/')内で定義されています。 – DocNet

+0

function.phpの中にいると思うなら、もっと大きな問題があります。自分が何をやっているのかをよく知っている人を雇います。 – Shiv

答えて

1

フォームの要素のアクション属性がホームURLに設定されている必要があります。これと似たようなもの:

<form role="search" method="get" class="search-form" action="<?php echo home_url('/'); ?>"> 

また、get_search_form()のコードリファレンスを見ることもできます。 https://developer.wordpress.org/reference/functions/get_search_form/

+0

このカスタムテーマはsearchform.phpとproduct-searchform.phpを持っています。私は、検索デザインに影響を与えるproduct-searchform.php内の何かを変更すると、2番目がプライマリとして定義されていると思います。しかし、アクションをwww.google.comのようなものに変更すると、再び/ contact /?s = xが読み込まれます。それはfunction.phpのどこかのように見えますか、または検索後にリダイレクトが定義されています。自分のリダイレクトを追加しようとすると、ERR_TOO_MANY_REDIRECTSと表示されます。 – DocNet

+1

product-searchform.phpは、通常、WooCommerceによって使用されます。テーマからこのファイルを削除すると、Woocommerceはファイルのデフォルトバージョンに戻ってテストに役立つはずです。あなたのサイトがなぜコードを見ることができなくてもあなたのように行動している理由を説明するのは難しいです。 WooCommerceの検索は、woocommerce_product_search()を使用してテンプレートに含まれています。https://docs.woocommerce.com/document/woocommerce-product-search/api/ – neil

+0

@Nellありがとう、明日チェックします。 – DocNet

関連する問題