Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 11 Ответов
  • 1572 Просмотров
*

nick71

  • Завсегдатай
  • 1145
  • 12 / 12
  • Сайты любой сложности - обращайтесь
Потенциальный заказчик озадачил вопросом: хочет чтобы пользователь смог открывать новый материал только после прочтения предыдущего. Обучающий сайт, потому и хочет чтоб новые уроки открывались только по прочтении предыдущих.
*

Mihanja80

  • Завсегдатай
  • 1918
  • 168 / 4
  • Всю жизнь учусь...
а логика у Вас работает?
Можно реализовать без хаков, стандартными средствами, без вмешательства в код! :)
Я с мобильного, в основном...
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
а логика у Вас работает?
у меня туго работает.
Можно реализовать без хаков, стандартными средствами, без вмешательства в код! :)
как такое реализовать?
*

Mihanja80

  • Завсегдатай
  • 1918
  • 168 / 4
  • Всю жизнь учусь...
сначала не хотел безвозмездмо делиться...
Но, если уж на то пошло что я смог запутать Гуру этого форума - придется :)
Делаем новый раздел (или категорию, сам их путаю после перехода на 1.6.х)
Создаем там статьи.
Создаем новое меню и в этом новом меню создаем на каждую статью ссылку. меню не публикуем в модуле на сайте.
В опубликованном меню создаем ссылку на Первый материал. В каждом материале, в конце, вставляем в редакторе обычную ссылку на следующий материал (грубо говоря это просто:
 /алиас_статьи). В итоге если не открыть первую статью - невозможно узнать ссылку на следующую статью.

Так как ссылки на остальные статьи присутствуют на сайте только в статье (в каждой статье ссылка на следующую) найти их довольно сложно, но реально.   

Реальный выход малой кровью...

Зы. Для Joomla 1.6.х придется создать модуль для меню и опубликовать в несуществующую позицию, иначе ссылки не будут работать...
« Последнее редактирование: 13.05.2011, 00:15:45 от Mihanja80 »
Я с мобильного, в основном...
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
index.php?option=com_content&view=article&id=
подставляй любой id и смотри себе на здоровье.
id материала определить гораздо просто.
*

Mihanja80

  • Завсегдатай
  • 1918
  • 168 / 4
  • Всю жизнь учусь...
не все же программистами рождаются, особенн Пользователи ;) и заказчики... + включить родной SEF.

Вы смотрите со стороны программиста а я со стороны пользователя сайта. Ну не буду я тыкать что попало в адресной строке браузера, я не знаю что это так просто можно обмануть... Да и какой мне смысл, если можно открывать статьи по порядку, их читать меня ведь никто не заставит ;)
« Последнее редактирование: 13.05.2011, 00:26:53 от Mihanja80 »
Я с мобильного, в основном...
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
не все же программистами рождаются
ими не рождаются, ими становятся когда-то.
+ включить родной SEF.
вот родной SEF как раз и выдает id материала, если конечно на него нет пункта меню.

Насчет пользователей согласен.
*

Mihanja80

  • Завсегдатай
  • 1918
  • 168 / 4
  • Всю жизнь учусь...
>если конечно на него нет пункта меню
Про меню написал ведь не зря :)
Я с мобильного, в основном...
*

Mihanja80

  • Завсегдатай
  • 1918
  • 168 / 4
  • Всю жизнь учусь...

Реальный выход малой кровью...


SmokerMan, реальный вариант?
::)
Я с мобильного, в основном...
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
SmokerMan, реальный вариант?
это ТС решать :)
ты упустил ключевую фразу
чтоб новые уроки открывались только по прочтении предыдущих.
а именно слово "прочтение".
Под этой фразой, я по крайне мере, понимаю что чел должен чего-то прочитать, а не просто покликать мышкой на ссылки.
А что бы заставить человека чего-то прочитать, то нужно как минимум заставить его находиться на одной странице и совершать какие-то действия.
Т.к. действия мы можем определить только с помощью JS, то здесь уже нужно программировать.
Например, нарисовать квадратик, поставить таймер, и пока мышка двигается в этом квадратике, таймер тикает, как прекращает таймер останавливается. По прошествии этого таймаута зачислить бонус пользователю, который даст прочтение следующего материала. Для каждого материала выделить определенное кол-во времени.
Вот такой дроч бол получается :)
*

nick71

  • Завсегдатай
  • 1145
  • 12 / 12
  • Сайты любой сложности - обращайтесь
спасибо, Mihanja80, за совет, еще не пробовал но по идее должно работать, а можно еще вопросик по тому же проекту?
Как можно в 1.5 назначать материалы для конкретного пользователя? В данном случае это страницы с индивидуальными уроками?
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
стандартно никак.
Как вариант создать дополнительный параметр в материале http://www.joomla-code.ru/articles/dop-param, типа text
Код
<param name="user" type="text" label="label for user" description="description for user" />
и переопределить вывод материала в шаблоне
/components/com_content/views/article/tmpl/default.php положить в соответствующую папку в шаблоне (html/...)
и добавить в него следущие строчки после
Код
defined('_JEXEC') or die('Restricted access');

Код
if ($this->params->get('user') && $this->params->get('user')!== $this->user->id) {
        global $mainframe;
JError::raiseWarning( 403, JText::_('ALERTNOTAUTH') );
$mainframe->redirect('index.php');
}
тогда при просмотре полного материала, если будет указано id пользователя в этом параметре и он не будет совпадать с авторизовавшимся пользователем, будет происходить редирект.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Нужно wiki под Joomla

Автор THE KILLERS

Ответов: 9
Просмотров: 14960
Последний ответ 05.11.2020, 20:56:47
от Kijv
Проблема со входом в Админ панель после переноса сайта

Автор Vlad Ermolaev

Ответов: 11
Просмотров: 7707
Последний ответ 12.12.2019, 15:48:25
от SeBun
Нужно удалить старый тег Google Analitics и вставить новый

Автор daria_ab

Ответов: 3
Просмотров: 4715
Последний ответ 10.06.2019, 11:48:52
от daria_ab
ссылка на неопубликованный материал

Автор snoopik

Ответов: 9
Просмотров: 8558
Последний ответ 21.03.2019, 04:50:20
от vasmed
После редактирования статьи появляются символы Â

Автор Ra_insider

Ответов: 7
Просмотров: 6068
Последний ответ 30.01.2018, 20:33:39
от Petrovich