Разворачивание вопросов в разделе вопрос-ответ
Стоит ли открыть форум? Напишите об этом по адресу admin@astracms.ru написав в теме "открыть форум". Я не автор движка и поэтому не могу консультировать так, как это делал бы он, но возможно у нас получится совместно находить решения.
Автор | Текст сообщения | ||
---|---|---|---|
Светлана |
01.03.2010 23:45
Здравствуйте!
Есть такая задача. Надо сделать имитацию разворачивающихся вопросов в вопросах-ответах. Т.е. чтобы при переходе по вопросу, остальной список вопросов не пропадал, а тот вопрос, который открываем, чтобы не менял своего местоположения в списке вопросов. Есть мысли сделать это так: перебирать в шаблоне faq_page.tpl все вопросы, сравнивать их с активным вопросом (по которому щелкнули), например по названиям, и когда дойдем до активного вопроса, вставляем его ответ, и далее в цикле остальные вопросы. Проблема в том, что не знаю как получить доступ к массиву вопросов в шаблоне faq_page.tpl. Использовать блок вопросов, как я понимаю, не получится, т.к. надо в нужное место среди вопросов вклинивать ответ на активный вопрос. Если кто знает как это сделать, подскажите, пожалуйста. |
||
admin |
02.03.2010 02:33
Здравствуйте,
Гораздо проще в данной ситуации вообще не использовать детальную страницу вопроса (faq_page.tpl) а организовать то что необходимо на главной странице раздела (faq_main.tpl) или странице категории, если используются. Т.е. прямо в шаблоне, где происходит обход массива с вопросами, можно сделать скрытые области с ответом, которые будут открываться по клику на тексте вопроса (с помощью js). |
||
Светлана |
02.03.2010 17:25
Дело в том, что такой код с сокрытием области под управлением js не во всех браузерах правильно работает, например в ie6 область скрытых блоков будет пустой, придется с этим бороться.
В общем, чтобы все было стабильно и кроссбраузерно, хотелось сделать это по-другому. Но если на самом деле сложно получить доступ к списку вопросов и шаблона .._page, то видимо придется как Вы говорите. |
||
admin |
02.03.2010 17:44
В div с display:none размещаем ответ, потом по клику на вопросе его показываем. |
||
admin |
02.03.2010 18:17
|
||
Светлана |
02.03.2010 20:24
Тогда я не понимаю как его использовать.
К примеру, вставили блок вопросов в шаблон ..._page.tpl {block id="listvopros"} А как вставить ответ в список вопросов в нужное место? В шаблоне блока вопросов нет понятия активного вопроса... Или можно использовать как-то по-другому? |
||
admin |
02.03.2010 21:26
Отредактировано: 02.03.2010 21:27
В шаблоне любого блока можно получить доступ к данным исходной страницы.
http://wiki.astracms.ru/integration/globaldata#parent В данном случае, чтобы определить активный вопрос в блоке, достаточно при обходе массива вопросов проверять условия вида: {if $items[i].id==$parent.item.id} ... {/if} |
||
Светлана |
02.03.2010 21:34
Спасибо большое!! Это то что нужно
|
||
Вы не можете добавить сообщение. Вам необходимо авторизироваться на сайте под своим логином либо зарегистрироваться.