{"id":991,"date":"2021-09-27T12:57:00","date_gmt":"2021-09-27T12:57:00","guid":{"rendered":"https:\/\/feeder.co\/help\/?p=991"},"modified":"2021-09-27T12:57:02","modified_gmt":"2021-09-27T12:57:02","slug":"must-match-filters","status":"publish","type":"post","link":"https:\/\/feeder.co\/help\/account\/automation\/must-match-filters\/","title":{"rendered":"&#8220;Must match&#8221; filters"},"content":{"rendered":"\n<p>With Feeder you can create really intricate filters for your posts. You can create filters that match on a subset of your feeds, or filters that match on all your feeds. There are also <strong>Exclude<\/strong> filters and <strong>Include<\/strong> filters that change what happens when a filter actually matches (we call it &#8220;holds true&#8221; or &#8220;evaluates to true&#8221;). <\/p>\n\n\n\n<p>This can cause some headaches when combining the global filters and regular filters. The global Exclude filter is particularly affected by this.<\/p>\n\n\n\n<p>This is why we created a setting called &#8220;Advanced: Must always be true&#8221;.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/downloads.intercomcdn.com\/i\/o\/393532274\/1f55c6d2fff4cec5f0ccab4e\/image.png\" alt=\"\"\/><\/figure>\n\n\n\n<p>It relates to the boolean aspect of filters. For a post to be let through or stay &#8220;unfiltered&#8221;, any filters for that post can evaluate to &#8220;true&#8221;.<\/p>\n\n\n\n<p>So if you have filter A, B, C that all match on Feed #1, and a new post comes in to Feed #1, if either filter A, B or C evaluates to &#8220;true&#8221; the post is let through. This is usually not what you want with global filters, so we create two types of filters. The &#8220;Must match&#8221; and &#8220;Any match&#8221;. If you toggle that setting to &#8220;Must always be true&#8221;, the filter falls into the &#8220;Must match&#8221; category.<\/p>\n\n\n\n<p>An example:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Filter A: Say you want to EXCLUDE the word \"Ford\" on all feeds (Feed #1, #2 and #3)\nFilter B: you want to INCLUDE the word \"China\" on a specific feed (Feed #1).<\/pre>\n\n\n\n<p>If both filters are &#8220;any match&#8221; and a post comes in on Feed #1, if either Filter A or Filter B hold true, for example the title is &#8220;Ford eyes the China in Q4 2021&#8221;.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Filter A is false: It contains Ford\nFilter B is true: It contains China<\/pre>\n\n\n\n<p>So the question Feeder asks:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Does either Filter A OR Filter B evaluate to true? If so, keep the post in the list.<\/pre>\n\n\n\n<p>Filter B is true so yes, include it and alert me about it.<\/p>\n\n\n\n<p>But with the &#8220;Must match&#8221; setting on Filter A the question becomes:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Does Filter A evaluate to true? If true, keep going<br>THEN<br>Does Filter B evaluate to true? If yes, keep<\/pre>\n\n\n\n<p>So in that case the post is excluded.<\/p>\n\n\n\n<p>In equation form it goes from being<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Should include = FilterA OR FilterB OR FilterX<\/pre>\n\n\n\n<p>to<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Should include = (FilterMustA AND FilterMustB And FilterMustX) AND (FilterAnyA OR FilterAnyB OR FilterAnyX)<\/pre>\n\n\n\n<p>It&#8217;s a tricky problem to wrap one&#8217;s mind around, which is why we&#8217;re always available for help at <a href=\"mailto:support@feeder.co\">support@feeder.co<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>With Feeder you can create really intricate filters for your posts. You can create filters that match on a subset of your feeds, or filters that match on all your feeds. There are also Exclude filters and Include filters that change what happens when a filter actually matches (we call it &#8220;holds true&#8221; or &#8220;evaluates [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[206],"tags":[],"yst_prominent_words":[],"class_list":["post-991","post","type-post","status-publish","format-standard","hentry","category-automation"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p893aM-fZ","_links":{"self":[{"href":"https:\/\/feeder.co\/help\/wp-json\/wp\/v2\/posts\/991","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/feeder.co\/help\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/feeder.co\/help\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/feeder.co\/help\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/feeder.co\/help\/wp-json\/wp\/v2\/comments?post=991"}],"version-history":[{"count":1,"href":"https:\/\/feeder.co\/help\/wp-json\/wp\/v2\/posts\/991\/revisions"}],"predecessor-version":[{"id":992,"href":"https:\/\/feeder.co\/help\/wp-json\/wp\/v2\/posts\/991\/revisions\/992"}],"wp:attachment":[{"href":"https:\/\/feeder.co\/help\/wp-json\/wp\/v2\/media?parent=991"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/feeder.co\/help\/wp-json\/wp\/v2\/categories?post=991"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/feeder.co\/help\/wp-json\/wp\/v2\/tags?post=991"},{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/feeder.co\/help\/wp-json\/wp\/v2\/yst_prominent_words?post=991"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}