• Решено ☭Gu

    (@gusoft)


    при создании метабокска для типа записи, на сколько понимаю он создается всегда текстовый. как сделать целым числовым? И вообще это возможно?

    function gu_meta_boxes() {
    	$my_y = 'Год выпуска';
    	add_meta_box('GuYearMeta', "$my_y", 'GuYearMetaFunc', 'books', 'normal', 'high');
    }
    add_action( 'admin_menu', 'gu_meta_boxes' );
    
    function GuYearMetaFunc($post) {
    	$html .= '<label><input type="text" name="gumeta_title" value="' . get_post_meta($post->ID, 'gumetatitle',true) . '" /> Пример: 2000</label> ';
    	echo $html;
    }
    
    function gu_save_box_data ( $post_id ) {
    	if ( defined('DOING_AUTOSAVE') && DOING_AUTOSAVE )
    		return $post_id;
    	if ( !current_user_can( 'edit_post', $post_id ) )
    		return $post_id;
    	update_post_meta($post_id, 'gumetatitle', esc_attr($_POST['gumeta_title']));
    	return $post_id;
    }
    add_action('save_post', 'gu_save_box_data');
Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Если я правильно понял, то type="text" заменить на type="number".

    Автор ☭Gu

    (@gusoft)

    заменил, ошибок нет, сохраняет, разницы не вижу.
    но
    — при вводе значений дает вводить и текст
    — после сохранения в таблицу xx_postmeta — столбик meta_value — longtext.

    вопрос в том, чтобы создать произвольное поле числового типа (год = 1990,2000,.. итд). чтобы символы не вводились и потом по нему можно сортировку делать типа «выбрать записи с годами от 1992 до 2000»
    на правильном ли я пути?

    Модератор Denis Yanchevskiy

    (@denisco)

    WordPress-разработчик, denisco.pro

    — при вводе значений дает вводить и текст

    В поле input type=»number» можно вводить только цифры. Демо. Либо добавлять js-код, который будет контролировать ввод в поле. Запрос в google.

    — после сохранения в таблицу xx_postmeta — столбик meta_value — longtext.

    То, что Вы сохраняете не влияет на структуру таблицы. Это поле так и останется longtext.

    на правильном ли я пути?

    Похоже на то. Дополнительная информация из документации по теме.

Просмотр 3 ответов — с 1 по 3 (всего 3)

Тема «числовое произвольное поле» закрыта для новых ответов.