質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Q&A

解決済

1回答

21472閲覧

WordPress 検索機能がうまく動かない (検索結果が表示されない)

brebre

総合スコア29

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

0グッド

0クリップ

投稿2016/09/28 02:43

編集2016/09/28 06:12

現在、WordPressのテーマをローカル環境にて自作しております。

headerあるいはsidebarに検索フォームを設置しようと試みておりますが、
検索結果が表示されず困っております。

これらのサイトを参考に作ってみたのですが、
http://creive.me/archives/9113/
http://take-root.net/blog/wordpress-search-form/

検索結果が表示されません。
検索フォームは表示されますが、文字を入力して検索ボタンを押すと、検索ボタンから「検索」の文字が消えます。また、表示中のページにある<p>タグで囲まれた文字が「Thanks, high five!」に変化してしまいます。

searchform.php

php

1<form role="search" method="get" id="searchform" action="search-result" > 2<input type="text" value="" name="s" class="s" /> 3<input type="submit" class="searchsubmit" value="検索" /> 4</form>

search.php

php

1<?php if ( have_posts() ) : ?> 2<h1><?php printf( __( 'Search Results for: %s', 'altitude' ), '<span>' . get_search_query() . '</span>' ); ?></h1> 3 <?php while ( have_posts() ) : the_post(); ?> 4 <?php get_template_part( 'content', 'search' ); ?> 5 <?php endwhile; ?> 6 7 <?php else : ?> 8 9該当なし 10 11 <?php endif; ?>

こちらのサイトの内容も試してみましたが、同じ結果でした。
http://techacademy.jp/magazine/3100

初歩的な質問かと存じますが、
ご教授いただけますと幸いです。

よろしくお願いいたします。

追記:
ベースにしているテーマはなく、本を見ながらオリジナルテーマで作成しております。
参考本-「Web担当者のためのWordPressがわかる本」

追記:
サイドバーには以下のコードを入力しています。

php

1<div class="search-window"> 2 <?php get_search_form(); ?> 3</div>

追記:

php

1<?php 2/*アイキャッチ画像機能有効化*/ 3if(function_exists('add_theme_support')){ 4add_theme_support('post-thumbnails'); 5} 6 7/*カスタムメニューの機能を有効化*/ 8if(function_exists('register_nav_menu')){ 9 register_nav_menu('simplenav','グローバルナビ'); 10} 11 12/*ウィジェットエリアを定義*/ 13if(function_exists('register_sidebar')){ 14 register_sidebar(array( 15 'name' => __('サイドバー'), 16 'id' => 'primary-widget-area', 17 'description' => __('サイドバーに表示されるウィジェットエリアです。'), 18 'before_widget' => '<div id="%1$s" class="widget %2$s">', 19 'after_widget' => '</div>', 20 'before_title' => '<h3 class="widget-title">', 21 'after_title' => '</h3>', 22 )); 23} 24

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kei344

2016/09/28 02:49

ベースにされているテーマはありますか?あれば取得した場所のURLも質問文に追記ください。
kei344

2016/09/28 03:04

サイドバーにどのような形でフォームを呼び出しているか、コードを質問文に追記ください。
guest

回答1

0

ベストアンサー

とりあえず、searchform.php の action属性が正しく記述されてません。

PHP

1<form method="get" action="<?php echo home_url('/'); ?>" >

ウィジェットで追加しても動かないとなると、問題を切り分ける必要があります。
0. まず、WordPress をデバッグモードにする
エラーがあれば直す。
0. デフォルトのテンプレートに戻し、検索が出来るかどうか確認する
0. 作成中のテンプレートでプラグインを全て停止し、検索が出来るかどうか確認する
0. functions.php の内容を最小限まで削除し、検索が出来るかどうか確認する

【WordPress初心者におすすめ!デバッグモードの使い方 | Mignon Style】
http://mignonstyle.com/debug-mode/


表示中のページにある<p>タグで囲まれた文字が「Thanks, high five!」に変化してしまいます。

WordPress のテキスト中にその文字列が発見できませんでした。上記確認手順中に同じく確認してみてください。(勘ですが functions.php に書いてあるような気がします)

投稿2016/09/28 05:15

kei344

総合スコア69398

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

brebre

2016/09/28 06:11

回答をいただきありがとうございます。 まず、searchform.php の action属性を正しく記載し試しました。 結果は変わらずでした。 続いて、デバッグモードにし、検索をおこないましたが、 エラーは表示されませんでした。 次にデフォルトのTwenty Sixteenにテーマを変え、 サイドバーにある検索フォームより検索すると、正しく動作し、検索結果が表示されました。 テーマを自作に戻し、プラグインを全停止し検索しましたが、 やはり結果は表示されませんでした。 最後にfunctions.phpを最小限まで削除しましたが、結果は表示されませんでした。 functions.phpの内容を確認しましたが、Thanks, high five!という文字はありませんでした。 functions.phpの内容を追記しましたので、ご閲覧いただけると幸いです。 よろしくお願いいたします。
kei344

2016/09/28 06:24

結果が表示されませんとは、「該当なし」が表示されるということでしょうか? <?php get_template_part( 'content', 'search' ); ?>あああ 上記のようにして1件でも「あああ」が表示されますか? (検索フォームはウィジェットのものを使用してください)
brebre

2016/09/28 06:57

説明不足で失礼しました。 結果が表示されず、検索ボタンに表示されている「検索」の文字が消え、pタグの文字がThanks~になってしまうということです。 該当なしは表示されませんでした。 上にお示しいただいた方法をおこないましたところ、 検索結果を表示するページにて「あああ」は表示されました。 他のページからの検索では、検索結果を表示するページに飛びませんでした。 よろしくお願いいたします。
kei344

2016/09/28 07:54

> pタグの文字が どの部分か状況がわかりません。テンプレート全てを確認し、Thanks~が含まれて居ないか確認してみてください。 > 検索結果を表示するページに飛びませんでした。 URLはどうなっているのでしょうか。フォームのHTMLがどのように出力されているか、ソースを見てみてください。home_url と違うURLが設定されているのでしょうか。
brebre

2016/09/28 09:06

すべてのファイルを確認したところ、Javascriptのファイル内に検索関連の記載があり、削除したところ正常に動くようになりました。 この度は、大変お世話になりました。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問