簡體   English   中英

Wordpress簡碼中的PHP

[英]PHP within a Wordpress shortcode

我有一個Wordpress的PHP短代碼,我們稱它為[myshortcode]。

簡碼允許您輸入像這樣的下載URL [myshortcode download =“ http://www.example.com/file.pdf”]。

我想在模板文件中使用此短代碼,但是將下載網址作為變量。 這可能嗎?如果可以,我該怎么做?

我嘗試了這些,但不起作用...

<?php echo do_shortcode('[myshortcode download="<?php echo $variable['dllink']; ?>"]'); ?>
<?php echo do_shortcode('[myshortcode download="echo $variable['dllink'];"]'); ?>

有任何想法嗎?

<?php echo do_shortcode('[myshortcode download="'.$variable['dllink'].'"]'); ?>
<?php echo do_shortcode("[myshortcode download=\"{$variable['dllink']}\"]"); ?>

我建議您正確閱讀此書,以了解為什么這些工作和您的工作不起作用;-)

我認為這取決於在哪里定義變量。 例如,如果簡碼是允許管理員在設置頁面上設置某些選項的插件的一部分,則您希望php檢索這些選項並將值回顯到簡碼中。

另一種方法是使用帶有$ _POST方法的表單向數據庫中的表提交值,然后調用該值並將其設置為變量。

在我寫的最新插件( 最近發表的Views )中,我包含了一個短代碼,該短代碼從數據庫中檢索選項並將其作為變量插入:

//Get options from the settings page
$options = get_option('cb_rpv_options');
$select_bold = $options['select_bold'];
$select_italics = $options['select_italics'];
$select_list_style = $options['select_list_style'];

這些變量更改了短代碼的輸出,這是您要嘗試執行的操作。 最好的做法可能是下載帶有注釋良好的代碼的插件作為示例,然后再進行構建。

我希望這會有所幫助,並且我也同意另一篇文章,您也需要清理語法。

暫無
暫無

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

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