yuktkhs
@yuktkhs (yuki takahashi)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

wordpress 子テーマのfunction.php書いたショートコードが表示できない

解決したいこと

固定ページに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 'こんにちは';

固定ページにショートコードを書く

test.phpを探してもらう
image.png

発生している問題・エラー

ショートコードがそのまま表示されてしまう

image.png

0

No Answers yet.

Your answer might help someone💌