1

このフラッシュ カルーセルを Wordpress の投稿に表示しようとしています。空白のスペースを右クリックして、フラッシュ オプション メニューを表示できますが、ムービーが表示されません。画像とテキストを取り込む xml ドキュメントにリンクします。それはxmlの問題ですか?以下は、Flash ムービーを実行できるようにするために、wordpress テンプレート ヘッダーに配置したものです。

<script src="<?php bloginfo('template_directory'); ?>/scripts/swfobject.js" type="text/javascript"></script>

<!-- JavaScript function - called by the animation -->
<script type="text/javascript">
  function MyFunction(p1){
    alert("You have clicked on: " + p1);
  }
</script>

テーマの「scripts」フォルダーにあるswfobjectへの参照を含め、すべてが必要な場所にあります。今ここに私が取り組んでいる投稿に書いたコードがあります:

    <!-- BEGIN embed 3D Carousel -->

<!-- This <div> is replaced by the Flash content! (see "SWFObject embed by Geoff Stearns ..." below)
    Place your alternate content here and users without the Flash plugin 
or with Javascript turned off will see this.-->
<div id="flashcontent">
  <br />
  <br />
  <center>
    <a target="_blank" href="http://www.macromedia.com/go/getflash/">
      <img border="0" alt="" src="images/getflash.png" />
    </a>
  </center>
</div>

<!-- SWFObject embed by Geoff Stearns geoff@deconcept.com http://blog.deconcept.com/swfobject/ -->
<script type="text/javascript"> 
  var so = new SWFObject("3dcarouseldev.swf", "3dcarouseldev", "780", "460", "8.0.0.0", "#ffffff"); 
  so.addParam("quality", "high"); 
  so.addParam("scale", "noscale"); 
  so.addParam("menu", "false"); 
  so.addParam("salign", "lt"); 
  so.addParam("wmode", "transparent");
  so.addParam("flashvars", "configfile=3dcarousel.xml");
  so.write("flashcontent");
</script>

<!-- END embed 3D Carousel -->

すべてのサポート ファイルに正しくリンクされているにもかかわらず、これが機能しない理由はありますか? Wordpress は Flash の埋め込みを好まないのですか? ホスティングは、それが役立つ場合は Godaddy にあります。

ありがとう!

4

2 に答える 2

1

WordPress.orgはデフォルトでSCRIPT/ EMBED/OBJECTタグをブロックします。

ハッカーでこれを無効にするか、 のようなカスタム構文を提供するプラグインがいくつかあります[youtube][/youtube]が、より良い解決策は、oEmbed をサポートする WordPress 2.9 にアップグレードすることです。

于 2009-12-28T20:13:56.740 に答える
0

実際のフラッシュ ムービーへのリンクが正しくリンクされていないと思います。ファイル名を参照するときは、テーマ ディレクトリへの正しいパスを使用する必要があることに注意してください。これは、swfobject.js ファイルをロードするために行いましたが、3dcarouseldev.swf をロードするためではありません。

スクリプトの次の行を変更します。

var so = new SWFObject("3dcarouseldev.swf", "3dcarouseldev", "780", "460", "8.0.0.0", "#ffffff"); 

これに:

var so = new SWFObject("<?php bloginfo('template_directory'); ?>/3dcarouseldev.swf", "3dcarouseldev", "780", "460", "8.0.0.0", "#ffffff"); 

これにより、テーマ ディレクトリへの完全なパスが javascript 変数に与えられます。これは、3dcarouseldev.swf ファイルが (サブディレクトリではなく) テーマ フォルダーにあることを前提としています。ファイルが別の場所にある場合は、適切な場所を指すようにディレクトリを調整する必要があります。

于 2009-12-29T06:56:00.523 に答える