Забыли пароль?
Запросите новый здесь.

Автор темы: Vveb--ws
ID темы: 3040
Информация:
Тема содержит 6 сообщения, была просмотрена 856 раз.
Просмотр темы
PHP-Fusion Russia » Поддержка 7 версии » Пожелания и предложения
 Распечатать тему
Поиск новых и популярных страниц для пользователя
Vveb--ws
Допустим пользователь пришёл на сайт.

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

1) Я поставил ему куку с id

2) Делаем поле "оценка страницы" "rating" как квадрат разности like и dislike

3) Все id просмотренных пользователем страниц записываем в файл. а при обращении к сайту эксплодим его в массив $user_viewed_pages.

4) по крону или периодически делаем выборку всех страниц сайта из БД "ORDER BY rating DESC"
записываем в файл в массив $all_pages все имеющиеся в БД id страниц сайта (некоторые могут быть удалены). вначале самые лучшие.

5) находим первые 13 страниц которых нет в массиве $user_viewed_pages. 12 - для отображения меню "похожих страниц"

6) если не нашли, делаем новую выборку из БД пока не найдём.

7) вносим в список $user_viewed_pages текующую страницу

8) отображаем страницу и меню "похожих страниц"

чё скажете ?

немного смущает скорость работы сравнения 2 массивов с тыщами id. но наверное хостинг потянет.
всё сводится к 1 функции array_diff():
https://php.ru/forum/threads/kak-iz-odnogo-massiva-udalit-sxodnye-ehlementy-drugogo.14532/ - точно мой пример !
http://php.net/manual/ru/function.array-diff.php
http://php720.com/lesson/37
Изменил(а) Vveb--ws, 19.02.2019 18:04

PHP-Fusion 7 Bogatyr - бесплатная мультиязычная CMS для блога, форума, фотогалереи

vk.com/phpfusion
Создаю интернет-магазины и блоги, лендинги, форумы. Telegram: t.me/Vova_Kazakov
 
Web
Polarfox
и зачем?
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме

PolarLab - вход для подопытных
 
Web
Vveb--ws

Vveb--ws написал:
Мне надо подобрать для него набор новых и популярных страниц, которые наиболее высоко оценили другие пользователи и которые он ещё не видел.

чтобы он читал.

PHP-Fusion 7 Bogatyr - бесплатная мультиязычная CMS для блога, форума, фотогалереи

vk.com/phpfusion
Создаю интернет-магазины и блоги, лендинги, форумы. Telegram: t.me/Vova_Kazakov
 
Web
ovas
Гугл с Яндексом в сторонке нервно курятai
 
Web
Polarfox
просто исключи страницы которые он видел, сделай доп таблицу куда пиши что он видел, либо массив в печенье где отмечены страницы которые он видел.
можно и иначе, суть ты понял.
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме

PolarLab - вход для подопытных
 
Web
Vveb--ws
Polarfox написал:

просто исключи страницы которые он видел, сделай доп таблицу куда пиши что он видел, либо массив в печенье где отмечены страницы которые он видел.
можно и иначе, суть ты понял.

ну я ж это и предлагаю.
Изменил(а) Vveb--ws, 21.02.2019 23:32

PHP-Fusion 7 Bogatyr - бесплатная мультиязычная CMS для блога, форума, фотогалереи

vk.com/phpfusion
Создаю интернет-магазины и блоги, лендинги, форумы. Telegram: t.me/Vova_Kazakov
 
Web

Поделиться этой темой
Социальные закладки: Vkontakte Odnoklassniki Mail.ru Facebook Google Tweet This
URL:
BBcode:
HTML:

Перейти на форум:
Похожие темы
Темы Форум Ответов / Просмотров Последние сообщения
ЧПУ Дополнительных страниц для PHP-Fusion 8  →  Разное 8 / 554 26.10.2020 18:42
Для каждой доп страницы свой текст в шапке  →  Народное творчество 21 / 12444 14.10.2020 09:55
Сервис для сбора позиций  →  СЕО 3 / 176 09.10.2020 11:16
Как вебмастеру сформулировали УТП для создания сайтов на PHP-Fusion?  →  Пожелания и предложения 1 / 2219 25.07.2020 03:46
какие функции надо переписать для PHP 7?  →  Пожелания и предложения 15 / 8197 12.07.2020 07:19
SEO-оптимизация. дубли страниц в PHP-Fusion - где искать и как избавиться?  →  Ошибки, баги 0 / 720 19.06.2020 17:06
PHP-Fusion 7 Bogatyr - бесплатная мультиязычная CMS для блога, форума, фотогалереи  →  Моды 20 / 17044 17.03.2020 19:59
Какой плагин PHP-Fusion уместно использовать для создания сайта КВИЗа?  →  Пожелания и предложения 1 / 1082 18.02.2020 15:14
InstaSpider - инстаграм программа шпион для мониторинга новых подписчиков пользователей  →  Флуд 0 / 629 12.02.2020 18:34
Каким ява скриптом приделать выбор цвета для поля input type="text"?  →  Вопросы новичков 1 / 882 10.01.2020 20:47
Топ 5 пользователей форума
Alex Alex (1,239)   Zaxap Zaxap (1,090)   Vova Vova (877)   Pisatel Pisatel (678)   util util (666)