搜尋
首頁CMS教程&#&按如何在WordPress中創建嵌套短號

How to Create Nested Shortcodes in WordPress

如何在WordPress中創建嵌套短號

當編輯器添加wordpress [快捷代碼]時 在帖子或頁面上,它被插件函數或主題函數中的處理程序函數的返回輸出所取代。讓我們創建一個簡單的例子:
// create a styled button
function ContactButton($params, $content = null) {

	extract(shortcode_atts(array(
		'url' => '/contact-us',
		'type' => 'style1'
	), $params));

	return
		'<a href="'%20.%20%24url%20.%20'">' . 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嵌套短號

的常見問題

> WordPress中的嵌套短號是什麼?它們允許您將一個快速代碼作為屬性或另一個快捷代碼的內容區域內。當您想在WordPress站點上創建複雜的內容結構或功能而無需編寫廣泛的HTML或PHP代碼時,這可能特別有用。

>如何在WordPress中創建一個嵌套的短代碼? >要在WordPress中創建一個嵌套的短代碼,首先需要在主題的functions.php文件或自定義插件中定義父和子修復代碼。父折疊碼應具有可以接受子快點的輸出的屬性。兒童短代碼應返回其輸出,而不是直接打印。這樣,輸出可以傳遞給父折疊代碼。

為什麼我的嵌套短代碼無法正常工作?

可能有幾個原因為什麼您的嵌套短代碼不起作用。一個常見的原因是,兒童短代碼直接打印其輸出而不是返回。另一個原因可能是,未正確設置父折疊代碼來接受子折疊碼的輸出。也可能與另一個插件或主題發生衝突。

>

>我可以在短代碼屬性中使用短代碼嗎?但是,這需要您的簡編函數中的特定設置。父折疊碼功能需要在包含嵌套短碼的屬性上使用do_shortCode函數。

>

>我如何調試我的嵌套短代碼?

可以通過檢查輸出來完成嵌套的短代碼每個短代碼分別。您還可以使用可用於WordPress的各種調試工具,例如Debug bar插件,它可以提供有關短代碼的有用信息。

我可以在自身中嵌套相同的快捷代碼嗎?可以在自身中嵌套相同的短代碼,從而創建遞歸快捷代碼。但是,這應該謹慎進行,因為如果無法正確控制,它可能會導致無限循環。

>

>使用嵌套的短號有限制嗎?靈活性,它們還可以使您的代碼更加複雜和難以維護。同樣重要的是要注意,並非所有的主題或插件都可以支持嵌套的短代碼。

我可以使用具有任何WordPress主題的嵌套短代碼嗎?但是,短代碼的具體功能將取決於主題或插件中定義的功能。

>

>我如何設置嵌套的短碼的輸出?使用CSS進行樣式。您可以在短代碼輸出中添加自定義類,然後在CSS中使用這些類以應用所需的樣式。

>我可以在帖子和頁面中使用嵌套的短代碼嗎?在您的帖子和頁面中使用嵌套的短代碼。您也可以在小部件中使用它們,只要您的主題或插件支持小部件中的短代碼。

以上是如何在WordPress中創建嵌套短號的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
使用OOP技術創建WordPress插件使用OOP技術創建WordPress插件Mar 06, 2025 am 10:30 AM

本教程演示了使用面向對象的編程(OOP)原理構建WordPress插件,利用Dribbble API。 讓我們在保留原始含義和結構的同時完善文本以清晰和簡潔。 object-ori

如何將PHP數據和字符串傳遞給WordPress中的JavaScript如何將PHP數據和字符串傳遞給WordPress中的JavaScriptMar 07, 2025 am 09:28 AM

將PHP數據傳遞給JavaScript的最佳實踐:WP_LOCALIZE_SCRIPT和WP_ADD_INLINE_SCRIPT的比較是PHP文件中靜態字符串中數據存儲數據的最佳實踐。 如果在您的JavaScript代碼中需要此數據,請合併

如何使用WordPress插件嵌入和保護PDF文件如何使用WordPress插件嵌入和保護PDF文件Mar 09, 2025 am 11:08 AM

本指南演示瞭如何使用WordPress PDF插件在WordPress帖子和頁面中嵌入和保護PDF文件。 PDFS為從目錄到演示文稿提供了一種用戶友好的,普遍訪問的格式。 此方法ENS

對於初學者來說,WordPress容易嗎?對於初學者來說,WordPress容易嗎?Apr 03, 2025 am 12:02 AM

WordPress對初學者來說容易上手。 1.登錄後台後,用戶界面直觀,簡潔的儀表板提供所有必要功能鏈接。 2.基本操作包括創建和編輯內容,所見即所得的編輯器簡化了內容創建。 3.初學者可以通過插件和主題擴展網站功能,學習曲線存在但可以通過實踐掌握。

為什麼有人會使用WordPress?為什麼有人會使用WordPress?Apr 02, 2025 pm 02:57 PM

人們選擇使用WordPress是因為其強大和靈活性。 1)WordPress是一個開源的CMS,易用性和可擴展性強,適合各種網站需求。 2)它有豐富的主題和插件,生態系統龐大,社區支持強大。 3)WordPress的工作原理基於主題、插件和核心功能,使用PHP和MySQL處理數據,支持性能優化。

WordPress仍然免費嗎?WordPress仍然免費嗎?Apr 04, 2025 am 12:06 AM

WordPress核心版本是免費的,但使用過程中可能產生其他費用。 1.域名和託管服務需要付費。 2.高級主題和插件可能需要付費。 3.專業服務和高級功能可能需要付費。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

倉庫:如何復興隊友
1 個月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
1 個月前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)