所有操作均在终端下完成,所以没有图片
添加样式
找到并打开/source/module/home/home_editor.php,加入优酷按钮的样式- a.icoYouku{background:url('/static/image/common/youku.ico');background-repeat:no-repeat;background-position:2px 2px;}
复制代码 这个icon的文件建议直接使用优酷官网的”favicon_16.ico”
添加标签
找到并打开/source/module/home/home_editor.php,查找- <a href="javascript:;" class="icoSwf" id="icoSwf" onClick="createFlash(event, 1);return false;" title="<?php echo lang('home/editor', 'editor_link_flash'); ?>"></a>
复制代码 在这一行(可自行选择位置)之后加入优酷按钮- <a href="javascript:;" class="icoYouku" id="icoYouku" onClick="createYouku(event, 1);return false;" title="添加优酷视频"></a>
复制代码 这里有一点要注意,我是直接写的中文文本,如果你和上面一样使用php读取本地化文本的话需要在editor_language里面自己加文本,不要忘记处理文本编码问题
还有就是我这里响应的是createYouku方法,方法名可自定义,后面也需要改成一样的
查找- <div id="createPage" class="eMenu"
复制代码
并在下面按样例加入- <div id="createYoukuDiv" class="eMenu" style="display:none;top:35px;left:26px;width:400px;font-size:12px">
- <p>视频ID,例如[http://v.youku.com/v_show/id_<span style="color:red;">XMTc0Mjk1NDIwNA==</span>.html]</p>
- <input type="text" id="YoukuVID" name="YoukuVID" value="" class="t_input" style="width:190px;" placeholder="XMTc0Mjk1NDIwNA==">
- <input type="button" onclick="createYouku();" name="createYouku" value="<?php echo lang('home/editor','editor_ok'); ?>" class="submit">
- <a href="javascript:;" onclick="fHide($('createYoukuDiv'));return false;"><?php echo lang( 'home/editor', 'editor_cancel'); ?></a>
- </div>
复制代码 响应方法
找到/static/image/editor/editor_base.js,将- if(fInObj(el, "createUrl") || fInObj(el, "createImg") || fInObj(el, "createSwf") || fInObj(el, "createPage"))
复制代码 改为- if(fInObj(el, "createUrl") || fInObj(el, "createImg") || fInObj(el, "createSwf") || fInObj(el, "createPage") || fInObj(el, "createYouku"))
复制代码 即可响应createYouku方法,但不一定需要这样改,可以直接写createYouku方法,这里是为了兼容dz其他的功能
在本文件中搜索var arrMatch,并按样例在最后加入icoYouku:"createYouku",注意检查是否掉了逗号
在String.prototype.trim = function()这一行之前,仿照上面的样例加入- function createYouku(e, show) {
- if (typeof show == 'undefined') {
- //不要自作主张改将$改为jQuery
- var YoukuVID = $('YoukuVID').value;
- if ((YoukuVID != null)) {
- setCaret();
- format('insertHTML', '[youku]' + YoukuVID + '[/youku]');
- }
- fHide($('createYouku'));
- $('YoukuVID').value = '';
- } else {
- if (gIsIE) {
- var e = window.event;
- }
- getCaret();
- var dvYoukuBox = $("createYouku");
- var iX = e.clientX;
- var iY = e.clientY;
- dvYoukuBox.style.display = "";
- dvYoukuBox.style.left = (iX - 350) + "px";
- dvYoukuBox.style.top = 33 + "px";
- }
- }
复制代码 查找fHideMenu方法,并在var arr = []中按样例加入'createYouku'
解析短代码
找到/source/function/function_blog.php文件,在function blog_bbcode($message)中,按样例加入一行- $message = preg_replace("/\[youku](.+?)\[\/youku\]/ie", "blog_youku('\\1')", $message);
复制代码 当然这行正则可以自己随意修改,后面是匹配blog_youku的方参
在最后加上blog_youku的方法来解析短代码- function blog_youku($vid){
- return '<div id="youkuplayer" style="width:480px;height:400px"></div>
- <script type="text/javascript" src="http://player.youku.com/jsapi"></script>
- <script type="text/javascript">player = new YKU.Player(\'youkuplayer\',{styleid:\'0\',client_id:\'1c8daaa346d55d67\',vid:\''.$vid.'\',newPlayer:true,autoplay:true});</script>';
- }
复制代码 |