,I g O] X?s Ӫ g u\HӪ T%%spӪ (ߴG@ CEpӪ ~r @ fEEpӪ >EpӪ IOdzG@ ྪ d @ ч dj08C I @ g O] ` 80 X?sԪ g u\8Ԫ p0 T%%s`Ԫ G@ CEpԪ +Lk @ fEEpԪ >EpԪ IOdzG@ d @ ч dj0EÀ 6I g O] @ 0 X?s ժ g u\(ժ 1 T%%sPժ ߴG@ CEpxժ @ fEEpժ >Epժ IOdzG@ @ d @ @@ ч `@ dj0GC I @ g O] @ 1 X?sժ g u\֪ 1 T%%s@֪ W=`2G@ CEph֪ ٕz @ fEEp֪ >Ep֪ IOdzG@ @ d @ @ ч A dj0@À I A g O] @A 02 X?s֪ g u\ת h2 T%%s0ת ߴG@ CEpXת @ fEEpת >Epת IOdzG@ `A d @ A ч A dj0BC ʾI A g O] A 2 X?sת g u\ת 3 T%%s ت |HߴG@ CEpHت xܙ @ fEEppت >Epت IOdzG@ B d @ B ч @B dj0OÀ I `B !g O] B 3 X?sت !g u\ت ( $this->get_queried_post_type() ); $this->redirect_feed( $url, 'We disable post type feeds for performance reasons.' ); } if ( \is_search() && $this->is_true( 'remove_feed_search' ) ) { $url = \trailingslashit( \home_url() ) . '?s=' . \get_search_query(); $this->redirect_feed( $url, 'We disable search RSS feeds for performance reasons.' ); } } /** * Sends a cache control header. * * @param int $expiration The expiration time. */ public function cache_control_header( $expiration ) { \header_remove( 'Expires' ); // The cacheability of the current request. 'public' allows caching, 'private' would not allow caching by proxies like CloudFlare. $cacheability = 'public'; $format = '%1$s, max-age=%2$d, s-maxage=%2$d, stale-while-revalidate=120, stale-if-error=14400'; if ( \is_user_logged_in() ) { $expiration = 0; $cacheability = 'private'; $format = '%1$s, max-age=%2$d'; } \header( \sprintf( 'Cache-Control: ' . $format, $cacheability, $expiration ), true ); } /** * Redirect a feed result to somewhere else. * * @param string $url The location we're redirecting to. * @param string $reason The reason we're redirecting. */ private function redirect_feed( $url, $reason ) { \header_remove( 'Content-Type' ); \header_remove( 'Last-Modified' ); $this->cache_control_header( 7 * \DAY_IN_SECONDS ); \wp_safe_redirect( $url, 301, 'Yoast SEO: ' . $reason ); exit; } /** * Retrieves the queried post type. * * @return string The queried post type. */ private function get_queried_post_type() { $post_type = \get_query_var( 'post_type' ); if ( \is_array( $post_type ) ) { $post_type = \reset( $post_type ); } return $post_type; } /** * Checks if the value of an option is set to true. * * @param string $option_name The option name. * * @return bool */ private function is_true( $option_name ) { return $this->options_helper->get( $option_name ) === true; } }