| 开发者 | mhmanavi |
|---|---|
| 更新时间 | 2026年10月30日 01:55 |
| PHP版本: | 8.0 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
Site search covers title, excerpt and content, excluding custom fields and category names. Optional dashboard matching preserves WooCommerce Products list ID and SKU/global identifier searches; variation SKUs find their parent. Filters, permissions and explicit ordering remain. Other WooCommerce search tools keep their own behavior.
Enable Arabic matching and prepare once. Common vowels U+064B-U+0652 are ignored; hamza, madda, distinct Arabic letters and Quranic signs remain. Canonically equivalent forms match. Mixed Persian/Arabic uses this profile, preserving آ/ا. Content stays unchanged. With the option off, Arabic keeps native matching.
After zero results, retry once using Windows Persian key positions and synonyms. At least two letters are needed. Separate numbers/decimals stay unchanged; attached codes and mixed scripts are excluded. Arabic/English and ordinary dashboard searches skip it.
After zero results, correct one unknown 4-24-letter word by one edit or adjacent swap. In Persian and Arabic, three-letter input only allows one missing letter, with another known word of at least three letters in the same result title. Language, types and filters remain. Each title must contain the corrected word. Known words, units, numbers and codes stay exact; ties are skipped. Limits: 5 input parts, 200 characters, 2,048 variants, 32 candidates, one retry. Quotes, exact/sentence requests and dashboard lists skip it; supported live searches can use it. Enable and prepare once; disabling needs no preparation.
Optional title-code prefixes run after zero results: 7823 can find 7823B, M25 can find M25rQ. Mixed prefixes need 3 characters; numeric prefixes need 4 digits. Not infix or SKU search. Codes contain ASCII letters and digits with optional internal hyphens/underscores. Quantities are protected. One code component, 5 input parts, 16 distinct codes/title and 32 candidate codes are allowed; overflow skips expansion. Full known codes stay exact. Other terms and native filters remain. Enable and prepare once.
Enable last-word completion and prepare once. After zero results, lamp p can find lamp park. Only the last word is completed from same-language, published, password-free titles; earlier terms and native filters remain required. One or two letters need another complete non-unit word of at least three letters in the same title; otherwise three letters are needed. Limits: 5 input parts, 200 characters, 32 distinct continuations. Numbers, units and models stay exact. It shares one completion retry with model prefixes; no recursive completions. Quotes, exact/sentence/offset requests and ordinary dashboard lists skip it. Independent of fuzzy matching; preserves the theme’s live-search threshold.
Persian/Arabic yeh/kaf variants, digits and supported quantities match automatically. Ordinary Persian matching also folds آ/ا; Arabic mode preserves them. Prepared public content teaches bounded spaced/joined variants from real half-spaces. For example, نرمافزار matches نرم افزار. Half-spaces typed in the query also work for that request, even if content only uses spaces. Plain separate words are never joined by guesswork. Spacing exceptions in Settings apply immediately. Conflicting boundaries or synonym groups are not merged.
Enable Persian plurals and prepare once. Real half-spaces before final ها/های link گل and گلها/گلهای, including short bases. Evidence links spaced/joined ها/های siblings. Exact forms rank first per field. No other suffixes or guessed endings; exceptions and conflicting synonyms block links. Quotes, units and other languages keep their rules.
Enter 2-10 equivalent phrases, one per line; maximum 500 groups. Choose the search language; * means shared across supported languages. Edit an existing group to add another spelling. Alternatives require all words; gaps are allowed. Quotes stay literal; no recursive chains. No preparation after saving.
Tested with Polylang 3.9.1 and WPML 5.0.2, following query locales and custom language codes. Persian locales such as fa_AF can use Persian matching; Urdu and Pashto are not supported search profiles. Search language differs from dashboard language. All-language queries, untranslated types and WPML language fallback keep native matching. English supports case/punctuation rules, units, synonyms, ranking, statistics and optional close matches. No Persian keyboard rules, translation or stemming; candidates stay language-specific.
After enabling Persian plurals, close matches, model prefixes or last-word completion, or changing dashboard matching, Arabic mode or language context. Other switches need no preparation. Normal search stays available until ready. Progress is estimated. Edits and deletions synchronize automatically; rebuild after imports bypassing WordPress save hooks.
Limits: 200 characters, 8 positive components, 4 expanded positions. Overflow keeps native search and the full input. Quotes retain adjacency in one field and skip synonyms/keyboard correction. WordPress exact=true keeps native matching. Supported: single-site standard WP_Query, including public WordPress/WooCommerce AJAX with filters enabled, explicit published scope and 1-100 results. Live-search requests are recorded separately from results-page searches when statistics are enabled. Settings shows other engines; Test search explains handover. Custom SQL/replacement engines, suppressed filters, private/unbounded AJAX, REST/Store API, multisite, TranslatePress and commercial WooCommerce translation add-ons retain their own behavior. Unknown language providers use native matching. On Multisite, activation is silent; search stays unchanged, with no Yaftino data/jobs created. Plugins screen explains the single-site requirement.
Deactivation keeps data; reactivation reconciles it. Single-site uninstall removes Yaftino data/events, preserving content. Multisite uninstall preserves existing data.