質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

文字コード

文字コードとは、文字や記号をコンピュータ上で使用するために用いられるバイト表現を指します。

Q&A

1回答

4061閲覧

WordPress  srcset属性でショートコードを使う方法について

hogeniho

総合スコア58

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

文字コード

文字コードとは、文字や記号をコンピュータ上で使用するために用いられるバイト表現を指します。

0グッド

0クリップ

投稿2020/03/17 12:48

編集2020/03/18 00:39

下記の事象についてお詳しい方、ご教授いただけないでしょうか。
宜しくお願いいたします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

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kei344

2020/03/17 13:05

ショートコードを入力しているのは記事内でしょうか。また、その場合出力部分のコードも提示してください。
hogeniho

2020/03/17 13:19 編集

ショートコードを入力しているのは【固定ページ】内になります。 出力部分のコードは下記になります。 ``` <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> ``` お手数をおかけいたしますが、ご確認のほど宜しくお願いいたします。
kei344

2020/03/17 14:15

【固定ページ】の記事内(本文エリア内)ですね。固定ページの本文エリアの出力部分のコードも提示してください。
hogeniho

2020/03/17 14:26

ご連絡ありがとうございます。 【固定ページ】の記事内(本文エリア内)に、記述しているコードは下記になります。 ``` <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> ```
kei344

2020/03/17 14:41

「固定ページのテンプレートファイル」の本文エリア出力部分のPHPコードについて提示してもらえませんか、ということなのですが・・・。
hogeniho

2020/03/18 00:38

お手数おかけします。こちらで意味あっておりますでしょうか。ご確認いただますと幸いです。 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(); ````
guest

回答1

0

その試してみたのがちゃんとできてないんじゃないかとも思うので
その試してみたコードが見たいところではあるけど
とりあえず多少乱暴に直接的に追加

php

1if ( have_posts() ) { 2 34 5$GLOBALS['allowedposttags']['img']['srcset']=true; 6if ( have_posts() ) {

これでいけるならその試してみたのやつが
何らかの理由でうまくできてないってこと

投稿2020/03/18 02:11

KazuhiroHatano

総合スコア7819

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hogeniho

2020/03/18 14:24

ありがとうございます。 もろもろ確認した所、「試したこと」で行った修正コードの記述が一部まちがっておりました。コチラの確認不足でした。提示いただいたコードで、間違いに気づくことが出来ました。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問