如何允许用户按多个标签进行搜索

时间:2014-05-14 作者:Si8

我在wordpress侧边栏中有几个下拉选择选项:

enter image description here

每当用户从任何下拉列表中选择选项时,他们都会被引导到搜索结果页:

http://mywebsite/wp/?post_type=post&taxonomy=category&terms=29&search_type=or&order=title
The29 是所搜索的标记,用户选择了该标记。

我正在用JQuery实现这一功能:

$(\'select\').on(\'change\', function () {
    var url = $(this).val(); // get selected value
    if (url) { // require a URL
        window.location = "http://mywebsite/wp/?post_type=post&taxonomy=category&terms=" + url + "&search_type=or&order=title"; // redirect
    }
    return false;
});
我试图,而不是上面的JQuery,来实现以下功能:

$("#search").click(function(){
    var k = $("#mtsw-form-children-term-ids-10 option:selected").val();
    var m = $("#mtsw-form-children-term-ids-13 option:selected").val();
    var o = $("#mtsw-form-children-term-ids-11 option:selected").val();
    alert("Location: " + k + "\\nSpecialty: " + m + "\\nPhysician: " + o);
            //window.location = ; //SEARCH BASED ON LOCATION, and/or SPECIALTY, and/or PHYSICIAN tags
});
我正在使用多术语选择小部件进行下拉。

我怎么知道我是否能够完成这个搜索?我是Wordpress的新手,所以我正在努力理解起点。

1 个回复
最合适的回答,由SO网友:Tom J Nowell 整理而成

首先,停止重新调整类别和标记的用途,而是使用自定义分类法。这将为您提供:

存档和列表要查看每个分类法的URL,请使用与名称匹配的用户界面,我个人会选择一个具有专业和位置分类法的医生自定义职位类型。然而,我假设这是一种过滤帖子的方法,因此根据这一假设,注册以下分类法:

下一步,扔掉javascript,将界面实现为表单。

<form action="" method="GET">
使用3个选项,选择具有以下名称的输入:

位置专业医师这些选择输入中的选项将具有与每个术语的slug匹配的值。

对于其他参数(如order),请将其放入hidden类型的输入中。

最后添加一个提交按钮并将其标记为“搜索”。您现在应该拥有所需的非js版本。

您还应该拥有这些档案:

示例。com/location/example示例。com/专业/示例。com/medical/example以及您可以使用的以下模板:

分类位置。php分类法。php存档。php等对于每个分类法,在决定要实现哪个分类法时,请参考模板层次结构图。

结束