Приветствую! Столкнулся у себя на проекте с проблемой "троллей". Не считаю, что удалять нехорошие комментарии администратором - это правильное решение. Поэтому позволил избавляться от плохих комментов самим посетителям портала. Для этого им нужно всего лишь поставить несколько минусов комментарию, после чего вместо его текста выводится "Неуместный комментарий".
День добрый. Давно планировал написать статью на эту тему и вот, буквально, вчера запустил на своем проекте обновленный вариант - результаты можно считать как минимум интересными. Начну сразу с результатов, а потом уже теория. Время открытия некоторых страниц: Главная страница сайта <!--Время генерации страницы: 0.0010 сек.(0 запросов)--> Страница рубрики <!--Время генерации страницы: 0.0014 сек.(0 запросов)--> Открытая статья <!--Время генерации страницы: 0.0010 сек.(0 запросов)--> Список пользователей (/users) <!--Время генерации страницы: 0.0009 сек.(0 запросов)-->
Приветствую! Сегодня в мире отмечается Всемирный день книг и авторского права (подробности тут). В связи с чем хочу поделиться одной из своих разработок по внедрению аякса на сайты InstantCMS.
День добрый! Работаю над очередной версией своей чудо системы и хотел бы поднять для обсуждения несколько вопросов, чтобы выбрать наиболее удачное решение. И заодно показать несколько изменений, которые уже можно увидеть на тестовом сайте.
Приветствую! С некоторой задержкой готов предоставить очередную версию "системы переписки". В нее вошли как исправление всех озвученных багов, так и добавление порции нового функционала.
Приветствую! С момента написания предыдущего поста, посвященного подготовке к релизу прошло меньше недели - за это время полностью переработан дизайн (СПАСИБО yuri за отличный вариант шаблона) и исправлено некоторое количество багов, найденных при тестировании системы на своем проекте. Дизайн стал резиновым - растягивается исходя из размеров экрана пользователя.
Здравствуйте! Сразу прошу прощения за свое столь долгое отсутствие - оффлайн жизнь внесла свои коррективы в мои интернет планы. На этой неделе постараюсь разобраться со всеми незаконченными делами, что я вынужденно отложил (оптимизиция и тд). До личных сообщений доберусь сегодня ночью, еще не читал. Система сообщений - это один из тех проектов, который тоже немного затянулся. Но причина скорее в том, что хотелось сделать что-то реально шикарное и интересное - а не просто "что-то такое и лишь бы работало". Вторая причина в том, что для "себя" я, конечно, мог сделать и попроще, и не такое функциональное. Но, учитывая, что этого творения ждал не только я - хотелось сделать что-то универсальное и многофункциональное.
Сразу скажу, что решил сделать это решение платным - времени потрачено немало, но результат того стоит В этом пакете убрана пагинация для: 1. списка клубов (/clubs) 2. списка записей блогов (общего списка и конкретного блога) (/blogs и /blogs/user) 3. списка пользователей (при любой сортировке) (/users) 4. стены клуба и стены пользователя (users/sjen и clubs/15 ) 5. в "Ленте активности" - модуле и компоненте (/actions) 6. В Компоненте InstantVideo 1.52 a) страница /video (по любой сортировке) б) страница рубрики /video/music, по любым сортировкам и фильтрам в) страница канала /video/channel/sjen.html
Покопался немного в коде, вот что получилось. Нужно добавить php код в файл шаблона template.php, в самый верх (рядом с другим php кодом) $where = $_SERVER["REQUEST_URI"]; // адрес текущей страницы $q = strpos($where,'?'); // позиция символа "?" if ($q){ $canonical = substr($where,0,$q); //если страница с параметрами - отрезаем их }else{ $canonical = $where; } if ($canonical=='/'){$canonical='';} //если главная, убираем слэщ в конце elseif ($canonical=='/index.php') {$canonical='';} //если главная, убираем index.php $canonical = 'http://'.$_SERVER['HTTP_HOST'].$canonical...
Тема навеяна топиком Миноны. До canonical я еще не добрался и сомневаюсь, что можно их сделать, не перелопатив все компоненты. Так что предлагаю вариант, который озвучил soxom - 301 редирект.
Приветствую. Выкладываю финальную версию плагина для отправки сообщений посредством аякса. Оформить это в формате плагина решил для того, чтобы максимально упростить его установку и в случае чего было бы так же просто его отключить. Из особенностей могу выделить отправку сообщения через Enter либо Ctrl+Enter. Комбинацию выбирает сам пользователь и она запоминается для последующих сообщений (в cookies).
Приветствую! Решил сделать небольшой перерыв в разработке супер навороченной системы сообщений (смотреть тут) и заодно заработать на пиво к завтрашнему мега матчу Реал - ЦСКА (среда, 23:45 по Москве). Этот пост является продолжением темы избавления от пагинации (начало положила "Лента событий"). Разработка проверялась на версиях Инстанта 1.8-1.9. Учитывая предыдущий опыт, сделал сразу две версии: 1. "Как вконтакте" - стена подгружается сама по мере прокручивания страницы вниз. 2. С кнопкой "Показать еще" - само ничего не грузится, нужно нажать на кнопку и более...
Приветствую! Занимаюсь сейчас разработкой удобного и современного сервиса для общения посетителей (в данном случае через личные сообщения). Есть уже некоторые результаты, но до законченной версии пока далеко. И вот на этом этапе хотел бы пригласить всех желающих высказать свои пожелания и мысли. Может быть что-то я упустил или нужно добавить что-то кардинально новое.
Хочу немного рассказать про технологию FullAjax и ее применении на сайте под ICMS. Глубоко в теорию уходить не буду, расскажу в общих чертах. Кому будет интересны подробности - спрашивайте в комментах.
По просьбам установивших себе ленту "как вконтакте" сделал еще один вариант. Лента активности не подгружается автоматически - внизу есть кнопка "Показать еще" и события в ленту подгружаются по нажатию на эту кнопку. Все так же на аяксе и очень быстро. Скачать можно тут. Инструкция: 1. файлы com_actions_view.tpl и com_actions_view_ajax.tpl положить в папку /templates/_default_/components/ (для добавление кнопки в компоненте) 2. файл mod_actions.tpl положить в папку /templates/_default_/modules (для добавления кнопки в модуле) Первый пост с описанием полной версии - тут
Выкладываю тут доработку плагина и одно исправление в хаке. Пост интересен в первую очередь тем, кто уже внедрил данные доработки.
Приветствую! Пагинация в любом виде меня уже давно напрягала - даже если страницы и подгружаются на аяксе. Все-равно неудобно - надо кликать на следующую страницу, а иногда и возвращаться на предыдущие - много лишних действий, а люди же по природе своей ленивые. Суть доработки в том, что при прокрутке ленты активности (в модуле либо в компоненте) события подгружаются сами через аякс. От посетителя требуется лишь прокручивать колесико мышки. Важно: Тестировалось на версии 1.9. Про работу в более старых ничего сказать не могу.
Добрый день! Сегодня с утра решил заняться оптимизацией запросов и обнаружил такую штуку - при выводе комментариев делается N запросов к БД(по количеству комментов) на предмет оценки комментария текущим пользователем. То есть если в статье 30 комментариев - то делается 30 запросов ,чтобы проверить оценивали вы его или нет, что не есть хорошо. Данный хак (для версии инстанта 1.9) модифицирует запрос по получению комментариев и позволяет избавиться от ненужных N запросов. Сразу скажу - не пугайтесь, что "много букав" - меняется всего 4 строки (две добавить и две изменить). ВАЖНО: перед правкой обязательно сделайте копии файлов components/comments/model.php и components/comments/frontend.php
Приветствую! Продолжу тему аякса на сайте рассмотрением одного очень популярного модуля - "Кто онлайн?". Модуль популярный, но очень не оптимизированный. А вы знаете как он работает? - если кратко, то вот: 1. Получает авторизованных посетителей онлайн (1 запрос) 1а Проверяет каждого на принадлежность к администраторам (N запросов, по количеству посетителей) 1б Проверяет не админов на принадлежность к редакторам (N-a запросов, где а - количество админов) 2 Считает гостей онлайн (1 запрос) 3 Считает авторизованных посетителей за сегодня (1 запрос) 3а Проверяет каждого на принадлежность к администраторам (M запросов, по количеству посетителей) 3б Проверяет не админов на принадлежность к редакторам (M-b запросов, где b - количество админов)
Приветствую! В качестве первой записи в моем молодом блоге хочу поделиться плагином, который обновляет "Меню пользователя", а именно поле "Сообщения". Описание: На странице создается таймер, который с заданным интервалом спрашивает у сервера о наличии новых сообщений. Плагин оптимизирован под высокие нагрузки - в нем вообще не используются функции и классы движка. Всего один простой запрос для получения количества новых сообщений. Период обновления и класс объекта, внутри которого лежит поле "Сообщения" настраиваются из админки. По умолчанию период равен 15 секундам, класс объекта = "my_messages".
- Предыдущая
- 1
- 2
- Показаны 46-65 из 65