WEBTEQWEBTEQWEB制作・技術・解説メニューコンテンツへ移動ホームスポンサーリンクWORDPRESSのURLをカスタマイズしてGETパラメータをかっこよく取得WORDPRESSのURLをカスタマイズして、GETで送るパラメータをかっこよく取得する方法です。結果から言うと「add_rewrite_rule()」という関数を使います。追ってやれば簡単ですが、ちゃんとやらないとできません。詳しくはオフィシャルがとっても詳しいです。rulehttps://wpdocs.osdn.jp/Rewrite_API/add_rewrite_ruleこんな風なURLでアクセスさせたいページがあったとしたら、http://example.com/leaf/95functions.phpにこのように記述しろ、とあります。'custom_rewrite_basic');※([0-9]+)とか入っていますが、正規表現ですね。この場合は、数字の文字列を取得しますよ、っていう感じです。そこに入った数字は$matches[1]として使えます。やってみるとなかなかできない...。書かれてある通りやってもできない。原因は重要な注意書きを読み飛ばしたことでした。リライトルールの変更後は、忘れずにリライトルールデータベースの内容をフラッシュし、再作成してください。管理画面から、「設定」->「パーマリンク設定」を選択し、何も変更せずに「変更を保存」をクリックしてください。これで同じページに対して、以下の形式でアクセスできます。パーマリンクを更新することが必要だったわけです。作業をしているときにいちいちパーマリンク更新も面倒ですよね。そんなときは、下のようにflush_rewrite_rules()をfunctions.phpに記述しておくと作業が楽になります。function(){flush_rewrite_rules(false);});作業が終わったら取ってしまいましょう。以下はわたしが作業した時の例です。'([^&]+)');//商品IDとしていますが、なんでもいいです。{add_rewrite_rule('^form/([0-9]+)/item/([0-9]+)/?','index.php?page_id=11&form_number=$matches[1]&item=$matches[2]','top');//page_id=11というのは、固定ページのIDで、フォーム用に1ページこさえたものです。function(){flush_rewrite_rules(false);//パーマリンクの更新用。作業が終わったらadd_actionごと削除ね。});この例はちょっとだけややこしいです。使って、フォームをいくつも用意する必要があったのですが、いちいち一つのフォームごとに固定ページを作るというのはどうもスマートじゃないですね。ひとつの固定ページであらゆるフォームを表示切るようにしたくなったわけです。itemも取得して、それを使って商品タイトルだのなんだのを引き出せばよいかなという感じです。esc_html($wp_query->query_vars['form_number']);//一応esc_html()でエスケープしておきましょう。悪いコードを打ってきたりする輩がいないとも限らないので。"商品IDは".$item_id."です。取り掛かりは難しいと思ったけど、終わってみるとそれほどじゃないって感じです。質問があればコメントで。コメントをどうぞスポンサーリンク▼この記事には関連リンクページがあります。操作の結果できるパーティションはアライメントが正しくないためにパフォーマンスがでません。二日酔いでそんな気になれない!UBUNTUにfail2banを導入したが、fail2banの起動でエラーが出てしまう。固定ページでループが含まれているときに、固定ページ自体のIDを取得したいとき。'さくらサーバーのhtaccessによるリダイレクトでループを防ぐ書き方。httpからhttpsにリダイレクトなんか特に。それはルーターのせいだった。PEARのamazonAPIから商品一覧を取得できるServices/Amazon.php。切り抜きやカンバスサイズ変更やトリミングのときにガイドもいっしょに動いてしまう件iPhone(iOS)のブラウザで、iframeの中でスクロールアニメーションが動かない!とき。DNSの設定でクリア。有効にする必要があります。YahooメールでPOPサーバーに到達できてもログインができないときSSLの更新時にエラー。incorrectサーバーがダウン。