日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

不用插件實現(xiàn)WordPress代碼高亮顯示

 歪SIR 2011-06-19

偶爾在日志中加入一些代碼,感覺完全沒必要安裝代碼高亮插件,萬一某天不用插件了,頁面可能會很亂。其實大部分插件都是在代碼中強行加入一些標(biāo)簽,然后用CSS定義樣式,通過查看頁面源文件可以清楚地看到。
有一個叫“發(fā)芽網(wǎng)”的在線代碼高亮轉(zhuǎn)換網(wǎng)站:點此進(jìn)入。通過在線程序同樣是向代碼中加入不同的標(biāo)簽,然后定義樣式,如果感興趣可以到發(fā)芽網(wǎng)試試,但每次轉(zhuǎn)換都需打開網(wǎng)址操作略顯麻煩,不是本篇介紹的重點。

今天推薦的是一款本地轉(zhuǎn)換代碼高亮顯示的小工具:

CodeRenderUnmi

本程序是基于 dp.SyntaxHighlighter 寫的代碼語法著色的工具。支持的語言有:
java/xml/sql/jscript/css/cpp/c#/python/vb/perl/php/ruby/delphi。

可方便用于你的博客中粘貼代碼,只要自定相應(yīng)的樣式 (highlight.css 的內(nèi)容,.Text 支持自定義樣式或在模板里加上語法樣式),然后復(fù)制用這個工具生成的 HTML 代碼就能讓你的代碼著高亮顯示。 可以加入更多語種的支持,本程序就是在 dp.SyntaxHighlighter 的基礎(chǔ)上擴展了對 Perl 語言的支持,網(wǎng)上可以找到相應(yīng)語法的 JS 代碼和 CSS。語言擴展支持通過在 shCore.js 和 highlight.css 加入相應(yīng)代碼即可。

程序界面

 

操作很容易,Source Code 中貼上你要著色的代碼,然后選擇語種,點擊 Render 按鈕就會在 HTML Code 中生成相應(yīng)的 HTML 代碼,同時在 HTML Preview 中可以預(yù)覽到效果。

簡 要說明:Lang 下拉框可以選擇所支持的語法,Options 右邊的 Gutter、Controls、CollapseAll、FirstLine、Columns 是控制生成的額外的元素,逐一點試試就知道了。每個內(nèi)容顯示(輸入)區(qū)都提供了 Copy/Paste/Clear 快捷操作鏈接,還有一個總的 Clear 按鈕。

Copy生成 的HTML 代碼,在日志編輯窗口切換到HTML源代碼編輯模式,粘貼就可以了。

不過要想正確顯示代碼高亮還需在WordPress主題中加載樣式文件“highlight.css”(在下載的壓縮包中)

方法:

首先,把highlight.css上傳到所使用主題目錄中;

其次:打開header.php,查找:

  1. <link rel="stylesheet" type="text/css" href="<?php bloginfo('template_directory'); ?>/style.css" />

在后面添加:

  1. <link rel="stylesheet" href="<?php bloginfo('template_url'); ?>/highlight.css" />

當(dāng)然,你也可以復(fù)制highlight.css中的所有代碼到你主題style.css中,以上步驟就免了!

如認(rèn)為默認(rèn)的樣式不符合自己的要求,可以通過修改“highlight.css”中的樣式改變代碼高亮、邊框、背景等顏色,更個性化。

但需要注意的是Wordpress會自動把半角符號替換為全角,別人復(fù)制下來的函數(shù)代碼標(biāo)點是全角的,無法使用,切記!

解決辦法:

  1. 打開并編輯 wp-includes/formatting.php 文件,找到以下代碼:
  2. // static strings
  3. $curl = str_replace($static_characters, $static_replacements, $curl);
  4. // regular expressions
  5. $curl = preg_replace($dynamic_characters, $dynamic_replacements, $curl);
  6. $curl 開頭的兩句代碼注釋掉,如下:
  7. // static strings
  8. //$curl = str_replace($static_characters, $static_replacements, $curl);
  9. // regular expressions
  10. //$curl = preg_replace($dynamic_characters, $dynamic_replacements, $curl);

注:使用一些瀏覽器復(fù)制代碼時會將行號一起復(fù)制下來,比如火狐等第三方瀏覽器,經(jīng)測試世界之窗瀏覽器不會將行號一同復(fù)制下來,其它瀏覽器可以自己試試。也可以參考這篇文章去掉行號:小技巧:幫你批量刪除代碼前的行號

具體效果在第2頁:


PHP:

  1. <div id="branding" role="banner">
  2. <?php $heading_tag = ( is_home() || is_front_page() ) ? 'h1' : 'div'; ?>
  3. <<?php echo $heading_tag; ?> id="site-title">
  4. <span>
  5. <a href="<?php echo home_url( '/' ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a>
  6. </span>
  7. </<?php echo $heading_tag; ?>>
  8. <div id="site-description"><?php bloginfo( 'description' ); ?></div>
  9. <?php
  10. // Check if this is a post or page, if it has a thumbnail, and if it's a big one
  11. if ( is_singular() &&
  12. has_post_thumbnail( $post->ID ) &&
  13. ( /* $src, $width, $height */ $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'post-thumbnail' ) ) &&
  14. $image[1] >= HEADER_IMAGE_WIDTH ) :
  15. // Houston, we have a new header image!
  16. echo get_the_post_thumbnail( $post->ID, 'post-thumbnail' );
  17. else : ?>
  18. <img src="<?php header_image(); ?>" width="<?php echo HEADER_IMAGE_WIDTH; ?>" height="<?php echo HEADER_IMAGE_HEIGHT; ?>" alt="" />
  19. <?php endif; ?>
  20. </div><!-- #branding -->

CSS:

  1. #header {
  2. padding30px 0 0 0;
  3. }
  4. #site-title {
  5. floatleft;
  6. font-size30px;
  7. line-height36px;
  8. margin: 0 0 18px 0;
  9. width700px;
  10. }
  11. #site-title a {
  12. color#000;
  13. font-weightbold;
  14. text-decorationnone;
  15. }
  16. #site-description {
  17. clearrightright;
  18. floatrightright;
  19. font-styleitalic;
  20. margin14px18px 0;
  21. width220px;
  22. }
  23. /* This is the custom header image */
  24. #branding img {
  25. border-top4px solid #000;
  26. border-bottom1px solid #000;
  27. clearboth;
  28. displayblock;
  29. }

jscript:

  1. $(function() {
  2. $('.related_thumbnail img').animate({"opacity": .5 });
  3. $('.related_thumbnail img').hover(function() {
  4. $(this).stop().animate({ "opacity": 1 });
  5. }, function() {
  6. $(this).stop().animate({ "opacity": .5 });
  7. });
  8. });

工具下載:http://www./Files/Unmi/CodeRender(Unmi).rar

原文地址:http://www./Unmi/archive/2008/05/03/197903.html

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多