diff --git a/application/frontend/components/favourite/favourite.tpl b/application/frontend/components/favourite/favourite.tpl
index 71503970..a43abfe5 100644
--- a/application/frontend/components/favourite/favourite.tpl
+++ b/application/frontend/components/favourite/favourite.tpl
@@ -36,7 +36,7 @@
{* Кнопка добавления/удаления из избранного *}
diff --git a/application/frontend/components/poll/poll.form.item.tpl b/application/frontend/components/poll/poll.form.item.tpl
index 8a763bd5..2593cfe9 100644
--- a/application/frontend/components/poll/poll.form.item.tpl
+++ b/application/frontend/components/poll/poll.form.item.tpl
@@ -9,10 +9,7 @@
*}
{$component = 'ls-poll-form-answer-item'}
-
-{foreach [ 'item', 'index', 'allowRemove', 'showRemove', 'isTemplate' ] as $param}
- {assign var="$param" value=$smarty.local.$param}
-{/foreach}
+{component_define_params params=[ 'item', 'index', 'allowRemove', 'showRemove', 'isTemplate' ]}
{$allowUpdate = $allowUpdate|default:true}
{$allowRemove = $allowRemove|default:true}
diff --git a/application/frontend/components/talk/talk-message-root.tpl b/application/frontend/components/talk/talk-message-root.tpl
index e0cfbb64..a62dfd83 100644
--- a/application/frontend/components/talk/talk-message-root.tpl
+++ b/application/frontend/components/talk/talk-message-root.tpl
@@ -3,12 +3,7 @@
*}
{$component = 'ls-talk-message-root'}
-
-{* Генерируем копии локальных переменных, *}
-{* чтобы их можно было изменять в дочерних шаблонах *}
-{foreach [ 'talk', 'mods', 'classes', 'attributes' ] as $param}
- {assign var="$param" value=$smarty.local.$param}
-{/foreach}
+{component_define_params params=[ 'talk', 'mods', 'classes', 'attributes' ]}
diff --git a/application/frontend/components/topic/topic.tpl b/application/frontend/components/topic/topic.tpl
index 9ce00d7b..aa72a1e7 100644
--- a/application/frontend/components/topic/topic.tpl
+++ b/application/frontend/components/topic/topic.tpl
@@ -8,12 +8,7 @@
*}
{$component = 'ls-topic'}
-
-{* Генерируем копии локальных переменных, *}
-{* чтобы их можно было изменять в дочерних шаблонах *}
-{foreach [ 'topic', 'isPreview', 'isList', 'mods', 'classes', 'attributes' ] as $param}
- {assign var="$param" value=$smarty.local.$param}
-{/foreach}
+{component_define_params params=[ 'topic', 'isPreview', 'isList', 'mods', 'classes', 'attributes' ]}
{$user = $topic->getUser()}
{$type = ($topic->getType()) ? $topic->getType() : $smarty.local.type}
diff --git a/application/frontend/components/user/user-field-choose.tpl b/application/frontend/components/user/user-field-choose.tpl
index 1fb94841..e973efa9 100644
--- a/application/frontend/components/user/user-field-choose.tpl
+++ b/application/frontend/components/user/user-field-choose.tpl
@@ -5,12 +5,7 @@
*}
{$component = 'user-field-choose'}
-
-{* Генерируем копии локальных переменных, *}
-{* чтобы их можно было изменять в дочерних шаблонах *}
-{foreach [ 'name', 'label', 'lang_choose', 'mods', 'classes', 'attributes' ] as $param}
- {assign var="$param" value=$smarty.local.$param}
-{/foreach}
+{component_define_params params=[ 'name', 'label', 'lang_choose', 'mods', 'classes', 'attributes' ]}
{$label = $label|default:{lang 'user.choose.label'}}
{$lang_choose = $lang_choose|default:{lang 'user.choose.choose'}}