前提・実現したいこと
サイト内検索のキーワードをCSVファイルに保存する
ヘディングのテキスト
<?php if (have_posts()): ?> <?php if(isset($_GET[‘s’]) && empty($_GET[‘s’])) { echo ‘検索キーワード未入力’; } else { echo '“'.$_GET['s'] .'”の検索結果:'.$wp_query->found_posts .'件'; // 検索キーワードと該当件数を表示 // 検索キーワードと該当件数を表示 $f_path = “wp-content/themes/monomode/test.csv”.”key-“.date(“Y-m-d”).”.csv”; //保存するファイル名の指定をする。ここでは1日単位とした。もちろんDBに保存してもOKで、目的に応じてご自由に。 $keyword_data = array(date(‘Y-m-d-G-i-s’), $_SERVER[“REMOTE_ADDR”], $_GET[‘s’].PHP_EOL); //配列にするここでは日付とIP、キーワードにするがここも目的に応じてご自由に $keyword_data = implode(‘,’, $keyword_data); //CSV形式に変換 //キーワードに異常がないか最低限のチェックをする。ここも目的に応じてご自由にどうぞ for($i = 0; $i < sizeof($keyword_data ); $i++ ) { if(strlen($keyword_data[$i]) > 200){ // 入力データのサイズチェックをする。ここでは200byteという想定。 exit; } $keyword_data[$i] = htmlentities($keyword_data[$i]); //タグの無効化 } file_put_contents($f_path, $keyword_data, FILE_APPEND); //ファイルの末尾に追記する } ?> <ul> <?php while(have_posts()): the_post(); ?> <li> <a href="<?php the_permalink(); ?>"><?php echo get_the_title(); ?></a> </li> <?php endwhile; ?> </ul> <?php else: ?> 検索されたキーワードにマッチする記事はありませんでした <?php endif; ?>
発生している問題・エラーメッセージ
なし
試したこと
ファイルパスを変更したが検索ワードを保存できない
$f_path = “wp-content/themes/monomode/test.csv”;
参考サイト https://cat-marketing.jp/2021/05/21/wp-search/
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/09/01 12:19
2021/09/01 12:28