phpファイルに独自関数を作るとエラーが出る
-
問題:ショートコードでphpファイルを挿入できるようにした時、そのphpファイル内で独自関数を作るとエラーが出てしまいます。
やりたい事:固定ページにショートコードで自作のphpファイルを反映したい
・単なるphpファイルは反映できた
・しかし、phpファイルに独自関数を作るとエラーが出るエラーが出るまでの流れ
まず、固定ページにショートコードで自作のphpファイルを反映するため、テーマ内のfunctions.php
を以下のように変更しました。<?php if ( !defined( 'ABSPATH' ) ) { exit; } function Include_my_php($params = array()) { extract(shortcode_atts(array( 'file' => 'default' ), $params)); ob_start(); include(STYLESHEETPATH . "/$file.php"); return ob_get_clean(); } add_shortcode('myphp', 'Include_my_php'); ?>
続いて、自作のphpファイルである
test.php
が固定ページにショートコードで反映されるか確認しました。
test.php
の中身は以下の通りです。<?php echo 'テスト'; ?>
固定ページ内にはショートコードとして、
[myphp file='test']
を挿入しました。
結果、固定ページには”テスト”と表示されます。そして、ここからが問題点になります。
test.php
の中身を以下のように独自関数として変更しました。<?php function test(){ echo 'テスト'; } test(); ?>
ここで”テスト”と表示されることを期待したのですが、結果としてはエラーになってしまいます。
functions.phpに直接独自関数を書けば、上手くいくのだと思いますが、ショートコードで挿入したphpファイル(今回で言うtest.php)に独自関数をいくつも使いたいのです。是非、このことに対するご回答いただけますと幸いです。
12件の返信を表示中 - 1 - 12件目 (全12件中)
12件の返信を表示中 - 1 - 12件目 (全12件中)
- トピック「phpファイルに独自関数を作るとエラーが出る」には新たに返信することはできません。