Color_Swatches extends Abstract_Field
Color swatches field class.
Tags
Table of Contents
- $choice_char : array<string|int, mixed>
- The choice character setting.
- $choice_qty : array<string|int, mixed>
- The choice quantity setting.
- $display_label : mixed
- $equal_pricing : bool
- Whether all choices have equal pricing.
- $has_conditional_logic : bool
- Whether the field has conditional logic.
- $has_user_value : bool
- Whether the field has a user-defined value.
- $is_display_field : bool
- Whether the field is for display only.
- $option : mixed
- $product : mixed
- $stores_multiple_values : bool
- Whether the field can store multiple value selections (e.g checkboxes).
- $supports_multiple_values : bool
- Whether the field supports multiple values (e.g checkboxes, radios, select).
- $type : mixed
- $used_settings : array<string|int, mixed>
- An array of settings being used by the field.
- __construct() : mixed
- Constructor.
- __set() : void
- The set magic method.
- get_cart_item_data() : array<string|int, mixed>
- Retrieves the cart item data for the selected value(s) of the field.
- get_choice_formula_value() : string
- Get the formula value associated with a choice of the field.
- get_conditional_logic_config() : object|null
- Get the field conditional logic config.
- get_id() : string
- Get the field id.
- get_product() : WC_Product
- Get the product for the field.
- get_setting() : string|array<string|int, mixed>|null
- Get the value of a specific field setting.
- get_settings() : array<string|int, mixed>|null
- Get the array with the field settings.
- get_type() : string
- Get the field type.
- has_conditional_logic() : bool
- Whether the field has conditional logic.
- has_user_value() : bool
- Whether the field has a user inputted value.
- is_required() : bool
- Whether the field is required.
- is_valid_attribute_option_for_product() : string|null
- Determmine whether the selected attribute should be displayed in the product page.
- is_variation_attribute_type_option() : bool
- Determines whether the the option is a variation attribute type option.
- render() : void
- Render the HTML for the field.
- sanitize() : mixed
- Sanitize the field input value.
- stores_multiple_values() : bool
- Whether the field stores multiple values.
- validate() : WP_Error|true
- Validate the filed value.
- get_attachment_image_sizes() : string
- Get the `sizes` attribute for the image element.
- get_attribute_choices() : null|array<string|int, mixed>
- Retrieves the valid choices for the attribute option.
- get_choice_for_value() : array<string|int, mixed>|null
- Retrieves the choice from the option DB based on the user value provided.
- get_choice_image() : string
- Gets the choice image for the field.
- get_choice_image_html() : string
- Get the choice image HTML markup
- get_choice_pricing_attributes() : string
- Gets the data attributes to handle JS pricing calculation.
- get_choice_pricing_string() : string
- Retrieves the pricing string for a choice
- get_choices() : null|array<string|int, mixed>
- Returns the valid choices for the field.
- get_field_attributes() : string
- Gets the data attributes to handle conditional logic visibilities.
- get_field_class() : string
- Gets the CSS class for the field.
- get_global_attributes() : null|array<string|int, mixed>
- Retrieves the global attributes for the product variation.
- get_image_data() : string
- Return the `data-image` attribute of the image button.
- get_image_srcset() : string
- Get the srcset attribute for the image.
- get_input_id() : string
- Gets the id attribute for the field input.
- get_input_name() : string
- Gets the name attribute for the field input.
- get_label() : string
- Get the label for the field or its choices.
- get_pricing_attributes() : array<string|int, mixed>
- Retrieves top level pricing attributes for the field.
- get_required_symbol() : string
- Gets the required symbol for the field.
- has_choice_images() : bool
- Checks if the field has choice images.
- has_display_prerequisites() : bool
- Determines whether the option has enough data to display.
- is_update_main_image_enable() : bool
- Whether the option has the "Update main image" setting enabled.
- render_choice_character_limits_label() : void
- Gets the label for choice character limits if applicable.
- render_choice_quantity_limits_label() : void
- Gets the label for choice quantity limits if applicable.
- render_description() : void
- Render the HTML for the field description.
- render_field_wrap_close() : void
- Renders the field wrap closing tag.
- render_field_wrap_open() : void
- Renders the field wrap.
- render_option_name() : void
- Render the HTML for the field label.
- get_choice_class() : string
- Get the class for the color box.
- get_edit_option_link() : string
- Gets the edit option link for the field.
- init_conditional_logic() : mixed
- Determine whether the field has conditional logic.
- render_swatches() : void
- Render the HTML for the field checkboxes.
Properties
$choice_char
The choice character setting.
    protected
        array<string|int, mixed>
    $choice_char
    
    
    
    
    Tags
$choice_qty
The choice quantity setting.
    protected
        array<string|int, mixed>
    $choice_qty
    
    
    
    
    Tags
$display_label
    protected
        mixed
    $display_label
    
    
        
    
    Tags
$equal_pricing
Whether all choices have equal pricing.
    protected
        bool
    $equal_pricing
    
    
    
    
    Tags
$has_conditional_logic
Whether the field has conditional logic.
    protected
        bool
    $has_conditional_logic
     = false
    
    
    
    Tags
