htmlや改行の混じった長い文字列をそのまま記述して出力するために「ヒアドキュメント」というのを使ってみる
目次(クリックでジャンプ)
テスト1
表示
むき出しで
ボックスに入れて
よっしゃ。うまく行った。最初「return」ではなく「echo」を使ったらダメだった。
phpの中身
function heredoc_tst001()
{
$hue=mt_rand(1,359);
$string = <<< EOM
<div style=”background:hsl($hue,50%,60%);”>ヒアドキュメントの表示テスト1</div>
EOM;
return $string;
}
add_shortcode(‘spt_here001′,’heredoc_tst001’);
テスト2
上記に加えて、本体子テーマのスタイルシートを指定してみる。リロードボタンも加えた
表示
スタイルシートとボタンはうまく表示されたが、リロードボタンは機能せず(トップページに飛んでしまう)
phpの記述
function heredoc_tst002()
{
$hue=mt_rand(1,359);
$string = <<< EOM
<div class=”N-box” style=”border-color:hsl($hue,50%,60%);”>ヒアドキュメントの表示テスト2</div>
<div><a href=”{$_SERVER[“SCRIPT_NAME”]}”>リロード1(script_name)</a></div>
<div><a href=”{$_SERVER[“PHP_SELF”]}”>リロード2(php_self)</a></div>
<div><a href=”https://zky-juku.com/tst-4-n-5/5330#tst5″>リロード3(URLとアンカー)</a></div>
<div><a href=”https://zky-juku.com/tst-4-n-5/5330″>リロード3(URL)</a></div>
<style>.N-box:after{color:hsl($hue,50%,60%);}</style>
EOM;
return $string;
}
add_shortcode(‘spt_here002′,’heredoc_tst002’);