致力于打造中国站长娱乐学习的免费资源站!

您当前的位置:首页 > 教程 > CMS教程 > discuz

招租联系QQ:283852481

Discuz!X2 正式版音乐自动播放修改方法

时间:2016-10-23  来源:互联网  

最近安装使用区有很多人在问X2为什么没有自动播放的选项了

我也不知道官方为什么去掉这个功能

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

1、打开./static/js/editor.js

搜索
  1. 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>';
复制代码
修改为
  1. 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><br /></p><p class="xg2 pbn">支持 wma mp3 ra rm 等音乐格式<br />示例: http://server/audio.wma</p>';
搜索
  1. insertText('[audio]' + $(ctrlid + '_param_1').value + '[/audio]', 7, 8, false, sel);
修改为
  1. var auto = $(ctrlid + '_param_2').checked ? '=1' : '';
  2.                                 insertText('[audio' + auto +']' + $(ctrlid + '_param_1').value + '[/audio]', 7, 8, false, sel);
2、打开./source/function/function_discuzcode.php
搜索
  1. function parseaudio($url, $width = 400) {
  2.         $ext = strtolower(substr(strrchr($url, '.'), 1, 5));
  3.         switch($ext) {
  4.                 case 'mp3':
  5.                 case 'wma':
  6.                 case 'mid':
  7.                 case 'wav':
  8.                         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>';
  9.                 case 'ra':
  10.                 case 'rm':
  11.                 case 'ram':
  12.                         $mediaid = 'media_'.random(3);
  13.                         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>';
  14.         }
  15. }
替换为
  1. function parseaudio($url, $width = 400, $autostart = 0) {
  2.         $autostart = $autostart !== '' ? 1 : 0;
  3.         $ext = strtolower(substr(strrchr($url, '.'), 1, 5));
  4.         switch($ext) {
  5.                 case 'mp3':
  6.                 case 'wma':
  7.                 case 'mid':
  8.                 case 'wav':
  9.                         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>';
  10.                 case 'ra':
  11.                 case 'rm':
  12.                 case 'ram':
  13.                         $mediaid = 'media_'.random(3);
  14.                         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.'" type="audio/x-pn-realaudio-plugin" controls="ControlPanel" console="'.$mediaid.'_" width="'.$width.'" height="32"></embed></object>';
  15.         }
  16. }
搜索
  1. if(strpos($msglower, '[/audio]') !== FALSE) {
  2.                         $message = preg_replace("//[audio(=1)*/]/s*([^/[/</r/n]+?)/s*/[//audio/]/ies", $allowmediacode ? "parseaudio('//2', 400)" : "bbcodeurl('//2', '<a href=/"{url}/" target=/"_blank/">{url}</a>')", $message);
  3.                 }
替换为
  1. if(strpos($msglower, '[/audio]') !== FALSE) {
  2.                         $message = preg_replace("//[audio(=1)*/]/s*([^/[/</r/n]+?)/s*/[//audio/]/ies", $allowmediacode ? "parseaudio('//2', 400, '//1')" : "bbcodeurl('//2', '<a href=/"{url}/" target=/"_blank/">{url}</a>')", $message);
  3.                 }

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

如果不想手动修改,又没必过这两个文件 的,直接下载以下附件,上传替换。

upload.rar



精彩广告