Yoast\WP\SEO\Presenters
Abstract_Indexable_Tag_Presenter{}
Abstract presenter class for indexable tag presentations.
Хуков нет.
Использование
$Abstract_Indexable_Tag_Presenter = new Abstract_Indexable_Tag_Presenter(); // use class methods
Методы
- protected escape_value( $value )
- public present()
Код Abstract_Indexable_Tag_Presenter{} Abstract Indexable Tag Presenter{} Yoast 24.3
abstract class Abstract_Indexable_Tag_Presenter extends Abstract_Indexable_Presenter { public const META_PROPERTY_CONTENT = '<meta property="%2$s" content="%1$s"%3$s />'; public const META_NAME_CONTENT = '<meta name="%2$s" content="%1$s"%3$s />'; public const LINK_REL_HREF = '<link rel="%2$s" href="%1$s"%3$s />'; public const DEFAULT_TAG_FORMAT = self::META_NAME_CONTENT; /** * The tag format including placeholders. * * @var string */ protected $tag_format = self::DEFAULT_TAG_FORMAT; /** * The method of escaping to use. * * @var string */ protected $escaping = 'attribute'; /** * Returns a tag in the head. * * @return string The tag. */ public function present() { $value = $this->get(); if ( ! \is_string( $value ) || $value === '' ) { return ''; } /** * There may be some classes that are derived from this class that do not use the $key property * in their $tag_format string. In that case the key property will simply not be used. */ return \sprintf( $this->tag_format, $this->escape_value( $value ), $this->key, \is_admin_bar_showing() ? ' class="yoast-seo-meta-tag"' : '' ); } /** * Escaped the output. * * @param string $value The desired method of escaping; 'html', 'url' or 'attribute'. * * @return string The escaped value. */ protected function escape_value( $value ) { switch ( $this->escaping ) { case 'html': return \esc_html( $value ); case 'url': return \esc_url( $value, null, 'attribute' ); case 'attribute': default: return \esc_attr( $value ); } } }