You can specify the search terms by taxonomies and tags. It allow several taxonomies and multiple tags to be used in one search. You can use it both as WP shortcode or PHP function. It generates HTML code. You can place several short codes (or use function several times; or both functions and shorcodes) in a single post/page/template/widget/function.
Actually, except "template", all the parameters are the same as in "standard" taxonomy "WP query", so more info can find at WordPress docs.
Taxonomies are not easy matter, so they can be a problem. Got problems? READ the documentation carefully. Still have problems? Read the documentation CAREFULLY... :-)
Nothing special, just a generic installation. No settings needed. In admin area (adds new row "Settings-> KC TaxList") you will find just usage instructions.
Templates
You must create at least one template for this plugin. This is a usual template for your theme (and with theme's settings, if needs), PHP file. It must contain only the "post loop" (see example). Templates must be in the directory of the plugin.
Ask me for custom templates (usually 10-50 USD), if necessary.
Functions
Can be used in themes and plugins.
(HTML)string kc_taxonomylist($options = array('template' => 'template-1.php', 'posts_per_page' => 'INTEGER', 'nopaging' => false, 'relation' => 'AND', 'taxonomy1' => 'taxonomy1', 'field1' => 'slug', 'terms1' => 'terms1', 'include_children1' => '1', 'operator1' => 'IN'));
Short code
Just place the shortcode anywhere in page or post.
[kc_taxonomylist template="template-1.php" posts_per_page="INTEGER" nopaging=0 relation="AND" taxonomy1="taxonomy1" field1=slug terms1=terms1 include_children1=1 operator1=IN]
Parameters
template (string) - the filename of needed template.
posts_per_page (int) - number of post to show per page. Use 'posts_per_page'='-1' to show all posts. Note if the query is in a feed, wordpress overwrites this parameter with the stored 'posts_per_rss' option. No default value, not used if missing.
nopaging (boolean) - 0 or 1 - show all posts or use pagination. Default value is 'false' (0), use paging.
relation (string) -'AND' (default) or 'OR' - Shortcode/function takes an array of tax query arguments arrays (it takes an array of arrays). This construction allows you to query multiple taxonomies by using the relation parameter to describe the boolean relationship between the taxonomy queries.
taxonomy1 (string) - Taxonomy slug.
field1 (string) - Select taxonomy term by 'id' or 'slug' (default).
terms1 (int/string/array) - Taxonomy term(s). If it is an integer, this is the term ID. If string - slug. If it is an array, put a string of IDs or slugs with a coma as a delimiter ("term1,term2,term3...").
include_children1 (boolean) - 0 or 1 - Whether or not to include children for the hierarchical taxonomies. Defaults to true (1).
operator1 (string) - Operator to test. Possible values are 'IN' (default), 'NOT IN' and 'AND'.
Supports consecutive taxonomyN-fieldN-termsN-include_childrenN-operatorN sets (N = 1...1000). If taxonomyN or termsN is missing (zero-string), the set is omitted.