ライブドアブログでHTMLを外部から挿入する
ライブドアブログでHTMLを外部から挿入する
―――――――――――――――――――――――――
ライブドアブログ内のHTMLの一部を外部管理したいというもの。
例えば、サイドのテキスト広告の部分だけ、ライブドアブログ管理画面ではなく、
他の管理画面を作って管理する、みたいなイメージ。
------------------------------------
●結論
iframeを利用して、外部ファイルは別のライブドアブログIDを作って、そこに置く。
例)
<iframe src="http://blog.livedoor.jp/japanrock_test2/archives/50595864.html" name="sample" width="200" height="150" frameborder="0">
この部分はインラインフレームを使用しています。
</iframe>
------------------------------------
------------------以下は奮闘気です------------------
うーん。どうやろう...。
前回でPerlやPHP等のプログラミング言語は使いないのは分かってるし・・・。
やはりjavascriptか...。
とりあえず、目標を立てる。
--------
<p>このHMTLは外部管理です</p>
--------
↑このHTMLをライブドアブログに表示&外部管理しよう!
<img src="テキストファイル">
↑これで、テキスト表示できたりしないかな・・・。
やってみよう。
うー無駄目だった・・・。全然表示されん・・・。
おもむろに、「javascript テキスト 表示」でググッテみる。
おおおおおおぉ。
http://www.openspc2.org/JavaScript/Ajax/WebDesigning/200603/index.html
↑これ発見!
すばらしい!!
絶対URLでもOK!
では、ライブドアブログに貼ってみる。
・・・うーむ。貼ってみたがうまくいかない・・・。
ライブドアブログの文字コードがeuc-jpだからか・・・??
euc-jpでやってみよう。
むー。eucでもできる・・・。
ライブドアブログで外部ファイルを読み込めないとかなのかな・・・。
ヘルプを見てみよう・・・。
うーむ・・・ノってない。。。
あ、javascriptのファイル操作系のプログラム漁って見よう。
http://www.umechando.com/javascript/index.html
http://phpspot.org/blog/archives/2006/11/iframehtmlhtml.html
http://www.tagindex.com/html_tag/other/object.html
http://www.tohoho-web.com/html/object.htm
http://www.iyahooi.com/entry/2007/04/iframehtmlhtml.html
↑おおおおおぉ。発見!
<html>
<head>
<title>test</title>
</head>
<body>
<!--[if IE]>
<object type="text/html" classid="clsid:25336920-03F9-11CF-8FD0-00AA00686F13" data="read.html" style="width:100;height:100px">
<p>non object</p>
</object>
<![endif]-->
<!--[if !IE]> <-->
<object type="text/html" data="read.html">
<p>non object</p>
</object>
<!--> <![endif]-->
</body>
</html>
おおおおぉ。確かにファイルを読み込んで表示できた。
しかし、IEだと、枠がつく・・・。コレを取り除くぞ。
<object type="text/html" style="border-style: none;width:200;height:200px" data="read.html"></object>
↑失敗。border-styleではないようす・・・。
あー、IFRAMEもあるのか・・・。
http://www.htmq.com/html/iframe.shtml
ちょっとこっちでやってみよう。
<iframe src="read.html" name="sample" width="200" height="150" style="border-style:none;">
この部分はインラインフレームを使用しています。
</iframe>
↑こっちの方がましだが、IEでまだ枠が取れない・・・。
http://www.tagindex.com/html_tag/frame/i_frameborder.html
↑発見!
frameborder="0"
↑というのがあるらしい。やってみる。
<iframe src="read.html" name="sample" width="200" height="150" frameborder="0">
この部分はインラインフレームを使用しています。
</iframe>
おおおおおぉ!IEでもFFでも枠消えた!!
これをライブドアブログで、しかも別サーバーにあるファイルを読み込んでみる。
おう!iframeを挿入すると、iframe内にライブドアの広告が入る!!
ライブドアブログではiframe利用禁止なのか??
うーん。だめっぽい。
objectでやってみよう。
おおおぉ。YouTubeは大丈夫だ。
<object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/Q6STO7TCFik"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/Q6STO7TCFik" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object>
では、僕のサーバーのものをやってみよう。
<object type="text/html" data="http://synth.jp/livedoor_blog_test/read.html" width="200" height="200">
<p>non object</p>
</object>
うーん。ダメだ!!!広告が挿入される!!htmlファイルの挿入はダメなのか・・・?
書き方の問題なのか・・・。
livedoorのヘルプにかいてないんだよな・・・もー。
http://helpguide.livedoor.com/help/blog/qa/grp43
Q. 自由に書き込めるプラグインが欲しいのですが?
A. 上級者向けプラグインにある『フリーエリア』プラグインをお使いください。HTMLを自由に記述することができます。
他サービスのカウンターやアクセス解析、広告バナーなどを貼り付けるのにご利用いただけます。
↑このように書いてあるが・・・全然自由ぢゃない・・・。
http://worris.blog61.fc2.com/blog-entry-7.html
↑ココには「IFRAMEが使えるブログサービス」でlivedoorがあるので、使えそう・・・。使い方なのか・・・。
外部は無理なのか・・・。
では、内部でやってみよう。
おおおぉ。
<object type="text/html" data="http://blog.livedoor.jp/japanrock_test/archives/50941343.html" width="200" height="200">
<p>non object</p>
</object>
↑これはいける!!やっぱ、指定のサーバーからの外部ファイルしか読み込めないのかなー。
ならば!
別にライブドアIDを作って、そこからとってくればいいな。
別のIDをつくろう。
おおおおおぉ。別のIDで作ってobjectで挿入したらできる!!!
やっぱ外部から読み込めるドメインと読み込めないドメインがあるんだな・・・。
objectタグだとIEで枠が付いてしまう問題があるので、
消そう。
<object type="text/html" data="http://blog.livedoor.jp/japanrock_test/archives/50941343.html" width="200" height="200">
<p>non object</p>
</object>
frameborder="0"
↑これobjectタグで使えないかな・・・。やってみませう。
うーん。やってみたがだめぽ。
iframeでやってみよう。
おおおおおおぉ!!!iframeでだいじょうぶだ!!!
<iframe src="http://blog.livedoor.jp/japanrock_test2/archives/50595864.html" name="sample" width="200" height="150" frameborder="0">
この部分はインラインフレームを使用しています。
</iframe>
これでいこう。
よかったよかった。