diff --git a/changelog.txt b/changelog.txt
index 5a82bf16c704465f3157e0b1e3256a4bf714da90..b2f9dcf3fa2ab2bff3a834c6f54d5fe2b5b245b2 100644
--- a/changelog.txt
+++ b/changelog.txt
@@ -1,4 +1,7 @@
 # Changelog
+## [2.4.10] - 2021-10-01
+### Changed
+- Render form data without using echo
 
 ## [2.4.9] - 2021-09-28
 ### Fixed
diff --git a/composer.json b/composer.json
index 42726f4820d31bc8a6f7f26fe7670998b92f8600..45237352e32137aa83c1e52ddaad17daf2c486bd 100644
--- a/composer.json
+++ b/composer.json
@@ -20,7 +20,7 @@
     "ext-curl": "*",
     "ext-json": "*",
     "wpdesk/wp-persistence": "^2.0|^3.0",
-    "wpdesk/wp-view": "^1.1"
+    "wpdesk/wp-view": "^2"
   },
   "require-dev": {
     "phpunit/phpunit": "<7",
diff --git a/templates/form-field.php b/templates/form-field.php
index 375e8233076eaf2b2a43a2f1fd460e529fab9ac2..09a0fe911492c4a6f8c5713b937f83f77c915aa3 100644
--- a/templates/form-field.php
+++ b/templates/form-field.php
@@ -11,13 +11,21 @@
 
 <tr valign="top">
 	<?php if ( $field->has_label() ) : ?>
-		<?php echo $renderer->render( 'form-label', [ 'field' => $field ] );  // phpcs:ignore ?>
+		<?php $renderer->output_render( 'form-label', [ 'field' => $field ] ); ?>
 	<?php endif; ?>
 
 	<td class="forminp">
 		<?php
-		echo $renderer->render( $template_name, [ 'field' => $field, 'renderer' => $renderer, 'name_prefix' => $name_prefix, 'value' => $value ]); // phpcs:ignore
-		?>
+			$renderer->output_render(
+				$template_name,
+				[
+					'field'       => $field,
+					'renderer'    => $renderer,
+					'name_prefix' => $name_prefix,
+					'value'       => $value,
+				]
+			);
+			?>
 
 		<?php if ( $field->has_description() ) : ?>
 			<p class="description"><?php echo wp_kses_post( $field->get_description() ); ?></p>
diff --git a/templates/input-checkbox.php b/templates/input-checkbox.php
index d843e9d7daf2ec275d1c7fc86c6555d6e59427cd..55f544f0d13826047a9ff2bcc918c5ba387aaa33 100644
--- a/templates/input-checkbox.php
+++ b/templates/input-checkbox.php
@@ -10,4 +10,12 @@
 ?>
 
 <?php
-echo $renderer->render( 'input', [ 'field' => $field, 'renderer' => $renderer, 'name_prefix' => $name_prefix, 'value' => $value ] );  // phpcs:ignore;
+$renderer->output_render(
+	'input',
+	[
+		'field'       => $field,
+		'renderer'    => $renderer,
+		'name_prefix' => $name_prefix,
+		'value'       => $value,
+	]
+);
diff --git a/templates/input-date-picker.php b/templates/input-date-picker.php
index 4257825e9fa9b3fd897dbb030388ebfe402f6cff..51e9715717acbc8e41f9cbe8001caf12515072b5 100644
--- a/templates/input-date-picker.php
+++ b/templates/input-date-picker.php
@@ -7,5 +7,12 @@
  * @var string $template_name Real field template.
  */
 
-echo $renderer->render( 'input',[ 'field' => $field, 'renderer' => $renderer, 'name_prefix' => $name_prefix, 'value' => $value ]); // phpcs:ignore
-
+$renderer->output_render(
+	'input',
+	[
+		'field'       => $field,
+		'renderer'    => $renderer,
+		'name_prefix' => $name_prefix,
+		'value'       => $value,
+	]
+);
diff --git a/templates/input-hidden.php b/templates/input-hidden.php
index 41957f038dab13700dc7f2b9c330b87085a2e5c1..7668c7fd3b03d3590e49d8a54c832b24c90675d1 100644
--- a/templates/input-hidden.php
+++ b/templates/input-hidden.php
@@ -9,4 +9,12 @@
 
 ?>
 <?php
-echo $renderer->render( 'input', [ 'field' => $field, 'renderer' => $renderer, 'name_prefix' => $name_prefix, 'value' => $value ] ); // phpcs:ignore
+$renderer->output_render(
+	'input',
+	[
+		'field'       => $field,
+		'renderer'    => $renderer,
+		'name_prefix' => $name_prefix,
+		'value'       => $value,
+	]
+);
diff --git a/templates/input-number.php b/templates/input-number.php
index 55971092502a5540d1fcd0e916c81bf24de84642..51e9715717acbc8e41f9cbe8001caf12515072b5 100644
--- a/templates/input-number.php
+++ b/templates/input-number.php
@@ -7,4 +7,12 @@
  * @var string $template_name Real field template.
  */
 
-echo $renderer->render( 'input', ['field' => $field, 'renderer' => $renderer, 'name_prefix' => $name_prefix,'value' => $value ] ); // phpcs:ignore
+$renderer->output_render(
+	'input',
+	[
+		'field'       => $field,
+		'renderer'    => $renderer,
+		'name_prefix' => $name_prefix,
+		'value'       => $value,
+	]
+);
diff --git a/templates/input-radio.php b/templates/input-radio.php
index 5ba991ff411f355b1b6869d6dbff0c991e232c2f..7668c7fd3b03d3590e49d8a54c832b24c90675d1 100644
--- a/templates/input-radio.php
+++ b/templates/input-radio.php
@@ -9,4 +9,12 @@
 
 ?>
 <?php
-echo $renderer->render( 'input', [ 'field' => $field, 'renderer' => $renderer, 'name_prefix' => $name_prefix, 'value' => $value ] );  // phpcs:ignore
+$renderer->output_render(
+	'input',
+	[
+		'field'       => $field,
+		'renderer'    => $renderer,
+		'name_prefix' => $name_prefix,
+		'value'       => $value,
+	]
+);
diff --git a/templates/input-text.php b/templates/input-text.php
index a45c64c9f643cdb6359f52877b1e39f08f21dd7c..51e9715717acbc8e41f9cbe8001caf12515072b5 100644
--- a/templates/input-text.php
+++ b/templates/input-text.php
@@ -7,4 +7,12 @@
  * @var string $template_name Real field template.
  */
 
-echo $renderer->render( 'input', [ 'field' => $field, 'renderer' => $renderer, 'name_prefix' => $name_prefix, 'value' => $value ] ); // phpcs:ignore
+$renderer->output_render(
+	'input',
+	[
+		'field'       => $field,
+		'renderer'    => $renderer,
+		'name_prefix' => $name_prefix,
+		'value'       => $value,
+	]
+);