home_url() はホームURLを返してくれる関数ですが、パスのパラメータの他に第二パラメータにスキームのパラメータを指定し相対パスを取得出来ることを今更ながら知りました。
今回はショートコードでホームURLやそれ以降を取得出来るショートコードを利用出来るようにしてみたいと思います。
ホームURLを返すショートコードを定義
以下のコードでは、デフォルトで第一パラメータにホーム “/” を 第二パラメータに相対パスで返してくれるよう “relative” を指定してあります。
/**
* home_url
* ホームURLを返す
*/
function sc_home_url($atts)
{
//デフォルト値を設定
$atts = shortcode_atts(
array(
"path" => '/',
"scheme" => 'relative', // "http" , "https" , "relative"(相対パス)
),
$atts
);
//
return home_url( $atts['path'], $atts['scheme'] );
}
add_shortcode('home_url', 'sc_home_url');
ショートコードを利用する
パラメータなし
[home_url]
“/” が返されます
sampleページを相対パスで取得
[home_url path='/sample/' scheme='relative']
“/sample/” が返されます
sampleページをhttpsからの絶対パスで取得
[home_url path='/sample/' scheme='https']
“https://example.com/sample/” が返されます
動作環境情報
エックスサーバー(x10) PHP 7.4.13 MySQL 5.7 WordPress 5.7
コメント