2015-08-22 2 views
-3

Мне нужно изменить этот код, чтобы реализовать поле «Дополнительная информация» в текстовом поле в моем разделе Wordpress.Как получить текстовую область в разделе сообщений Wordpress? (Wordpress)

поле "Дополнительная информация" выглядит следующим образом:

More info

Я использую smartmetabox. Он имеет 2 файла:

textarea.php:

<textarea name="<?php echo $id?>" id="<?php echo $id?>" rows="5" cols="100" class="custom"><?php echo $value?></textarea> 

text.php:

<input type="text" name="<?php echo $id?>" id="<?php echo $id?>" value="<?php echo $value?>" class="regular-text" /> 

И my_file.php-код:

<?php 

add_action('add_meta_boxes', 'cd_meta_box_add'); 

function cd_meta_box_add() 

{ 

add_meta_box('my-meta-box-id', __('Information', 'addict'), 'cd_meta_box_cb', 'post', 'normal', 'high'); 

} 

function cd_meta_box_cb($post) 

{ 

$values = get_post_custom($post->ID); 


$creteria_1_text = isset($values['creteria_1_text']) ? esc_attr($values['creteria_1_text'][0]) : ''; 


$check = isset($values['my_meta_box_check']) ? esc_attr($values['my_meta_box_check'][0]) : ''; 

wp_nonce_field('my_meta_box_nonce', 'meta_box_nonce'); 

?> 


<p> 

<label for="creteria_1_text"><b><?php _e("More info, 'addict') ?></b></label> 

<input style="width:85%" type="text" name="creteria_1_text" id="creteria_1_text" value="<?php echo $creteria_1_text; ?>" /> 
</p> 



<?php 

} 

add_action('save_post', 'cd_meta_box_save'); 

function cd_meta_box_save($post_id) 

{ 

// Bail if we're doing an auto save 

if(defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return; 

// if our nonce isn't there, or we can't verify it, bail 

if(!isset($_POST['meta_box_nonce']) || !wp_verify_nonce($_POST['meta_box_nonce'], 'my_meta_box_nonce')) return; 

// if our current user can't edit this post, bail 

if(!current_user_can('edit_post')) return; 

// now we can actually save the data 

$allowed = array(

'a' => array(// on allow a tags 

'href' => array() // and those anchords can only have href attribute 

) 

); 

// Probably a good idea to make sure your data is set 

if(isset($_POST['creteria_1_text'])) 

update_post_meta($post_id, 'creteria_1_text', wp_kses($_POST['creteria_1_text'], $allowed)); 

} 

// function for show rating content 

//$key_1_value = get_post_meta($post->ID, 'my_meta_box_text', true); 

?> 
+0

После некоторого копания я обнаружил, что я должен заменить этот код: '<входной стиль =: тип "ширина 85%"= "текст" Name = "creteria_1_text" идентификатор = "creteria_1_text" value = " ' Кому: ' ' Но весь текст идет в одной строке. Как печатать текст в формате? например: несколько сообщений с пространством между ними? – user3656914

ответ

0

После некоторого копания я обнаружил, что я должен заменить этот код :

<input style="width:85%" type="text" name="creteria_1_text" id="creteria_1_text" value="<?php echo $creteria_1_text; ?> 

To:

<textarea name="creteria_1_text" id="creteria_1_text" rows="5" cols="100" class="custom"><?php echo $creteria_1_text; ?></textarea>