Ограничить статью Joomla одним просмотром на пользователя - PullRequest
0 голосов
/ 30 августа 2011

Кто-нибудь знает, как я могу манипулировать joomla, чтобы разрешить только один просмотр на пользователя для определенных статей?Я хочу, чтобы статья была серой и не позволяла пользователю нажимать на нее после того, как она была просмотрена впервые.Любая помощь будет высоко ценится.

Спасибо, Дейв

Ответы [ 3 ]

1 голос
/ 31 августа 2011

Я не уверен, почему вы захотите сделать это, но для этого потребуется плагин, который делает несколько вещей.Во-первых, ваш контент должен быть доступен только зарегистрированным пользователям.Файлы cookie будут работать, но было бы очень легко очистить файлы cookie, чтобы восстановить доступ к содержимому.Далее, плагин должен будет записывать каждое посещение страницы, запись должна включать идентификатор пользователя.Наконец, плагину нужно будет найти конкретного пользователя, который пытается получить доступ к статье, и проверить, были ли они на этой странице раньше.

Однако вся эта работа не помешает кому-либо зарегистрироватьсядругая учетная запись для доступа к контенту снова.Или копирование и вставка содержимого или сохранение страницы локально.Почему вы хотите ограничить количество пользователей одним просмотром страницы?

1 голос
/ 30 августа 2011

Это, вероятно, должен быть плагин.Это может быть действительно надежно сделано только на странице, требующей входа пользователя, а вы не можете просто зарегистрировать новые учетные записи.Кроме того, кто-то мог просто скопировать текст в первый раз, а затем ваша безопасность является спорным.Тем не менее, плагин должен отслеживать идентификатор страницы и идентификатор пользователя, а при посещении страницы строка добавляется в таблицу.Тогда у вас может быть шаблон страницы, где вы проверяете эту таблицу, и если для идентификатора страницы и пользователя существует строка, которую вы делаете с содержимым, в противном случае он отображается как обычно.

0 голосов
/ 30 августа 2011

Единственно правильный способ сделать это - создать плагин «контент», который будет проверять базу данных в поле «Хиты».Если он больше X, вы можете перенаправить Joomla, чтобы заблокировать его доступ:

$mainframe->redirect('index.php', JText::_('AN ERROR HAS OCCURED'));

Преимущество этого метода заключается в том, что у вас есть возможность сбросить счетчик при администрировании статей

Что касается отображения списка результатов, я советую вам использовать html-файл вашего шаблона для проведения такого аудита и увлечь тех, кто больше не доступен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...