Quiz. Инструкция как создать опрос
Демо
1. Создаем опрос.
Добавляем ответы к вопросам:
Настраивает результат:
Выбираем 'Контент' и нажимаем сохранить.
Если нужно вывести еще какие-то данные в конце опроса, то заполняем необходимые поля:
2. Добавляем код в чанк tpl.Quiz.result
{$_modx->runSnippet('!QuizResult', [
'quiz' => $quiz,
'tplOuter' => '@INLINE <h3>{$title}</h3><table class="table table-striped">{$wrapper}</table>',
'tpl' => '@INLINE <tr><td>{$procent}% {$question}</td><td>{$value}</td></tr>',
'tplFooter' => '@INLINE <p>Проголосовали {$total} пользователей</p>'
])}
Документация сниппета QuizResult3. Выводим на сайт квиз:
{'!Quiz' | snippet: [
'id' => 1,
]}
Готово!
Но, так пользователи могут голосовать неограниченно кол-во раз. А нам нужно, например, чтобы один пользователь проголосовал только один раз.
Решение:
// Фильтруем результаты по ip
{set $result = '!QuizResult' | snippet: [
'quiz' => 1,
'where' => ['ip' => $.server.REMOTE_ADDR],
]}
// Если результаты есть, значит показывает результат опроса
{if $result['total']}
{'!QuizResult' | snippet: [
'quiz' => 1,
'tplOuter' => '@INLINE <h3>{$title}</h3><table class="table table-striped">{$wrapper}</table>',
'tpl' => '@INLINE <tr><td>{$procent}% {$question}</td><td>{$value}</td></tr>',
'tplFooter' => '@INLINE <p>Проголосовали {$total} пользователей</p>'
]}
// Если результатов нет, значит пользователь еще не проголосовал и показываем ему опрос
{else}
{'!Quiz' | snippet: [
'id' => 1,
]}
{/if}
Поблагодарить автора
Отправить деньги
Комментарии: 15
А это действительно требует отдельного поста на modxpro? Я понимаю когда выкладывают всякие хуки и инструкции для компонентов где дописать документацию невозможно или требует отдельных PR и прочих заморочек, но тут инструкция вроде как от автора компонента, я понимаю анонсы компонентов, понимаю анонсы скидок, да блин я даже понимаю посты где меняется мажорная версия какого то из компонентов, но вот это зачем?
Это инструкция была написана, в первую очередь, для тех людей, кто задет мне в тех. поддержке, «как сделать опрос»? Еще я эту инструкцию добавлю в docs.modx.pro, не против?
Что с тобой не так? Тебе мешает эта статья, потому что ты не понимаешь или просто, потому что я ее написал?
Если я нарушил правила форума, тут есть кому написать мне или даже удалить статью.
Я понимаю когда выкладывают всякие хуки и инструкции...В мире без твоего понимания происходят много нужных вещей.
Что с тобой не так? Тебе мешает эта статья, потому что ты не понимаешь или просто, потому что я ее написал?
Если я нарушил правила форума, тут есть кому написать мне или даже удалить статью.
Просто поставь минус.
При рейтинге -3 заметка пропадает с главной — голосование для того и придумано.
При рейтинге -3 заметка пропадает с главной — голосование для того и придумано.
Все правильно, так и нужно мотивировать разработчиков писать новые статьи.
Чем эта статья отличается, например, от этих?
modx.pro/solutions/19619
modx.pro/solutions/19339
Они тоже написаны авторами своими дополнений.
@Павел Гвоздь Паша, твоя статья похожа на мою, но тем не менее ты поставил мне минус. Просто интересно почему? Или другие поставили и я поставлю? (стадный эффект)
Чем эта статья отличается, например, от этих?
modx.pro/solutions/19619
modx.pro/solutions/19339
Они тоже написаны авторами своими дополнений.
@Павел Гвоздь Паша, твоя статья похожа на мою, но тем не менее ты поставил мне минус. Просто интересно почему? Или другие поставили и я поставлю? (стадный эффект)
«Инструкция как создать опрос»? Больше похоже на один из основных разделов документации.
К сожалению, никак не успеваю пополнить раздел API, пусть этот пост станет началом!То есть твой пост вообще не похож на один из разделов документации?
Неа. Ну блин, до тебя не доходит, да? Давай я напишу пост «Как создать промо-код», дойдёт тогда?
Ты пойми, я ничего лично к тебе негативного не испытываю. Ты начал как-то остро воспринимать мой минус. Это всего лишь моё мнение, я ведь имею право на его высказывание, пусть даже кликом по кнопке. Не нужно пытаться вывести меня на спор, я уже не тот, что был в 2015 году. =)
P.S. Я понимаю, что бомбит из-за минусов. У меня самого порой подгорает. Но мне куда неприятнее, когда мой труд просто никому не интересен и нет ни лайков, ни дизов.
P.P.S. И прав был Василий, когда говорил, что начнётся серпентарий, когда появится возможность увидеть, кто голосовал.
Ты пойми, я ничего лично к тебе негативного не испытываю. Ты начал как-то остро воспринимать мой минус. Это всего лишь моё мнение, я ведь имею право на его высказывание, пусть даже кликом по кнопке. Не нужно пытаться вывести меня на спор, я уже не тот, что был в 2015 году. =)
P.S. Я понимаю, что бомбит из-за минусов. У меня самого порой подгорает. Но мне куда неприятнее, когда мой труд просто никому не интересен и нет ни лайков, ни дизов.
P.P.S. И прав был Василий, когда говорил, что начнётся серпентарий, когда появится возможность увидеть, кто голосовал.
Достаточно большой и красиво оформленный пост. Что плохого в том, что человек наглядно демонстрирует возможности системы? Похоже на документацию, не похоже на документацию… Какая разница. Если твой пост про создание промокода больше 3-х предложений, то пиши, не стесняйся.
Этот сайт является частью самой большой MODX экосистемы в RU сегменте — modx.pro, modstore.pro и modhost.pro (хотя владельцы разные). Скорее даже самой большой в мире. Почему бы один ресурс не использовать для продвижения другого? А для удобства пользователей есть разделы. Хочешь, читай про дополнения, хочешь — про готовые решения. По моему, пост не нарушает никаких правил, ни описанных ни моральных. В отличие от поста с победными скидками. Вот там да, хочется сказать товарищу, что ошибся дверью.
Это мое мнение, которое может меняться в зависимости от настроения ))
Этот сайт является частью самой большой MODX экосистемы в RU сегменте — modx.pro, modstore.pro и modhost.pro (хотя владельцы разные). Скорее даже самой большой в мире. Почему бы один ресурс не использовать для продвижения другого? А для удобства пользователей есть разделы. Хочешь, читай про дополнения, хочешь — про готовые решения. По моему, пост не нарушает никаких правил, ни описанных ни моральных. В отличие от поста с победными скидками. Вот там да, хочется сказать товарищу, что ошибся дверью.
Это мое мнение, которое может меняться в зависимости от настроения ))
То есть тебе не понравился заголовок статьи и ты поставил минус?
Ты начал как-то остро воспринимать мой минус.Потому что, до сих пор я считаю, что ты его поставил не обдуманно, а просто потому что Паша и Василий поставили, давай и я поставлю, хотя написал такую же статью))
я уже не тот, что был в 2015 году.Причем здесь 2015 год? Твоя статья была написана 5 месяцев назад
Потому что, до сих пор я считаю, что ты его поставил не обдуманно, а просто потому что Паша и Василий поставилЧто ты от меня хочешь? Чтобы я убрал минус? Чтобы я ткнул тебя носом в то, что я ставил не смотря на то, ставил ли Василий?
Я, как раз, последний минус поставил (оценки в хронологическом порядке показываются, это легко заметить), потому что у заметки был рейтинг -2, а на главной она всё еще висела.
Полез в исходники, а там < вместо <=, то есть рейтинг должен быть -3 и ниже.
Ну и поставил минус проверить. Заметка с главной пропала — ура, мой код работает! А верхний коммент свой потом отредактировал.
Полез в исходники, а там < вместо <=, то есть рейтинг должен быть -3 и ниже.
Ну и поставил минус проверить. Заметка с главной пропала — ура, мой код работает! А верхний коммент свой потом отредактировал.
Причем здесь 2015 год?@Aleksandr Huz, ты же давно здесь, не помнишь разве как @Павел Гвоздь был забанен за холивар с сами знаете кем)) И вроде даже не разбанен и поэтому аккаунт «свежий» у него, или это вообще еще на bezumkin.ru было… В общем 2015 упомянут не с проста, просто решил уточнить.
По теме: компонент классный, еще не пользовались но приглядываемся давно. С этим постом тот самый день точно приблизился, так что спасибо за скриншоты, они помогут протолкнуть идею с квизами среди коллег)))
Quiz.start.after ещё надо добавить в события. Видимо автор забыл указать в документации.
Почему-то ошибка вылезает
i.imgur.com/AYGojoQ.png
i.imgur.com/5X3bSDU.png
В логах выводится следующее:
i.imgur.com/36Ycy2J.png
Обзор ошибки
Как ее исправить?
i.imgur.com/AYGojoQ.png
i.imgur.com/5X3bSDU.png
В логах выводится следующее:
i.imgur.com/36Ycy2J.png
Обзор ошибки
Как ее исправить?
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.