Discuz模板|Discuz插件|Discuz教程|Discuz素材免费下载

 找回密码
 立即注册

QQ登录

只需一步,快速开始

广告
温馨提示:本站所有DZ相关模板、插件、教程(包括DZ应用中心已下架插件、模板)所有用户可全部免费下载,无任何收费模式(不包括VIP版块非DZ资源,VIP版块需购买会员组方可下载),如本站没有您需要的插件或模板,请自行前往淘宝互站网送吗网等第三方站点搜索相关插件或模板进行低价格购买下载本站非常不建议用户浪费金钱前往DZ应用中心购买。

DiscuzX门户加入优酷视频按钮

[复制链接]
tuyuanma 发表于 2020-5-11 10:05:55 | 显示全部楼层 |阅读模式
温馨提醒:禁止内容附带广告图片、二维码图片,否则将在不通知情况下永久禁言账号!
欢迎加入兔源码站长交流群,您的加入是我们前行的动力!

DZ站长建站交流群:493651246

[ 温馨提示:点击上方群文字,可快速加入QQ群 ]


所有操作均在终端下完成,所以没有图片( Y+ @- g/ I& P$ F
; ]7 K; c6 I* Y( Q) k
添加样式
, y1 R9 R  W3 h3 D" \- P8 G# I, y找到并打开/source/module/home/home_editor.php,加入优酷按钮的样式
  1. a.icoYouku{background:url('/static/image/common/youku.ico');background-repeat:no-repeat;background-position:2px 2px;}
复制代码
这个icon的文件建议直接使用优酷官网的”favicon_16.ico”
! X0 J3 w! v5 l& U5 E9 W. }* I% H
$ s! A& A( u* [- L  m4 N& N4 A7 h* M添加标签; H5 l4 ]! X# R. C, P9 T
找到并打开/source/module/home/home_editor.php,查找
  1. <a href="javascript:;" class="icoSwf" id="icoSwf" onClick="createFlash(event, 1);return false;" title="<?php echo lang('home/editor', 'editor_link_flash'); ?>"></a>
复制代码
在这一行(可自行选择位置)之后加入优酷按钮
  1. <a href="javascript:;" class="icoYouku" id="icoYouku" onClick="createYouku(event, 1);return false;" title="添加优酷视频"></a>
复制代码
这里有一点要注意,我是直接写的中文文本,如果你和上面一样使用php读取本地化文本的话需要在editor_language里面自己加文本,不要忘记处理文本编码问题: R0 ]( j; {5 c% ]4 K- t/ ?) F
% c/ b% B: h: a* e% j/ t& k
还有就是我这里响应的是createYouku方法,方法名可自定义,后面也需要改成一样的7 P8 e6 P3 h& v% K4 S0 w8 u9 F
& N; ]/ D+ e6 v8 S5 a
查找
  1. <div id="createPage" class="eMenu"
复制代码

! O/ X' t3 S/ |: P并在下面按样例加入
  1. <div id="createYoukuDiv" class="eMenu" style="display:none;top:35px;left:26px;width:400px;font-size:12px">: g1 q- M' l) x: b
  2.     <p>视频ID,例如[http://v.youku.com/v_show/id_<span style="color:red;">XMTc0Mjk1NDIwNA==</span>.html]</p>
    5 U3 X" J& X% Z5 Z1 Z
  3.     <input type="text" id="YoukuVID" name="YoukuVID" value="" class="t_input" style="width:190px;" placeholder="XMTc0Mjk1NDIwNA==">
    3 p" `7 U; y6 F1 G, e  l/ [5 M
  4.     <input type="button" onclick="createYouku();" name="createYouku" value="<?php echo lang('home/editor','editor_ok'); ?>" class="submit">
    8 a, I7 k5 K2 M5 ~; ~0 L2 O4 J0 a8 X
  5.     <a href="javascript:;" onclick="fHide($('createYoukuDiv'));return false;"><?php echo lang( 'home/editor', 'editor_cancel'); ?></a>4 g8 R) Y  Z" f
  6. </div>
