2014-10-17 56 views
0

我已經通過我的Wordpress管理中的自定義文本區域將短代碼添加到頁面,但短代碼被視爲文本並被引號包裹,因此它不起作用。從文本區域插入Wordpress短碼的條形引號

enter image description here

這基本上是我如何清理我的輸入:

if(isset($input['textarea_input'])) 
     $new_input['textarea_input'] = sanitize_text_field($input['textarea_input']); 

這是我如何輸出在頁面上:

<?php echo $options['textarea_input']; ?> 

do_shortcode不會改變任何東西

<?php echo do_shortcode($options['textarea_input']); ?> 

我的猜測是Wordpress TinyMCE編輯器可以識別簡碼,因此它可以工作。由於我是通過隱藏文本區域添加的,因此它僅被視爲純文本。 TinyMCE編輯器我沒有做什麼?我不想

+0

你呼應的字符串。我認爲你正在尋找[do_shortcode()](http://codex.wordpress.org/Function_Reference/do_shortcode) – rnevius 2014-10-17 14:07:25

+0

謝謝@rnevius,do_shortcode()不起作用。我已經更新了我的答案。 – piggypig 2014-10-17 14:15:19

回答

1

你的權利,WordPress的編輯器通過名爲the_content的過濾器保存內容。該過濾器用於過濾從數據庫中檢索並在打印到屏幕之前的帖子內容。應用此過濾器來模擬TinyMCE格式。

<?php echo apply_filters('the_content', $options['textarea_input']); ?>