Files
proelements/modules/attributes/props-resolver/transformers/settings/pro-attributes-transformer.php
T
proelements 872bc6fb57 v4.0.4
2026-05-04 11:47:14 +03:00

35 lines
880 B
PHP

<?php
namespace ElementorPro\Modules\Attributes\PropsResolver\Transformers\Settings;
use Elementor\Modules\AtomicWidgets\PropsResolver\Props_Resolver_Context;
use Elementor\Modules\AtomicWidgets\PropsResolver\Transformer_Base;
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
class Pro_Attributes_Transformer extends Transformer_Base {
public function transform( $value, Props_Resolver_Context $context ) {
if ( ! is_array( $value ) ) {
return null;
}
$result = implode( ' ', array_map( function ( $item ) {
if ( ! $this->is_valid_attribute_item( $item ) ) {
return '';
}
return $item['key'] . '="' . $item['value'] . '"';
}, $value ) );
return $result;
}
private function is_valid_attribute_item( $item ): bool {
return isset( $item['key'], $item['value'] )
&& '' !== $item['key']
&& '' !== $item['value'];
}
}