Feed Creator

Filter and merge feeds

What's this?

Filter and/or merge feeds

  1. Enter one or more feed URLs
  2. Specify what to keep and what to remove
  3. Subscribe to the feed in your news reader to get notified of changes

You can also use the resulting feed with other services which take RSS as input, such as our Full-Text RSS and PDF Newspaper tools.

Examples:

  1. Hacker News stories with 'corona' or 'covid' in title
  2. Merge Hacker News and the /r/Technology subreddit feeds
Load parameters
Enable feed cleanup
Remove description
Enable keep filters
Enable remove filters
Remove items without image in description element Remove items without image in media:content element

Show additional options
Order by date

Preview

Result

RSS Feed Subscribe

Subscribe

Feed Control Newsblur Fraidycat Feedbin BazQux Feedly Inoreader The Old Reader RSS Feed
{{ error }}

{{ preview.title }}

  1. [No title]

    {{ item.title }}

    {{ item.title }}

    Date: {{ item.date }}

    {{ item.preview_text }}


Request parameters

When making HTTP requests, you can pass the following parameters to mergefeeds.php (either in a GET request or POST request).

Example 1 - Hacker News stories with 'corona' or 'covid' in title

Example 2 - Merge two feeds: Hacker News feed and the /r/Technology subreddit

The form above uses the same parameters, so if you're usure how to construct a URL, use the form and then examine the RSS feed URL that's produced.

Parameter Value Description
url[] string (URL) One or more feed URLs. If more than one is supplied, the feeds will be merged. At least one URL is required.
url_contains[] string (URL substring) Filter out any feed item whose URL does not contain one of these substrings. This can appear multiple times. Example: /article/
text_contains[] string (word or phrase) Filter out any feed item whose title or description does not contain any of the supplied words or phrases. This can appear multiple times.
strip_if_url[] string Filter out any feed item whose URL contains any of the supplied words or phrases. This can appear multiple times.
strip_if_text[] string Filter out any feed item whose title or description contain any of the supplied words or phrases. This can appear multiple times.
strip_if_no_image 0 (default), 1 If enabled, feed items without an <img> element inside the description will get removed.
strip_if_no_image_enc 0 (default), 1 If enabled, feed items without a <media:content> or <media:thumbnail> image element will get removed.
remove[] string If this text is found in the title or description, it's replaced with an empty string. Useful, for example, to remove the site name from item titles, or anything else you find superfluous. Note: to remove the entire item based on its text, use the text_contains or strip_if_text parameters.
keep_qs_params 1 (default), 0, param1,param2 Determines the query string parameters that get preserved in item URLs. 1 = all preserved, 0 = none preserved. You can also pass individual parameters by name, e.g. 'articleId' to only preserve that parameter. Use a comma to supply more than one, e.g. 'id,category'.
title string The feed title to use in the generated feed.
description 1 (default), 0 By default we'll include item descriptions from source feeds (favouring full content when available). Set this to 0 to omit item descriptions from the output.
max number (limit: 10) The maximum number of items to return. The limit can be changed in the config file.
order feed (default), date By default feed items are kept in the same order as the source feed. Set this to 'date' if you want items ordered by date. Usually this will make no difference (feed items are usually already ordered by publication date), but some feeds will contain items with more recent dates lower down in the feed. Sometimes this is due to updates to older news items. Note: When merging two or more feeds, this is applied independently on each feed. The final merged result will contain feed items ordered by date.
format rss (default), json By default the output will be formatted as RSS 2.0. Set this to JSON if you prefer that.
proxy string Self-hosted use only. If you add proxy servers to the config file, you can pass the name of the proxy server you want to use for this request, e.g. 'rotating-proxy-us'.
saved[] string Saved request parameters. In the config file, you can associate a set of request parameters with a given name. You can then pass that name in the request instead of the request parameters. This is useful if you want to subscribe to a generated feed and then update it later without changing the feed URL.

Required parameters: url must be supplied.