下記の事象についてお詳しい方、ご教授いただけないでしょうか。
宜しくお願いいたしますm(_ _)m
やりたいこと
固定ページ内で、srcset
属性にfunction.php
に記述したショートコードを使えるようにしたい。
やったこと
以下の記述を追加
function.php
//投稿内で [template_url] と記述する function shortcode_templateurl() { return get_template_directory_uri('template_url'); } add_shortcode('template_url', 'shortcode_templateurl');
page.php
<?php /** * The main template file * * @package hoge * @since 1.0.0 */ get_header(); ?> <main id="main" class="c-main"> <?php if ( have_posts() ) { while ( have_posts() ) { the_post(); the_content(); } } ?> <?php get_footer();
結果
出力前のコード
<picture> <source media="(max-width: 767px)" srcset="[template_url]/image/index/image-smp-01.png"> <img src="[template_url]/image/index/image-01.png" alt=""> </picture>
↓
↓
↓
出力後のコード
<picture> <source media="(max-width: 767px)" srcset="[template_url]/image/index/image-smp-01.png"> <img src="http://hogehoge.jp/wp-content/themes/test/image/index/image-01.png" alt=""> </picture>
srcset属性の時のみ、[template_url] がそのまま表示されてしまう。
試したこと
下記の方法を試して見ましたがうまくいきませんでした。
▼ WordPress srcset内のショートコードがそのまま表示されてしまう現象を解決!
https://blog.yuko-design.com/wordpress/3431/
作業環境
WordPress 5.1.4
PHP 7.3.10
Apache