/** * Misc funcitons */ /** * Get min/max price for WooCommerce products */ function jet_smart_filters_woo_prices( $args = array() ) { global $wpdb; if ( ! function_exists( 'wc' ) ) { return false; } $wc_query = wc()->query->get_main_query(); $tax_query = array(); if ( $wc_query ) { $wc_queried_object = $wc_query->queried_object; if ( ! empty( $wc_queried_object->taxonomy ) && ! empty( $wc_queried_object->term_id ) ) { $tax_query[] = array( 'taxonomy' => $wc_queried_object->taxonomy, 'terms' => array( $wc_queried_object->term_id ), 'field' => 'term_id', ); } } $tax_query = new WP_Tax_Query( $tax_query ); $tax_query_sql = $tax_query->get_sql( $wpdb->posts, 'ID' ); $sql = "SELECT min( FLOOR( price_meta.meta_value ) ) as min, max( CEILING( price_meta.meta_value ) ) as max FROM {$wpdb->posts} "; $sql .= " LEFT JOIN {$wpdb->postmeta} as price_meta ON {$wpdb->posts}.ID = price_meta.post_id " . $tax_query_sql['join']; $sql .= " WHERE {$wpdb->posts}.post_type IN ('" . implode( "','", array_map( 'esc_sql', apply_filters( 'woocommerce_price_filter_post_type', array( 'product' ) ) ) ) . "') AND {$wpdb->posts}.post_status = 'publish' AND price_meta.meta_key IN ('" . implode( "','", array_map( 'esc_sql', apply_filters( 'woocommerce_price_filter_meta_keys', array( '_price' ) ) ) ) . "') AND price_meta.meta_value > '' "; $sql .= $tax_query_sql['where']; if ( $wc_query ) { $search = WC_Query::get_main_search_query_sql(); } else { $search = false; } if ( $search ) { $sql .= ' AND ' . $search; } $price = $wpdb->get_row( $sql, ARRAY_A ); if ( class_exists( 'woocommerce_wpml' ) ){ $price['min'] = apply_filters( 'wcml_raw_price_amount', floatval( $price['min'] ) ); $price['max'] = apply_filters( 'wcml_raw_price_amount', floatval( $price['max'] ) ); } return $price; // WPCS: unprepared SQL ok. } /** * Callback to get min/max value for meta key */ function jet_smart_filters_meta_values( $args = array() ) { $key = ! empty( $args['key'] ) ? $args['key'] : false; if ( ! $key ) { return array(); } global $wpdb; $queried_object = get_queried_object(); $tax_query = array(); if ( ! empty( $queried_object->taxonomy ) && ! empty( $queried_object->term_id ) ) { $tax_query[] = array( 'taxonomy' => $queried_object->taxonomy, 'terms' => array( $queried_object->term_id ), 'field' => 'term_id', ); } $tax_query = new WP_Tax_Query( $tax_query ); $tax_query_sql = $tax_query->get_sql( 'pm', 'post_id' ); $search_in_statuses = apply_filters( 'jet-smart-filters/dynamic-min-max/search-statuses', array( 'publish' ) ); $search_in_statuses = implode( ', ', array_map( function( $status ) { return '\'' . $status . '\''; }, $search_in_statuses ) ); $sql = "SELECT min( FLOOR( pm.meta_value ) ) as min, max( CEILING( pm.meta_value ) ) as max FROM $wpdb->postmeta AS pm"; $sql .= " INNER JOIN $wpdb->posts AS p ON p.ID = pm.post_id"; $sql .= $tax_query_sql['join']; $sql .= " WHERE pm.meta_key IN ('" . str_replace( ',', '\',\'', str_replace( ' ', '', $key ) ) . "')"; $sql .= " AND p.post_status IN ( $search_in_statuses )"; $sql .= $tax_query_sql['where']; $data = $wpdb->get_results( $sql, ARRAY_A ); if ( ! empty( $data ) ) { return $data[0]; } else { return array(); } } /** * Callback to get min/max value for meta key */ function jet_smart_filters_term_meta_values( $args = array() ) { $key = ! empty( $args['key'] ) ? $args['key'] : false; if ( ! $key ) { return array(); } global $wpdb; $sql = "SELECT min( FLOOR( tm.meta_value ) ) as min, max( CEILING( tm.meta_value ) ) as max FROM $wpdb->termmeta AS tm"; $sql .= " WHERE tm.meta_key IN ('" . str_replace( ',', '\',\'', str_replace( ' ', '', $key ) ) . "')"; $data = $wpdb->get_results( $sql, ARRAY_A ); if ( ! empty( $data ) ) { return $data[0]; } else { return array(); } } /** * Callback to get min/max value for meta key */ function jet_smart_filters_user_meta_values( $args = array() ) { $key = ! empty( $args['key'] ) ? $args['key'] : false; if ( ! $key ) { return array(); } global $wpdb; $sql = "SELECT min( FLOOR( um.meta_value ) ) as min, max( CEILING( um.meta_value ) ) as max FROM $wpdb->usermeta AS um"; $sql .= " WHERE um.meta_key IN ('" . str_replace( ',', '\',\'', str_replace( ' ', '', $key ) ) . "')"; $data = $wpdb->get_results( $sql, ARRAY_A ); if ( ! empty( $data ) ) { return $data[0]; } else { return array(); } } /** * Returns current currency symbol */ function jet_smart_filters_woo_currency_symbol() { $currency = apply_filters( 'jet-smart-filters/woocommerce/currency-symbol', get_woocommerce_currency_symbol() ); return $currency; } /** * Do macros inside string */ function jet_smart_filters_macros( $string, $field_value = null ) { $macros = apply_filters( 'jet-smart-filters/macros/macros-list', array( 'woocommerce_currency_symbol' => 'jet_smart_filters_woo_currency_symbol', ) ); return preg_replace_callback( '/%([a-z_-]+)(\|[a-z0-9_-]+)?%/', function ( $matches ) use ( $macros, $field_value ) { $found = $matches[1]; if ( ! isset( $macros[ $found ] ) ) { return $matches[0]; } $cb = $macros[ $found ]; if ( ! is_callable( $cb ) ) { return $matches[0]; } $args = isset( $matches[2] ) ? ltrim( $matches[2], '|' ) : false; return call_user_func( $cb, $field_value, $args ); }, $string ); }
Warning: session_start(): Session cannot be started after headers have already been sent in /srv/users/benmetcalfe/apps/ewc/public/wp-content/plugins/jet-data-importer/jet-data-importer.php on line 371
/** * Class: Jet_Woo_Builder_Checkout_Payment * Name: Checkout Payment * Slug: jet-checkout-payment */ namespace Elementor; use Elementor\Controls_Manager; use Elementor\Group_Control_Border; use Elementor\Group_Control_Typography; if ( ! defined( 'ABSPATH' ) ) { exit; } // Exit if accessed directly class Jet_Woo_Builder_Checkout_Payment extends Jet_Woo_Builder_Base { public function get_name() { return 'jet-checkout-payment'; } public function get_title() { return __( 'Checkout Payment', 'jet-woo-builder' ); } public function get_icon() { return 'jet-woo-builder-icon-checkout-payment'; } public function get_jet_help_url() { return 'https://crocoblock.com/knowledge-base/articles/jetwoobuilder-how-to-create-a-checkout-page-template/'; } public function show_in_panel() { return jet_woo_builder()->documents->is_document_type( 'checkout' ); } protected function register_controls() { $css_scheme = apply_filters( 'jet-woo-builder/jet-checkout-payment/css-scheme', [ 'label' => '#payment .wc_payment_method label', 'items-wrapper' => '#payment ul.payment_methods', 'item' => '#payment ul.payment_methods li', 'description' => '#payment .payment_box', 'button' => '#payment #place_order', 'button-wrapper' => '#payment div.form-row', ] ); $this->start_controls_section( 'checkout_payment_general_styles_section', [ 'label' => __( 'General', 'jet-woo-builder' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); jet_woo_builder_common_controls()->register_wc_style_warning( $this ); $this->add_control( 'checkout_payment_background', [ 'label' => __( 'Background Color', 'jet-woo-builder' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} #payment' => 'background-color: {{VALUE}}', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'checkout_payment_border', 'label' => __( 'Border', 'jet-woo-builder' ), 'selector' => '{{WRAPPER}} #payment', ] ); $this->add_responsive_control( 'checkout_payment_border_radius', [ 'type' => Controls_Manager::DIMENSIONS, 'label' => __( 'Border Radius', 'jet-woo-builder' ), 'size_units' => $this->set_custom_size_unit( [ 'px', 'em', '%' ] ), 'selectors' => [ '{{WRAPPER}} #payment' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->end_controls_section(); $this->start_controls_section( 'checkout_payment_item_styles_section', [ 'label' => __( 'Items', 'jet-woo-builder' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_control( 'checkout_payment_label_heading', [ 'label' => __( 'Labels', 'jet-woo-builder' ), 'type' => Controls_Manager::HEADING, ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'checkout_payment_heading_typography', 'selector' => '{{WRAPPER}} ' . $css_scheme['label'], ] ); $this->add_control( 'checkout_payment_heading_color', [ 'type' => Controls_Manager::COLOR, 'label' => __( 'Color', 'jet-woo-builder' ), 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['label'] => 'color: {{VALUE}}', ], ] ); $this->add_control( 'checkout_payment_heading_background', [ 'label' => __( 'Background Color', 'jet-woo-builder' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['item'] => 'background-color: {{VALUE}}', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'checkout_payment_heading_border', 'label' => __( 'Border', 'jet-woo-builder' ), 'selector' => '{{WRAPPER}} ' . $css_scheme['item'], ] ); $this->add_responsive_control( 'checkout_payment_heading_border_radius', [ 'type' => Controls_Manager::DIMENSIONS, 'label' => __( 'Border Radius', 'jet-woo-builder' ), 'size_units' => $this->set_custom_size_unit( [ 'px', 'em', '%' ] ), 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['item'] => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'checkout_payment_heading_margin', [ 'type' => Controls_Manager::DIMENSIONS, 'label' => __( 'Margin', 'jet-woo-builder' ), 'size_units' => $this->set_custom_size_unit( [ 'px', 'em', '%' ] ), 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['item'] => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', '{{WRAPPER}} ' . $css_scheme['label'] => 'margin: 0;', ], ] ); $this->add_responsive_control( 'checkout_payment_heading_padding', [ 'type' => Controls_Manager::DIMENSIONS, 'label' => __( 'Padding', 'jet-woo-builder' ), 'size_units' => $this->set_custom_size_unit( [ 'px', 'em', '%' ] ), 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['item'] => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'checkout_payment_heading_align', [ 'label' => __( 'Alignment', 'jet-woo-builder' ), 'type' => Controls_Manager::CHOOSE, 'options' => jet_woo_builder_tools()->get_available_h_align_types(), 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['item'] => 'text-align: {{VALUE}}', ], 'classes' => 'elementor-control-align', ] ); $this->add_control( 'checkout_payment_items_wrapper_heading', [ 'label' => __( 'Wrapper', 'jet-woo-builder' ), 'type' => Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'checkout_payment_items_wrapper_border', 'label' => __( 'Border', 'jet-woo-builder' ), 'selector' => '{{WRAPPER}} ' . $css_scheme['items-wrapper'], ] ); $this->add_responsive_control( 'checkout_payment_items_wrapper_border_radius', [ 'type' => Controls_Manager::DIMENSIONS, 'label' => __( 'Border Radius', 'jet-woo-builder' ), 'size_units' => $this->set_custom_size_unit( [ 'px', 'em', '%' ] ), 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['items-wrapper'] => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'checkout_payment_items_wrapper_margin', [ 'type' => Controls_Manager::DIMENSIONS, 'label' => __( 'Margin', 'jet-woo-builder' ), 'size_units' => $this->set_custom_size_unit( [ 'px', 'em', '%' ] ), 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['items-wrapper'] => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'checkout_payment_items_wrapper_padding', [ 'type' => Controls_Manager::DIMENSIONS, 'label' => __( 'Padding', 'jet-woo-builder' ), 'size_units' => $this->set_custom_size_unit( [ 'px', 'em', '%' ] ), 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['items-wrapper'] => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->end_controls_section(); $this->start_controls_section( 'checkout_payment_description_styles_section', [ 'label' => __( 'Description', 'jet-woo-builder' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_group_control( Group_Control_Typography::get_type(), array( 'name' => 'checkout_payment_content_typography', 'label' => esc_html__( 'Typography', 'jet-woo-builder' ), 'selector' => '{{WRAPPER}} ' . $css_scheme['description'], ) ); $this->add_control( 'checkout_payment_content_color', array( 'label' => esc_html__( 'Color', 'jet-woo-builder' ), 'type' => Controls_Manager::COLOR, 'selectors' => array( '{{WRAPPER}} ' . $css_scheme['description'] => 'color: {{VALUE}}', ), ) ); $this->add_control( 'checkout_payment_content_background', [ 'type' => Controls_Manager::COLOR, 'label' => __( 'Background Color', 'jet-woo-builder' ), 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['description'] => 'background-color: {{VALUE}}', '{{WRAPPER}} ' . $css_scheme['description'] . ':before' => 'border-bottom-color: {{VALUE}}', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), array( 'name' => 'checkout_payment_content_border', 'label' => esc_html__( 'Border', 'jet-woo-builder' ), 'placeholder' => '1px', 'default' => '1px', 'selector' => '{{WRAPPER}} ' . $css_scheme['description'], ) ); $this->add_responsive_control( 'checkout_payment_content_border_radius', [ 'type' => Controls_Manager::DIMENSIONS, 'label' => __( 'Border Radius', 'jet-woo-builder' ), 'size_units' => $this->set_custom_size_unit( [ 'px', 'em', '%' ] ), 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['description'] => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'checkout_payment_content_padding', [ 'label' => __( 'Padding', 'jet-woo-builder' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => $this->set_custom_size_unit( [ 'px', 'em', '%' ] ), 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['description'] => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->end_controls_section(); $this->start_controls_section( 'checkout_payment_button_styles', array( 'label' => esc_html__( 'Button', 'jet-woo-builder' ), 'tab' => Controls_Manager::TAB_STYLE, ) ); $this->add_responsive_control( 'button_width', [ 'type' => Controls_Manager::SLIDER, 'label' => __( 'Width', 'jet-woo-builder' ), 'size_units' => $this->set_custom_size_unit( [ 'px', '%' ] ), 'range' => [ '%' => [ 'min' => 10, 'max' => 100, ], 'px' => [ 'min' => 50, 'max' => 500, ], ], 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['button'] => 'width: {{SIZE}}{{UNIT}}', ], ] ); jet_woo_builder_common_controls()->register_button_style_controls( $this, 'checkout_payment', $css_scheme['button'] ); $this->add_control( 'checkout_payment_button_wrapper_heading', [ 'label' => __( 'Wrapper', 'jet-woo-builder' ), 'type' => Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'checkout_payment_button_wrapper_border', 'label' => __( 'Border', 'jet-woo-builder' ), 'selector' => '{{WRAPPER}} ' . $css_scheme['button-wrapper'], ] ); $this->add_responsive_control( 'checkout_payment_button_wrapper_border_radius', [ 'type' => Controls_Manager::DIMENSIONS, 'label' => __( 'Border Radius', 'jet-woo-builder' ), 'size_units' => $this->set_custom_size_unit( [ 'px', 'em', '%' ] ), 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['button-wrapper'] => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'checkout_payment_button_wrapper_margin', [ 'type' => Controls_Manager::DIMENSIONS, 'label' => __( 'Margin', 'jet-woo-builder' ), 'size_units' => $this->set_custom_size_unit( [ 'px', 'em', '%' ] ), 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['button-wrapper'] => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'checkout_payment_button_wrapper_padding', [ 'type' => Controls_Manager::DIMENSIONS, 'label' => __( 'Padding', 'jet-woo-builder' ), 'size_units' => $this->set_custom_size_unit( [ 'px', 'em', '%' ] ), 'selectors' => [ '{{WRAPPER}} ' . $css_scheme['button-wrapper'] => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->end_controls_section(); $this->start_controls_section( 'checkout_payment_info_box_styles', [ 'label' => __( 'Info Box', 'jet-woo-builder' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'checkout_payment_info_box_typography', 'label' => __( 'Typography', 'jet-woo-builder' ), 'selector' => '{{WRAPPER}} .woocommerce-privacy-policy-text, {{WRAPPER}} .woocommerce-terms-and-conditions-checkbox-text', ] ); $this->add_control( 'checkout_payment_info_box_color', [ 'label' => __( 'Color', 'jet-woo-builder' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .woocommerce-privacy-policy-text, {{WRAPPER}} .woocommerce-terms-and-conditions-checkbox-text' => 'color: {{VALUE}}', ], ] ); $this->add_control( 'checkout_payment_info_box_link_heading', [ 'label' => __( 'Links', 'jet-woo-builder' ), 'type' => Controls_Manager::HEADING, ] ); $this->start_controls_tabs( 'checkout_payment_info_box_link_styles_tabs' ); $this->start_controls_tab( 'checkout_payment_info_box_link_styles_normal_tab', [ 'label' => __( 'Normal', 'jet-woo-builder' ), ] ); $this->add_control( 'checkout_payment_info_box_links_color', [ 'label' => __( 'Color', 'jet-woo-builder' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .woocommerce-privacy-policy-text a, {{WRAPPER}} .woocommerce-terms-and-conditions-checkbox-text a' => 'color: {{VALUE}}', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'checkout_payment_info_box_link_styles_hover_tab', [ 'label' => __( 'Hover', 'jet-woo-builder' ), ] ); $this->add_control( 'checkout_payment_info_box_links_hover_color', [ 'label' => __( 'Color', 'jet-woo-builder' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .woocommerce-privacy-policy-text a:hover, {{WRAPPER}} .woocommerce-terms-and-conditions-checkbox-text a:hover' => 'color: {{VALUE}}', ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->end_controls_section(); } protected function render() { // Add filters before displaying our Widget. // Set editor & preview payment. add_filter( 'woocommerce_cart_needs_payment', [ $this, 'maybe_set_cart_needs_payment' ] ); $this->__open_wrap(); woocommerce_checkout_payment(); $this->__close_wrap(); // Remove filters after displaying our Widget. remove_filter( 'woocommerce_cart_needs_payment', [ $this, 'maybe_set_cart_needs_payment' ] ); } /** * Set required payments for widget in editor and preview areas. * * @since 1.12.0 * * @param $required * * @return bool|mixed */ public function maybe_set_cart_needs_payment( $required ) { if ( jet_woo_builder()->elementor_views->in_elementor() ) { $required = true; } return $required; } } What is face serum & why should you be using it? | Essence Wellness Clinic

What is face serum & why should you be using it?

Serums are a key step of any active skincare routine, as they are known to provide the skin’s surface with a concentrated amount of efficacious ingredients. Serums are with there weight in gold and here is why.

Every person has a skin condition they are wanting to work on, weather it be pigmentation and sun damage, dehydration with what appears a Shine tight look to the skin, aging, fine lines and wrinkles, acne or scarring and the list goes in. 

Face serums come with major skin benefits, and they are often seen as one of the more rewarding steps in your beauty routine. Serums hold the higest active ingredients, and often are your most expensive skincare in your home care routine and all for good reasons, Serums contain high level active Ingredients often derived from all over the world, Ingredients that can only be used in small doses and are designed at correcting a skin condition. Serums are usually packaged in glass bottles or dropper formula because of active ingredients, often if oxidised from air they can lose their potency. Serums are to be prescribed to your skin concern from your EWC therapist, just because your friend has been prescribed hylaronic acid and it’s working amazing for them doesn’t mean that your skin needs or is going to react the same. Making sure that your serum has been prescribed for you for your plan. Serum ingredients are usually vitamin c, AHAs, hylaronic acid, narcinamides and retinol.

 It’s also known that you can layer serums for added results – but you’ll need to remain patient, apply your serum twice a day and your skin will thank you in the future. Serum results can often take 4 to 6 weeks to see change. 

Are you curious to know exactly what face serums are, or perhaps when to use them? Below, our EWC breaks down our favourite types of serum and the top reasons to add this product to your 

How to use face serum

If you are wondering when to use face serum or how it differs from moisturiser, we have all the answers to help you understand proper serum skincare.

When to Use Face Serum: Apply face serums once or twice a day, in the morning and at night. You should always cleanse your skin followed by the serum. Moisturiser will need to be applied after the serum to lock in moisture and hydration. This is a key part to the serum, making sure you apply a hydrator over the top and it aids in deeper penetration.

How to Apply Face Serum: After cleansing and toning your skin and allowing it to dry, apply two to three drops of serum to your face and neck. A little goes a long way when it comes to serums. Using your fingertips, delicately massage the serum over your skin. Once the serum is dried, apply your moisturiser and any other skincare products. 

Where to Apply Serum: Face serum should be applied to your entire face and neck, as that area requires moisture too. If you are using an eye and lash serum, you will want to gently target the eye area.

Is Serum a Cream or Moisturiser? Serums are neither! Face serums provide moisturising ingredients, but they should not be considered your primary moisturiser, especially for those with dry skin. If you have naturally oily skin, you could potentially use a hydrating face serum on its own. Serums are thinner than moisturisers and absorb into the skin more quickly, making them perfect for layering, but you should still apply moisturiser on top of the serum to help nourish the skin’s outermost layers. 

Want to learn more or find the perfect serum for your skin? Every skin is individual and everyone has different skin concerns. It is important to have a skin consult, that we can assess your skin, look at what you are using currently, look at  your diet. Lifestyle and hormones so that we can prescribe you the correct serum for your skin. 

Book a skin consult and treatment at Essence Wellness Clinic for your perfect skin serum just for you. 

Search

My Account

Login

Register

Registration disabled