Title: get_feed_link
Published: April 25, 2014
Last modified: February 24, 2026

---

# get_feed_link( string $feed ): string

## In this article

 * [Parameters](https://developer.wordpress.org/reference/functions/get_feed_link/?output_format=md#parameters)
 * [Return](https://developer.wordpress.org/reference/functions/get_feed_link/?output_format=md#return)
 * [Source](https://developer.wordpress.org/reference/functions/get_feed_link/?output_format=md#source)
 * [Hooks](https://developer.wordpress.org/reference/functions/get_feed_link/?output_format=md#hooks)
 * [Related](https://developer.wordpress.org/reference/functions/get_feed_link/?output_format=md#related)
 * [Changelog](https://developer.wordpress.org/reference/functions/get_feed_link/?output_format=md#changelog)

[ Back to top](https://developer.wordpress.org/reference/functions/get_feed_link/?output_format=md#wp--skip-link--target)

Retrieves the permalink for the feed type.

## 󠀁[Parameters](https://developer.wordpress.org/reference/functions/get_feed_link/?output_format=md#parameters)󠁿

 `$feed`stringoptional

Feed type. Possible values include `'rss2'`, `'atom'`.
 Default is the value of 
[get_default_feed()](https://developer.wordpress.org/reference/functions/get_default_feed/).

## 󠀁[Return](https://developer.wordpress.org/reference/functions/get_feed_link/?output_format=md#return)󠁿

 string The feed permalink.

## 󠀁[Source](https://developer.wordpress.org/reference/functions/get_feed_link/?output_format=md#source)󠁿

    ```php
    function get_feed_link( $feed = '' ) {
    	global $wp_rewrite;

    	$permalink = $wp_rewrite->get_feed_permastruct();

    	if ( $permalink ) {
    		if ( str_contains( $feed, 'comments_' ) ) {
    			$feed      = str_replace( 'comments_', '', $feed );
    			$permalink = $wp_rewrite->get_comment_feed_permastruct();
    		}

    		if ( get_default_feed() === $feed ) {
    			$feed = '';
    		}

    		$permalink = str_replace( '%feed%', $feed, $permalink );
    		$permalink = preg_replace( '#/+#', '/', "/$permalink" );
    		$output    = home_url( user_trailingslashit( $permalink, 'feed' ) );
    	} else {
    		if ( empty( $feed ) ) {
    			$feed = get_default_feed();
    		}

    		if ( str_contains( $feed, 'comments_' ) ) {
    			$feed = str_replace( 'comments_', 'comments-', $feed );
    		}

    		$output = home_url( "?feed={$feed}" );
    	}

    	/**
    	 * Filters the feed type permalink.
    	 *
    	 * @since 1.5.0
    	 *
    	 * @param string $output The feed permalink.
    	 * @param string $feed   The feed type. Possible values include 'rss2', 'atom',
    	 *                       or an empty string for the default feed type.
    	 */
    	return apply_filters( 'feed_link', $output, $feed );
    }
    ```

[View all references](https://developer.wordpress.org/reference/files/wp-includes/link-template.php/)
[View on Trac](https://core.trac.wordpress.org/browser/tags/6.9.4/src/wp-includes/link-template.php#L693)
[View on GitHub](https://github.com/WordPress/wordpress-develop/blob/6.9.4/src/wp-includes/link-template.php#L693-L733)

## 󠀁[Hooks](https://developer.wordpress.org/reference/functions/get_feed_link/?output_format=md#hooks)󠁿

 [apply_filters( ‘feed_link’, string $output, string $feed )](https://developer.wordpress.org/reference/hooks/feed_link/)

Filters the feed type permalink.

## 󠀁[Related](https://developer.wordpress.org/reference/functions/get_feed_link/?output_format=md#related)󠁿

| Uses | Description | 
| [user_trailingslashit()](https://developer.wordpress.org/reference/functions/user_trailingslashit/)`wp-includes/link-template.php` |

Retrieves a trailing-slashed string if the site is set for adding trailing slashes.

  | 
| [get_default_feed()](https://developer.wordpress.org/reference/functions/get_default_feed/)`wp-includes/feed.php` |

Retrieves the default feed.

  | 
| [WP_Rewrite::get_feed_permastruct()](https://developer.wordpress.org/reference/classes/wp_rewrite/get_feed_permastruct/)`wp-includes/class-wp-rewrite.php` |

Retrieves the feed permalink structure.

  | 
| [WP_Rewrite::get_comment_feed_permastruct()](https://developer.wordpress.org/reference/classes/wp_rewrite/get_comment_feed_permastruct/)`wp-includes/class-wp-rewrite.php` |

Retrieves the comment feed permalink structure.

  | 
| [home_url()](https://developer.wordpress.org/reference/functions/home_url/)`wp-includes/link-template.php` |

Retrieves the URL for the current site where the front end is accessible.

  | 
| [apply_filters()](https://developer.wordpress.org/reference/functions/apply_filters/)`wp-includes/plugin.php` |

Calls the callback functions that have been added to a filter hook.

  |

[Show 2 more](https://developer.wordpress.org/reference/functions/get_feed_link/?output_format=md#)
[Show less](https://developer.wordpress.org/reference/functions/get_feed_link/?output_format=md#)

| Used by | Description | 
| [feed_links()](https://developer.wordpress.org/reference/functions/feed_links/)`wp-includes/general-template.php` |

Displays the links to the general feeds.

  | 
| [get_bloginfo()](https://developer.wordpress.org/reference/functions/get_bloginfo/)`wp-includes/general-template.php` |

Retrieves information about the current site.

  | 
| [the_feed_link()](https://developer.wordpress.org/reference/functions/the_feed_link/)`wp-includes/link-template.php` |

Displays the permalink for the feed type.

  | 
| [redirect_canonical()](https://developer.wordpress.org/reference/functions/redirect_canonical/)`wp-includes/canonical.php` |

Redirects incoming links to the proper URL based on the site url.

  |

## 󠀁[Changelog](https://developer.wordpress.org/reference/functions/get_feed_link/?output_format=md#changelog)󠁿

| Version | Description | 
| [1.5.0](https://developer.wordpress.org/reference/since/1.5.0/) | Introduced. |

## User Contributed Notes

You must [log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Ffunctions%2Fget_feed_link%2F)
before being able to contribute a note or feedback.