-
ID:LZMWow さんの質問

ワードプレス初心者です。
ワードプレスでスマホサイトとPCサイトを作り.htacsessで振り分けて、サイトに絞り込み検索を実装しているのですが、スマホのほうで絞り込み検索した後、その結果画面でソート(昇順・降順)をかけるとなぜかPCサイトの方?に飛んでしまいます。
URLを見ると◯◯.com/sp/sp/......となっています。
これはどのような問題が起きていて、どのように解決させるべきか分かりません。分かる方、ご教授お願い致します。

みんなの回答 2 件

ID:T7ryaR さんの回答

search.phpをPC版のものを使い回して検索結果が混同しているのでは?

ID:LZMWow

仰るとおりです。
ディレクトリが違っても検索結果は混同してしまうのでしょうか?

ID:LJUvY8 さんの回答

.htacsessでリライトの条件設定が間違ってるだけでしょ?
>URLを見ると◯◯.com/sp/sp/
ってことはすでにspディレクトリにいるのにpcアクセスと判断してspにリダイレクトしてる証拠。
spディレクトリにいる場合は、リダイレクトしないようにcond(条件)つければ良いだけじゃないの?

ID:ZCsLjj

ありがとうございます。いろいろ調べて頑張ってみようと思います!

ID:ZCsLjj

トピ主です。PCが違うのでIDも変わっています。
.htacsessに

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} (iPhone|Android.*Mobile|Windows.*Phone)
RewriteCond %{QUERY_STRING} !mode=pc
RewriteRule ^$ /sp/ [R]

RewriteCond %{REQUEST_URI} /sp/
RewriteCond %{HTTP_USER_AGENT} (iPod|iPhone|iPad|Android|Windows\ Phone)
RewriteRule ^sp/(.*)$ $1 [R,L]

このように記述してみたのですが変わりません。何が間違っているのでしょうか・・・・・

ID:FRos59

↓これ追記してみて
RewriteCond %{REQUEST_URI} !^/sp/.*$
RewriteCond %{HTTP_USER_AGENT} (iPhone|Android.*Mobile|Windows.*Phone)
RewriteRule ^(.*)$ sp/$1 [R]

ID:yA41XX

トピ主です。
お返事ありがとうございます。
じつは、散々.htacessで悩んだのに、問題は絞りこみ検索のコードが間違っていました・・・自分でもとても情けないのですが、ご協力していただいた皆様にはとても感謝しております。ありがとうございました。
まだまだ勉強が足りませんでした。
これからも精進します。
ありがとうございました。

最終更新日:2015-07-05 (2,039 views)

関連するトピックス

ページ上部に戻る