Plugin Directory

Changeset 2878617


Ignore:
Timestamp:
03/12/2023 08:48:18 AM (3 years ago)
Author:
wpcommerz
Message:

Performance improvements

Location:
guidant/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • guidant/trunk/guidant.php

    r2791038 r2878617  
    44 * Plugin URI:        https://wpcommerz.com/guidant/
    55 * Description:       Build Multi-step Guided Selling Process & Smart Forms to Convert 10X More Traffic Into Leads & New Customers.
    6  * Version:           1.0.8
     6 * Version:           1.0.9
    77 * Author:            WPCommerz
    88 * Author URI:        https://wpcommerz.com/
     
    1313 */
    1414
    15 
    1615// If this file is called directly, abort.
    17 if ( ! defined( 'WPINC' ) ) {
     16if (!defined('WPINC')) {
    1817    die;
    1918}
    2019
    21 define( 'GUIDANT_VERSION', '1.0.8' );
    22 defined( 'GUIDANT_PATH' ) or define( 'GUIDANT_PATH', plugin_dir_path( __FILE__ ) );
    23 defined( 'GUIDANT_URL' ) or define( 'GUIDANT_URL', plugin_dir_url( __FILE__ ) );
    24 defined( 'GUIDANT_BASE_PATH' ) or define( 'GUIDANT_BASE_PATH', plugin_basename(__FILE__) );
    25 defined( 'GUIDANT_IMG_DIR' ) or define( 'GUIDANT_IMG_DIR', plugin_dir_url( __FILE__ ) . 'assets/img/' );
    26 defined( 'GUIDANT_CSS_DIR' ) or define( 'GUIDANT_CSS_DIR', plugin_dir_url( __FILE__ ) . 'assets/css/' );
    27 defined( 'GUIDANT_JS_DIR' ) or define( 'GUIDANT_JS_DIR', plugin_dir_url( __FILE__ ) . 'assets/js/' );
    28 
    29 
    30 
     20define('GUIDANT_VERSION', '1.0.8');
     21defined('GUIDANT_PATH') or define('GUIDANT_PATH', plugin_dir_path(__FILE__));
     22defined('GUIDANT_URL') or define('GUIDANT_URL', plugin_dir_url(__FILE__));
     23defined('GUIDANT_BASE_PATH') or define('GUIDANT_BASE_PATH', plugin_basename(__FILE__));
     24defined('GUIDANT_IMG_DIR') or define('GUIDANT_IMG_DIR', plugin_dir_url(__FILE__) . 'assets/img/');
     25defined('GUIDANT_CSS_DIR') or define('GUIDANT_CSS_DIR', plugin_dir_url(__FILE__) . 'assets/css/');
     26defined('GUIDANT_JS_DIR') or define('GUIDANT_JS_DIR', plugin_dir_url(__FILE__) . 'assets/js/');
    3127
    3228require_once GUIDANT_PATH . 'includes/GuidantSettings.php';
     
    4036require_once GUIDANT_PATH . 'frontend/class-guidant-shortcode.php';
    4137require_once GUIDANT_PATH . 'frontend/class-guidant-frontend.php';
    42 
    43 
  • guidant/trunk/includes/GuidantUtils.php

    r2747015 r2878617  
    11<?php
    22
    3 // If this file is called directly, abort.
    4 if ( ! defined( 'WPINC' ) ) {
     3// If this file is called directly, exit.
     4if (!defined('WPINC')) {
    55    die;
    66}
    77
    8 if ( ! class_exists( 'GuidantUtils' ) ) {
     8if (!class_exists('GuidantUtils')) {
    99    class GuidantUtils
    1010    {
    1111
    12         public function filterBySearch($array, $search = ""){
    13 
    14             if(strlen(trim($search)) == 0){
     12        public function filterBySearch($array, $search = "")
     13        {
     14
     15            if (strlen(trim($search)) == 0) {
    1516                return $array;
    1617            }
    1718
    1819            $filteredArray = array();
    19             foreach ($array as $single_row){
     20            foreach ($array as $single_row) {
    2021                if (strpos(strtolower($single_row['id']), strtolower($search)) !== false) {
    2122                    $filteredArray[] = $single_row;
    22                 }else if (strpos(strtolower($single_row['text']), strtolower($search)) !== false) {
     23                } else if (strpos(strtolower($single_row['text']), strtolower($search)) !== false) {
    2324                    $filteredArray[] = $single_row;
    2425                }
     
    3940            return $this->filterBySearch($postAttributes, $search);
    4041        }
    41 
    4242
    4343        public function getPostAttributesForResult($search)
     
    9191            $acfAttributes = array();
    9292            if (class_exists('ACF')) {
    93                 $sql = $wpdb->prepare( "SELECT post_title, post_excerpt FROM {$wpdb->prefix}posts WHERE post_type = 'acf-field' AND post_status = 'publish' ORDER BY ID DESC", array() );
     93                $sql = $wpdb->prepare("SELECT post_title, post_excerpt FROM {$wpdb->prefix}posts WHERE post_type = 'acf-field' AND post_status = 'publish' ORDER BY ID DESC", array());
    9494                $listPosts = $wpdb->get_results($sql);
    9595                if (sizeof($listPosts) > 0) {
    9696                    foreach ($listPosts as $singlePost) {
    97                         $acfAttributes[] = array("id" => "post_meta_".$singlePost->post_excerpt, "text" => $singlePost->post_title);
     97                        $acfAttributes[] = array("id" => "post_meta_" . $singlePost->post_excerpt, "text" => $singlePost->post_title);
    9898                    }
    9999                }
     
    105105        {
    106106            $guidantCustomFields = array();
    107             foreach ($list_fields as $single_field){
    108                 $guidantCustomFields[] = array("id" => "post_meta_".$single_field['field_id'], "text" => "[Custom Field] ".$single_field['field_label']);
     107            foreach ($list_fields as $single_field) {
     108                $guidantCustomFields[] = array("id" => "post_meta_" . $single_field['field_id'], "text" => "[Custom Field] " . $single_field['field_label']);
    109109            }
    110110            return $this->filterBySearch($guidantCustomFields, $search);
     
    116116            global $wpdb;
    117117            $guidantAllMetaFields = array();
    118             $sql = $wpdb->prepare( "SELECT DISTINCT m.meta_key FROM {$wpdb->prefix}posts as p, {$wpdb->prefix}postmeta as m
     118            $sql = $wpdb->prepare("SELECT DISTINCT m.meta_key FROM {$wpdb->prefix}posts as p, {$wpdb->prefix}postmeta as m
    119119                                    WHERE p.post_type = %s AND p.post_status = 'publish'
    120                                     AND m.post_id = p.ID", array( $post_type) );
     120                                    AND m.post_id = p.ID", array($post_type));
    121121            $listFields = $wpdb->get_results($sql);
    122122
    123123            if (sizeof($listFields) > 0) {
    124124                foreach ($listFields as $single_field) {
    125                     $guidantAllMetaFields[] = array("id" => "post_meta_".$single_field->meta_key, "text" => $single_field->meta_key);
     125                    $guidantAllMetaFields[] = array("id" => "post_meta_" . $single_field->meta_key, "text" => $single_field->meta_key);
    126126                }
    127127            }
     
    129129            return $this->filterBySearch($guidantAllMetaFields, $search);
    130130        }
    131 
    132 
    133131
    134132        public function getAttributeValues($attribute_name, $search = "")
     
    139137
    140138            /* *************** POST ATTRIBUTES *************** */
    141             if($attribute_name == "post_category") {
     139            if ($attribute_name == "post_category") {
    142140                $listCategories = get_categories(array('hide_empty' => false, 'orderby' => 'name', 'order' => 'ASC', 'name__like' => $search));
    143141                if (sizeof($listCategories) > 0) {
     
    148146            }
    149147
    150 
    151 
    152             if($attribute_name == "post_title") {
    153                 $sql = $wpdb->prepare( "SELECT DISTINCT post_title FROM {$wpdb->prefix}posts WHERE post_title LIKE %s ORDER BY ID DESC LIMIT 40", array( '%'.$search.'%' ) );
     148            if ($attribute_name == "post_title") {
     149                $sql = $wpdb->prepare("SELECT DISTINCT post_title FROM {$wpdb->prefix}posts WHERE post_title LIKE %s ORDER BY ID DESC LIMIT 40", array('%' . $search . '%'));
    154150                $listPosts = $wpdb->get_results($sql);
    155151                if (sizeof($listPosts) > 0) {
     
    160156            }
    161157
    162 
    163 
    164             if($attribute_name == "post_type") {
     158            if ($attribute_name == "post_type") {
    165159                $listPostTypes = get_post_types(array('public' => true), 'objects');
    166160                if (sizeof($listPostTypes) > 0) {
    167161                    foreach ($listPostTypes as $singlePostType) {
    168                         $labels = get_post_type_labels( $singlePostType );
    169                         $attributeValues[] = array("id" => $singlePostType->name, "text" => "[".$singlePostType->name."] ".$labels->name);
    170                     }
    171                 }
    172             }
    173 
    174 
    175             if($attribute_name == "post_date") {
    176                 $sql = $wpdb->prepare( "SELECT DATE_FORMAT(post_date, %s) AS p_date FROM {$wpdb->prefix}posts WHERE DATE_FORMAT(post_date, %s) LIKE %s GROUP BY DATE_FORMAT(post_date, %s) ORDER BY post_date DESC LIMIT 10" ,
    177                     array('%Y-%m-%d', '%Y-%m-%d', '%'.$search.'%', '%Y-%m-%d') );
     162                        $labels = get_post_type_labels($singlePostType);
     163                        $attributeValues[] = array("id" => $singlePostType->name, "text" => "[" . $singlePostType->name . "] " . $labels->name);
     164                    }
     165                }
     166            }
     167
     168            if ($attribute_name == "post_date") {
     169                $sql = $wpdb->prepare("SELECT DATE_FORMAT(post_date, %s) AS p_date FROM {$wpdb->prefix}posts WHERE DATE_FORMAT(post_date, %s) LIKE %s GROUP BY DATE_FORMAT(post_date, %s) ORDER BY post_date DESC LIMIT 10",
     170                    array('%Y-%m-%d', '%Y-%m-%d', '%' . $search . '%', '%Y-%m-%d'));
    178171                $listPosts = $wpdb->get_results($sql);
    179172                if (sizeof($listPosts) > 0) {
     
    184177            }
    185178
    186             if($attribute_name == "post_modified") {
    187                 $sql = $wpdb->prepare( "SELECT DATE_FORMAT(post_modified, %s) AS p_date FROM {$wpdb->prefix}posts WHERE DATE_FORMAT(post_modified, %s) LIKE %s GROUP BY DATE_FORMAT(post_modified, %s) ORDER BY post_modified DESC LIMIT 10" ,
    188                     array('%Y-%m-%d', '%Y-%m-%d', '%'.$search.'%', '%Y-%m-%d') );
     179            if ($attribute_name == "post_modified") {
     180                $sql = $wpdb->prepare("SELECT DATE_FORMAT(post_modified, %s) AS p_date FROM {$wpdb->prefix}posts WHERE DATE_FORMAT(post_modified, %s) LIKE %s GROUP BY DATE_FORMAT(post_modified, %s) ORDER BY post_modified DESC LIMIT 10",
     181                    array('%Y-%m-%d', '%Y-%m-%d', '%' . $search . '%', '%Y-%m-%d'));
    189182                $listPosts = $wpdb->get_results($sql);
    190183                if (sizeof($listPosts) > 0) {
     
    195188            }
    196189
    197 
    198             if($attribute_name == "post_author") {
    199                 $listUsers = get_users(array( 'search' => '*'.$search.'*' ));
     190            if ($attribute_name == "post_author") {
     191                $listUsers = get_users(array('search' => '*' . $search . '*'));
    200192                if (sizeof($listUsers) > 0) {
    201193                    foreach ($listUsers as $singleUser) {
     
    205197            }
    206198
    207 
    208             if($attribute_name == "post_tags") {
     199            if ($attribute_name == "post_tags") {
    209200                $listTags = get_tags(array('hide_empty' => false));
    210201                if (sizeof($listTags) > 0) {
     
    217208            /* *************** WOOCOMMERCE ATTRIBUTES *************** */
    218209
    219             if($attribute_name == "woocommerce_category") {
     210            if ($attribute_name == "woocommerce_category") {
    220211                if (class_exists('WooCommerce')) {
    221212                    $listCategories = get_terms('product_cat', array('hide_empty' => false, 'orderby' => 'name', 'order' => 'ASC', 'name__like' => $search));
     
    228219            }
    229220
    230 
    231             if($attribute_name == "woocommerce_tags") {
    232                 if (class_exists('WooCommerce')) {
    233                     $sql = $wpdb->prepare( "SELECT terms.name as tag FROM {$wpdb->prefix}posts as posts, {$wpdb->prefix}terms as terms,
     221            if ($attribute_name == "woocommerce_tags") {
     222                if (class_exists('WooCommerce')) {
     223                    $sql = $wpdb->prepare("SELECT terms.name as tag FROM {$wpdb->prefix}posts as posts, {$wpdb->prefix}terms as terms,
    234224                                                    {$wpdb->prefix}term_relationships as relationship, {$wpdb->prefix}term_taxonomy as taxonomies
    235                                                     WHERE posts.post_type = 'product' AND posts.post_status = 'publish' 
     225                                                    WHERE posts.post_type = 'product' AND posts.post_status = 'publish'
    236226                                                    AND relationship.object_id = posts.ID AND taxonomies.term_taxonomy_id = relationship.term_taxonomy_id
    237                                                     AND taxonomies.taxonomy = 'product_tag' AND terms.term_id = taxonomies.term_id AND terms.name LIKE %s GROUP BY terms.name LIMIT 10", array( '%'.$search.'%' ) );
     227                                                    AND taxonomies.taxonomy = 'product_tag' AND terms.term_id = taxonomies.term_id AND terms.name LIKE %s GROUP BY terms.name LIMIT 10", array('%' . $search . '%'));
    238228                    $listTags = $wpdb->get_results($sql);
    239229                    if (sizeof($listTags) > 0) {
     
    245235            }
    246236
    247             if($attribute_name == "woocommerce_product") {
    248                 if (class_exists('WooCommerce')) {
    249                     $sql = $wpdb->prepare( "SELECT ID, post_title FROM {$wpdb->prefix}posts WHERE post_type = 'product' AND post_status = 'publish' AND post_title LIKE %s ORDER BY ID DESC LIMIT 10", array( '%'.$search.'%' ) );
     237            if ($attribute_name == "woocommerce_product") {
     238                if (class_exists('WooCommerce')) {
     239                    $sql = $wpdb->prepare("SELECT ID, post_title FROM {$wpdb->prefix}posts WHERE post_type = 'product' AND post_status = 'publish' AND post_title LIKE %s ORDER BY ID DESC LIMIT 10", array('%' . $search . '%'));
    250240                    $listPosts = $wpdb->get_results($sql);
    251241                    if (sizeof($listPosts) > 0) {
     
    257247            }
    258248
    259             if($attribute_name == "woocommerce_price") {
    260                 if (class_exists('WooCommerce')) {
    261                     $sql = $wpdb->prepare( "SELECT meta.meta_value as price FROM {$wpdb->prefix}posts as posts, {$wpdb->prefix}postmeta as meta WHERE posts.post_type = 'product'
    262                                                     AND posts.post_status = 'publish' AND meta.post_id = posts.ID AND meta.meta_key = '_price' AND meta.meta_value LIKE %s GROUP BY meta.meta_value LIMIT 10", array( '%'.$search.'%' ) );
     249            if ($attribute_name == "woocommerce_price") {
     250                if (class_exists('WooCommerce')) {
     251                    $sql = $wpdb->prepare("SELECT meta.meta_value as price FROM {$wpdb->prefix}posts as posts, {$wpdb->prefix}postmeta as meta WHERE posts.post_type = 'product'
     252                                                    AND posts.post_status = 'publish' AND meta.post_id = posts.ID AND meta.meta_key = '_price' AND meta.meta_value LIKE %s GROUP BY meta.meta_value LIMIT 10", array('%' . $search . '%'));
    263253                    $listPrices = $wpdb->get_results($sql);
    264254                    if (sizeof($listPrices) > 0) {
     
    270260            }
    271261
    272             if($attribute_name == "woocommerce_sale_price") {
    273                 if (class_exists('WooCommerce')) {
    274                     $sql = $wpdb->prepare( "SELECT meta.meta_value as sale_price FROM {$wpdb->prefix}posts as posts, {$wpdb->prefix}postmeta as meta WHERE posts.post_type = 'product'
    275                                                     AND posts.post_status = 'publish' AND meta.post_id = posts.ID AND meta.meta_key = '_sale_price' AND meta.meta_value LIKE %s GROUP BY meta.meta_value LIMIT 10", array( '%'.$search.'%' ) );
     262            if ($attribute_name == "woocommerce_sale_price") {
     263                if (class_exists('WooCommerce')) {
     264                    $sql = $wpdb->prepare("SELECT meta.meta_value as sale_price FROM {$wpdb->prefix}posts as posts, {$wpdb->prefix}postmeta as meta WHERE posts.post_type = 'product'
     265                                                    AND posts.post_status = 'publish' AND meta.post_id = posts.ID AND meta.meta_key = '_sale_price' AND meta.meta_value LIKE %s GROUP BY meta.meta_value LIMIT 10", array('%' . $search . '%'));
    276266                    $listPrices = $wpdb->get_results($sql);
    277267                    if (sizeof($listPrices) > 0) {
     
    283273            }
    284274
    285             if($attribute_name == "woocommerce_regular_price") {
    286                 if (class_exists('WooCommerce')) {
    287                     $sql = $wpdb->prepare( "SELECT meta.meta_value as regular_price FROM {$wpdb->prefix}posts as posts, {$wpdb->prefix}postmeta as meta WHERE posts.post_type = 'product'
    288                                                     AND posts.post_status = 'publish' AND meta.post_id = posts.ID AND meta.meta_key = '_regular_price' AND meta.meta_value LIKE %s GROUP BY meta.meta_value LIMIT 10", array( '%'.$search.'%' ) );
     275            if ($attribute_name == "woocommerce_regular_price") {
     276                if (class_exists('WooCommerce')) {
     277                    $sql = $wpdb->prepare("SELECT meta.meta_value as regular_price FROM {$wpdb->prefix}posts as posts, {$wpdb->prefix}postmeta as meta WHERE posts.post_type = 'product'
     278                                                    AND posts.post_status = 'publish' AND meta.post_id = posts.ID AND meta.meta_key = '_regular_price' AND meta.meta_value LIKE %s GROUP BY meta.meta_value LIMIT 10", array('%' . $search . '%'));
    289279                    $listPrices = $wpdb->get_results($sql);
    290280                    if (sizeof($listPrices) > 0) {
     
    296286            }
    297287
    298             if($attribute_name == "woocommerce_rating") {
    299                 if (class_exists('WooCommerce')) {
    300                     $sql = $wpdb->prepare( "SELECT meta.meta_value as average_rating FROM {$wpdb->prefix}posts as posts, {$wpdb->prefix}postmeta as meta WHERE posts.post_type = 'product'
    301                                                     AND posts.post_status = 'publish' AND meta.post_id = posts.ID AND meta.meta_key = '_wc_average_rating' AND meta.meta_value LIKE %s GROUP BY meta.meta_value LIMIT 10", array( '%'.$search.'%' ) );
     288            if ($attribute_name == "woocommerce_rating") {
     289                if (class_exists('WooCommerce')) {
     290                    $sql = $wpdb->prepare("SELECT meta.meta_value as average_rating FROM {$wpdb->prefix}posts as posts, {$wpdb->prefix}postmeta as meta WHERE posts.post_type = 'product'
     291                                                    AND posts.post_status = 'publish' AND meta.post_id = posts.ID AND meta.meta_key = '_wc_average_rating' AND meta.meta_value LIKE %s GROUP BY meta.meta_value LIMIT 10", array('%' . $search . '%'));
    302292                    $listPrices = $wpdb->get_results($sql);
    303293                    if (sizeof($listPrices) > 0) {
     
    309299            }
    310300
    311             if($attribute_name == "woocommerce_stock_status") {
    312                 if (class_exists('WooCommerce')) {
    313                     $sql = $wpdb->prepare( "SELECT meta.meta_value as stock_status FROM {$wpdb->prefix}posts as posts, {$wpdb->prefix}postmeta as meta WHERE posts.post_type = 'product'
    314                                                     AND posts.post_status = 'publish' AND meta.post_id = posts.ID AND meta.meta_key = '_stock_status' AND meta.meta_value LIKE %s GROUP BY meta.meta_value LIMIT 10", array( '%'.$search.'%' ) );
     301            if ($attribute_name == "woocommerce_stock_status") {
     302                if (class_exists('WooCommerce')) {
     303                    $sql = $wpdb->prepare("SELECT meta.meta_value as stock_status FROM {$wpdb->prefix}posts as posts, {$wpdb->prefix}postmeta as meta WHERE posts.post_type = 'product'
     304                                                    AND posts.post_status = 'publish' AND meta.post_id = posts.ID AND meta.meta_key = '_stock_status' AND meta.meta_value LIKE %s GROUP BY meta.meta_value LIMIT 10", array('%' . $search . '%'));
    315305                    $listPrices = $wpdb->get_results($sql);
    316306                    if (sizeof($listPrices) > 0) {
     
    322312            }
    323313
    324             if($attribute_name == "woocommerce_attributes") {
    325                 if (class_exists('WooCommerce')) {
    326 
    327                     $sql = $wpdb->prepare( "SELECT attributes.attribute_name as attribute_slug FROM {$wpdb->prefix}woocommerce_attribute_taxonomies as attributes", array() );
     314            if ($attribute_name == "woocommerce_attributes") {
     315                if (class_exists('WooCommerce')) {
     316
     317                    $sql = $wpdb->prepare("SELECT attributes.attribute_name as attribute_slug FROM {$wpdb->prefix}woocommerce_attribute_taxonomies as attributes", array());
    328318                    $listAttributes = $wpdb->get_results($sql);
    329319                    if (sizeof($listAttributes) > 0) {
    330320                        foreach ($listAttributes as $singleAttribute) {
    331                             $sql = $wpdb->prepare( "SELECT terms.slug as slug, terms.name as name FROM {$wpdb->prefix}term_taxonomy as ttaxonomy, {$wpdb->prefix}terms as terms WHERE ttaxonomy.taxonomy = 'pa_".$singleAttribute->attribute_slug."'
    332                                                     AND terms.term_id = ttaxonomy.term_id AND terms.name LIKE %s GROUP BY terms.term_id LIMIT 10", array( '%'.$search.'%' ) );
     321                            $sql = $wpdb->prepare("SELECT terms.slug as slug, terms.name as name FROM {$wpdb->prefix}term_taxonomy as ttaxonomy, {$wpdb->prefix}terms as terms WHERE ttaxonomy.taxonomy = 'pa_" . $singleAttribute->attribute_slug . "'
     322                                                    AND terms.term_id = ttaxonomy.term_id AND terms.name LIKE %s GROUP BY terms.term_id LIMIT 10", array('%' . $search . '%'));
    333323                            $listVariations = $wpdb->get_results($sql);
    334324                            if (sizeof($listVariations) > 0) {
     
    342332            }
    343333
    344             if($attribute_name == "woocommerce_on_sale") {
     334            if ($attribute_name == "woocommerce_on_sale") {
    345335                if (class_exists('WooCommerce')) {
    346336                    $attributeValues[] = array("id" => 1, "text" => "Products On Sale");
     
    349339            }
    350340
    351 
    352 
    353 
    354341            /* *************** WP Guidant Custom Field ATTRIBUTES *************** */
    355342
    356343            if (strpos($attribute_name, 'post_meta_') !== false) {
    357344                $attribute_name = str_replace("post_meta_", "", $attribute_name);
    358                 $sql = $wpdb->prepare( "SELECT meta.meta_value as feild_value FROM {$wpdb->prefix}posts as posts, {$wpdb->prefix}postmeta as meta WHERE posts.post_status = 'publish'
    359                                                 AND meta.post_id = posts.ID AND meta.meta_key = %s AND meta.meta_value LIKE %s GROUP BY meta.meta_value LIMIT 10", array( $attribute_name, '%'.$search.'%' ) );
     345                $sql = $wpdb->prepare("SELECT meta.meta_value as feild_value FROM {$wpdb->prefix}posts as posts, {$wpdb->prefix}postmeta as meta WHERE posts.post_status = 'publish'
     346                                                AND meta.post_id = posts.ID AND meta.meta_key = %s AND meta.meta_value LIKE %s GROUP BY meta.meta_value LIMIT 10", array($attribute_name, '%' . $search . '%'));
    360347                $listValues = $wpdb->get_results($sql);
    361348                if (sizeof($listValues) > 0) {
     
    369356        }
    370357
    371 
    372 
    373358    }
    374359}
  • guidant/trunk/readme.txt

    r2807738 r2878617  
    289289== Changelog ==
    290290
     291= 1.0.9 =
     2921. Improved: Performance of the plugin has been improved.
     293
    291294= 1.0.8 =
    2922951. Fixed: Issues with filtering WooCommerce Categories having unicode text as Category Title.
Note: See TracChangeset for help on using the changeset viewer.