woocommerce_general_settings

The WooCommerce woocommerce general settings hook.

Description

apply_filters( 'woocommerce_general_settings', (array) $array ); 

Parameters (1)

0. $array — Optional. (array) => array(array( 'title' => __( 'General options', 'woocommerce' ), 'type' => 'title', 'desc' => '', 'id' => 'general_options' ),array( 'title' => __( 'Base location', 'woocommerce' ), 'desc' => __( 'This is the base location for your business. Tax rates will be based on this country.', 'woocommerce' ), 'id' => 'woocommerce_default_country', 'css' => 'min-width:350px;', 'default' => 'GB', 'type' => 'single_select_country', 'desc_tip' => true, ),array( 'title' => __( 'Selling location(s)', 'woocommerce' ), 'desc' => __( 'This option lets you limit which countries you are willing to sell to.', 'woocommerce' ), 'id' => 'woocommerce_allowed_countries', 'default' => 'all', 'type' => 'select', 'class' => 'wc-enhanced-select', 'css' => 'min-width: 350px;', 'desc_tip' => true, 'options' => array( 'all' => __( 'Sell to all countries', 'woocommerce' ), 'all_except' => __( 'Sell to all countries, except for…', 'woocommerce' ), 'specific' => __( 'Sell to specific countries', 'woocommerce' ), ), ),array( 'title' => __( 'Sell to all countries, except for…', 'woocommerce' ), 'desc' => '', 'id' => 'woocommerce_all_except_countries', 'css' => 'min-width: 350px;', 'default' => '', 'type' => 'multi_select_countries', ),array( 'title' => __( 'Sell to specific countries', 'woocommerce' ), 'desc' => '', 'id' => 'woocommerce_specific_allowed_countries', 'css' => 'min-width: 350px;', 'default' => '', 'type' => 'multi_select_countries', ),array( 'title' => __( 'Shipping location(s)', 'woocommerce' ), 'desc' => __( 'Choose which countries you want to ship to, or choose to ship to all locations you sell to.', 'woocommerce' ), 'id' => 'woocommerce_ship_to_countries', 'default' => '', 'type' => 'select', 'class' => 'wc-enhanced-select', 'desc_tip' => true, 'options' => array( '' => __( 'Ship to all countries you sell to', 'woocommerce' ), 'all' => __( 'Ship to all countries', 'woocommerce' ), 'specific' => __( 'Ship to specific countries only', 'woocommerce' ), 'disabled' => __( 'Disable shipping & shipping calculations', 'woocommerce' ), ), ),array( 'title' => __( 'Ship to specific countries', 'woocommerce' ), 'desc' => '', 'id' => 'woocommerce_specific_ship_to_countries', 'css' => '', 'default' => '', 'type' => 'multi_select_countries', ),array( 'title' => __( 'Default customer location', 'woocommerce' ), 'id' => 'woocommerce_default_customer_address', 'desc_tip' => __( 'This option determines a customers default location. The MaxMind GeoLite Database will be periodically downloaded to your wp-content directory if using geolocation.', 'woocommerce' ), 'default' => 'geolocation', 'type' => 'select', 'class' => 'wc-enhanced-select', 'options' => array( '' => __( 'No location by default', 'woocommerce' ), 'base' => __( 'Shop base address', 'woocommerce' ), 'geolocation' => __( 'Geolocate', 'woocommerce' ), 'geolocation_ajax' => __( 'Geolocate (with page caching support)', 'woocommerce' ), ), ),array( 'title' => __( 'Enable taxes', 'woocommerce' ), 'desc' => __( 'Enable taxes and tax calculations', 'woocommerce' ), 'id' => 'woocommerce_calc_taxes', 'default' => 'no', 'type' => 'checkbox', ),array( 'title' => __( 'Store notice', 'woocommerce' ), 'desc' => __( 'Enable site-wide store notice text', 'woocommerce' ), 'id' => 'woocommerce_demo_store', 'default' => 'no', 'type' => 'checkbox', ),array( 'title' => __( 'Store notice text', 'woocommerce' ), 'desc' => '', 'id' => 'woocommerce_demo_store_notice', 'default' => __( 'This is a demo store for testing purposes — no orders shall be fulfilled.', 'woocommerce' ), 'type' => 'textarea', 'css' => 'width:350px; height: 65px;', 'autoload' => false, ),array( 'type' => 'sectionend', 'id' => 'general_options' ),array( 'title' => __( 'Currency options', 'woocommerce' ), 'type' => 'title', 'desc' => __( 'The following options affect how prices are displayed on the frontend.', 'woocommerce' ), 'id' => 'pricing_options' ),array( 'title' => __( 'Currency', 'woocommerce' ), 'desc' => __( 'This controls what currency prices are listed at in the catalog and which currency gateways will take payments in.', 'woocommerce' ), 'id' => 'woocommerce_currency', 'css' => 'min-width:350px;', 'default' => 'GBP', 'type' => 'select', 'class' => 'wc-enhanced-select', 'desc_tip' => true, 'options' => $currency_code_options, ),array( 'title' => __( 'Currency position', 'woocommerce' ), 'desc' => __( 'This controls the position of the currency symbol.', 'woocommerce' ), 'id' => 'woocommerce_currency_pos', 'css' => 'min-width:350px;', 'class' => 'wc-enhanced-select', 'default' => 'left', 'type' => 'select', 'options' => array( 'left' => __( 'Left', 'woocommerce' ) . ' (' . get_woocommerce_currency_symbol() . '99.99)', 'right' => __( 'Right', 'woocommerce' ) . ' (99.99' . get_woocommerce_currency_symbol() . ')', 'left_space' => __( 'Left with space', 'woocommerce' ) . ' (' . get_woocommerce_currency_symbol() . ' 99.99)', 'right_space' => __( 'Right with space', 'woocommerce' ) . ' (99.99 ' . get_woocommerce_currency_symbol() . ')', ), 'desc_tip' => true, ),array( 'title' => __( 'Thousand separator', 'woocommerce' ), 'desc' => __( 'This sets the thousand separator of displayed prices.', 'woocommerce' ), 'id' => 'woocommerce_price_thousand_sep', 'css' => 'width:50px;', 'default' => ', ', 'type' => 'text', 'desc_tip' => true, ),array( 'title' => __( 'Decimal separator', 'woocommerce' ), 'desc' => __( 'This sets the decimal separator of displayed prices.', 'woocommerce' ), 'id' => 'woocommerce_price_decimal_sep', 'css' => 'width:50px;', 'default' => '.', 'type' => 'text', 'desc_tip' => true, ),array( 'title' => __( 'Number of decimals', 'woocommerce' ), 'desc' => __( 'This sets the number of decimal points shown in displayed prices.', 'woocommerce' ), 'id' => 'woocommerce_price_num_decimals', 'css' => 'width:50px;', 'default' => '2', 'desc_tip' => true, 'type' => 'number', 'custom_attributes' => array( 'min' => 0, 'step' => 1, ), ),array( 'type' => 'sectionend', 'id' => 'pricing_options' ),)
The array.

Usage

To run the hook, copy the example below.
  1. $array = apply_filters( 'woocommerce_general_settings', $array ); 
  2.  
  3. if ( !empty( $array ) ) { 
  4.  
  5. // everything has led up to this point... 
  6.  
  7.  
The following example is for adding a hook callback.
  1. // define the woocommerce_general_settings callback 
  2. function filter_woocommerce_general_settings( $array ) { 
  3. // make filter magic happen here... 
  4. return $array
  5. }; 
  6.  
  7. // add the filter 
  8. add_filter( 'woocommerce_general_settings', 'filter_woocommerce_general_settings', 10, 1 ); 
To remove a hook callback, use the example below.
  1. // remove the filter 
  2. remove_filter( 'woocommerce_general_settings', 'filter_woocommerce_general_settings', 10, 1 ); 

Defined (1)

The filter is defined in the following location(s).

/includes/admin/settings/class-wc-settings-general.php  
  1. $settings = apply_filters( 'woocommerce_general_settings', array(