自 wp2.5 版本以來,WordPress 添加了短代碼 (Shortcodes) 支持。在一些高級主題中,短代碼是不可少的。

本文參考自:http://www.tutorialchip.com/WordPress/WordPress-shortcode-tutorial-simple-to-advanced-part-1/

1 、什麼是短代碼 (Shortcodes)?

  • 短代碼是添加在文章內容中的特殊標籤,類似一些論壇的 UBB 代碼,例如:['gallery] 、 [mylink][/mylink] 等等 (去掉 ['gallery] 中的單引號),注意到如果在文章內容中寫入 ['gallery],去掉其中的單引號,那麼在可視化模式下,將會變成一個相冊區域,這就是段代碼。
  • 在預覽或者插件文章的時候,短代碼將會被替換成某一具體內容,比如上面一點的 ['gallery]

短代碼示例 1:我們將創建一個短代碼 [sayhello], 創建這個短代碼後,我們需要在文章中寫入 [sayhello] 但是網站前台查看文章需要替換成 「您好,這裏是阿樹工作室」 。

步驟一、在主題的 functions.php 中添加一個函數

  1. function say_hello() {   
  2.     return "您好,這裏是阿樹工作室";   
  3. }  

步驟二、創建 (註冊) 短代碼

  1. /**  
  2. *創建短代碼  
  3. *參數 1 為段代碼名稱,即我們準備創建的短代碼 [sayhello]  
  4. *參數 2 為我們前面創建的函數  
  5. */  
  6. add_shortcode( 'sayhello', 'say_hello' );  

步驟三、在文章中內容中添加剛剛添加的短代碼
只需要在文章內容中輸入 [sayhello] 在查看文章的時候,就將被自動替換成 「您好,這裏是阿樹工作室」 。

 

短代碼示例 2:創建高級短代碼--給短代碼添加屬性、

短代碼中還可以帶參數屬性,這個示例中,我們要創建一個短代碼用來顯示一個超鏈接,當然我們需要在短代碼中加入參數--鏈接地址、文字內容,短代碼形式為 [mylink href="http://ashuwp.com"] 阿樹工作室 [/mylink] 。

注意,短代碼也可以是這種一對標籤,其中開始標籤內容可以帶很多參數, 兩個標籤之間也可以有內容,和 html 的標籤類似

步驟一、在主題的 functions.php 文件中創建函數

  1. //函數接受兩個參數 $atts 為短代碼的屬性數組   $content 為兩個標籤之間的內容
  2. function my_link( $atts$content = null ) {   
  3.   extract( shortcode_atts( array (   
  4.     'href' => 'http://www.ashuwp.com/'   
  5.   ), $atts ) ); //從短代碼屬性數組中獲取 href 值   
  6.   return '<a href="'.$href.'">'.$content.'</a>';   
  7. }  

步驟二、創建段代碼

  1. add_shortcode( 'mylink', 'my_link' );  

步驟三、在文章內容中添加段代碼

只需要在文章中輸入我們剛剛添加的段代碼:

  1. [mylink href="http://ashuwp.com"] 阿樹工作室 [/mylink]  

保存文章之後,查看文章,短代碼內容將被替換成 帶超鏈接的文字 「阿樹工作室」 。