form = Yoast_Form::get_instance(); } /** * Shows the search results help question mark and help section. * * Used for all the Help sections for indexable objects like post types, taxonomies, or archives. * * @param string|object $post_type The post type to show the search results help for. * @param string $help_text_switch Switch the help text to one that's more appropriate * for the indexable object type the help section is for. * * @return object The help panel instance. */ public function search_results_setting_help( $post_type, $help_text_switch = '' ) { if ( ! is_object( $post_type ) ) { $post_type = get_post_type_object( $post_type ); } /* translators: 1: expands to an indexable object's name, like a post type or taxonomy; 2: expands to noindex; 3: link open tag; 4: link close tag. */ $help_text = esc_html__( 'Not showing %1$s in the search results technically means those will have a %2$s robots meta and will be excluded from XML sitemaps. %3$sMore info on the search results settings%4$s.', 'wordpress-seo' ); if ( $help_text_switch === 'archive' ) { /* translators: 1: expands to an indexable object's name, like a post type or taxonomy; 2: expands to noindex; 3: link open tag; 4: link close tag. */ $help_text = esc_html__( 'Not showing the archive for %1$s in the search results technically means those will have a %2$s robots meta and will be excluded from XML sitemaps. %3$sMore info on the search results settings%4$s.', 'wordpress-seo' ); } $help_panel = new WPSEO_Admin_Help_Panel( // Sometimes the same post type is used more than once in the same page, we need a unique ID though. uniqid( 'noindex-' . $post_type->name ), esc_html__( 'Help on this search results setting', 'wordpress-seo' ), sprintf( $help_text, $post_type->labels->name, 'noindex', '', '' ) ); return $help_panel; } /** * Generates the OpenGraph disabled alert, depending on whether the OpenGraph feature is disabled. * * @param string $type The type of message. Can be altered to homepage, taxonomies or archives. Empty string by default. * * @return string The alert. Returns an empty string if the setting is enabled. */ public function generate_opengraph_disabled_alert( $type = '' ) { $is_enabled = WPSEO_Options::get( 'opengraph', true ); if ( $is_enabled ) { return ''; } $message = $this->generate_opengraph_disabled_alert_text( $type ); if ( empty( $message ) ) { return ''; } $alert = new Alert_Presenter( $message, 'info' ); return sprintf( '
%s
', $alert->present() ); } /** * Generates the OpenGraph disabled alert text. * * @param string $type The type of message. Can be altered to homepage, taxonomies or archives. Empty string by default. * * @return string The alert. Returns an empty string if the setting is enabled. */ private function generate_opengraph_disabled_alert_text( $type ) { if ( $type === 'homepage' ) { return sprintf( /* translators: 1: link open tag; 2: link close tag. */ esc_html__( 'The social appearance settings for your homepage require Open Graph metadata (which is currently disabled). You can enable this in the %1$s‘Social’ settings under the ‘Facebook’ tab%2$s.', 'wordpress-seo' ), '', '' ); } if ( ! YoastSEO()->helpers->product->is_premium() ) { return ''; } if ( $type === '' ) { return sprintf( /* translators: 1: link open tag; 2: link close tag. */ esc_html__( 'The social appearance settings for content types require Open Graph metadata (which is currently disabled). You can enable this in the %1$s‘Social’ settings under the ‘Facebook’ tab%2$s.', 'wordpress-seo' ), '', '' ); } if ( $type === 'taxonomies' ) { return sprintf( /* translators: 1: link open tag; 2: link close tag. */ esc_html__( 'The social appearance settings for taxonomies require Open Graph metadata (which is currently disabled). You can enable this in the %1$s‘Social’ settings under the ‘Facebook’ tab%2$s.', 'wordpress-seo' ), '', '' ); } if ( $type === 'archives' ) { return sprintf( /* translators: 1: link open tag; 2: link close tag. */ esc_html__( 'The social appearance settings for archives require Open Graph metadata (which is currently disabled). You can enable this in the %1$s‘Social’ settings under the ‘Facebook’ tab%2$s.', 'wordpress-seo' ), '', '' ); } return ''; } }