麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > 綜合 > 正文

CKeditor與syntaxhighlight打造joomla代碼高亮

2024-07-21 02:53:48
字體:
來源:轉載
供稿:網友
最近在用csdn和cnblogs發帖子和寫隨筆的時候,發現了好多的IT的網站或者和代碼有關系的一些論壇,博客之類,他們都有一個非常好的語法高亮!很強大!
 

CKeditor與syntaxhighlight打造joomla代碼高亮

(效果如圖所示!)

最近在用csdn和cnblogs發帖子和寫隨筆的時候,發現了好多的IT的網站或者和代碼有關系的一些論壇,博客之類,他們都有一個非常好的語法高亮!很強大!

看了這兒效果很不錯的,因為,自己也用joomla建了小小的消遣的站點!經常也會貼一些代碼什么的,沒有一個“語法高亮的”功能,總感覺不是很方便的!所以,昨天晚上,費了好多功夫,終于解決了這個問題!

現在就記錄一下吧!

首先joomla默認的編輯器是tinymce貌似和博客園后臺也用這個編輯器!淡然,他就是沒有語法高亮的功能!

而我在百度和google上也是有這樣的編輯器好像是joomlagate出的,當讓那樣的插件是要贊助會員才能下載的!當然我下載不了!

于是,就想自己實現一下,用tinymce+syntaxhighlight來實現,只是,可能是對tinymce用的比較少,他的配置文件什么等等都不是很熟悉,所以也沒有成功!

于是,就轉到了一個自己用的比較多的開源編輯器ckeditor!這個我想不用作多解釋了吧!fckeditor的升級版!

好了,說了一大堆廢話!

下面正式開始!

首先的本人joomla版本是1.5.9

然后下載joomla ckeditor版本!這個我會在最后附上下載地址!其實就是syntaxhighlight插件,這個我也會附上,當然您也可以自己去官網下載最新的!

然后就是修改了,

首先是先將ckeditor插件在joomla上安裝好了之后,會發現在根目錄-》plugins-》editors-》ckeditor-》plugins下目錄!就將syntaxhighlight加壓好之后上傳到該目錄下,當然該目錄下都是ckeditor下會用到的一下插件!您對比一下就可以,知道上傳什么內容了,這個就不多說了!問題不大!

 

其次就是要在要在ckeditor上裝上code按鍵!如下圖所示,最后一個!

 

CKeditor與syntaxhighlight打造joomla代碼高亮

 

當然這個就是有去修改ckeditor的配置文件了!(其實您自己搜索ckeditor+syntaxhighlight也是可以找到這樣的方法的)只是,joomla版的ckeditor有點區別,改“config.js”文件是沒有用的,要改“ckeditor.js”文件,這個文件打開一看里面的代碼一大堆,當然不用急,只要該幾處就可以了!

下面貼出要改的地方!(建議可以用Dreamweaver打開該文件,這樣速度會快點尤其是查找)
第一處js代碼 

復制代碼代碼如下:

',fullPage:false,height:200,plugins:'about,basicstyles,blockquote,button,clipboard,colorbutton,contextmenu,elementspath,enterkey,entities,filebrowser,find,flash,font,format,forms,horizontalrule,htmldataprocessor,image,indent,justify,keystrokes,link,list,maximize,newpage,pagebreak,pastefromword,pastetext,popup,preview,print,removeformat,resize,save,scayt,smiley,showblocks,sourcearea,stylescombo,table,tabletools,specialchar,tab,templates,toolbar,undo,wysiwygarea,wsc,syntaxhighlight',extraPlugins:'',removePlugins:'',protectedSource:[],tabIndex:0,theme:'default',skin:'kama',width:'',baseFloatZIndex:10000 
 


第二處js代碼 
復制代碼代碼如下:

<span class="cke_separator"></span>');return{};}};i.toolbarLocation='top';i.toolbar_Basic=[['Bold','Italic','-','NumberedList','BulletedList','-','Link','Unlink','-','About']];i.toolbar_Full=[['Source','-','Save','NewPage','Preview','-','Templates'],['Cut','Copy','Paste','PasteText','PasteFromWord','-','Print','SpellChecker','Scayt'],['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],['Form','Checkbox','Radio','TextField','Textarea','Select','Button','ImageButton','HiddenField'],'/',['Bold','Italic','Underline','Strike','-','Subscript','Superscript'],['NumberedList','BulletedList','-','Outdent','Indent','Blockquote'],['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'],['Link','Unlink','Anchor'],['Image','Flash','Table','HorizontalRule','Smiley','SpecialChar','PageBreak'],'/',['Styles','Format','Font','FontSize'],['TextColor','BGColor'],['Maximize','ShowBlocks','-','About','syntaxhighlight']] 

就這兩處既可以了,就是代碼的最后部分,你可以在里面復制一個單詞查找一下就可以了,就是加上“syntaxhighlight”,看到“syntaxhighlight”這個單詞在我貼出來的代碼的位置和您自己ckeditor中的位置比較一下就知道了! 

然后這兩段代碼修改完了之后,去后臺發布下文章發現這個按鍵已近上去了,就是和我的第一張截圖一樣了!這樣就可以插入使用了! 

當然,最后一步就是在前臺加入js+css樣式來控制語法高亮的代碼了! 



這個就是修改模板文件里面的html頁面了,下面貼出我的代碼! 

因為我用的是自帶的“ja_purity”模板,所以打開html頁面開始部分如下所示 

復制代碼代碼如下:

