# elementor/3.31.1/modules/atomic-widgets/props-resolver/transformers/image-src-transformer.php

Elementor Website Builder – more than just a page builder, version 3.31.1. 26 lines.

- Page: https://pluginprobe.com/plugins/elementor/3.31.1/code/modules/atomic-widgets/props-resolver/transformers/image-src-transformer.php
- Raw: https://pluginprobe.com/plugins/elementor/3.31.1/raw/modules/atomic-widgets/props-resolver/transformers/image-src-transformer.php
- Modified: 2025-04-28T07:15:16+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/elementor/3.31.1/code/modules/atomic-widgets/props-resolver/transformers/image-src-transformer.php#L10-L20`.

```php
<?php

namespace Elementor\Modules\AtomicWidgets\PropsResolver\Transformers;

use Elementor\Modules\AtomicWidgets\PropsResolver\Props_Resolver_Context;
use Elementor\Modules\AtomicWidgets\PropsResolver\Transformer_Base;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Image_Src_Transformer extends Transformer_Base {

	/**
	 * This transformer (or rather this prop type) exists only to support dynamic images.
	 * Currently, the dynamic tags that return images return it with id & url no matter
	 * what, so we need to keep the same structure in the props.
	 */
	public function transform( $value, Props_Resolver_Context $context ) {
		return [
			'id' => isset( $value['id'] ) ? (int) $value['id'] : null,
			'url' => $value['url'] ?? null,
		];
	}
}

```
