簡體   English   中英

如何嵌套簡碼?

[英]How to do nested shortcodes?

我有一個從URL獲取參數並進行進一步處理的簡碼。 我還有另一個短代碼,也需要相同類型的URL參數處理。 我想與兩個函數共享URL參數處理代碼。 如何用簡碼完成?

這似乎是一個偽示例,但還不完整: http : //www.sitepoint.com/wordpress-nested-shortcodes/ 他似乎在頁面中執行嵌套的簡碼語法。 我寧願保留嵌套在PHP中,因為使用shortcode語法在頁面中進行嵌套對我來說沒有太大的優勢。

您可以從另一個簡碼的PHP中調用一個簡碼的PHP代碼。

因此,例如,獲取傳遞給您的簡碼的URL,對該簡碼進行所需的處理,然后根據需要調用/使用其他簡碼后面的函數。

您的短代碼PHP的功能可用於所有其他PHP代碼(包括任何其他短代碼),就像在functions.php文件中的其他功能一樣。

您可以通過WP簡碼API的do_shortcode()函數在PHP中模擬簡碼嵌套, do_shortcode()其傳遞一些“內容”,例如"[yourshortcode your_attr='your value' ... ]some content[/yourshortcode]" 這樣,您可以確保您的yourshortcode的執行方式與實際包含在內容中的方式相同。

或者,如果是兩個短代碼都使用某些特定功能的情況,那么也許應該將這些功能放在共享文件中,例如functions.php?

但是,如果短代碼不是同一個插件或主題的一部分,那么您可能還需要查看is_plugin_active() ,它允許您編寫代碼,以便您的依賴短代碼可以is_plugin_active()地處理不存在依賴的情況。

但是請注意,這些都不是真正的 “短代碼嵌套”,至少以WP Codex 在此處定義的方式是如此。 您鏈接的示例是。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM