前回、WordPressで独自のページを設けたいとこちらで相談したところ、無事回答が得られて解決しました。kei344さんありがとうございます。
https://teratail.com/questions/42187
ただ、今度は別の問題にぶつかってしまい、かなりニッチなケースな内容だと思い調べ方もよく分かりませんでしたので改めて相談させていただきます。
こちらでWordPressの固定ページ機能を使って作成した独自のページ、
仮に「http://example.com/list/」とします。
こちらは本来、商品のリストが表示されています。
新たにデータベースに商品リストとしてテーブルを追加して、そちらを取得して表示させています。
リストには1~200の商品IDが付いており、
リストをクリックすることで「http://example.com/list/1」などへリンクさせ、
URLが「http://example.com/list/」と「http://example.com/list/1」でリストのページか商品別のページか判定して表示させる予定でした。
しかし、何故か「http://example.com/list/1」の時だけ「http://example.com/list/」にリダイレクトされてしまいます。
「http://example.com/list/2」など、2以降はすべてそのまま表示されます。
wordpressを使用しない、通常のWEBアプリの作成時では、上記の方法でURL管理を行うことができたため、WordPressを使用することで起きてしまったことだと思います。
商品毎に1つ1つ記事を投稿していくのは時間的に不可能なので、なんとか上記の方法で表示させたいです。
WordPressにお詳しい方、どなたかご教示お願いいたします。
【追記】
?id=1などにすれば表示できますが、なるべく上記のURLで表示させたいです。
数値が不可能な場合は、文字IDでも構いません。
情報として役に立つかわかりませんが、テンプレートファイルのPHPと.htaccessの内容を掲載しておきます。WordPressの投稿名はパーマリンクは投稿名を使用しています。
htaccess
1# BEGIN WordPress 2<IfModule mod_rewrite.c> 3RewriteEngine On 4RewriteBase / 5RewriteRule ^index\.php$ - [L] 6RewriteCond %{REQUEST_FILENAME} !-f 7RewriteCond %{REQUEST_FILENAME} !-d 8RewriteRule . /index.php [L] 9</IfModule> 10 11# END WordPress 12 13<IfModule mod_rewrite.c> 14 RewriteEngine on 15 RewriteCond %{HTTPS} off 16 RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L] 17</IfModule>
PHP
1<?php 2/* Template Name: product-List */ 3?> 4<?php get_header(); ?> 5 6<?php get_product_list(); ?> 7 8<?php get_footer(); ?>
回答1件
あなたの回答
tips
プレビュー