// create a styled button function ContactButton($params, $content = null) { extract(shortcode_atts(array( 'url' => '/contact-us', 'type' => 'style1' ), $params)); return '<a href="' . $url . '" >' . ucwords($content) . '</a>'; } add_shortcode('button','ContactButton');當頁面或帖子中遇到以下代碼時:
[button]contact us today[/button]它將翻譯成:
<a href="/contact-us" >Contact Us Today</a>編輯的工作變得更加容易,他們不必擔心學習HTML。讓我們看另一個創建一個簡單的呼叫框的示例:
// callout box function CalloutBox($params, $content = null) { extract(shortcode_atts(array( 'type' => 'style1' ), $params)); return '<aside >' . $content . '</aside>'; } add_shortcode('callout','CalloutBox');但是,如果我們的編輯想在他們的標註框中插入一個按鈕怎麼辦? …
[callout]For more information [button]contact us today[/button][/callout]就目前而言,當前代碼將失敗。首先調用標註框函數,但內部[按鈕]不會相應地翻譯。 解決問題的關鍵功能是do_shortcode() - 它將WordPress的短代碼過濾器應用於任何內容。在這種情況下,我們希望允許編輯器在我們的[顧問]中添加一個[按鈕],因此我們將相應地修改呼叫箱的返回語句:
return '<aside >' . do_shortcode($content) . '</aside>';上面的嵌套代碼現在可以按預期工作。但是,不允許編輯器在[按鈕]中嵌套[註釋]。像這樣的靈活性使WordPress成為一種樂趣 - 現在可以使用3.3版。
>
>我如何調試我的嵌套短代碼?
我可以在自身中嵌套相同的快捷代碼嗎?可以在自身中嵌套相同的短代碼,從而創建遞歸快捷代碼。但是,這應該謹慎進行,因為如果無法正確控制,它可能會導致無限循環。
以上是如何在WordPress中創建嵌套短號的詳細內容。更多資訊請關注PHP中文網其他相關文章!