WordPress代碼高亮插件有不少,如WP-CodeBox 、WP-Syntax。但使用 Windows Live Writer (簡稱 WLW )發佈含有代碼的文章,代碼都會被轉義,須要進入WordPress後臺的Html模式下從新編輯代碼,非常麻煩。搜索得知,要防止轉義,能夠添加 escaped="true" 屬性,通過測試,發現 WP-CodeBox 插件不支持 escaped="true" 屬性,但WP-Syntax就支持。 javascript
因爲 WP-CodeBox 使用的是<pre />容器,因此也最好找個一樣使用<pre />容器的插件,最後選擇了 WP-Syntax 代碼高亮插件,WP-Syntax 和 WP-CodeBox 都是基於GeSHi支持的語言的語法,使用方法基本同樣,最重要的是 WP-Syntax 支持 escaped="true" 屬性。 php
更多相關:PHP教程 css
<pre lang="html" line="1" escaped="true"> //這裏添加代碼…… </pre>
其中,lang="html"表示代碼語言爲html,請根據本身須要修改; line="1" 表示顯示行號,若是不須要,去掉便可;escaped="true" 是爲了防止代碼轉義,若是不須要,去掉便可。 html
注意:在wordpress後臺使用 WP-Syntax 等代碼高亮插件,須要在html模式下添加代碼,不要隨意切換到可視化模式,不然代碼就容易轉義!! java
'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 | 也可後臺搜索安裝 python
因爲WP-Syntax 的css樣式看起來比較難看,因此修改了一下。
若是你須要,可使用下面的代碼,覆蓋該插件的 wp-syntax/wp-syntax.css 的代碼 mysql
.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文件,這樣,即便你之後升級了插件,也能保留你本身的樣式。 sql
if ( has_action( 'wp_print_styles', 'wp_syntax_style' ) ) { remove_action( 'wp_print_styles', 'wp_syntax_style' ); };