既存のhtmlファイルを、wordpress化しています。
index.phpというトップファイルを作成し、ある程度できあがったので、それから下層ページを作ろうとしたところ、他のページでテンプレートタグを使うとエラーが出てしまいます。特定のテンプレートタグではなく、すべてのテンプレートタグでエラーが出ています。index.phpでは正常に機能していたのに、なぜでしょうか?
ファイルの構成は、テーマファイルに「index.php」や「header.php」などを置き、そのなかで各下層ページのフォルダを作って、そこに「archive-news.php」などを作っています。
<試したこと>
<?php get_header(); ?>でエラーが出たため、header.phpを同じフォルダに設置したが、だめでした。そのあとテンプレートタグすべてにエラーがでてることに気付きました。試しにnewsフォルダに入っているarchive-news.phpファイルを、フォルダから取り出し、index.phpと同じところに設置したが、それでもだめでした。
<エラー文>
( ! ) Fatal error: Uncaught Error: Call to undefined function get_header() in C:\Users\UserName\Local Sites\wordpressdemo\app\public\wp-content\themes\pondesign\news\archive-news.php on line 4
( ! ) Error: Call to undefined function get_header() in C:\Users\UserName\Local Sites\wordpressdemo\app\public\wp-content\themes\pondesign\news\archive-news.php on line 4
上記は、<?php get_header(); ?>をヘッドタグのなかに記述したときの一例です。他のテンプレートタグでも同様のエラーが出ています。下層ファイルでも、テンプレートタグを使用できるようにするには、どうすればいいのでしょうか?
<追加補足>
下層ページについては、index.phpファイルのaタグに「<a href="<?php echo get_template_directory_uri(); ?>/news/archive-news.php">NEWS</a>」と記述してアクセスしています。テンプレートタグが使えないので、cssが無効の状態になっています。local by flywheelで編集すると上記のエラーメッセージが表示され、MAMPで編集すると、テンプレートタグを使った時点で画面が真っ白になります。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/03/12 08:07