當(dāng)前位置:首頁>WordPress建站>基礎(chǔ)教程>WordPress代碼高亮插件:WP-Syntax

WordPress代碼高亮插件:WP-Syntax

倡萌在此之前一直使用 WP-CodeBox 代碼高亮插件,但使用 Windows Live Writer  (簡(jiǎn)稱 WLW )發(fā)布含有代碼的文章,代碼都會(huì)被轉(zhuǎn)義,需要進(jìn)入WordPress后臺(tái)的Html模式下重新編輯代碼,很是麻煩。搜索得知,要防止轉(zhuǎn)義,可以添加 escaped="true" 屬性,經(jīng)過測(cè)試,發(fā)現(xiàn) WP-CodeBox 插件不支持 escaped="true" 屬性,所以只好使用其他插件。

由于 WP-CodeBox 使用的是<pre />容器,所以也最好找個(gè)同樣使用<pre />容器的插件,最后選擇了 WP-Syntax 代碼高亮插件,WP-Syntax 和 WP-CodeBox 都是基于GeSHi支持的語言的語法,使用方法基本一樣,最重要的是 WP-Syntax 支持 escaped="true" 屬性。

WP-Syntax 代碼書寫格式

<pre lang="html" line="1" escaped="true" >
//這里添加代碼……
</pre>

其中,lang="html"表示代碼語言為html,請(qǐng)根據(jù)自己需要修改; line="1" 表示顯示行號(hào),如果不需要,去掉即可;escaped="true" 是為了防止代碼轉(zhuǎn)義,如果不需要,去掉即可。

注意:在wordpress后臺(tái)使用 WP-Syntax 等代碼高亮插件,需要在html模式下添加代碼,不要隨意切換到可視化模式,否則代碼就容易轉(zhuǎn)義!!

WP-Syntax 插件支持的高亮語言

'actionscript' => array('as'),
'ada' => array('a', 'ada', 'adb', 'ads'),
'apache' => array('conf'),
'asm' => array('ash', 'asm', 'inc'),
'asp' => array('asp'),
'bash' => array('sh'),
'bf' => array('bf'),
'c' => array('c', 'h'),
'c_mac' => array('c', 'h'),
'caddcl' => array(),
'cadlisp' => array(),
'cdfg' => array('cdfg'),
'cobol' => array('cbl'),
'cpp' => array('cpp', 'hpp', 'C', 'H', 'CPP', 'HPP'),
'csharp' => array('cs'),
'css' => array('css'),
'd' => array('d'),
'delphi' => array('dpk', 'dpr', 'pp', 'pas'),
'diff' => array('diff', 'patch'),
'dos' => array('bat', 'cmd'),
'gettext' => array('po', 'pot'),
'gml' => array('gml'),
'gnuplot' => array('plt'),
'groovy' => array('groovy'),
'haskell' => array('hs'),
'html4strict' => array('html', 'htm'),
'ini' => array('ini', 'desktop'),
'java' => array('java'),
'javascript' => array('js'),
'klonec' => array('kl1'),
'klonecpp' => array('klx'),
'latex' => array('tex'),
'lisp' => array('lisp'),
'lua' => array('lua'),
'matlab' => array('m'),
'mpasm' => array(),
'mysql' => array('sql'),
'nsis' => array(),
'objc' => array(),
'oobas' => array(),
'oracle8' => array(),
'oracle10' => array(),
'pascal' => array('pas'),
'perl' => array('pl', 'pm'),
'php' => array('php', 'php5', 'phtml', 'phps'),
'povray' => array('pov'),
'providex' => array('pvc', 'pvx'),
'prolog' => array('pl'),
'python' => array('py'),
'qbasic' => array('bi'),
'reg' => array('reg'),
'ruby' => array('rb'),
'sas' => array('sas'),
'scala' => array('scala'),
'scheme' => array('scm'),
'scilab' => array('sci'),
'smalltalk' => array('st'),
'smarty' => array(),
'tcl' => array('tcl'),
'vb' => array('bas'),
'vbnet' => array(),
'visualfoxpro' => array(),
'whitespace' => array('ws'),
'xml' => array('xml', 'svg'),
'z80' => array('z80', 'asm', 'inc')

WP-Syntax 安裝使用

官方下載WP-Syntax | 備用下載 WP-Syntax | 也可后臺(tái)搜索安裝

WP-Syntax 優(yōu)化技巧

說真的,WP-Syntax 的css樣式看起來比較難看,所以倡萌自己修改了一下,最終的效果如下圖

wpdaxue.com-2012100301

如果你需要,可以使用下面的代碼,覆蓋該插件的 wp-syntax/wp-syntax.css 的代碼

