WP_Interactivity_API::data_wp_class_processor
Processes the data-wp-class directive.
It adds or removes CSS classes in the current HTML element based on the evaluation of its associated references.
Метод класса: WP_Interactivity_API{}
Хуков нет.
Возвращает
null. Ничего (null).
Использование
// private - только в коде основоного (родительского) класса $result = $this->data_wp_class_processor( $p, $mode );
- $p(WP_Interactivity_API_Directives_Processor) (обязательный)
- The directives processor instance.
- $mode(строка) (обязательный)
- Whether the processing is entering or exiting the tag.
Список изменений
| С версии 6.5.0 | Введена. |
Код WP_Interactivity_API::data_wp_class_processor() WP Interactivity API::data wp class processor WP 6.9
private function data_wp_class_processor( WP_Interactivity_API_Directives_Processor $p, string $mode ) {
if ( 'enter' === $mode ) {
$all_class_directives = $p->get_attribute_names_with_prefix( 'data-wp-class--' );
$entries = $this->get_directive_entries( $p, 'class' );
foreach ( $entries as $entry ) {
if ( empty( $entry['suffix'] ) ) {
continue;
}
$class_name = isset( $entry['unique_id'] ) && $entry['unique_id']
? "{$entry['suffix']}---{$entry['unique_id']}"
: $entry['suffix'];
if ( empty( $class_name ) ) {
return;
}
$result = $this->evaluate( $entry );
if ( $result ) {
$p->add_class( $class_name );
} else {
$p->remove_class( $class_name );
}
}
}
}