广

Discuz教程

  • 帝国cms教程
  • 织梦CMS教程
  • PHP CMS教程
  • ECSHOP教程
  • WordPress教程
  • Discuz教程
  • CMS学习

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

    2018-04-02 20:46:02 次阅读 稿源:互联网
    广告
    最近安装使用区有很多人在问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


    一起学吧部分文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与一起学吧进行文章共享合作。

    广告
    广告
    广告