• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PHPファイルをincludeしてHTML表示する)

PHPファイルをincludeしてHTML表示する方法

1minnの回答

  • 1minn
  • ベストアンサー率57% (52/90)
回答No.1

wordpressは使った事はないのですが・・・ とりあえず上記のソースはHTMLですよね? なので include(dirname(__FILE__).'/index.php');(←ここにブログを表示させたい) って書いてもただそのまま表示されるだけですよね?だってHTMLだから。 HTMLをPHPとしても認識させるってのが(1)になるので 単純にPHPが動いてる環境であれば、 <p class="standard"> <?php include(dirname(__FILE__).'/index.php'); ?> </p> って感じで動きませんか?

toonie
質問者

補足

返信に本当に時間がかかって申し訳ありませんでした。いただいた回答を参考に、知り合いのプログラマーさんの力を借りて、あーでもないこーでもないと試行錯誤しておりました。 さて、現状を報告させていただくと、/wp/index.php内にて、wp-blog-header.phpという部品が、wordpressで編集したブログを既存のHTML画面に埋め込ませることに成功しました。以下の各ファイルのコードです。 ーーー/wp/index.phpコードーーー <?php /** * Front to the WordPress application. This file doesn't do anything, but loads * wp-blog-header.php which does and tells WordPress to load the theme. * * @package WordPress */ /** * Tells WordPress to load the WordPress theme and output it. * * @var bool */ ini_set('error_reporting', E_ALL & ~E_NOTICE & ~E_WARNING); define('WP_USE_THEMES', true); /** Loads the WordPress Environment and Template */ require('./wp-blog-header.php'); ?> ーーーwp-blog-header.phpコードーーー <?php /** * Loads the WordPress environment and template. * * @package WordPress */ if ( !isset($wp_did_header) ) { $wp_did_header = true; require_once( dirname(__FILE__) . '/wp-load.php' ); wp(); require_once( ABSPATH . WPINC . '/template-loader.php' ); } ?> ーーー/wp/index.htmlコードーーー <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html lang="ja-JP"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>タイトル</title> <META NAME="description" CONTENT="省略"> <META NAME="keywords" CONTENT="省略"> <META http-equiv="Content-Script-Type" content="text/javascript"> <META http-equiv="Content-Style-Type" content="text/css"> <META name="robots" content="all"> <link rel="shortcut icon" href="/images/favicon.ico"/> <link rel="icon" href="/images/favicon.ico"/> <link href="/css/main.css" rel="stylesheet" type="text/css"> <link href="/css/other.css" rel="stylesheet" type="text/css"> <script language="JavaScript" type="text/JavaScript"></script> <style type="text/css"> </style> </head> <body> <div id="header"> ~省略~ </div> <div id="contens"> <div id="leftmenu"> ~省略~ </div> <div id="rightmenu"> <p class="standard-title"><img src="/images/yajirusi-big.gif">ブログタイトル</p> <div class="blog"><?php require_once(dirname(__FILE__).'/index.php'); ?></div> </div> </div> ~省略~ </div> <div id="footer"> ~省略~ </div> </body> </html> ーーーーーーーーーーーーーーー これからWordPress内でCSSでレイアウト調整をすることになりますが、ひとまずこの質問内容は完了したと言えるかもしれません。本当にありがとうございます。 ひとつだけ解決できていない問題があるのですが、実は私が作ったhtmlファイル(/wp/index.html)はShift-JISで、 WordPressが吐き出してるブログ(/wp/index.php)はUTF-8で文字コードが違うので、ブログ部分のみ文字化けが起こります。それで上記のように/wp/index.htmlの<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">と変更したのですが、「テキストコーディングエラー」とポップアップが起こりました。「設定したテキストエンコーディングで保存済みですが、テキスト中のcharset設定と一致していないので、ブラウザ等で表示すると文字化けする可能性があります」とのことです。結果、ブログ部分がちゃんと表示され、HTMLで作成した部分は文字化けするようになりました。これはPHPの問題ではないかもしれませんが、原因がどうにも分かりません。もしかしたら初歩的な質問をしているかもしれませんが、よければ教えていただけないでしょうか。

