admin 发表于 2020-7-8 10:31:59

[Discuz美化修改] Discuz X3 X3.1 正式版MP3音乐自动播放修改

很多人在问X3的MP3音乐自动播放的修改方法

因为新版本中的mp3的调用代码增加了调用play.swf的文件

所以干脆自己把这个功能加上去了,希望大家使用愉快

基本上和x2。5的修改方法差不多而已

手动修改方法如下:

1、打开./source/function/function_discuzcode.php            
<大概在394~410行代码位置:>搜索function parseaudio($url, $width = 400) {$ext = strtolower(substr(strrchr($url, '.'), 1, 5));switch($ext) {case 'mp3':$randomid = 'mp3_'.random(3);return '<span id="'.$randomid.'"></span><script type="text/javascript" reload="1">$(\''.$randomid.'\').innerHTML=AC_FL_RunContent(\'FlashVars\', \'soundFile='.urlencode($url).'\', \'width\', \'290\', \'height\', \'24\', \'allowNetworking\', \'internal\', \'allowScriptAccess\', \'never\', \'src\', \''.STATICURL.'image/common/player.swf\', \'quality\', \'high\', \'bgcolor\', \'#FFFFFF\', \'menu\', \'false\', \'wmode\', \'transparent\', \'allowNetworking\', \'internal\');</script>';case 'wma':case 'mid':case 'wav':return '<object classid="clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6" width="'.$width.'" height="64"><param name="invokeURLs" value="0"><param name="autostart" value="0" /><param name="url" value="'.$url.'" /><embed src="'.$url.'" autostart="0" type="application/x-mplayer2" width="'.$width.'" height="64"></embed></object>';case 'ra':case 'rm':case 'ram':$mediaid = 'media_'.random(3);return '<object classid="clsid:CFCDAA03-8BE4-11CF-B84B-0020AFBBCCFA" width="'.$width.'" height="32"><param name="autostart" value="0" /><param name="src" value="'.$url.'" /><param name="controls" value="controlpanel" /><param name="console" value="'.$mediaid.'_" /><embed src="'.$url.'" autostart="0" type="audio/x-pn-realaudio-plugin" controls="ControlPanel" console="'.$mediaid.'_" width="'.$width.'" height="32"></embed></object>';}}替换为function parseaudio($url, $width = 400, $autostart = 0) {$autostart = $autostart !== '' ? 1 : 0;$ext = strtolower(substr(strrchr($url, '.'), 1, 5));switch($ext) {case 'mp3':case 'wma':case 'mid':case 'wav':return '<object classid="clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6" width="'.$width.'" height="64"><param name="invokeURLs" value="0"><param name="autostart" value="'.$autostart.'" /><param name="url" value="'.$url.'" /><embed src="'.$url.'" autostart="'.$autostart.'" type="application/x-mplayer2" width="'.$width.'" height="64"></embed></object>';case 'ra':case 'rm':case 'ram':$mediaid = 'media_'.random(3);return '<object classid="clsid:CFCDAA03-8BE4-11CF-B84B-0020AFBBCCFA" width="'.$width.'" height="32"><param name="autostart" value="'.$autostart.'" /><param name="src" value="'.$url.'" /><param name="controls" value="controlpanel" /><param name="console" value="'.$mediaid.'_" /><embed src="'.$url.'" autostart="0" type="audio/x-pn-realaudio-plugin" controls="ControlPanel" console="'.$mediaid.'_" width="'.$width.'" height="32"></embed></object>';}}
<大概在192~194行代码位置:> 搜索if(strpos($msglower, '') !== FALSE) {$message = preg_replace("/\\s*([^\[\<\r\n]+?)\s*\[\/audio\]/ies", $allowmediacode ? "parseaudio('\\2', 400)" : "bbcodeurl('\\2', '<a href="{url}" target="_blank">{url}</a>')", $message);}替换为if(strpos($msglower, '') !== FALSE) {$message = preg_replace("/\\s*([^\[\<\r\n]+?)\s*\[\/audio\]/ies", $allowmediacode ? "parseaudio('\\2', 400, '\\1')" : "bbcodeurl('\\2', '<a href="{url}" target="_blank">{url}</a>')", $message);}2﹑打开static\js\editor.js
<大概在1097行代码位置:> 搜索str = '<p class="pbn">请输入音乐文件地址:</p><p class="pbn"><input type="text" id="' + ctrlid + '_param_1" class="px" value="" style="width: 220px;" /></p><p class="xg2 pbn">支持 wma mp3 ra rm 等音乐格式<br />示例: http://server/audio.wma</p>';替换为str = '<p class="pbn">请输入音乐文件地址:</p><p class="pbn"><input type="text" id="' + ctrlid + '_param_1" class="px" value="" style="width: 220px;" /></p><p class="pbn"><label for="' + ctrlid + '_param_2"><input type="checkbox" id="' + ctrlid + '_param_2" class="pc" value="1"/> 是否自动播放</label></p><p class="xg2 pbn">支持 wma mp3 ra rm 等音乐格式示例: http://server/audio.wma</p>';<大概在1291行代码位置:> 搜索insertText('' + $(ctrlid + '_param_1').value + '', 7, 8, false, sel);替换为var auto = $(ctrlid + '_param_2').checked ? '=1' : '';insertText('' + $(ctrlid + '_param_1').value + '', 7, 8, false, sel);
更新缓存。

好了,现在可以正常使用自动播放了。

懒人包:
解压后上传两个文件夹到论坛目录即可。

拾光 发表于 2020-7-8 10:32:34

很不错,支持一下

TyCoding 发表于 2020-7-8 10:32:56

好东西,谢谢楼主!!!!!!!!!!!!!

TyCoding 发表于 2020-7-8 10:33:35

呵呵呵呵呵呵呵呵呵

IT618发布 发表于 2020-7-8 10:34:35

支持手机端吗

拾光 发表于 2020-7-8 10:34:48

不懂,学习中

Crystαl 发表于 2020-7-8 10:35:42

非常好,学习一下。

TyCoding 发表于 2020-7-8 10:36:24

测试了,已经显示播放条,但需要手动点击才能播放。请问怎么调成打开帖子自动播放?并且音量调到最大?
谢谢。

拾光 发表于 2020-7-8 10:36:42

谢谢分享,下载试试

独家记忆 发表于 2020-7-8 10:37:15

post_deleted
页: [1]
查看完整版本: [Discuz美化修改] Discuz X3 X3.1 正式版MP3音乐自动播放修改

创宇盾启航版免费网站防御网站加速服务