PHPでJavascriptを書き出しHTMLから読み込む
目次
ブログの新着記事のリストを表示したいけど、そのページではPHPが使えない。ってときに使えます。また外部のブログのRSSを読み込みたい時に使えます。
まず、PHPで最新の投稿記事をブログのRSSから読み込み、動的な内容に合わせてJavascriptを書き出す。そしてHTMLページからJavascriptで呼出し表示します。
<?php //読み込みたいXMLのパス $rssurl = "http://qwerty.work/blog/index.xml?".date( "YmdHis", time() ); $rssdata = simplexml_load_file($rssurl); //表示件数 $num_of_data = 5; $outdata = "'<ul>'\n"; for ($i=0; $i<$num_of_data; $i++){ $pubDate = $rssdata->channel->item[$i]->pubDate; $pubDate = date('Y-m-d',strtotime($pubDate)); $outdata .= "+'<li>'\n"; $outdata .= "+'<small>". $pubDate . "</small> "; $outdata .= "<a href=\""; $outdata .= $rssdata->channel->item[$i]->link; $outdata .= "\">"; $outdata .= $rssdata->channel->item[$i]->title; $outdata .= "</a>'\n"; $outdata .= "+'</li>'\n"; } $outdata .= "+'</ul>'"; //↓これがないと書き出したスクリプトをJavascriptとして認識してもらえない header("Content-type: application/x-javascript"); echo "document.write($outdata)"; ?>
上記を呼び出すと以下の内容のJavascriptが書き出されます。(サンプル)
document.write('
- '
+'
- ' +'2024-04-25 【JS】ブラウザの表示領域を縦横比を計算' +' ' +'
- ' +'2024-03-19 【WebDAV】Windows10のエクスプローラーからの接続に失敗するとき' +' ' +'
- ' +'2024-03-15 【WIX】独自ドメイン接続が48時間待っても失敗するとき' +' ' +'
- ' +'2023-12-12 自動見積を自作したいときに使えるツール' +' ' +'
- ' +'2023-12-09 ヘッドレスCMS、SPA、SSR、SSGについてメモ' +' ' +'
これをHTMLから以下のように読みこんで表示させます。
すると以下のように表示されます。