DISCOVERY', NamespacedSimplePie::LOCATOR_AUTODISCOVERY); /** * Local Feed Extension Autodiscovery * @see SimplePie::set_autodiscovery_level() * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::LOCATOR_LOCAL_EXTENSION instead. */ define('SIMPLEPIE_LOCATOR_LOCAL_EXTENSION', NamespacedSimplePie::LOCATOR_LOCAL_EXTENSION); /** * Local Feed Body Autodiscovery * @see SimplePie::set_autodiscovery_level() * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::LOCATOR_LOCAL_BODY instead. */ define('SIMPLEPIE_LOCATOR_LOCAL_BODY', NamespacedSimplePie::LOCATOR_LOCAL_BODY); /** * Remote Feed Extension Autodiscovery * @see SimplePie::set_autodiscovery_level() * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::LOCATOR_REMOTE_EXTENSION instead. */ define('SIMPLEPIE_LOCATOR_REMOTE_EXTENSION', NamespacedSimplePie::LOCATOR_REMOTE_EXTENSION); /** * Remote Feed Body Autodiscovery * @see SimplePie::set_autodiscovery_level() * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::LOCATOR_REMOTE_BODY instead. */ define('SIMPLEPIE_LOCATOR_REMOTE_BODY', NamespacedSimplePie::LOCATOR_REMOTE_BODY); /** * All Feed Autodiscovery * @see SimplePie::set_autodiscovery_level() * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::LOCATOR_ALL instead. */ define('SIMPLEPIE_LOCATOR_ALL', NamespacedSimplePie::LOCATOR_ALL); /** * No known feed type * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::TYPE_NONE instead. */ define('SIMPLEPIE_TYPE_NONE', NamespacedSimplePie::TYPE_NONE); /** * RSS 0.90 * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::TYPE_RSS_090 instead. */ define('SIMPLEPIE_TYPE_RSS_090', NamespacedSimplePie::TYPE_RSS_090); /** * RSS 0.91 (Netscape) * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::TYPE_RSS_091_NETSCAPE instead. */ define('SIMPLEPIE_TYPE_RSS_091_NETSCAPE', NamespacedSimplePie::TYPE_RSS_091_NETSCAPE); /** * RSS 0.91 (Userland) * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::TYPE_RSS_091_USERLAND instead. */ define('SIMPLEPIE_TYPE_RSS_091_USERLAND', NamespacedSimplePie::TYPE_RSS_091_USERLAND); /** * RSS 0.91 (both Netscape and Userland) * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::TYPE_RSS_091 instead. */ define('SIMPLEPIE_TYPE_RSS_091', NamespacedSimplePie::TYPE_RSS_091); /** * RSS 0.92 * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::TYPE_RSS_092 instead. */ define('SIMPLEPIE_TYPE_RSS_092', NamespacedSimplePie::TYPE_RSS_092); /** * RSS 0.93 * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::TYPE_RSS_093 instead. */ define('SIMPLEPIE_TYPE_RSS_093', NamespacedSimplePie::TYPE_RSS_093); /** * RSS 0.94 * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::TYPE_RSS_094 instead. */ define('SIMPLEPIE_TYPE_RSS_094', NamespacedSimplePie::TYPE_RSS_094); /** * RSS 1.0 * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::TYPE_RSS_10 instead. */ define('SIMPLEPIE_TYPE_RSS_10', NamespacedSimplePie::TYPE_RSS_10); /** * RSS 2.0 * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::TYPE_RSS_20 instead. */ define('SIMPLEPIE_TYPE_RSS_20', NamespacedSimplePie::TYPE_RSS_20); /** * RDF-based RSS * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::TYPE_RSS_RDF instead. */ define('SIMPLEPIE_TYPE_RSS_RDF', NamespacedSimplePie::TYPE_RSS_RDF); /** * Non-RDF-based RSS (truly intended as syndication format) * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::TYPE_RSS_SYNDICATION instead. */ define('SIMPLEPIE_TYPE_RSS_SYNDICATION', NamespacedSimplePie::TYPE_RSS_SYNDICATION); /** * All RSS * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::TYPE_RSS_ALL instead. */ define('SIMPLEPIE_TYPE_RSS_ALL', NamespacedSimplePie::TYPE_RSS_ALL); /** * Atom 0.3 * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie::TYPE_ATOM_03 instead. */ define('SIMPLEPIE_TYPE_ATOM_03', NamespacedSimplePie::TYPE_ATOM_03); /** * Atom 1.0 * @deprecated since SimplePie 1.7.0, use \SimplePie\SimplePie:: ) ) ); } return $font_sizes; } /** * Returns the top-level submenu SVG chevron icon. * * @since 5.9.0 * * @return string */ function block_core_navigation_link_render_submenu_icon() { return ''; } /** * Decodes a url if it's encoded, returning the same url if not. * * @since 6.2.0 * * @param string $url The url to decode. * * @return string $url Returns the decoded url. */ function block_core_navigation_link_maybe_urldecode( $url ) { $is_url_encoded = false; $query = parse_url( $url, PHP_URL_QUERY ); $query_params = wp_parse_args( $query ); foreach ( $query_params as $query_param ) { $can_query_param_be_encoded = is_string( $query_param ) && ! empty( $query_param ); if ( ! $can_query_param_be_encoded ) { continue; } if ( rawurldecode( $query_param ) !== $query_param ) { $is_url_encoded = true; break; } } if ( $is_url_encoded ) { return rawurldecode( $url ); } return $url; } /** * Renders the `core/navigation-link` block. * * @since 5.9.0 * * @param array $attributes The block attributes. * @param string $content The saved content. * @param WP_Block $block The parsed block. * * @return string Returns the post content with the legacy widget added. */ function render_block_core_navigation_link( $attributes, $content, $block ) { $navigation_link_has_id = isset( $attributes['id'] ) && is_numeric( $attributes['id'] ); $is_post_type = isset( $attributes['kind'] ) && 'post-type' === $attributes['kind']; $is_post_type = $is_post_type || isset( $attributes['type'] ) && ( 'post' === $attributes['type'] || 'page' === $attributes['type'] ); // Don't render the block's subtree if it is a draft or if the ID does not exist. if ( $is_post_type && $navigation_link_has_id ) { $post = get_post( $attributes['id'] ); if ( ! $post || 'publish' !== $post->post_status ) { return ''; } } // Don't render the block's subtree if it has no label. if ( empty( $attributes['label'] ) ) { return ''; } $font_sizes = block_core_navigation_link_build_css_font_sizes( $block->context ); $classes = array_merge( $font_sizes['css_classes'] ); $style_attribute = $font_sizes['inline_styles']; $css_classes = trim( implode( ' ', $classes ) ); $has_submenu = count( $block->inner_blocks ) > 0; $kind = empty( $attributes['kind'] ) ? 'post_type' : str_replace( '-', '_', $attributes['kind'] ); $is_active = ! empty( $attributes['id'] ) && get_queried_object_id() === (int) $attributes['id'] && ! empty( get_queried_object()->$kind ); if ( is_post_type_archive() ) { $queried_archive_link = get_post_type_archive_link( get_queried_object()->name ); if ( $attributes['url'] === $queried_archive_link ) { $is_active = true; } } $wrapper_attributes = get_block_wrapper_attributes( array( 'class' => $css_classes . ' wp-block-navigation-item' . ( $has_submenu ? ' has-child' : '' ) . ( $is_active ? ' current-menu-item' : '' ), 'style' => $style_attribute, ) ); $html = '