[{"data":1,"prerenderedAt":508},["ShallowReactive",2],{"navigation_docs":3,"-essentials-search":93,"-essentials-search-surround":503},[4,26,77],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":25},"Getting Started","i-lucide-rocket","/getting-started","1.getting-started",[10,15,20],{"title":11,"path":12,"stem":13,"icon":14},"Installation","/getting-started/installation","1.getting-started/1.installation","i-lucide-download",{"title":16,"path":17,"stem":18,"icon":19},"Frontend Setup (headless)","/getting-started/frontend-setup","1.getting-started/2.frontend-setup","i-lucide-layout",{"title":21,"path":22,"stem":23,"icon":24},"Public-routes mode","/getting-started/public-routes-mode","1.getting-started/3.public-routes-mode","i-lucide-zap",false,{"title":27,"icon":28,"path":29,"stem":30,"children":31,"page":25},"Essentials","i-lucide-book-open","/essentials","2.essentials",[32,37,42,47,52,57,62,67,72],{"title":33,"path":34,"stem":35,"icon":36},"Blade Components","/essentials/blade-components","2.essentials/1.blade-components","i-lucide-component",{"title":38,"path":39,"stem":40,"icon":41},"Filament Admin","/essentials/filament-admin","2.essentials/2.filament-admin","i-lucide-layout-dashboard",{"title":43,"path":44,"stem":45,"icon":46},"MCP Tools","/essentials/mcp-tools","2.essentials/3.mcp-tools","i-lucide-bot",{"title":48,"path":49,"stem":50,"icon":51},"Configuration","/essentials/configuration","2.essentials/4.configuration","i-lucide-settings",{"title":53,"path":54,"stem":55,"icon":56},"Tags Taxonomy","/essentials/tags","2.essentials/5.tags","i-lucide-hash",{"title":58,"path":59,"stem":60,"icon":61},"MediaLibrary Integration","/essentials/media-library","2.essentials/6.media-library","i-lucide-image",{"title":63,"path":64,"stem":65,"icon":66},"Search","/essentials/search","2.essentials/7.search","i-lucide-search",{"title":68,"path":69,"stem":70,"icon":71},"Schema","/essentials/schema","2.essentials/8.schema","i-lucide-code-2",{"title":73,"path":74,"stem":75,"icon":76},"Listing SEO","/essentials/listing-seo","2.essentials/9.listing-seo","i-lucide-list",{"title":78,"icon":79,"path":80,"stem":81,"children":82,"page":25},"Community","i-lucide-users","/community","4.community",[83,88],{"title":84,"path":85,"stem":86,"icon":87},"Contributing","/community/contributing","4.community/1.contributing","i-lucide-git-pull-request",{"title":89,"path":90,"stem":91,"icon":92},"License","/community/license","4.community/2.license","i-lucide-scale",{"id":94,"title":63,"body":95,"description":496,"extension":497,"links":498,"meta":499,"navigation":500,"path":64,"seo":501,"stem":65,"__hash__":502},"docs/2.essentials/7.search.md",{"type":96,"value":97,"toc":490},"minimark",[98,111,116,137,264,267,271,282,420,423,427,438,441,461,468,472,486],[99,100,101,102,106,107,110],"p",{},"The package ships a ",[103,104,105],"code",{},"Post::search($term)"," query scope and a ",[103,108,109],{},"BlogSearch"," Livewire component.",[112,113,115],"h2",{"id":114},"default-behavior","Default behavior",[99,117,118,120,121,124,125,128,129,132,133,136],{},[103,119,105],{}," does a ",[103,122,123],{},"LIKE"," search across ",[103,126,127],{},"title",", ",[103,130,131],{},"excerpt",", and ",[103,134,135],{},"content",". Works on every database driver out of the box.",[138,139,144],"pre",{"className":140,"code":141,"language":142,"meta":143,"style":143},"language-php shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","$posts = Post::query()\n    ->published()\n    ->search($request->query('q', ''))\n    ->latest('published_at')\n    ->paginate(12);\n","php","",[103,145,146,176,187,227,247],{"__ignoreMap":143},[147,148,151,155,159,162,166,169,173],"span",{"class":149,"line":150},"line",1,[147,152,154],{"class":153},"sMK4o","$",[147,156,158],{"class":157},"sTEyZ","posts ",[147,160,161],{"class":153},"=",[147,163,165],{"class":164},"sBMFI"," Post",[147,167,168],{"class":153},"::",[147,170,172],{"class":171},"s2Zo4","query",[147,174,175],{"class":153},"()\n",[147,177,179,182,185],{"class":149,"line":178},2,[147,180,181],{"class":153},"    ->",[147,183,184],{"class":171},"published",[147,186,175],{"class":153},[147,188,190,192,195,198,201,204,206,209,212,216,218,221,224],{"class":149,"line":189},3,[147,191,181],{"class":153},[147,193,194],{"class":171},"search",[147,196,197],{"class":153},"($",[147,199,200],{"class":157},"request",[147,202,203],{"class":153},"->",[147,205,172],{"class":171},[147,207,208],{"class":153},"(",[147,210,211],{"class":153},"'",[147,213,215],{"class":214},"sfazB","q",[147,217,211],{"class":153},[147,219,220],{"class":153},",",[147,222,223],{"class":153}," ''",[147,225,226],{"class":153},"))\n",[147,228,230,232,235,237,239,242,244],{"class":149,"line":229},4,[147,231,181],{"class":153},[147,233,234],{"class":171},"latest",[147,236,208],{"class":153},[147,238,211],{"class":153},[147,240,241],{"class":214},"published_at",[147,243,211],{"class":153},[147,245,246],{"class":153},")\n",[147,248,250,252,255,257,261],{"class":149,"line":249},5,[147,251,181],{"class":153},[147,253,254],{"class":171},"paginate",[147,256,208],{"class":153},[147,258,260],{"class":259},"sbssI","12",[147,262,263],{"class":153},");\n",[99,265,266],{},"Empty / whitespace-only terms are no-ops — the scope leaves the query unchanged. LIKE wildcards in the term are escaped.",[112,268,270],{"id":269},"override-the-backend","Override the backend",[99,272,273,274,277,278,281],{},"Set ",[103,275,276],{},"search.callback"," in ",[103,279,280],{},"config/ink.php"," to use Postgres FTS, MySQL FULLTEXT, Scout, Meilisearch, or anything else:",[138,283,285],{"className":140,"code":284,"language":142,"meta":143,"style":143},"'search' => [\n    'callback' => function (\\Illuminate\\Database\\Eloquent\\Builder $query, string $term): void {\n        $query->whereRaw(\n            \"to_tsvector('english', title || ' ' || excerpt || ' ' || content) @@ plainto_tsquery('english', ?)\",\n            [$term]\n        );\n    },\n],\n",[103,286,287,301,363,378,392,402,408,414],{"__ignoreMap":143},[147,288,289,291,293,295,298],{"class":149,"line":150},[147,290,211],{"class":153},[147,292,194],{"class":214},[147,294,211],{"class":153},[147,296,297],{"class":153}," =>",[147,299,300],{"class":153}," [\n",[147,302,303,306,309,311,313,317,320,323,326,329,331,334,336,339,342,344,346,349,351,354,357,360],{"class":149,"line":178},[147,304,305],{"class":153},"    '",[147,307,308],{"class":214},"callback",[147,310,211],{"class":153},[147,312,297],{"class":153},[147,314,316],{"class":315},"spNyl"," function",[147,318,319],{"class":153}," (\\",[147,321,322],{"class":157},"Illuminate",[147,324,325],{"class":153},"\\",[147,327,328],{"class":157},"Database",[147,330,325],{"class":153},[147,332,333],{"class":157},"Eloquent",[147,335,325],{"class":153},[147,337,338],{"class":164},"Builder",[147,340,341],{"class":153}," $",[147,343,172],{"class":157},[147,345,220],{"class":153},[147,347,348],{"class":259}," string",[147,350,341],{"class":153},[147,352,353],{"class":157},"term",[147,355,356],{"class":153},"):",[147,358,359],{"class":259}," void",[147,361,362],{"class":153}," {\n",[147,364,365,368,370,372,375],{"class":149,"line":189},[147,366,367],{"class":153},"        $",[147,369,172],{"class":157},[147,371,203],{"class":153},[147,373,374],{"class":171},"whereRaw",[147,376,377],{"class":153},"(\n",[147,379,380,383,386,389],{"class":149,"line":229},[147,381,382],{"class":153},"            \"",[147,384,385],{"class":214},"to_tsvector('english', title || ' ' || excerpt || ' ' || content) @@ plainto_tsquery('english', ?)",[147,387,388],{"class":153},"\"",[147,390,391],{"class":153},",\n",[147,393,394,397,399],{"class":149,"line":249},[147,395,396],{"class":153},"            [$",[147,398,353],{"class":157},[147,400,401],{"class":153},"]\n",[147,403,405],{"class":149,"line":404},6,[147,406,407],{"class":153},"        );\n",[147,409,411],{"class":149,"line":410},7,[147,412,413],{"class":153},"    },\n",[147,415,417],{"class":149,"line":416},8,[147,418,419],{"class":153},"],\n",[99,421,422],{},"Whatever the callback applies becomes the search strategy. Empty terms still short-circuit before the callback fires.",[112,424,426],{"id":425},"livewire-component","Livewire component",[99,428,429,430,433,434,437],{},"Use ",[103,431,432],{},"\u003Clivewire:blog::search />"," anywhere. It reads ",[103,435,436],{},"?q="," from the URL, debounces 400ms, and renders up to 20 matches with an empty state.",[99,439,440],{},"To restyle, publish the view:",[138,442,446],{"className":443,"code":444,"language":445,"meta":143,"style":143},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","php artisan vendor:publish --tag=ink-views\n","bash",[103,447,448],{"__ignoreMap":143},[147,449,450,452,455,458],{"class":149,"line":150},[147,451,142],{"class":164},[147,453,454],{"class":214}," artisan",[147,456,457],{"class":214}," vendor:publish",[147,459,460],{"class":214}," --tag=ink-views\n",[99,462,463,464,467],{},"Then edit ",[103,465,466],{},"resources/views/vendor/ink/livewire/blog-search.blade.php",".",[112,469,471],{"id":470},"seo","SEO",[99,473,474,475,478,479,481,482,485],{},"When the shipped ",[103,476,477],{},"/blog"," route handles ",[103,480,436],{},", the package emits ",[103,483,484],{},"\u003Cmeta name=\"robots\" content=\"noindex,follow\">"," on the search result page. Search queries should not be indexed as separate URLs.",[487,488,489],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}",{"title":143,"searchDepth":178,"depth":178,"links":491},[492,493,494,495],{"id":114,"depth":178,"text":115},{"id":269,"depth":178,"text":270},{"id":425,"depth":178,"text":426},{"id":470,"depth":178,"text":471},"Portable search across blog posts with a config-driven backend hook.","md",null,{},{"icon":66},{"title":63,"description":496},"hZi4khYCCvMpMlQ0WqcqmVbvRa5mgoJL6a2TtP02lJg",[504,506],{"title":58,"path":59,"stem":60,"description":505,"icon":61,"children":-1},"Opt-in featured-image upload via spatie/laravel-medialibrary.",{"title":68,"path":69,"stem":70,"description":507,"icon":71,"children":-1},"Automatic JSON-LD schema emission for posts and listings.",1778707660481]