<head> 
<jdoc:include type="head" /> 
<?php JHTML::_('behavior.mootools'); ?> 
<link rel="stylesheet" href="<?php echo $tmpTools->baseurl(); ?>templates/system/css/system.css" type="text/css" /> 
<link rel="stylesheet" href="<?php echo $tmpTools->baseurl(); ?>templates/system/css/general.css" type="text/css" /> 
<link rel="stylesheet" href="<?php echo $tmpTools->templateurl(); ?>/css/template.css" type="text/css" /> 
<link type="text/css" rel="stylesheet" href="<?php echo $tmpTools->baseurl(); ?>plugins/editors/ckeditor/plugins/syntaxhighlight/styles/shCore.css"/> 
<link type="text/css" rel="stylesheet" href="<?php echo $tmpTools->baseurl(); ?>plugins/editors/ckeditor/plugins/syntaxhighlight/styles/shThemeDefault.css"/> 

<script language="javascript" type="text/javascript" src="<?php echo $tmpTools->templateurl(); ?>/js/ja.script.js"></script> 

<?php if ($tmpTools->getParam('rightCollapsible')): ?> 
<script language="javascript" type="text/javascript"> 
var rightCollapseDefault='<?php echo $tmpTools->getParam('rightCollapseDefault'); ?>'; 
var excludeModules='<?php echo $tmpTools->getParam('excludeModules'); ?>'; 
</script> 
<script language="javascript" type="text/javascript" src="<?php echo $tmpTools->templateurl(); ?>/js/ja.rightcol.js"></script> 
<script language="javascript" type="text/javascript" src="<?php echo $tmpTools->baseurl(); ?>plugins/editors/ckeditor/plugins/syntaxhighlight/scripts/shCore.js"></script> 
<script language="javascript" type="text/javascript" src="<?php echo $tmpTools->baseurl(); ?>plugins/editors/ckeditor/plugins/syntaxhighlight/scripts/shBrushBash.js"></script> 
<script language="javascript" type="text/javascript" src="<?php echo $tmpTools->baseurl(); ?>plugins/editors/ckeditor/plugins/syntaxhighlight/scripts/shBrushPhp.js"></script> 
<script language="javascript" type="text/javascript" src="<?php echo $tmpTools->baseurl(); ?>plugins/editors/ckeditor/plugins/syntaxhighlight/scripts/shBrushColdFusion.js"></script> 
<script language="javascript" type="text/javascript" src="<?php echo $tmpTools->baseurl(); ?>plugins/editors/ckeditor/plugins/syntaxhighlight/scripts/shBrushCSharp.js"></script> 
<script language="javascript" type="text/javascript" src="<?php echo $tmpTools->baseurl(); ?>plugins/editors/ckeditor/plugins/syntaxhighlight/scripts/shBrushCss.js"></script> 
<script language="javascript" type="text/javascript" src="<?php echo $tmpTools->baseurl(); ?>plugins/editors/ckeditor/plugins/syntaxhighlight/scripts/shBrushJScript.js"></script> 
<script language="javascript" type="text/javascript" src="<?php echo $tmpTools->baseurl(); ?>plugins/editors/ckeditor/plugins/syntaxhighlight/scripts/shBrushXml.js"></script> 
<script language="javascript" type="text/javascript" src="<?php echo $tmpTools->baseurl(); ?>plugins/editors/ckeditor/plugins/syntaxhighlight/scripts/shBrushSql.js"></script> 
<script type="text/javascript"> SyntaxHighlighter.config.clipboardSwf = '<?php echo $tmpTools->baseurl(); ?>plugins/editors/ckeditor/plugins/syntaxhighlight/scripts/clipboard.swf'; SyntaxHighlighter.all(); </script> 
<?php endif; ?> 

淡然,里面js部分比較多,沒有js文件對應一種代碼的語法高亮,我就加了,我會用到的幾種,比如php,c#,XML,Js等等,不會用到的就沒加! 

怕影響加載速度!呵呵! 

這樣的,基本上OK了!自己發表測試吧!我就是這樣完成的! 

當然其中有很多是參考別人的!尤其是附件我也是用的別人發布的!現在共享一下!


注:相關教程知識閱讀請移步到編輯器頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 91久久国产综合久久91猫猫 | 午夜色片 | 久久亚洲精品久久国产一区二区 | 欧美亚洲一级 | 精品国产高清一区二区三区 | 天使萌一区二区三区免费观看 | 精品久久久久久久久久久下田 | 日本欧美一区二区三区在线观看 | arabxxxxvideos| 国产精品久久久久久影视 | 欧美一级淫片a免费播放口 91九色蝌蚪国产 | 一区二区三高清 | 成人在线视频精品 | 久久久久久亚洲综合影院红桃 | 黄色一级片免费观看 | 性欧美在线视频 | 久久久久久久久久综合 | 久久久久久久久久久影视 | 成人短视频在线播放 | 一本色道久久综合亚洲精品图片 | 成人三级黄色片 | 久久亚洲精品久久国产一区二区 | 欧美在线观看视频一区 | 欧美一区二区三区免费观看 | 强伦女教师视频 | 国产三级精品最新在线 | 成人区一区二区 | 久草在线视频在线 | 久久久久在线观看 | 国产精品麻豆91 | 中文字幕一区二区三区四区 | 一级α片免费看刺激高潮视频 | 一级一级一级一级毛片 | 牛牛a级毛片在线播放 | 欧美高清另类自拍视频在线看 | 久久久成人精品视频 | 欧美一区中文字幕 | 国产精品久久久久久模特 | 欧美中文字幕一区二区 | 亚洲片在线观看 | chengrenzaixian|