$search_actionの中身は何が入っているのでしょうか?
特に特別なことをしていないならactionの中身は
<?php echo home_url( ‘/’ ); ?>
に変更してみてください。
gogoweb さま
ご返事ありがとうございます。
検索フォームの内容は、ネットにのっていたものを貼り付けて使用しましたので、
特に意味はありませんでした。
教えて頂いた
<?php echo home_url( ‘/’ ); ?>
に変更してみましたが、現象は変わりませんでした。
実は、ページングなどで悩んだ時に、
loop.phpに、
<?php if (!is_archive()) {
$paged = get_query_var('page');
query_posts('posts_per_page=3&paged='.$paged);
}
?>
を仕込んだのですが、これが原因でしょうか?
<?php echo home_url(‘/’); ?>を何処か他の適当な場所に貼り付けてみた場合
その場所にホームページのアドレスがちゃんと表示されますか?
home_urlはそのWordpressのホームURLを返す関数なのでxxx/blogと表示されているのならホームの設定がおかしい可能性もあります。
gogoweb さま
loop.phpに、
<?php echo home_url(‘/’); ?>をはりつけましたら、
http://XXXXXXXX/ と、
ホームのURLを表示しました。
ちなみに、一般設定で、
ワードプレスアドレス:http://XXXXXXXXXX/wp
サイトアドレス:http://XXXXXXXXXX/
としています。
form action の場所を実際に表示したソースから見た場合
ホームのURLが表示されていますか?
無いと思いますがformタグのその側に更にformタグがあって入れ子になっていませんか?
gogoweb さま
実際の画面のソースを表示しましたが、
<form role="search" method="get" id="searchform" action="http://XXXXXXXXXX/">
となっていました。
すみません、私の説明不足でしたが、
actionを<?php echo home_url( ‘/’ ); ?>にしましたら、
検索URLは、
http://XXXXXXXX/?s=test&x=6&y=7
となりましたが、検索機能は動いていませんでした。
1.テーマの中にsearch.phpは存在しますか?
2.search.phpが存在する場合ちゃんとsearch.phpの内容が表示されていますか?
3.search.phpの内容が表示された上で検索結果がないと表示されるのでしょうか?
1のsearch.phpが存在しない場合search.phpを作成してそこに検索結果を表示する処理を記述してください。
2.のsearch.phpが存在するのに内容が読み込まれない場合はsearch.phpではなくindex.phpが読み込まれている可能性があります。原因としてはsearch.phpを読み込む処理周りあたりに何か不具合があります。
3の検索結果が0件になる場合は検索条件に不具合がある可能性があります。
gogoweb さま
ご連絡が遅くなりまして、申し訳ございません。
1.テーマは自作で、「searchform.php」という形で存在します。
2.以下、searchform.php の内容です。
<form role="search" method="get" id="searchform" action="<?php echo home_url( '/' ); ?>">
<label for="search"> </label>
<ul>
<li><input type="text" value="" name="s" id="s" /></li>
<li><input type="image" src="<?php bloginfo('template_directory'); ?>/images/search01-06.png" id="submit" value="検索" /></li>
</ul>
</form>
上記をサイドバーで、
<div class="sss"><?php get_search_form(); ?></div>
としてよんでいます。
実際のサイドバーのソースが以下です。
<div class="sss"><form role="search" method="get" id="searchform" action="http://XXXXXXXXXX/">
<label for="search"> </label>
<ul>
<li><input type="text" value="" name="s" id="s" /></li>
<li><input type="image" src="http://XXXXXXXXXX/wp/wp-content/themes/XXXXX_wp/images/search01-06.png" id="submit" value="検索" /></li>
</ul>
</form></div>
3.というわけで、ソースは読み込まれていると思われるのですが、
コード自体がおかしいでしょうか?
お時間ありましたら、お知恵をお貸し下さい。
どうぞよろしくお願い致します。
searchform.php ではなくて、search.php だと思うのですが… それはさておき、
現在の状態は、
「test」という文字を入力し検索ボタンをクリックすると
http://XXXXXXXX/?s=test&x=6&y=7
というスラッグになり、
検索はされず記事一覧が表示されてしまいます
ということですよね。
何か特別なプラグインを使っていますか? あるいは、デフォルトとは違う特別なテーマを使っていますか? プラグインを全て無効化し、テーマ、パーマリンク、rewrite_rule をデフォルトに戻しても同じ結果になりますか? あるいは、ブラウザのアドレスバーに、
http://example.com/?s=test
と、じかに打ち込んでリターンするとどうでしょう(画像の座標は関係ないので必要ありません)? あるいは、index.php に、
echo 'is_search => ' . ($wp_query->is_search() ? 'true' : 'false');
を書き込むとどんな表示になるでしょう(search.php が使われているなら、true が返るので、必要ありません)? あるいは、
echo $wp_query->request;
を書き込むと、どんなものが表示されるでしょうか?
これらで、解決できるという保証はまったくありませんが、少なくとも、判断するための材料を増やすことができます。