复制代码
响应方法
7 R+ j8 [. N0 Q3 W  g找到/static/image/editor/editor_base.js,将
  1. if(fInObj(el, "createUrl") || fInObj(el, "createImg") || fInObj(el, "createSwf") || fInObj(el, "createPage"))
复制代码
改为
  1. if(fInObj(el, "createUrl") || fInObj(el, "createImg") || fInObj(el, "createSwf") || fInObj(el, "createPage") || fInObj(el, "createYouku"))
复制代码
即可响应createYouku方法,但不一定需要这样改,可以直接写createYouku方法,这里是为了兼容DZ其他的功能
# R+ r2 S' d) e8 s! d2 T" x$ L: f6 v# n. ~
在本文件中搜索var arrMatch,并按样例在最后加入icoYouku:"createYouku",注意检查是否掉了逗号; G0 m( a5 K. h2 ]" {4 M2 M

' Q( h3 `! P+ E/ F6 ^/ @- n0 D在String.prototype.trim = function()这一行之前,仿照上面的样例加入
  1. function createYouku(e, show) {
    8 |9 f) ~$ a0 k' P0 `+ [# ~
  2.     if (typeof show == 'undefined') {
    ! j' E" q7 B' l
  3.         //不要自作主张改将$改为jQuery
    3 X3 X9 f3 R/ i5 D4 h
  4.         var YoukuVID = $('YoukuVID').value;0 e; S0 t$ c7 m* u2 f
  5.         if ((YoukuVID != null)) {
    0 }( A: R' b, c* k5 m6 e0 n" T) I$ L
  6.             setCaret();
    9 C3 g% {+ G2 c" ~
  7.             format('insertHTML', '[youku]' + YoukuVID + '[/youku]');# \; f, l7 i: p, Q" I1 ~  A! V
  8.         }. O$ U5 h7 m9 v; O; m! r3 S7 }: i* M
  9.         fHide($('createYouku'));2 F* q: K8 _+ ]3 l
  10.         $('YoukuVID').value = '';
    8 H# @2 ^; c7 B" |
  11.     } else {
    7 W& F8 P8 C, Y! Z/ y
  12.         if (gIsIE) {8 u, s; [2 \, b4 I* \8 v$ H
  13.             var e = window.event;
    # h0 R( n" w! o% K3 W
  14.         }
    1 {+ \7 Y* [+ O5 y) x3 a
  15.         getCaret();* S, d, L; l1 m9 }) ^* ^+ v
  16.         var dvYoukuBox = $("createYouku");
    4 Y2 i6 _( v5 N7 J% ?4 h
  17.         var iX = e.clientX;- t. K9 b+ X$ E  y0 ~2 g5 ?
  18.         var iY = e.clientY;
    5 R+ P4 j: k! H8 p: h( D7 n
  19.         dvYoukuBox.style.display = "";& H3 h. {( [( Y! N
  20.         dvYoukuBox.style.left = (iX - 350) + "px";
    7 ~7 [- I* \( X# j( f3 D$ {' _
  21.         dvYoukuBox.style.top = 33 + "px";
    2 ~  c9 \8 [9 i7 X2 A7 {, I
  22.     }
    ; f. P: s6 _! a
  23. }
复制代码
查找fHideMenu方法,并在var arr = []中按样例加入'createYouku'( i4 k# f3 B" h; K3 x* m* }+ W9 D+ v

1 k9 o" W- d' q1 q( B1 t( X: O解析短代码' G/ ]% n  I: m* S) b7 @2 Y: ^8 \" T1 H, P
找到/source/function/function_blog.php文件,在function blog_bbcode($message)中,按样例加入一行
  1. $message = preg_replace("/\[youku](.+?)\[\/youku\]/ie", "blog_youku('\\1')", $message);
复制代码
当然这行正则可以自己随意修改,后面是匹配blog_youku的方参
) y  Z3 B+ M& O2 d在最后加上blog_youku的方法来解析短代码
  1. function blog_youku($vid){
    ! q7 j8 E/ Y2 S" V; O/ d0 W1 L
  2.     return '<div id="youkuplayer" style="width:480px;height:400px"></div>0 B4 R  l% w6 C0 q
  3.             <script type="text/javascript" src="http://player.youku.com/jsapi"></script>
    6 w- `# d1 C. \3 j8 Y+ g/ S5 ~* W1 o
  4.             <script type="text/javascript">player = new YKU.Player(\'youkuplayer\',{styleid:\'0\',client_id:\'1c8daaa346d55d67\',vid:\''.$vid.'\',newPlayer:true,autoplay:true});</script>';' I1 i1 f- P. K4 @* c) c0 j
  5. }
复制代码

版权声明
1、转摘或引用本站内容资源须注明原网址,并标明本站网址(兔源码www.tuyuanma.com);
2、对于转摘或引用本站内容资源而引起的民事纠纷、行政处罚或其他损失,本站不承担责任;
3、对于不遵守本声明或其他违法、恶意使用本站内容者,本站保留其追究法律责任的权利。




自动排版 | 高级模式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广告
493651246站长邮箱:tuyuanma@qq.com 站长QQ:3197813386

© 2001-2013 本站内容皆来自互联网及用户分享,如需删除请提供软著或商标证书。

快速回复 返回顶部 返回列表