2

次のコードを使用して、mp3プレーヤーをWordPressに統合しようとしています。

 $(document).ready(function(){
        var description = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit';
            var path_php = "<?php bloginfo('template_directory'); ?>";

        $('body').ttwMusicPlayer(myPlaylist, {
            autoPlay:false, 
            description:description,
            jPlayer:{
                swfPath: path_php+'/plugin/jquery-jplayer' 
            }
        });
    });

奇妙なことに、プレーヤーはOperaとIE8だけで動作しています。ブログの絶対パスをvarphp_pathに書き込むと機能するため、スクリプトは正しく統合されています。

私が欠けているものを手伝ってくれますか?ありがとう!

後で編集:上記のjqueryコードにwpテンプレートパスをロードする方法の別のアプローチについてのアイデアがあれば、私はそれを受け入れます。

上記のコードのブラウザ出力は次のとおりです。

  $(document).ready(function(){
            var description = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit';
            var path_php = "http://localhost/mywebsite/wp-content/themes/mythemename";

            $('body').ttwMusicPlayer(myPlaylist, {
                autoPlay:false, 
                description:description,
                jPlayer:{
                    swfPath: path_php+'/plugin/jquery-jplayer' 
                }
            });
        });
4

4 に答える 4

0

ワードプレスで

plugins_url()

ドメインを含むプラグインのURLを返します。

$(document).ready(function(){
    var description = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit';
        var path_php = "<?php print plugins_url(); ?>";

    $('body').ttwMusicPlayer(myPlaylist, {
        autoPlay:false, 
        description:description,
        jPlayer:{
            swfPath: path_php.match(/http:\/\/[^\/]+(.*)/)[1]+'jquery-jplayer' 
        }
    });
});

したがって、http://とdomainを何も置き換えず、最後にプラグインパスとjquery-jplayerだけを残す必要があります。

于 2011-08-26T09:24:07.037 に答える
0

Wordpress は非競合モードで実行されるため、代わりに $ を jQuery に変更してください。詳細については、こちらを参照してください -> http://codex.wordpress.org/Function_Reference/wp_enqueue_script#jQuery_noConflict_wrappers

于 2011-08-26T12:14:52.840 に答える
0

bloginfo('template_directory')絶対 URL を返し、Flash はセキュリティ上の理由から相対 URL のみを読み込むと確信しています。

http://codex.wordpress.org/Function_Reference/bloginfo

編集:

以下の私の最後のコメントを無視して、これを試してください。

<?php print str_replace(get_bloginfo('url'), '', get_bloginfo('template_directory'))?>
于 2011-08-26T09:08:23.997 に答える
0

ちょっと、mp3 リンクをオーディオ プレーヤーに変換するスクリプトを書きました: http://www.bottleofbrass.com/?p=85

以下の Javascript コードは、jQuery を使用して mp3 リンクをその場で Flash Player に変換します。このフラッシュ プレーヤーを使用します: http://flash-mp3-player.net

$('#main a').each(function(){ if($(this).attr('href')!=undefined){ match=$(this).attr('href').match(/ \.(mp3)/); if(match!=null){ href=$(this).attr('href'); text=$(this).text(); player= ''+text+'

'+ ''+ ''+ ''+ ''+ ''; p=$(this).parent(); $(これ).remove(); $(p).append(プレイヤー); } } });
于 2011-12-29T17:56:26.160 に答える