$has_user_value
Whether the field has a user-defined value.
    protected
        bool
    $has_user_value
     = false
    
    
    
    Tags
$is_display_field
Whether the field is for display only.
    protected
        bool
    $is_display_field
     = false
    
    
    
    Tags
$option
    protected
        mixed
    $option
    
    
        
    
    Tags
$product
    protected
        mixed
    $product
    
    
        
    
    Tags
$stores_multiple_values
Whether the field can store multiple value selections (e.g checkboxes).
    protected
        bool
    $stores_multiple_values
     = false
    
    
    
    Tags
$supports_multiple_values
Whether the field supports multiple values (e.g checkboxes, radios, select).
    protected
        bool
    $supports_multiple_values
     = true
    
    
    
    Tags
$type
    protected
        mixed
    $type
     = 'color_swatches'
    
        
    
    Tags
$used_settings
An array of settings being used by the field.
    protected
        array<string|int, mixed>
    $used_settings
     = ['display_label']
    
    
    
    Tags
Methods
__construct()
Constructor.
    public
                __construct(mixed $option, WC_Product $product) : mixed
    
        Parameters
- $option : mixed
- $product : WC_Product
Tags
Return values
mixed —__set()
The set magic method.
    public
                __set(string $name, mixed $value) : void
        This is defined and empty to allow the use of dynamic properties.
Parameters
- $name : string
- $value : mixed
Tags
Return values
void —get_cart_item_data()
Retrieves the cart item data for the selected value(s) of the field.
    public
                get_cart_item_data(mixed $value, WC_Product $product, int $quantity, array<string|int, mixed> $options) : array<string|int, mixed>
    
        Parameters
- $value : mixed
- $product : WC_Product
- $quantity : int
- $options : array<string|int, mixed>
Tags
Return values
array<string|int, mixed> —get_choice_formula_value()
Get the formula value associated with a choice of the field.
    public
                get_choice_formula_value(int $index) : string
    
        Parameters
- $index : int
- 
                    The index of the choice 
Tags
Return values
string —get_conditional_logic_config()
Get the field conditional logic config.
    public
                get_conditional_logic_config() : object|null
    
    
    
    Tags
Return values
object|null —get_id()
Get the field id.
    public
                get_id() : string
    
    
    
    Tags
Return values
string —get_product()
Get the product for the field.
    public
                get_product() : WC_Product
    
    
    
    Tags
Return values
WC_Product —get_setting()
Get the value of a specific field setting.
    public
                get_setting(string $setting_name) : string|array<string|int, mixed>|null
    
        Parameters
- $setting_name : string
- 
                    The key of the setting to retrieve. 
Tags
Return values
string|array<string|int, mixed>|null —get_settings()
Get the array with the field settings.
    public
                get_settings() : array<string|int, mixed>|null
    
    
    
    Tags
Return values
array<string|int, mixed>|null —get_type()
Get the field type.
    public
                get_type() : string
    
    
    
    Tags
Return values
string —has_conditional_logic()
Whether the field has conditional logic.
    public
                has_conditional_logic() : bool
    
    
    
        Return values
bool —has_user_value()
Whether the field has a user inputted value.
    public
                has_user_value() : bool
    
    
    
        Return values
bool —is_required()
Whether the field is required.
    public
                is_required() : bool
    
    
    
    Tags
Return values
bool —is_valid_attribute_option_for_product()
Determmine whether the selected attribute should be displayed in the product page.
    public
                is_valid_attribute_option_for_product() : string|null
    
    
    
    Tags
Return values
string|null —is_variation_attribute_type_option()
Determines whether the the option is a variation attribute type option.
    public
                is_variation_attribute_type_option() : bool
    
    
    
    Tags
Return values
bool —render()
Render the HTML for the field.
    public
                render() : void
    
    
    
    Tags
Return values
void —sanitize()
Sanitize the field input value.
    public
                sanitize(mixed $value) : mixed
    
        Parameters
- $value : mixed
Tags
Return values
mixed —stores_multiple_values()
Whether the field stores multiple values.
    public
                stores_multiple_values() : bool
    
    
    
        Return values
bool —validate()
Validate the filed value.
    public
                validate(mixed $value, array<string|int, mixed> $option_data) : WP_Error|true
    
        Parameters
- $value : mixed
- $option_data : array<string|int, mixed>
Tags
Return values
WP_Error|true —get_attachment_image_sizes()
Get the `sizes` attribute for the image element.
    protected
                get_attachment_image_sizes(string|int $attachment_id, int $width) : string
    
        Parameters
- $attachment_id : string|int
- 
                    The ID of the image attachment. 
- $width : int
Tags
Return values
string —get_attribute_choices()
Retrieves the valid choices for the attribute option.
    protected
                get_attribute_choices() : null|array<string|int, mixed>
    
    
    
    Tags
Return values
null|array<string|int, mixed> —get_choice_for_value()
Retrieves the choice from the option DB based on the user value provided.
    protected
                get_choice_for_value(mixed $value) : array<string|int, mixed>|null
    
        Parameters
