wordpress 子テーマのfunction.php書いたショートコードが表示できない
Q&A
解決したいこと
固定ページにphpを読み込ませたいです。
そのためにfunction.php
にショートコードを読み込ませ、
さらには表示したい内容を直接function.php
に書くのではなく、別のphpファイルから読み込ませるようにしたいです。
ですが、表題の通り、子テーマ内のfunction.phpにショートコードに関する記述をし、
固定ページ入力したのですが、ショートコードがそのまま表示されてしまいます。
知識が乏しいため、解決策をご教示いただけませんでしょうか。
子テーマ内のfunction.phpにショートコードに関する記述を追加
twentytwentyone-child/function.php
<?php
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
function theme_enqueue_styles() {
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
wp_enqueue_style( 'child-style', get_stylesheet_directory_uri() . '/style.css', array('parent-style')
);
}
//phpをショートコードで読み込む
function short_php($params = array()) {
extract(shortcode_atts(array(
'file' => 'default'
), $params));
ob_start();
include(STYLESHEETPATH . "/$file.php");
return ob_get_clean();
}
add_shortcode('myphp1', 'short_php');
test.phpの作成
今回はfunction.phpの同階層にphpファイルを作成し、読み込ませる処理にしたいので、test.phpを作成
test.php
<?php
echo 'こんにちは';
固定ページにショートコードを書く
発生している問題・エラー
ショートコードがそのまま表示されてしまう
0