woocommerce_wp_text_input()
Выводит на экран текстовое поле.
Используется в метабоксах WooCommerce, поэтому для корректной работы функции нужны глобальные переменные $thepostid
и $post
, иначе можно получить PHP ошибку Trying to get property 'ID' of non-object in ...
Хуков нет.
Возвращает
null
. Выводит на экран HTML.
Использование
woocommerce_wp_text_input( $field );
- $field(массив) (обязательный)
Массив параметров (конфигурация) поля. Принимает следующие значения:
-
id(строка) (обязательный)
Значение атрибутаid
у тегаinput
. Если не указать, то получим PHP ошибкуPHP Notice: Undefined index: id in ...
.
Также используется для получения значений атрибутовvalue
иname
у тегаinput
, для атрибутаfor
тегаlabel
, для дополнительного css класса у контейнера в виде тегаp
. -
label(строка) (обязательный)
Содержимое тегаlabel
. При выводе очищается функцией wp_kses_post(). Если не указать, то получим PHP ошибкуPHP Notice: Undefined index: label in ...
. -
class(строка)
Значение атрибутаclass
у тегаinput
.
По умолчанию: short -
placeholder(строка)
Значение атрибутаplaceholder
у тегаinput
. При выводе очищается функцией esc_attr().
По умолчанию: '' -
style(строка)
Значение атрибутаstyle
у тегаinput
. При выводе очищается функцией esc_attr().
По умолчанию: '' -
wrapper_class(строка)
Значение атрибутаclass
у тегаp
(контейнер). При выводе очищается функцией esc_attr(). У тегаp
также будут статический классform-field
и динамический класс{параметр id}_field
.
По умолчанию: значение параметра id -
value(строка)
Значение атрибутаvalue
у тегаinput
. При выводе очищается функцией esc_attr().
По умолчанию: значение параметра id -
name(строка)
Значение атрибутаname
у тегаinput
. При выводе очищается функцией esc_attr(), а также другими функциями, в зависимости от параметраdata_type
.
По умолчанию: get_post_meta( $thepostid, $field['id'], true ) -
type(строка)
Значение атрибутаtype
у тегаinput
. Список возможных значений type. При выводе очищается функцией esc_attr().
По умолчанию: 'text' -
data_type(строка)
Тип данных для вывода. На основе этого параметра будет применена специальная функция очистки. В любом случае при выводе данные будут дополнительно обработаны функцией esc_attr(). Может быть:- price - значение обработается функцией wc_format_localized_price(), а к параметру
class
добавляется значениеwc_input_price
. - decimal- значение обработается функцией wc_format_localized_decimal(), а к параметру
class
добавляется значениеwc_input_decimal
. - stock - значение обработается функцией wc_stock_amount(), а к параметру
class
добавляется значениеwc_input_stock
. - url - значение обработается функцией esc_url(), а к параметру
class
добавляется значениеwc_input_url
.
По умолчанию: ''
- price - значение обработается функцией wc_format_localized_price(), а к параметру
-
description(строка)
Описание поля. Выводится под полем ввода как<span class="description">значение</span>
При выводе очищается функцией wp_kses_post(). Описание будет показано (его будет видно), если не указан параметр
desc_tip
. -
desc_tip(логический)
Если указать что-либо, отличное отfalse
, то описание поле будет выведено в виде тултипа (значка вопроса, при наведении на который будет появляться описание). Выводится как<span class="woocommerce-help-tip" data-tip="значение description"></span>
По умолчанию: false
- custom_attributes(массив)
Произвольные HTML атрибуты в виде массива с парами[ атрибут => значение ]
.
-
Примеры
#1 Вывод поля для цены WooCommerce
Данный пример взят для поля "Базовая цена" с кода самого плагина WooCommerce.
woocommerce_wp_text_input( array( 'id' => '_regular_price', 'value' => $product_object->get_regular_price( 'edit' ), 'label' => __( 'Regular price', 'woocommerce' ) . ' (' . get_woocommerce_currency_symbol() . ')', 'data_type' => 'price', ) );
Получим HTML:
<p class="form-field _regular_price_field "> <label for="_regular_price"> Базовая цена (£) </label> <input type="text" class="short wc_input_price" style="" name="_regular_price" id="_regular_price" value="" placeholder="" /> </p>