現在表示しているページのURLの取得

現在表示中のページURLを取得する方法!PHPで取得する方法とWordPressで取得する方法!

現在表示しているページURLの取得をワードプレスのテンプレートタグで取得する方法とPHPで取得する方法をご紹介!
投稿日: 2012/02/23
最終更新日: 2015/12/29
 

現在表示中のページURLを取得する

意外と需要がある、現在表示しているページURLの取得。
例えば、ソーシャルボタンのURL指定やブックマーク用のURL紹介など。

覚えていて損はありません!

そして私は忘れるので備忘録して損しません!
備忘録しても忘れる私は・・・損しています・・・か?

WordPressで表示しているページURLを取得する

ワードプレスでは既にテンプレートが用意されているので便利です。
下記のタグを埋め込むだけでページのURLを表示してくれますよ!

echo the_permalink();

問題はトップページ・・・。

index.phpで何故か投稿用URLが表示されるじゃねぇか!

ぷろめしで実験したところ、
ループ以外の部分(各記事出力部分以外)では最後に出力されるの記事URLが表示されます。

トップページはトップページのURL、そして下層ページは下層ページのURLを取得するテンプレートタグを色々探したのですが、私には見つけることが出来ませんでした・・・
知っている方!ご教授ください(`・ω・´)ゞ

もちろん、ここで諦めるわけにいけないので代替え案!

条件分岐でなんとかしてやるよ!

WordPressには条件分岐タグというものがあります。
今表示しているページが何に分類(ページの種類・例:アーカイブページ)されるのかを識別してくれるタグです。

今回の問題は、トップページ(正確には個別投稿ページと検索ページ以外)に起きていますのでトップページの場合は、トップページのURLを表示して個別投稿ページではそのページのURLを表示する!それ以外は何もしない!という感じで処理します。

ワードプレス条件分岐タグ

ぷろめしでは、表示方法を「最新の投稿」としていますので
indexの識別には「is_front_page() 」を利用します。

<?php if(is_front_page() ){/*トップページの場合の処理*/?>

<?php echo home_url(); ?>

<?php }else is_single() { /*個別投稿ページの場合の処理*/?>

<?php echo the_permalink();?>

<?php }esle{ /*上以外のページの処理*/?>

<?php }?>

これで、何とかなるはずです。一発でそのページのURLが表示できればいいのに…
専用のタグがあると思うんだけどなぁ~・・・(゜-゜)

続いて、PHPでページURLを取得する方法です!

PHPで現在表示しているページのURLを取得する

これをやっちゃえば、WordPressでも面倒な上記コードも必要なくなります。
ただソースをいじると嫌な場合もあるので適宜判断して下さい!

<?php
$page_url_get = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
?>

これで、現在開いているページのURLは取得できます。

ですがぁ~

取得たくないページのURLとかありますよね?

例:「http://www.exsample.jp/index.php」と「http://www.exsample.jp/」
index.phpアリとナシ、どっちかに統一したい!

だったら、いらない部分を削除しちゃえばいいんですよ|д゚)チラッ

いらない文字列は削除しちゃえばいいじゃない!

対策は簡単です!いらない文字列を削除してしまえばいいのです!

<?
$page_url_get = 'http://'.$_SERVER["HTTP_HOST"].$_SERVER['PHP_SELF'];
$search_url = array('index.php','thanks.php');
$page_ok_url = str_replace($search_url,'',$page_url_get);
?>

上記の例では、取得したURLに「index.phpやthnaks.php」が存在したら削除!
というソースコードです。正確には置き換え関数なので「何もない」に置き換えです。

2行目は消したい文字列を配列化しています。
他に必要であればカンマで区切って追加して下さい!

これで、必要な素敵なページURLを取得できたと思います(`・ω・´)ゞ

取得したURLは煮るなり焼くなり好きにしてやって下さいm9( ゚д゚)

 
最新情報をお届けします
筆者のご紹介
角政典@moreiic
真性のお家大好きフリーランスです。プログラムよりご飯の方が断然好き!博多出身のデブデザイナー。インドアだけど遊んでくれる人募集中!
Twitter / google+
よく検索されてる記事