.wp_syntax {
	color:#100;
	background-color:#f9f9f9;
	border:1px solid #EBEBEB;
	margin:0 0 1.5em 0;
	overflow:auto;
}
.wp_syntax {
	overflow-x:auto;
	overflow-y:hidden;
	padding-bottom:expression(this.scrollWidth > this.offsetWidth ? 15:0);
	width:99%;
}
.wp_syntax table {
	border:none;
	border-collapse:collapse;
	margin:0;
	padding:0;
	width:100% !important
}
.wp_syntax caption {
	padding:2px;
	width:100%;
	background-color:#def;
	text-align:left;
	font-family:Monaco;
	font-size:13px;
	line-height:20px;
}
.wp_syntax caption a {
	color:#1982d1;
	text-align:left;
	font-family:Monaco;
	font-size:13px;
	line-height:20px;
	text-decoration:none;
}
.wp_syntax caption a:hover {
	color:#1982d1;
	text-decoration:underline;
}
.wp_syntax div,.wp_syntax td {
	border:none;
	text-align:left;
	padding:0;
	vertical-align:top;
}
.wp_syntax td.code {
	background:none;
	line-height:normal;
	white-space:normal;
	padding-left:10px;
}
.wp_syntax pre {
	background:transparent;
	margin:0;
	padding:0;
	width:auto;
	float:none;
	clear:none;
	overflow:visible;
	font-family:Monaco;
	font-size:13px;
	line-height:20px;
	white-space:pre;
}
.wp_syntax td.line_numbers pre {
	border-right:3px solid #6CE26C;
	background-color:#E7E5DC;
	color:gray;
	width:20px;
	padding:0 5px;
	text-align:right;
}

你也可以將上面的代碼添加到你主題的 style.css 文件中,然后在 functions.php 中添加下面的代碼,取消 WP-Syntax 加載的css文件,這樣,即使你以后升級(jí)了插件,也能保留你自己的樣式。

if ( has_action( 'wp_print_styles', 'wp_syntax_style' ) ) {
remove_action( 'wp_print_styles', 'wp_syntax_style' );
};
聲明:本站所有文章,如無特殊說明或標(biāo)注,均為本站原創(chuàng)發(fā)布。任何個(gè)人或組織,在未征得本站同意時(shí),禁止復(fù)制、盜用、采集、發(fā)布本站內(nèi)容到任何網(wǎng)站、書籍等各類媒體平臺(tái)。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。

給TA打賞
共{{data.count}}人
人已打賞
歡迎關(guān)注WordPress大學(xué)公眾號(hào) WPDAXUE
基礎(chǔ)教程

WordPress代碼:添加分頁導(dǎo)航菜單

2012-10-10 17:43:13

基礎(chǔ)教程

WordPress使用jQuery 按比例調(diào)整圖片高度/寬度

2012-10-17 6:06:00

26 條回復(fù) A文章作者 M管理員
  1. mr

    有什么辦法讓他默認(rèn)擁有l(wèi)ine=”1″ escaped=”true”屬性嗎

  2. 我想說表情欄。。好幾個(gè)表情都是錯(cuò)的!!! ??

  3. 防止代碼轉(zhuǎn)義是什么意思 ??

  4. 有個(gè)小錯(cuò)誤,插件css文件是:wp-syntax/css/wp-syntax.css

  5. 如何禁用wordpress自帶的css樣式,例如:
    《li class=”page_item page-item-9″>《a href=”http://127.0.0.1/?page_id=9″>平面設(shè)計(jì)《a href=”http://127.0.0.1/?page_id=11″>微信營(yíng)銷《a href=”http://127.0.0.1/?page_id=13″>移動(dòng)開發(fā)《a href=”http://127.0.0.1/?page_id=15″>網(wǎng)站百科</li》
    如何禁用“page_item page-item-9”等樣式???

  6. 我發(fā)代碼,怎么在網(wǎng)頁背景是白色的,看不見

  7. 怎么添加到文章編輯欄里

  8. 這個(gè)不錯(cuò),用上了,灰常感謝!

  9. 想請(qǐng)教一下的是,這個(gè)日志里面發(fā)上代碼我折騰了一天還是沒搞定。最后也就是現(xiàn)在。把代碼發(fā)到評(píng)論里了事。我也從別人的博客里找了那些插件之類的,可是寫日志的時(shí)候,那些插件都沒有出來啊?
    flashfxp的注冊(cè)碼,大大你是知道的吧?總之,那行注冊(cè)碼一放上去,直接一個(gè)日志頁面就從左到右都是文字顯現(xiàn)區(qū)域了,就是不會(huì)自動(dòng)轉(zhuǎn)行什么的。

  10. 有個(gè)問題,就是用 作者 這個(gè)用戶組編輯或?qū)懳恼碌臅r(shí)候就會(huì)失效了。

    • 求解決方法

?
個(gè)人中心
購(gòu)物車
優(yōu)惠劵
今日簽到
有新私信 私信列表
搜索

上思县| 丽江市| 南康市| 栾城县| 海原县| 屯留县| 新龙县| 启东市| 兴安县| 达孜县| 长治市| 绥中县| 察哈| 五常市| 海门市| 长兴县| 修武县| 株洲市| 武隆县| 布尔津县| 保定市| 介休市| 泾川县| 腾冲县| 喜德县| 达州市| 武山县| 沧州市| 江华| 柞水县| 宜丰县| 肇源县| 康平县| 滦南县| 山丹县| 莲花县| 方山县| 廉江市| 眉山市| 开平市| 海门市|