在Umbraco中使用XSLTsearch包实现搜索功能
目标:在网站中使用XSLTsearch包实现搜索功能
实现的结果:
首先要下载好XSLTsearch包(不下载在线安装也可以,我是下载在本地安装的),在Developer->Packages->Install local package中按提示安装好XSLTsearch包,安装好后的结果如下图:
Installed packages显示已安装的Packages
安装好后,自动生成几个文件:XSLT File、Macros(宏)、文档类型、模版、内容的根目录上生成一页名为Search的页。
调用Search文件实现搜索功能,在虽要实现搜索的页面加上例如如下代码:
在action中调用/Search.aspx即可。
默认情况下是采用get方式,这里可以改为post方式,如:
<form method="post" action="/Search.aspx" class="site_search"> <fieldset class="site_search"> <label for="search">Search</label> <input type="text" name="search" id="search" /> <input type="submit" value="search" /> </fieldset> </form>
注意:这里有一个地方要按实际情况来修改的
就是看生成的实际XSLTsearch模版页,里的内容如下图:
要根据MasterPageFile的模版页里的实际的ContenPlaceHolderId来修改。
技巧:不用看模版也可以很方便插入这个ID,在XSLTsearch模版的工具栏中点击如下图标即可很方便地选择ID
选择ID
按如上方法则可实现在需要的页面上加上搜索功能,但是如果想在搜索结果页再进行搜索点击“搜索”按钮后你会发现没反应,原因是在XSLTSearch模版页引用XSLTSearch宏的时候没有加入<form>标签。修改XSLTSearch模版页即可,如下图: