Новость и обратная связь
Новость и обратная связь
Есть новость, в которой кроме контента есть доп. поля.
Хотелось бы чтоб вместо полной новости открывалась форма обратной связи, в которой был бы чекбокс со значениями взятыми из доп. полей.
Это реально сделать без вмешательство в код двига?
Хотелось бы чтоб вместо полной новости открывалась форма обратной связи, в которой был бы чекбокс со значениями взятыми из доп. полей.
Это реально сделать без вмешательство в код двига?
Re: Новость и обратная связь
Должно получится если использовать Formbuilder. Нужно создать шаблон показа полной новости который будет создавать доп поля формы обратной связи, а в форме задать поле типа "Module Interface Field" в которое прописать тег вызова модуля новостей.easmik wrote:Это реально сделать без вмешательство в код двига?
Re: Новость и обратная связь
Большое спасибо за ответ!
Если честно, то я в это не очень понимаю. А можно поподробней?
Если честно, то я в это не очень понимаю. А можно поподробней?
Re: Новость и обратная связь
У Вас есть опыт использования модуля FormBuilder? Мне хотелось бы уточнить, что именно не понятно.easmik wrote:А можно поподробней?
Re: Новость и обратная связь
Есть. Но в создании шаблонов я не силен.
Re: Новость и обратная связь
Плохо. Надо учить Smartyeasmik wrote:Но в создании шаблонов я не силен.

Что надо сделать:
1. Создать форму, где одно из полей будет типа "Module Interface Field". Поле вставляем на то место где будут чекбоксы.
2. В модуле новостей создаём дополнительный шаблон вывода полного текста новости и дополнительные поля для чекбоксов. Оставляем эту часть кода:
Code: Select all
{if isset($entry->fields)}
{foreach from=$entry->fields item='field'}
<div class="NewsDetailField">
{if $field->type == 'file'}
{* this template assumes that every file uploaded is an image of some sort, because News doesn't distinguish *}
<img src="{$entry->file_location}/{$field->value}"/>
{else}
{$field->name}: {eval var=$field->value}
{/if}
</div>
{/foreach}
{/if}
Code: Select all
{foreach from=$items item=entry}
{assign var=MData value=''}
{assign var=Cd value=''}
{foreach from=$FBvalue item=MData}
{assign var=MData value='::'|explode:$MData}
{if $MData[1]==$entry->id}
{assign var=Cd value=' checked="checked"'}
{/if}
{/foreach}
<div class="NewsItem">
{if isset($entry->fields)}
{foreach from=$entry->fields item='field'}
<input type="checkbox" name="{$FBid}[]" value="{eval var=$field->value}" {$cd}="">{$field->name}<br/>
{/foreach}
{/if}
</div>
{/foreach}
4. Переходим в конструктор форм. Редактируем поле типа "Module Interface Field". В поле "Добавить свой тег:" вставляем тег вывода полной новости:
Code: Select all
{News detailtemplate="имя нашего шаблона из п.2"}
Re: Новость и обратная связь
Еще раз огромнейшее спасибо тебе, добрый человек
Учить надо, я согласен. Но это мое хобби, на которое у меня очень мало времени
Сделал как Вы написали, теперь даже можно отправить
Но вот в чем вопрос, а как связать доп. поля новости и чекбоксы в форме обратной связи?
Допустим я добавляю 5 полей (Во вкладке "Добавить определение поля"), теперь они находятся в самом низу при заполнении новости и тоже заполняются. Как мне взять значение с этих полей и вставить в поле где можно нажать чекбокс?
Заранее огромная благодарность!!! Хотя бы за то что прочитали


Сделал как Вы написали, теперь даже можно отправить

Допустим я добавляю 5 полей (Во вкладке "Добавить определение поля"), теперь они находятся в самом низу при заполнении новости и тоже заполняются. Как мне взять значение с этих полей и вставить в поле где можно нажать чекбокс?
Заранее огромная благодарность!!! Хотя бы за то что прочитали

Re: Новость и обратная связь
Этот вопрос был в самом начале и я на него дал ответ (см. п. 2 выше).easmik wrote:Но вот в чем вопрос, а как связать доп. поля новости и чекбоксы в форме обратной связи?
Re: Новость и обратная связь
Прощу прощения. Я просто создал одно поле и не заметил чек бокса рядом. Еще раз ОГРОМНОЕ спасибо!!!
Правда только значение берется из названия поля, а не из текста который туда забит.
Правда только значение берется из названия поля, а не из текста который туда забит.
Re: Новость и обратная связь
Добрейшего! =)
поясните, пожалуйста, есть ли возможность в письмо, отправляемое из контакт-формы, вставить текст из поля "-Статический текст"?
или почему шаблон отправляемого письма не понимает foreach? хотя должен же понимать...
есть магазин. есть шаблон модуля Cart, выводящий список покупок. есть контакт-форма, куда надо писать имя, мэйл, телефон, примечание. есть кнопка "Оформить заказ", которая отправляет на ящик всё, что нужно из контакт-формы.
а вот включить в "всё, что нужно" список заказанных товаров не получается...
создал поле "-Статический текст" (korzina), которое в форме отображает список покупок (вместо текста подставил выжимку из шаблона viewcart).
на сайте всё отображается, а в письмо не знаю как запихнуть - {$korzina}, {$korzina_obj->value}, {$korzina_obj} не дают ничего нужного
потом сделал поле "Module Interface Field", шаблон в Products, связал их. в письме пишут "[не заполнено]". как же его заполнишь если оно без полей для ввода и вообще какого-то выбора?
Вобщем, на экран выводится, а в письмо не хочет ((((
пробовал ещё шаблон viewcart засунуть в нужное место в шаблоне исходящего письма.
уже лучше! в письме от корзины остаётся только общая сумма, выводимая тегом {$carttotal}. а все товарные позиции, находящиеся в {foreach...}{$oneitem->...} не подставляются.
может есть ещё способ вывода корзины через Smarty?
посоветуйте, плиз, а то голова уже кипить (((((((
поясните, пожалуйста, есть ли возможность в письмо, отправляемое из контакт-формы, вставить текст из поля "-Статический текст"?
или почему шаблон отправляемого письма не понимает foreach? хотя должен же понимать...
есть магазин. есть шаблон модуля Cart, выводящий список покупок. есть контакт-форма, куда надо писать имя, мэйл, телефон, примечание. есть кнопка "Оформить заказ", которая отправляет на ящик всё, что нужно из контакт-формы.
а вот включить в "всё, что нужно" список заказанных товаров не получается...
создал поле "-Статический текст" (korzina), которое в форме отображает список покупок (вместо текста подставил выжимку из шаблона viewcart).
на сайте всё отображается, а в письмо не знаю как запихнуть - {$korzina}, {$korzina_obj->value}, {$korzina_obj} не дают ничего нужного
потом сделал поле "Module Interface Field", шаблон в Products, связал их. в письме пишут "[не заполнено]". как же его заполнишь если оно без полей для ввода и вообще какого-то выбора?
Вобщем, на экран выводится, а в письмо не хочет ((((
пробовал ещё шаблон viewcart засунуть в нужное место в шаблоне исходящего письма.
уже лучше! в письме от корзины остаётся только общая сумма, выводимая тегом {$carttotal}. а все товарные позиции, находящиеся в {foreach...}{$oneitem->...} не подставляются.
может есть ещё способ вывода корзины через Smarty?
посоветуйте, плиз, а то голова уже кипить (((((((
Re: Новость и обратная связь
Разобрался! )
не понятно зачем я пытался усложнить задачу. всё более чем элементарно оказалось:
лишние поля я удалил (статический текст и module interface), сделал тимплейт viewcart, отображающий список покупок так как мне надо, а в коде пересылаемого письма добавил {Cart action="viewcart" viewcarttemplate="мой тимплейт"}.
Всё работает! )))))))))
не понятно зачем я пытался усложнить задачу. всё более чем элементарно оказалось:
лишние поля я удалил (статический текст и module interface), сделал тимплейт viewcart, отображающий список покупок так как мне надо, а в коде пересылаемого письма добавил {Cart action="viewcart" viewcarttemplate="мой тимплейт"}.
Всё работает! )))))))))