- $value : mixed
Tags
Return values
array<string|int, mixed>|null —get_choice_image()
Gets the choice image for the field.
    protected
                get_choice_image(int $index) : string
    
        Parameters
- $index : int
Tags
Return values
string —get_choice_image_html()
Get the choice image HTML markup
    protected
                get_choice_image_html(int $index) : string
    
        Parameters
- $index : int
Tags
Return values
string —get_choice_pricing_attributes()
Gets the data attributes to handle JS pricing calculation.
    protected
                get_choice_pricing_attributes([array<string|int, mixed> $choice = [] ]) : string
    
        Parameters
- $choice : array<string|int, mixed> = []
Tags
Return values
string —get_choice_pricing_string()
Retrieves the pricing string for a choice
    protected
                get_choice_pricing_string([array<string|int, mixed> $choice = [] ][, bool $skip_parenthesis = true ]) : string
    
        Parameters
- $choice : array<string|int, mixed> = []
- $skip_parenthesis : bool = true
Tags
Return values
string —get_choices()
Returns the valid choices for the field.
    protected
                get_choices() : null|array<string|int, mixed>
    
    
    
    Tags
Return values
null|array<string|int, mixed> —get_field_attributes()
Gets the data attributes to handle conditional logic visibilities.
    protected
                get_field_attributes() : string
    
    
    
    Tags
Return values
string —get_field_class()
Gets the CSS class for the field.
    protected
                get_field_class() : string
    
    
    
    Tags
Return values
string —get_global_attributes()
Retrieves the global attributes for the product variation.
    protected
                get_global_attributes() : null|array<string|int, mixed>
    
    
    
    Tags
Return values
null|array<string|int, mixed> —get_image_data()
Return the `data-image` attribute of the image button.
    protected
                get_image_data(string|int $attachment_id) : string
        The attribute contains the image data in JSON format
as returned by the wc_get_product_attachment_props function.
Parameters
- $attachment_id : string|int
- 
                    The ID of the image attachment. 
Tags
Return values
string —get_image_srcset()
Get the srcset attribute for the image.
    protected
                get_image_srcset(int $image_id, string $size) : string
    
        Parameters
- $image_id : int
- $size : string
Tags
Return values
string —get_input_id()
Gets the id attribute for the field input.
    protected
                get_input_id() : string
    
    
    
    Tags
Return values
string —get_input_name()
Gets the name attribute for the field input.
    protected
                get_input_name() : string
    
    
    
    Tags
Return values
string —get_label()
Get the label for the field or its choices.
    protected
                get_label(mixed $index[, mixed $skip_filters = false ]) : string
    
        Parameters
- $index : mixed
- 
                    The index of the choice (or 0 for single-choice fields) 
- $skip_filters : mixed = false
Tags
Return values
string —get_pricing_attributes()
Retrieves top level pricing attributes for the field.
    protected
                get_pricing_attributes() : array<string|int, mixed>
    
    
    
    Tags
Return values
array<string|int, mixed> —get_required_symbol()
Gets the required symbol for the field.
    protected
                get_required_symbol() : string
    
    
    
    Tags
Return values
string —has_choice_images()
Checks if the field has choice images.
    protected
                has_choice_images() : bool
    
    
    
    Tags
Return values
bool —has_display_prerequisites()
Determines whether the option has enough data to display.
    protected
                has_display_prerequisites() : bool
    
    
    
    Tags
Return values
bool —is_update_main_image_enable()
Whether the option has the "Update main image" setting enabled.
    protected
                is_update_main_image_enable() : bool
    
    
    
    Tags
Return values
bool —render_choice_character_limits_label()
Gets the label for choice character limits if applicable.
    protected
                render_choice_character_limits_label() : void
    
    
    
    Tags
Return values
void —render_choice_quantity_limits_label()
Gets the label for choice quantity limits if applicable.
    protected
                render_choice_quantity_limits_label() : void
    
    
    
    Tags
Return values
void —render_description()
Render the HTML for the field description.
    protected
                render_description() : void
    
    
    
    Tags
Return values
void —render_field_wrap_close()
Renders the field wrap closing tag.
    protected
                render_field_wrap_close() : void
    
    
    
    Tags
Return values
void —render_field_wrap_open()
Renders the field wrap.
    protected
                render_field_wrap_open() : void
    
    
    
    Tags
Return values
void —render_option_name()
Render the HTML for the field label.
    protected
                render_option_name() : void
    
    
    
    Tags
Return values
void —get_choice_class()
Get the class for the color box.
    private
                get_choice_class(array<string|int, mixed> $choice) : string
    
        Parameters
- $choice : array<string|int, mixed>
- 
                    The choice. 
Tags
Return values
string —get_edit_option_link()
Gets the edit option link for the field.
    private
                get_edit_option_link() : string
    
    
    
    Tags
Return values
string —init_conditional_logic()
Determine whether the field has conditional logic.
    private
                init_conditional_logic() : mixed
    
    
    
    Tags
Return values
mixed —render_swatches()
Render the HTML for the field checkboxes.
    private
                render_swatches() : void