Yoast\WP\SEO\Dashboard\Application\Filter_Pairs
Filter_Pairs_Repository{}
The repository to get hardcoded filter pairs.
Хуков нет.
Использование
$Filter_Pairs_Repository = new Filter_Pairs_Repository(); // use class methods
Методы
- public __construct(
- public get_taxonomy( string $content_type )
Код Filter_Pairs_Repository{} Filter Pairs Repository{} Yoast 27.3
class Filter_Pairs_Repository {
/**
* The taxonomies collector.
*
* @var Taxonomies_Collector
*/
private $taxonomies_collector;
/**
* All filter pairs.
*
* @var Filter_Pairs_Interface[]
*/
private $filter_pairs;
/**
* The constructor.
*
* @param Taxonomies_Collector $taxonomies_collector The taxonomies collector.
* @param Filter_Pairs_Interface ...$filter_pairs All filter pairs.
*/
public function __construct(
Taxonomies_Collector $taxonomies_collector,
Filter_Pairs_Interface ...$filter_pairs
) {
$this->taxonomies_collector = $taxonomies_collector;
$this->filter_pairs = $filter_pairs;
}
/**
* Returns a taxonomy based on a content type, by looking into hardcoded filter pairs.
*
* @param string $content_type The content type.
*
* @return Taxonomy|null The taxonomy filter.
*/
public function get_taxonomy( string $content_type ): ?Taxonomy {
foreach ( $this->filter_pairs as $filter_pair ) {
if ( $filter_pair->get_filtered_content_type() === $content_type ) {
return $this->taxonomies_collector->get_taxonomy( $filter_pair->get_filtering_taxonomy(), $content_type );
}
}
return null;
}
}