関連するQ&A

  • PHPでincludeを使うと?が入る。

    さらくインターネットのレンタルサーバを使用していますが、 index.phpに include('header.php'); を入れてヘッダー部分のHTMLの呼び出しを行なっていますが 表示されるソースを見ていると、includeで呼び出しているヘッダー部分の手前に「?」が 入ってしまいます。 include(dirname(__FILE__).'/header.php'); include($_SERVER['DOCUMENT_ROOT'] . "/header.php"); など使っても同じ現象のため、どうしたら「?」を無くすことができるでしょうか。

    • ベストアンサー
    • PHP
  • 同一phpファイルからのinclude

    ってできるんですか? 例えばindex.phpの16行目辺りの文章をDIVで囲ってtitleつけて、それを同一index.phpファイルの100行目辺りにphp includeでまた表示…外部ファイルにして両方にincludeすればいいんですが、できるのかなぁって。 よろしくお願いします。

    • 締切済み
    • PHP
  • ボタンを押すことでincludeの値を変更するには?

    ボタンを押すことでincludeの値を変更するには? HTMLとPHPを利用してウェブサイトを制作していているのですが、リンクに関してわからないことが出てきました。 現在index.htmlに以下の記述をしています。 <div id="menu"><?php include("menu.php"); ?></div> <div id="main"><?php include("main.php"); ?></div> menu.phpにリンクを記述して、それを押すことで<div id="main">に変化を与えたいのですが、そういうことは可能でしょうか? 具体的には<div id="main">内の<?php include("main.php"); ?>を<?php include("page2.php"); ?>などとできればうれしいのですが... ActionScriptでは出来たのですが、phpではどうすればいいのでしょうか...? 目的はindex.htmlなどを一度書き上げるだけで、あとの要素は全て簡潔にすませロードさせるだけにして管理を簡単にすることです。 メニュー->サブメニュー展開->内容表示 と三行程を行うのに、普通だとそれぞれ メニューのあるページ、左記に加えサブメニューの展開されたページ、左記二つを含んだ内容のページと、三つも必要になり大変です。 なのでボタンを押すと指定した要素に別のものをロードできたら...と思って質問させていただきました。 よろしくお願いいたします。

    • 締切済み
    • PHP
  • wordpressでincludeが表示されない

    wordpressで投稿した際に、phpのincludeファイルを読み込ませようとしています。 wordpressのサイトを sample.com とした場合、 投稿記事に以下を貼り付けています。 <?php include("http://sample.com/include/link.inc");?> サイトはUTF-8、link.incファイルもUTF-8で保存しています。 試しにsample.comの直下にtestフォルダを作って、その中にhtmlファイルを作って 同様に上記のphpのinclude記述をしたところ、ちゃんと表示されました。 ちなみに別のドメインサイト(HTMLサイト)でも上記の記述で表示されました。 wordpressのサイトで表示されないのは何が原因でしょうか?

    • 締切済み
    • PHP
  • php include がどうしてもできません;;

    php include がどうしてもできません;;; php、超がつく程初心者です; Windows7、Internet explorer9、Apache2.2、PHP5.4.6、現在はlocalhost上でphp動作確認、 作業しております。 サイトのメニューをPHPで作成したいと思い色々必死に調べ、htdocsフォルダ直下同士?のphpは何とか表示させることができました。(localhostですが) しかしhtdocsより下のフォルダに入っているものですと、例え同階層でも表示がされません; ↓のような感じで完全に詰まってしまいました; htdocs/index.html に htdocs/topmenu.php を表示させる↓ htdocs/index.html内で <?php include(dirname(__FILE__).'/topmenu.php'); ?> → 成功 htdocs/naiyou/naiyou1.html に htdocs/naiyou/menu.php を表示させる↓ htdocs/naiyou1.html 内で <?php include(dirname(__FILE__).'/menu.php'); ?> → 失敗 htdocs/naiyou/naiyou1.html に htdocs/topmenu.php を表示させる↓ htdocs/naiyou1.html 内で <?php include(dirname(__FILE__).'/../topmenu.php'); ?> → やっぱり失敗 htdocsフォルダ直下のみでしかできない設定に私がしてしまっているのでしょうか。 元々直下のみしか表示できないもの…? それとももっと基本的なところでひかかっているのかな… 何かのパスが間違っているのでしょうか。 htdocsフォルダの場所とDocumentRootは共に "C:/Program Files (x86)/Apache Software Foundation/Apache2.2/htdocs" となっています; 知識不足もあり言葉が足りないこと、説明がよく分からないことも多いこともあるかと…すみません。 既出の質問等も探しているのですが同条件を中々見つけられず、もうかれこれ1ヶ月近く解決せず悩んでいます。 申し訳ありませんが、どなたかご教授ください...;

    • ベストアンサー
    • PHP
  • PHPが出力したHTMLにinclude文を

    PHP4.3で、HTMLファイルをテンプレート出力する方式の掲示板を使っているのですが、テンプレートのHTMLファイル内に別のPHPスクリプトで出力した表示を貼り付けようと思い、 <?include("hoge.php");?> とinclude文を書き込んだのですが、これが反映されずにソース内に<?include("hoge.php");?>という記述がそのまま出て来てしまいます。 これが出来ない原因は、PHP実行→HTML表示→HTML内のPHP実行という二度のPHP実行が出来ないのか、<?include~を「文字列」として認識してしまっているのかのどちらかだと思うのですが、、 PHPファイルには一切手が加えられない状況なので、テンプレートHTMLに手を加えるだけで別のPHPスクリプトを読みこませたいのですが、何かいい方法は無いでしょうか?

    • ベストアンサー
    • PHP
  • php インクルードincludeした時のパス

    phpにてincludeした時のパスで躓いています。 現在のツリーは以下の様になっています。 index.html common  ├header.html  ├footer.html  ├right.html  ├img   ├navi-home.jpg   ├navi-1.jpg  ├css   ├base.css salon  ├hair    ├kari     ├index.html     ├access     ├ ├index.html     ├menu     ├ ├index.html この中の../hair/kari/index.htmlの中に ../common/header.html及びfooter.htmlを <?php include_once(dirname(__FILE__).'/../../../common/header.html'); ?> にてインルードしています。(書き方あってます?dirname(__FILE__).いります?) つぎに../hair/kari/access/index.htmlの中にもインクルードします。 <?php include_once(dirname(__FILE__).'/../../../../common/header.html'); ?> という風に一つ下の階層なので../を付け足しました。 このようにページ毎にheaderまでの相対パスが違うので、そのページ毎にパスを書き換えていかなければいけないものなのでしょうか? また../始まりではなく/始まりでないと表示されません。 /始まりは絶対パスでしたっけ? この書き方は間違っているのでしょうか? そして最後に、 ../common/header.htmlの中の画像ファイルやリンクは <img src="/common/img/navi-home.jpg"> の様に書かないと、インクルードしたファイル側で表示されません。 これも同じように/始まりのこの書き方でいいのでしょうか? 宜しくお願い致します。

    • ベストアンサー
    • PHP
  • HTMLのincludeについて教えて下さい

    ほぼ、PHPかWordPressをいじってて 今回、HTMLの仕事があり、自分がバックでつくことになりました そこでお聞きしないのが htmlってinclude出来るのでしょうか? もしくは、その代わりになるものがあれば URLとご一緒にアドバイス頂ければと思います。 よろしくお願い致します。

    • ベストアンサー
    • HTML
  • PHPとHTMLについて質問です。

    PHPとHTMLについて質問です。 PHP内に以下の記述をしています。 ~略~ <form id="form1" name="form1" method="post" action="bschat.php"> <h1>各種設定を行ってください</h1> ~略~ 上記の1行目で予期せぬエラーが表示されていますとエラー表示されています。 これらを表示するにはどうすればいいですか?

    • ベストアンサー
    • PHP
  • phpのincludeについて

    お世話になります。 Apache/2.2.3 PHP5.1.6 のレンタルサーバを利用しています。 httpdocs   |___lib   |  |___test.php   |___index.php という構造にしています。 -----test.php-------- <?php $a = 'sample'; ?> --------------------- -----index.php------- <?php include_once 'lib/test.php'; echo $a; ?> --------------------- 上記の場合、index.phpには 「sample」と表示されます。 -----index.php------- <?php include_once 'http://example.com/lib/test.php'; echo $a; ?> --------------------- 上記の場合、なぜか表示されません。 そこで「http://~~」はincludeできないのかなと思ったのですが -----test.php-------- <?php $a = 'sample'; echo $a; ?> --------------------- -----index.php------- <?php include_once 'http://example.com/lib/test.php'; ?> --------------------- とすると、なぜか「sample」と表示されました。 この結果から、includeはできているみたいです。 なんとか -----test.php-------- <?php $a = 'sample'; ?> --------------------- -----index.php------- <?php include_once 'http://example.com/lib/test.php'; echo $a; ?> --------------------- で「sample」と表示させたくて試行錯誤してみたのですが どうしても解決できません。 お力添えのほどお願いできればと思います。 よろしくお願いいたします。

    • ベストアンサー
    • PHP