
ドメイン変更やテスト環境で制作しないといけない場合に、後でパスを変更するのはけっこう面倒です。
使うシーンは限られると思いますが、けっこう便利で多用しているので、あてはまる方はお試しください。
ショートコードって何?
固定ページや投稿記事内でのphpの使用はできないため、wordpressには「ショートコード」というあらかじめ設定されたphpコードを呼び出すことができます。
ページや記事内でPHPが記述できればよいのですが、セキュリティ上の問題等で記述できなくなっています。
企業等のサイトでwordpressをCMSとして使用する際には、phpを記述したいと思うこともあります。
そんな時に他のPHPファイルに記述したPHPコードを短いコードで呼び出すことができるというのが、ショートコードです。
テーマフォルダーへのurlをショートコードに(functions.php)
// ショートコード作成(固定ページ・投稿記事内でテーマ内の「image」フォルダーへの相対パスを書き出す) function imgpass_shortcode() { return get_stylesheet_directory_uri(); } add_shortcode('ipass', 'imgpass_shortcode');
「get_stylesheet_directory_uri()」で取得できるテーマへのパスをショートコードにしただけのものです。
例えば、テーマフォルダ内の画像等を固定ページや投稿で使用する際に便利です。
https://www.goodcircle.jp/wp-content/themes/cocoon-child-master
ページや記事にこのコードをいれるだけです。
メディアへのurlをショートコードに(functions.php)
// ショートコード作成(固定ページ・投稿記事内でメディアライブラリ内のデータを相対パスで書き出す) function mediapass_shortcode() { return content_url(); } add_shortcode('mpass', 'mediapass_shortcode');
メディアへのパスをショートコードにしただけのものです。
最初のコードと一緒なんですが、こちらはドメインが変わるような場合に便利です。移行予定があるとか、テスト環境で制作するとか。
https://www.goodcircle.jp/wp-content
ページや記事にこのコードをいれるだけです。
カスタムフィールドの値をショートコードに(functions.php)
// ショートコード作成(カスタムフィールドの画像を表示) function custompass_shortcode() { $photo = wp_get_attachment_image_src(get_post_meta($post->ID,カスタムフィールドの名前,true),'full'); return $photo; } add_shortcode('custom', 'custompass_shortcode');
カスタムフィールドの値をショートコードで固定ページや投稿記事内に出力できるようになります。
カスタムフィールドで設定している名前が日本語なら、日本語で記述してください。
[custom]
ページや記事にこのコードをいれるだけです。
こんな使い方は普通しないと思いますが、CPIのスマートリリースなんかを使う時にはかなり楽になります。