Plugin Directory

Changeset 3332855


Ignore:
Timestamp:
07/23/2025 11:44:15 AM (8 months ago)
Author:
zarhasan
Message:

Release v1.1.7 to trunk.

Location:
fast-fuzzy-search/trunk
Files:
1 added
8 edited

Legend:

Unmodified
Added
Removed
  • fast-fuzzy-search/trunk/css/admin.output.css

    r3277206 r3332855  
    6969}
    7070
     71.\!mt-8 {
     72    margin-top: 2rem !important;
     73}
     74
    7175.mb-16 {
    7276    margin-bottom: 4rem;
     
    97101}
    98102
     103.mt-0 {
     104    margin-top: 0px;
     105}
     106
    99107.mt-1 {
    100108    margin-top: 0.25rem;
     
    111119.mt-8 {
    112120    margin-top: 2rem;
    113 }
    114 
    115 .mt-0 {
    116     margin-top: 0px;
    117 }
    118 
    119 .\!mt-8 {
    120     margin-top: 2rem !important;
    121121}
    122122
     
    158158}
    159159
    160 .\!h-14 {
    161     height: 3.5rem !important;
    162 }
    163 
    164160.\!h-full {
    165161    height: 100% !important;
     
    198194}
    199195
    200 .\!w-14 {
    201     width: 3.5rem !important;
    202 }
    203 
    204196.w-4 {
    205197    width: 1rem;
     
    256248.grow {
    257249    flex-grow: 1;
    258 }
    259 
    260 .transform {
    261     transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    262250}
    263251
     
    429417}
    430418
    431 .\!bg-primary-500 {
    432     background-color: var(--ffs-color-primary-500) !important;
    433 }
    434 
    435419.bg-\[\#2271b1\] {
    436420    --tw-bg-opacity: 1;
     
    500484}
    501485
     486.\!px-12 {
     487    padding-left: 3rem !important;
     488    padding-right: 3rem !important;
     489}
     490
    502491.\!px-6 {
    503492    padding-left: 1.5rem !important;
     
    505494}
    506495
     496.\!py-4 {
     497    padding-top: 1rem !important;
     498    padding-bottom: 1rem !important;
     499}
     500
    507501.px-1 {
    508502    padding-left: 0.25rem;
     
    520514}
    521515
    522 .px-8 {
    523     padding-left: 2rem;
    524     padding-right: 2rem;
    525 }
    526 
    527516.py-0\.5 {
    528517    padding-top: 0.125rem;
     
    545534}
    546535
    547 .\!px-8 {
    548     padding-left: 2rem !important;
    549     padding-right: 2rem !important;
    550 }
    551 
    552 .\!py-2 {
    553     padding-top: 0.5rem !important;
    554     padding-bottom: 0.5rem !important;
    555 }
    556 
    557 .\!px-16 {
    558     padding-left: 4rem !important;
    559     padding-right: 4rem !important;
    560 }
    561 
    562 .\!py-4 {
    563     padding-top: 1rem !important;
    564     padding-bottom: 1rem !important;
    565 }
    566 
    567 .\!px-12 {
    568     padding-left: 3rem !important;
    569     padding-right: 3rem !important;
    570 }
    571 
    572 .pb-16 {
    573     padding-bottom: 4rem;
    574 }
    575 
    576536.pb-8 {
    577537    padding-bottom: 2rem;
     
    594554}
    595555
    596 .pr-4 {
    597     padding-right: 1rem;
    598 }
    599 
    600556.pt-16 {
    601557    padding-top: 4rem;
     
    606562}
    607563
    608 .pt-8 {
    609     padding-top: 2rem;
    610 }
    611 
    612564.text-left {
    613565    text-align: left;
     
    618570}
    619571
    620 .font-\[\#2271b1\] {
    621     font-family: #2271b1;
     572.\!text-base {
     573    font-size: 1rem !important;
     574    line-height: 1.5rem !important;
    622575}
    623576
     
    661614}
    662615
    663 .\!text-base {
    664     font-size: 1rem !important;
    665     line-height: 1.5rem !important;
    666 }
    667 
    668 .\!text-sm {
    669     font-size: 0.875rem !important;
    670     line-height: 1.25rem !important;
    671 }
    672 
    673616.font-bold {
    674617    font-weight: 700;
     
    703646}
    704647
    705 .\!text-primary-900 {
    706     color: var(--ffs-color-primary-900) !important;
    707 }
    708 
    709 .text-black {
    710     --tw-text-opacity: 1;
    711     color: rgb(0 0 0 / var(--tw-text-opacity, 1));
    712 }
    713 
    714648.text-gray-500 {
    715649    --tw-text-opacity: 1;
     
    773707    --tw-text-opacity: 1;
    774708    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    775 }
    776 
    777 .\!no-underline {
    778     text-decoration-line: none !important;
    779709}
    780710
     
    892822}
    893823
    894 .hover\:\!bg-primary-500:hover {
    895     background-color: var(--ffs-color-primary-500) !important;
    896 }
    897 
    898 .hover\:bg-gray-50:hover {
    899     --tw-bg-opacity: 1;
    900     background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
    901 }
    902 
    903 .hover\:text-\[\#2271b1\]:hover {
    904     --tw-text-opacity: 1;
    905     color: rgb(34 113 177 / var(--tw-text-opacity, 1));
    906 }
    907 
    908 .hover\:text-black:hover {
    909     --tw-text-opacity: 1;
    910     color: rgb(0 0 0 / var(--tw-text-opacity, 1));
    911 }
    912 
    913824.focus\:border-indigo-500:focus {
    914825    --tw-border-opacity: 1;
     
    916827}
    917828
    918 .focus\:\!bg-primary-500:focus {
    919     background-color: var(--ffs-color-primary-500) !important;
    920 }
    921 
    922829.focus\:outline-none:focus {
    923830    outline: 2px solid transparent;
     
    949856    }
    950857
    951     .sm\:px-16 {
    952         padding-left: 4rem;
    953         padding-right: 4rem;
    954     }
    955 
    956858    .sm\:py-16 {
    957859        padding-top: 4rem;
    958860        padding-bottom: 4rem;
    959     }
    960 
    961     .sm\:py-4 {
    962         padding-top: 1rem;
    963         padding-bottom: 1rem;
    964861    }
    965862
  • fast-fuzzy-search/trunk/css/style.input.css

    r3277206 r3332855  
    162162.fast-fuzzy-search--minimal-light .fast-fuzzy-search__input,
    163163.fast-fuzzy-search--minimal-light .fast-fuzzy-search__input::placeholder {
    164     @apply !text-neutral-900;
     164    @apply !text-neutral-600 !text-sm !font-semibold;
    165165}
    166166
     
    182182
    183183.fast-fuzzy-search--minimal-light .fast-fuzzy-search__chip-button {
    184     @apply inline-flex !text-sm gap-2 justify-center items-center transition text-neutral-700 rounded-full border border-solid border-neutral-300 py-1.5 pr-3 pl-3 shrink-0 bg-white no-underline hover:bg-neutral-50;
     184    @apply inline-flex !text-sm gap-2 justify-center items-center transition text-neutral-700 rounded-full border border-solid border-neutral-300 py-1.5 pr-3 pl-3 shrink-0 bg-white no-underline hover:bg-neutral-50 aria-selected:bg-primary-900 aria-selected:text-primary-600 aria-selected:border-primary-600;
    185185}
    186186
     
    264264
    265265.fast-fuzzy-search--minimal-dark .fast-fuzzy-search__chip-button {
    266     @apply inline-flex gap-2 justify-center items-center transition text-neutral-100 rounded-full border border-solid border-neutral-600 py-1.5 pr-3 pl-3 shrink-0 bg-neutral-900 hover:bg-neutral-800;
     266    @apply !text-sm inline-flex gap-2 justify-center items-center transition text-neutral-100 rounded-full border border-solid border-neutral-600 py-1.5 pr-3 pl-3 shrink-0 bg-neutral-900 hover:bg-neutral-800 aria-selected:bg-primary-500 aria-selected:text-white aria-selected:border-primary-300;
    267267}
    268268
  • fast-fuzzy-search/trunk/css/style.output.css

    r3277206 r3332855  
    6969}
    7070
     71.\!mt-8 {
     72    margin-top: 2rem !important;
     73}
     74
    7175.mb-16 {
    7276    margin-bottom: 4rem;
     
    115119.mt-8 {
    116120    margin-top: 2rem;
    117 }
    118 
    119 .\!mt-8 {
    120     margin-top: 2rem !important;
    121121}
    122122
     
    484484}
    485485
     486.\!px-12 {
     487    padding-left: 3rem !important;
     488    padding-right: 3rem !important;
     489}
     490
    486491.\!px-6 {
    487492    padding-left: 1.5rem !important;
     
    489494}
    490495
     496.\!py-4 {
     497    padding-top: 1rem !important;
     498    padding-bottom: 1rem !important;
     499}
     500
    491501.px-1 {
    492502    padding-left: 0.25rem;
     
    504514}
    505515
    506 .px-8 {
    507     padding-left: 2rem;
    508     padding-right: 2rem;
    509 }
    510 
    511516.py-0\.5 {
    512517    padding-top: 0.125rem;
     
    529534}
    530535
    531 .\!px-8 {
    532     padding-left: 2rem !important;
    533     padding-right: 2rem !important;
    534 }
    535 
    536 .\!py-2 {
    537     padding-top: 0.5rem !important;
    538     padding-bottom: 0.5rem !important;
    539 }
    540 
    541 .\!px-16 {
    542     padding-left: 4rem !important;
    543     padding-right: 4rem !important;
    544 }
    545 
    546 .\!py-4 {
    547     padding-top: 1rem !important;
    548     padding-bottom: 1rem !important;
    549 }
    550 
    551 .\!px-12 {
    552     padding-left: 3rem !important;
    553     padding-right: 3rem !important;
    554 }
    555 
    556536.pb-8 {
    557537    padding-bottom: 2rem;
     
    590570}
    591571
    592 .font-\[\#2271b1\] {
    593     font-family: #2271b1;
     572.\!text-base {
     573    font-size: 1rem !important;
     574    line-height: 1.5rem !important;
    594575}
    595576
     
    633614}
    634615
    635 .\!text-base {
    636     font-size: 1rem !important;
    637     line-height: 1.5rem !important;
    638 }
    639 
    640 .\!text-sm {
    641     font-size: 0.875rem !important;
    642     line-height: 1.25rem !important;
    643 }
    644 
    645616.font-bold {
    646617    font-weight: 700;
     
    675646}
    676647
    677 .text-black {
    678     --tw-text-opacity: 1;
    679     color: rgb(0 0 0 / var(--tw-text-opacity, 1));
    680 }
    681 
    682648.text-gray-500 {
    683649    --tw-text-opacity: 1;
     
    741707    --tw-text-opacity: 1;
    742708    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    743 }
    744 
    745 .\!no-underline {
    746     text-decoration-line: none !important;
    747709}
    748710
     
    10611023
    10621024.fast-fuzzy-search--minimal-light .fast-fuzzy-search__input::-moz-placeholder {
     1025    font-size: 0.875rem !important;
     1026    line-height: 1.25rem !important;
     1027    font-weight: 600 !important;
    10631028    --tw-text-opacity: 1 !important;
    1064     color: rgb(23 23 23 / var(--tw-text-opacity, 1)) !important;
     1029    color: rgb(82 82 82 / var(--tw-text-opacity, 1)) !important;
    10651030}
    10661031
    10671032.fast-fuzzy-search--minimal-light .fast-fuzzy-search__input,
    10681033.fast-fuzzy-search--minimal-light .fast-fuzzy-search__input::placeholder {
     1034    font-size: 0.875rem !important;
     1035    line-height: 1.25rem !important;
     1036    font-weight: 600 !important;
    10691037    --tw-text-opacity: 1 !important;
    1070     color: rgb(23 23 23 / var(--tw-text-opacity, 1)) !important;
     1038    color: rgb(82 82 82 / var(--tw-text-opacity, 1)) !important;
    10711039}
    10721040
     
    11551123    --tw-bg-opacity: 1;
    11561124    background-color: rgb(250 250 250 / var(--tw-bg-opacity, 1));
     1125}
     1126
     1127.fast-fuzzy-search--minimal-light .fast-fuzzy-search__chip-button[aria-selected="true"] {
     1128    border-color: var(--ffs-color-primary-600);
     1129    background-color: var(--ffs-color-primary-900);
     1130    color: var(--ffs-color-primary-600);
    11571131}
    11581132
     
    14481422    padding-right: 0.75rem;
    14491423    padding-left: 0.75rem;
     1424    font-size: 0.875rem !important;
     1425    line-height: 1.25rem !important;
    14501426    --tw-text-opacity: 1;
    14511427    color: rgb(245 245 245 / var(--tw-text-opacity, 1));
     
    14601436    --tw-bg-opacity: 1;
    14611437    background-color: rgb(38 38 38 / var(--tw-bg-opacity, 1));
     1438}
     1439
     1440.fast-fuzzy-search--minimal-dark .fast-fuzzy-search__chip-button[aria-selected="true"] {
     1441    border-color: var(--ffs-color-primary-300);
     1442    background-color: var(--ffs-color-primary-500);
     1443    --tw-text-opacity: 1;
     1444    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    14621445}
    14631446
     
    16651648}
    16661649
    1667 .hover\:bg-gray-50:hover {
    1668     --tw-bg-opacity: 1;
    1669     background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
    1670 }
    1671 
    1672 .hover\:text-\[\#2271b1\]:hover {
    1673     --tw-text-opacity: 1;
    1674     color: rgb(34 113 177 / var(--tw-text-opacity, 1));
    1675 }
    1676 
    1677 .hover\:text-black:hover {
    1678     --tw-text-opacity: 1;
    1679     color: rgb(0 0 0 / var(--tw-text-opacity, 1));
    1680 }
    1681 
    16821650.focus\:border-indigo-500:focus {
    16831651    --tw-border-opacity: 1;
     
    17141682    }
    17151683
    1716     .sm\:px-16 {
    1717         padding-left: 4rem;
    1718         padding-right: 4rem;
    1719     }
    1720 
    17211684    .sm\:py-16 {
    17221685        padding-top: 4rem;
    17231686        padding-bottom: 4rem;
    1724     }
    1725 
    1726     .sm\:py-4 {
    1727         padding-top: 1rem;
    1728         padding-bottom: 1rem;
    17291687    }
    17301688
  • fast-fuzzy-search/trunk/fast-fuzzy-search.php

    r3309786 r3332855  
    44 * Plugin URI: https://redoxbird.com/product/fast-fuzzy-search
    55 * Description: A blazing fast and lightweight search engine plugin for your WordPress site.
    6  * Version: 1.1.6
     6 * Version: 1.1.7
    77 * Author: RedOxbird
    88 * Author URI: https://redoxbird.com
     
    1717}
    1818
    19 // Automatically deactivate free plugin if pro plugin is activated (on activation hook)
    20 register_activation_hook(__FILE__, function() {
    21     if (!function_exists('deactivate_plugins')) {
    22         require_once ABSPATH . 'wp-admin/includes/plugin.php';
    23     }
    24 
    25     $pro_plugin = 'fast-fuzzy-search-pro/fast-fuzzy-search.php';
    26     $free_plugin = 'fast-fuzzy-search/fast-fuzzy-search.php';
    27     // If this is the pro plugin and the free plugin is active, deactivate the free plugin
    28     if (basename(__FILE__) === 'fast-fuzzy-search.php' && is_plugin_active($free_plugin)) {
    29         deactivate_plugins($free_plugin);
    30     }
    31 });
     19
    3220
    3321require_once plugin_dir_path(__FILE__) . 'includes/settings-framework.php';
    3422
    3523if (!defined('FAST_FUZZY_SEARCH_VERSION')) {
    36     define('FAST_FUZZY_SEARCH_VERSION', '1.1.6');
     24    define('FAST_FUZZY_SEARCH_VERSION', '1.1.7');
    3725}
    3826if (!defined('FAST_FUZZY_SEARCH_JOIN_SYMBOL')) {
     
    116104        'fast_fuzzy_search_options'
    117105    );
     106
     107    $add_field([
     108        'id' => 'primary_color',
     109        'label' => 'Primary Color',
     110        'type' => 'color_picker',
     111        'default' => '#ff5733',
     112    ]);
     113
     114    $add_field([
     115        'id' => 'type',
     116        'label' => 'Type',
     117        'type' => 'image_radio',
     118        'options' => [
     119            'input-field' => [
     120                'label' => 'Input Field',
     121                'image' => plugin_dir_url( __FILE__ ) . 'media/type-input-field.png',
     122                'pro' => false
     123            ],
     124            'icon-button' => [
     125                'label' => 'Icon Button',
     126                'image' => plugin_dir_url( __FILE__ ) . 'media/type-icon-button.png',
     127                'pro' => false
     128            ],
     129            'button' => [
     130                'label' => 'Button',
     131                'image' => plugin_dir_url( __FILE__ ) . 'media/type-button.png',
     132                'pro' => false
     133            ],
     134            'input-button' => [
     135                'label' => 'Input Button',
     136                'image' => plugin_dir_url( __FILE__ ) . 'media/type-input-field.png',
     137                'pro' => false
     138            ]
     139        ],
     140    ]);
     141
     142    $add_field([
     143        'id' => 'position',
     144        'label' => 'Position',
     145        'type' => 'tabbed_radio',
     146        'options' => [
     147            'bottom-left' => [
     148                'label' => 'Bottom Left',
     149                'template' => '',
     150            ],
     151            'bottom-center' => [
     152                'label' => 'Bottom Center',
     153                'template' => '',
     154            ],
     155            'bottom-right' => [
     156                'label' => 'Bottom Right',
     157                'template' => '',
     158            ]
     159        ],
     160    ]);
     161
     162    $add_field([
     163        'id' => 'placeholder',
     164        'label' => 'Placeholder Text',
     165        'type' => 'text',
     166        'default' => __('Search for something here...', 'fast-fuzzy-search'),
     167    ]);
     168
     169
     170    $add_field([
     171        'id' => 'excluded_post_types',
     172        'label' => 'Exclude Content Types From Search',
     173        'type' => 'checkbox_group',
     174        'options' => fast_fuzzy_search_get_searchable_post_types(),
     175    ]);
    118176
    119177    $add_field([
     
    159217        ],
    160218    ]);
    161 
    162     $add_field([
    163         'id' => 'type',
    164         'label' => 'Type',
    165         'type' => 'image_radio',
    166         'options' => [
    167             'input-field' => [
    168                 'label' => 'Input Field',
    169                 'image' => plugin_dir_url( __FILE__ ) . 'media/type-input-field.png',
    170                 'pro' => false
    171             ],
    172             'icon-button' => [
    173                 'label' => 'Icon Button',
    174                 'image' => plugin_dir_url( __FILE__ ) . 'media/type-icon-button.png',
    175                 'pro' => false
    176             ],
    177             'button' => [
    178                 'label' => 'Button',
    179                 'image' => plugin_dir_url( __FILE__ ) . 'media/type-button.png',
    180                 'pro' => false
    181             ],
    182             'input-button' => [
    183                 'label' => 'Input Button',
    184                 'image' => plugin_dir_url( __FILE__ ) . 'media/type-input-field.png',
    185                 'pro' => false
    186             ]
    187         ],
    188     ]);
    189    
    190     $add_field([
    191         'id' => 'primary_color',
    192         'label' => 'Primary Color',
    193         'type' => 'color_picker',
    194         'default' => '#ff5733',
    195     ]);
    196 
     219   
    197220    $add_field([
    198221        'id' => 'mode',
     
    212235
    213236    $add_field([
    214         'id' => 'position',
    215         'label' => 'Position',
    216         'type' => 'tabbed_radio',
    217         'options' => [
    218             'bottom-left' => [
    219                 'label' => 'Bottom Left',
    220                 'template' => '',
    221             ],
    222             'bottom-center' => [
    223                 'label' => 'Bottom Center',
    224                 'template' => '',
    225             ],
    226             'bottom-right' => [
    227                 'label' => 'Bottom Right',
    228                 'template' => '',
    229             ]
    230         ],
    231     ]);
    232 
    233     $add_field([
    234         'id' => 'placeholder',
    235         'label' => 'Placeholder Text',
    236         'type' => 'text',
    237         'default' => __('Search for something here...', 'fast-fuzzy-search'),
    238     ]);
    239 
    240     $add_field([
    241237        'id' => 'cache_expiration_time',
    242238        'label' => 'Index Cache Expiration Time (in Seconds)',
     
    245241    ]);
    246242
    247     $add_field([
    248         'id' => 'post_types',
    249         'label' => 'Post Types',
    250         'type' => 'checkbox_group',
    251         'options' => fast_fuzzy_search_get_searchable_post_types(),
    252     ]);
     243   
    253244
    254245    $add_field([
     
    273264    function fast_fuzzy_search_get_default_options() {
    274265        return [
    275             'post_types' => array_keys(fast_fuzzy_search_get_searchable_post_types()),
     266            'excluded_post_types' => [],
    276267            'position' => 'bottom-center',
    277268            'aesthetic' => 'minimal-light',
     
    364355        ];
    365356
    366         $post_types = !empty($options['post_types']) ? $options['post_types'] : array_keys(fast_fuzzy_search_get_searchable_post_types()); // Get all post types
    367 
    368         $post_types = array_map(function ($post_type) {
    369             if(post_type_exists( $post_type )) {
    370                 return $post_type;
    371             }
    372         }, $post_types);
     357        // Get all searchable post type slugs
     358        $post_types = array_keys(fast_fuzzy_search_get_searchable_post_types());
     359
     360        // Remove excluded post types
     361        $excluded_post_types = !empty($options['excluded_post_types']) ? $options['excluded_post_types'] : [];
     362        $post_types = array_diff($post_types, $excluded_post_types);
     363
     364        // Ensure only valid post types
     365        $post_types = array_filter($post_types, 'post_type_exists');
    373366
    374367        // Set up the standard WordPress loop
     
    837830        if (isset($options['post_types']) && is_array($options['post_types'])) {
    838831            $sanitized_options['post_types'] = array_map('sanitize_key', $options['post_types']); // sanitize_key for slugs like 'post' or 'page'
     832        }
     833
     834        if (isset($options['excluded_post_types']) && is_array($options['excluded_post_types'])) {
     835            $sanitized_options['excluded_post_types'] = array_map('sanitize_key', $options['excluded_post_types']); // sanitize_key for slugs like 'post' or 'page'
    839836        }
    840837
  • fast-fuzzy-search/trunk/js/main.js

    r3274643 r3332855  
    4141        items: [],
    4242        excludedPostTypes: Alpine.$persist([]),
     43        selectedPostType: null,
    4344        fuzzy: new uFuzzy({
    4445            intraMode: 1,
     
    145146
    146147        searchDebounced() {
    147             if (this.query.length < 2) {
     148            if (this.query.length < 1) {
    148149                this.resultsVisible = false;
    149150                this.searchResults = [];
     
    154155
    155156            let indexes = this.fuzzy.filter(haystack, this.query);
    156             let resultData = indexes.map((idx) => data[idx]).filter((item) => this.excludedPostTypes?.indexOf(item.type) === -1);
     157            let resultData = indexes?.map((idx) => data[idx]).filter((item) => item.type === this.selectedPostType || !this.selectedPostType || !this.selectedPostType.length);
    157158
    158159            if (indexes) {
     
    275276        },
    276277
     278        isPostTypeSelected() {
     279            return this.selectedPostType === this.$el.closest('li').dataset.type;
     280        },
     281
     282        isPostTypeNotSelected() {
     283            return !this.selectedPostType;
     284        },
     285
    277286        hasExcludedPostTypes() {
    278287            return this.excludedPostTypes?.length > 0
     
    280289
    281290        handlePostTypeButtonClick() {
    282             this.excludePostType(this.$el.closest('li').dataset.type);
     291            const type = this.$el.closest('li').dataset.type;
     292            if(!type) {
     293                this.selectedPostType = null;
     294                this.searchDebounced();
     295                return;
     296            };
     297           
     298            this.selectedPostType = this.$el.closest('li').dataset.type;
    283299            this.searchDebounced();
    284300        },
  • fast-fuzzy-search/trunk/languages/fast-fuzzy-search.pot

    r3309786 r3332855  
    33msgid ""
    44msgstr ""
    5 "Project-Id-Version: Fast Fuzzy Search 1.1.6\n"
     5"Project-Id-Version: Fast Fuzzy Search 1.1.7\n"
    66"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/fast-fuzzy-search\n"
    77"Last-Translator: FULL Fast Fuzzy Search <EMAIL@ADDRESS>\n"
     
    1010"Content-Type: text/plain; charset=UTF-8\n"
    1111"Content-Transfer-Encoding: 8bit\n"
    12 "POT-Creation-Date: 2025-06-11T17:33:08+05:30\n"
     12"POT-Creation-Date: 2025-07-23T16:50:27+05:30\n"
    1313"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
    1414"X-Generator: WP-CLI 2.11.0\n"
     
    4040msgstr ""
    4141
    42 #: fast-fuzzy-search.php:114
     42#: fast-fuzzy-search.php:115
    4343msgid "Fast Fuzzy Search Pro"
    4444msgstr ""
    4545
    46 #: fast-fuzzy-search.php:114
    4746#: fast-fuzzy-search.php:115
     47#: fast-fuzzy-search.php:116
    4848msgid "Fast Fuzzy Search"
    4949msgstr ""
    5050
    51 #: fast-fuzzy-search.php:237
    52 #: fast-fuzzy-search.php:279
     51#: fast-fuzzy-search.php:179
     52#: fast-fuzzy-search.php:283
    5353#: template-parts/input-button.php:22
    54 #: template-parts/input-field.php:24
     54#: template-parts/input-field.php:28
    5555msgid "Search for something here..."
    5656msgstr ""
    5757
    58 #: fast-fuzzy-search.php:481
     58#: fast-fuzzy-search.php:487
    5959msgid "Price on request"
    6060msgstr ""
     
    119119msgstr ""
    120120
    121 #: template-parts/input-field.php:124
     121#: template-parts/input-field.php:112
     122msgid "All"
     123msgstr ""
     124
     125#: template-parts/input-field.php:140
    122126msgid "Searching in "
    123127msgstr ""
    124128
    125 #: template-parts/input-field.php:187
     129#: template-parts/input-field.php:203
    126130msgid "Enter search term to find items"
    127131msgstr ""
    128132
    129133#. translators: 1: Up arrow key, 2: Down arrow key, 3: Back arrow key, 4: Letter "E" key
    130 #: template-parts/input-field.php:194
     134#: template-parts/input-field.php:210
    131135msgid "%1$s %2$s to navigate, %3$s to select, and %4$s to close"
    132136msgstr ""
  • fast-fuzzy-search/trunk/readme.txt

    r3309786 r3332855  
    44Tags: woocommerce search, ajax search, live search, fuzzy search, search by sku
    55Requires at least: 5.0 
    6 Tested up to: 6.8
     6Tested up to: 6.9
    77Requires PHP: 7.4 
    8 Stable tag: 1.1.6 
     8Stable tag: 1.1.7 
    99License: GPLv3 or later 
    1010License URI: [https://www.gnu.org/licenses/gpl-3.0.html](https://www.gnu.org/licenses/gpl-3.0.html) 
  • fast-fuzzy-search/trunk/template-parts/input-field.php

    r3274643 r3332855  
    1313    $options = get_option('fast_fuzzy_search_options', fast_fuzzy_search_get_default_options());
    1414};
     15
     16$post_types_keys = array_keys($searchable_post_types);
     17$excluded_post_types = !empty($options['excluded_post_types']) ? $options['excluded_post_types'] : [];
     18$post_types = array_diff($post_types_keys, $excluded_post_types);
    1519
    1620$aesthetic = apply_filters(
     
    9195        class="fast-fuzzy-search__panel w-full h-auto">
    9296
    93         <?php if (count($options['post_types']) > 1) : ?>
     97        <?php if (count($post_types) > 1) : ?>
    9498            <div x-show="doesNotHavePrefix" class="fast-fuzzy-search__post-types">
    95 
    9699                <ul class="list-none !m-0 !p-0 flex justify-start items-center flex-wrap whitespace-nowrap gap-2">
    97                     <?php foreach ($options['post_types'] as $key => $post_type) : if(!post_type_exists($post_type)) { continue; } ?>
    98                         <li data-type="<?php echo esc_attr($post_type); ?>" x-show="isNotExcluded">
     100
     101                    <li>
     102                        <button
     103                            x-on:click="handlePostTypeButtonClick"
     104                            class="fast-fuzzy-search__chip-button"
     105                            x-bind:aria-selected="isPostTypeNotSelected">
     106                            <span
     107                                x-cloak
     108                                class="w-4 h-4 inline-flex justify-center items-center"
     109                                x-show="isPostTypeNotSelected">
     110                                <?php echo wp_kses(fast_fuzzy_search_svg('circle'), fast_fuzzy_search_allowed_svg_tags()); ?>
     111                            </span>
     112                            <?php esc_html_e('All', 'fast-fuzzy-search'); ?>
     113                        </button>
     114                    </li>
     115
     116                    <?php foreach ($post_types as $index => $post_type) : if(!post_type_exists($post_type)) { continue; } ?>
     117                        <li data-type="<?php echo esc_attr($post_type); ?>">
    99118                            <button
    100119                                x-on:click="handlePostTypeButtonClick"
    101                                 class="fast-fuzzy-search__chip-button">
     120                                class="fast-fuzzy-search__chip-button"
     121                                x-bind:aria-selected="isPostTypeSelected">
     122                                <span
     123                                    x-cloak
     124                                    class="w-4 h-4 inline-flex justify-center items-center"
     125                                    x-show="isPostTypeSelected">
     126                                    <?php echo wp_kses(fast_fuzzy_search_svg('circle'), fast_fuzzy_search_allowed_svg_tags()); ?>
     127                                </span>
    102128                                <?php echo esc_html(!empty($searchable_post_types[$post_type]) ? $searchable_post_types[$post_type] : $post_type); ?>
    103 
    104                                 <?php echo wp_kses(fast_fuzzy_search_svg('x', 'w-full h-auto'), fast_fuzzy_search_allowed_svg_tags()); ?>
    105129                            </button>
    106130                        </li>
    107131                    <?php endforeach; ?>
    108 
    109                     <li x-show="hasExcludedPostTypes">
    110                         <button
    111                             x-on:click="handlePostTypePlusClick"
    112                             class="fast-fuzzy-search__chip-button">
    113                             <?php echo wp_kses(fast_fuzzy_search_svg('plus'), fast_fuzzy_search_allowed_svg_tags()); ?>
    114                         </button>
    115                     </li>
    116132                </ul>
    117133            </div>
Note: See TracChangeset for help on using the changeset viewer.