diff --git a/layouts/joomla/form/field/hidden.php b/layouts/joomla/form/field/hidden.php
new file mode 100644
index 0000000000000..feaf316ee7af6
--- /dev/null
+++ b/layouts/joomla/form/field/hidden.php
@@ -0,0 +1,54 @@
+ section in form XML.
+ * @var boolean $hidden Is this field hidden in the form?
+ * @var string $hint Placeholder for the field.
+ * @var string $id DOM id of the field.
+ * @var string $label Label of the field.
+ * @var string $labelclass Classes to apply to the label.
+ * @var boolean $multiple Does this field support multiple values?
+ * @var string $name Name of the input field.
+ * @var string $onchange Onchange attribute for the field.
+ * @var string $onclick Onclick attribute for the field.
+ * @var string $pattern Pattern (Reg Ex) of value of the form field.
+ * @var boolean $readonly Is this field read only?
+ * @var boolean $repeat Allows extensions to duplicate elements.
+ * @var boolean $required Is this field required?
+ * @var integer $size Size attribute of the input.
+ * @var boolean $spellcheck Spellcheck state for the form field.
+ * @var string $validate Validation rules to apply.
+ * @var string $value Value attribute of the field.
+ * @var array $checkedOptions Options that will be set as checked.
+ * @var boolean $hasValue Has this field a value assigned?
+ * @var array $options Options available for this field.
+ * @var array $inputType Options available for this field.
+ */
+
+// Initialize some field attributes.
+$class = !empty($class) ? ' class="' . $class . '"' : '';
+$disabled = $disabled ? ' disabled' : '';
+$onchange = $onchange ? ' onchange="' . $onchange . '"' : '';
+?>
+ />
diff --git a/libraries/joomla/form/fields/hidden.php b/libraries/joomla/form/fields/hidden.php
index 1b72afef6d151..e4834b646e49c 100644
--- a/libraries/joomla/form/fields/hidden.php
+++ b/libraries/joomla/form/fields/hidden.php
@@ -26,6 +26,14 @@ class JFormFieldHidden extends JFormField
*/
protected $type = 'Hidden';
+ /**
+ * Name of the layout being used to render the field
+ *
+ * @var string
+ * @since 3.7
+ */
+ protected $layout = 'joomla.form.field.hidden';
+
/**
* Method to get the field input markup.
*
@@ -35,14 +43,19 @@ class JFormFieldHidden extends JFormField
*/
protected function getInput()
{
- // Initialize some field attributes.
- $class = !empty($this->class) ? ' class="' . $this->class . '"' : '';
- $disabled = $this->disabled ? ' disabled' : '';
-
- // Initialize JavaScript field attributes.
- $onchange = $this->onchange ? ' onchange="' . $this->onchange . '"' : '';
+ // Trim the trailing line in the layout file
+ return rtrim($this->getRenderer($this->layout)->render($this->getLayoutData()), PHP_EOL);
+ }
- return '';
+ /**
+ * Method to get the data to be passed to the layout for rendering.
+ *
+ * @return array
+ *
+ * @since 3.7
+ */
+ protected function getLayoutData()
+ {
+ return parent::getLayoutData();
}
}