【EC-CUBE】トップページにFlashが表示できない

なんだかんだで結構な時間嵌っていたのでメモしておきます。

Adobe Flash CS3で12秒程度の簡単なスライドショーを作成。

それをパブリッシュ。
htmlファイルとAC_RunActiveContent.jsが作成されるので、まずAC_RunActiveContent.jsを該当ディレクトリにUP。

該当ディレクト
html/user_data/packages/テンプレート名/js

これだけでは読み込まれないので
data/Smarty/templates/テンプレート名/site_frame.tplに以下を記述

<script language="javascript">AC_FL_RunContent = 0;</script>
<script type="text/javascript"
 src="<!--{$TPL_DIR}-->js/AC_RunActiveContent.js">

書く場所は他にもjsのリンクがいっぱい貼ってあるところらへんです。

で、パブリッシュしたswfファイルを該当ディレクトリにアップロード。

私はhtml/user_data/packages/templates/テンプレート名/imgフォルダの下にshopというディレクトリを作ってそこにhoge.swfを入れました。

で、EC-CUBEの管理画面上から(別に管理画面上からやらなくても、分かる方は直接tplファイルをいじってFTPであげるなりすればいいと思いますが、初心者の方は管理画面上からやった方がラクかも。)デザイン管理→ページ詳細設定→トップページをクリックして編集可能な状態にする。

元のソース

<div id="mainimgarea">
  <img src="<!--{$TPL_DIR}-->img/shop/hoge.jpg" alt="メインイメージ" />
</div>


変更後のソース。

<div id="mainimgarea"></div>

までの間に以下を挿入。

<script language="javascript">
	if (AC_FL_RunContent == 0) {
		alert("このページでは \"AC_RunActiveContent.js\" が必要です。");
	} else {
		AC_FL_RunContent(
			'codebase', 'http://download.macromedia.com/pub/shockwave
/cabs/flash/swflash.cab#version=9,0,0,0',
			'width', '440',
			'height', '400',
			'src', 'hoge',
			'quality', 'high',
			'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
			'align', 'middle',
			'play', 'true',
			'loop', 'true',
			'scale', 'showall',
			'wmode', 'window',
			'devicefont', 'false',
			'id', 'hoge',
			'bgcolor', '#ffffff',
			'name', 'hoge',
			'menu', 'true',
			'allowFullScreen', 'false',
			'allowScriptAccess','sameDomain',
			'movie', '<!--{$TPL_DIR}-->img/shop/hoge',
			'salign', ''
			); //end AC code
	}
</script>
<noscript>
	<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" 
         codebase="http://download.macromedia.com/pub/shockwave/cabs/
                   flash/swflash.cab#version=9,0,0,0" 
                   width="440" height="200" id="hoge" align="middle">
	<param name="allowScriptAccess" value="sameDomain" />
	<param name="allowFullScreen" value="false" />
	<param name="movie" value="<!--{$TPL_DIR}-->img/shop/hoge.swf" />
        <param name="quality" value="high" />
        <param name="bgcolor" value="#ffffff" />
	<embed src="<!--{$TPL_DIR}-->img/shop/hoge.swf" quality="high"
                    bgcolor="#ffffff" width="440" height="200"
                    name="hoge" align="middle" allowScriptAccess="sameDomain"
                    allowFullScreen="false"
                    type="application/x-shockwave-flash" 
                    pluginspage="http://www.macromedia.com/go/getflashplayer" />
	</object>
</noscript>


何故こんなに簡単なのに凄い時間がかかってしまったのかといえば。

一つ一つ試してみるのに、違うパターンのソースを別個にしておかないで、結局何がしたかったのか、どこをどういじったのかを明確に残しておかなかったこと。

夜遅くなってから嵌ってしまったので焦ってしまったこと。

一つ一つ落ち着いて確認していけば案外早く終わったかもしれないのに早くやらなきゃ!早く帰らなきゃ!と焦ってしまったことで結局時間が凄くかかってしまったのでした。

教訓:急がば回れ