LiveInternetMail.ru
Форум русской поддержки Joomla!® CMS
04.02.2012, 10:43:49 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 1.7 FAQ Joomla 1.5 FAQ Joomla 1.0 FAQ Правила форума Новости Joomla Войти Регистрация Помощь  
Страниц: [1] 2 3 4 5 6 7 8 9   Вниз
  Добавить закладку  |  Печать  
Автор Тема: проект “Легкий web2.0” - Ajax для Joomla!  (Прочитано 130678 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Alex_B
Завсегдатай
*****

Репутация: +39/-0
Offline Offline

Сообщений: 619


« : 13.07.2007, 17:04:23 »

Легкий web2.0

Здесь предполагается обсуждение проекта “Легкий web2.0”.

Цель проекта сделать сайты на Joomla! более современными и дружелюбными к пользователю.

Более подробно читайте в статье "Использование AJAX в шаблонах Joomla" на joomlaportal.ru


DEMO


История версий:
v 0.3
v 0.4
v 0.4.2



ВНИМАНИЕ:

Ни какого отношения к сайту http://maxaman-soft.ru/ я давно не имею.
Домен был куплен кем-то другим, на сайте обнаружены и мои разработки, эксперименты - в каком они состоянии, и что там может быть изменено не извесно.
По этому если вдруг будет желание что-то качать, то делайте это только с этого форума!

(только сейчас обнаружил 09.06.09)
« Последнее редактирование: 09.06.2009, 10:16:49 от Alex_B » Записан
 
beliyadm
Профи
********

Репутация: +1430/-61
Offline Offline

Пол: Мужской
Сообщений: 9233


Севастополь==Россия


« Ответ #1 : 13.07.2007, 17:22:21 »

спасибо за статью, обязательно поэксперементирую, но извечный больной вопрос - что с индексацией?
Записан
smart
Администратор
*******

Репутация: +1077/-14
Offline Offline

Пол: Мужской
Сообщений: 8292


тружусь даже во сне...


« Ответ #2 : 13.07.2007, 17:32:43 »

извечный больной вопрос - что с индексацией?
а надо сделать небольшой финт ушами - не ссылки менять, а добавлять onclick, тогда и поисковики смогут ходить по ссылкам, и при клике пользователя страница не будет перегружаться - будет работать Ajax
Записан
userxp
Администратор
*******

Репутация: +388/-6
Offline Offline

Пол: Мужской
Сообщений: 3185


Злой и ужасный бармалей


« Ответ #3 : 13.07.2007, 17:37:25 »

у меня это почему-то это вызывает большое сомнение
Записан
smart
Администратор
*******

Репутация: +1077/-14
Offline Offline

Пол: Мужской
Сообщений: 8292


тружусь даже во сне...


« Ответ #4 : 13.07.2007, 17:41:16 »

у меня это почему-то это вызывает большое сомнение
что именно? что можно на ссылку повесить событие onclick, или что поисковик пойдет по href если задано событие onclick? если я не ошибаюсь, то именно такое решение я когда-то видел в каком-то из компонентов типа eZine, iMagazine... там так была реализована навигация по страницам
Записан
Sedoy
Support Team
*****

Репутация: +73/-10
Offline Offline

Пол: Мужской
Сообщений: 1108


Интересно,в какой кодировке пишут врачи?


« Ответ #5 : 13.07.2007, 17:45:35 »

ну что демка выглядит эффектно, хотелось бы увидеть наполненный вариант
как поведут себя различные компоненты и т.д.?
Записан
userxp
Администратор
*******

Репутация: +388/-6
Offline Offline

Пол: Мужской
Сообщений: 3185


Злой и ужасный бармалей


« Ответ #6 : 13.07.2007, 17:45:47 »

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

з.ы. может, я, правда, чего-то не понимаю в аяксе?...

аякс "пишет" в DOM, а не в HTML
Записан
Alex_B
Завсегдатай
*****

Репутация: +39/-0
Offline Offline

Сообщений: 619


« Ответ #7 : 13.07.2007, 17:49:00 »

На самом деле статья немного устарела.

Вот что есть на данный момент:
- решены проблемы с кодировкой (совместимость с LE)

- решена проблема с отключенным JS и поисковыми роботами:
Все ссылки остаются обычными ссылками, подключаемая JS библиотека выхватывает их из контекста и вешает на нужные ссылки событие Ajax, а переход запрещает.
Если JS у пользователя отключен, то ни каких событий на ссылки не вешается, и они остаются обычными ссылками.

- никакого своего модуля меню теперь не надо.
Записан
smart
Администратор
*******

Репутация: +1077/-14
Offline Offline

Пол: Мужской
Сообщений: 8292


тружусь даже во сне...


« Ответ #8 : 13.07.2007, 18:03:02 »

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

На самом деле статья немного устарела.
ну мне кажется это не очень корректно, бо перед тем как ее опубликовать я спросил - актуальная ли она, если она актуальная это одно, если есть стабильное решение более свежее чем текущее - это совсем другое, а если стабильного нет, а есть только наброски - то статья по-прежнему актуальна
Записан
Alex_B
Завсегдатай
*****

Репутация: +39/-0
Offline Offline

Сообщений: 619


« Ответ #9 : 13.07.2007, 18:04:28 »

ну что демка выглядит эффектно, хотелось бы увидеть наполненный вариант
как поведут себя различные компоненты и т.д.?
Компоненты разные бывают, если компонент выводит что-то в mosMainBody(), а почти все они так и делают (например виртуемаркт),  то все работает.


когда аякс получает контент? после загрузки страницы? во время?
асинхронно...
В реализации описанной в статье функция JavaScript делает запрос на сервер (в стиле Ajax) когда пользователь щелкнет по ссылке. В этом варианте СЕО не учитывается.
Нужно делать карту сайта для поисковиков.

В том варианте, который есть сейчас, все по другому и SEO не страдает.
Записан
beliyadm
Профи
********

Репутация: +1430/-61
Offline Offline

Пол: Мужской
Сообщений: 9233


Севастополь==Россия


« Ответ #10 : 13.07.2007, 18:06:36 »

Alex_B - попросил бы тогда аналогично по подробности описать существующий вариант
Записан
Alex_B
Завсегдатай
*****

Репутация: +39/-0
Offline Offline

Сообщений: 619


« Ответ #11 : 13.07.2007, 18:07:21 »

ну мне кажется это не очень корректно, бо перед тем как ее опубликовать я спросил - актуальная ли она, если она актуальная это одно, если есть стабильное решение более свежее чем текущее - это совсем другое, а если стабильного нет, а есть только наброски - то статья по-прежнему актуальна
Совершенно верно, то решение которое я позиционировал выше как панацею (и которое не описано в статье) - не рабочий вариант, который можно взять прямо сейчас и поставить.
Прошу прощения.
Записан
userxp
Администратор
*******

Репутация: +388/-6
Offline Offline

Пол: Мужской
Сообщений: 3185


Злой и ужасный бармалей


« Ответ #12 : 13.07.2007, 18:12:22 »

бот приходит и видит ту страницу, которая там есть... если бот перейдет по ссылке из меню он увидит новый контент, тоже самое увидит пользователь если он кликнет на этой ссылке..
боты научились вычитывать DOM?
Записан
smart
Администратор
*******

Репутация: +1077/-14
Offline Offline

Пол: Мужской
Сообщений: 8292


тружусь даже во сне...


« Ответ #13 : 13.07.2007, 18:16:17 »

боты научились вычитывать DOM?
Леша, причем тут DOM? Есть сайт, у него есть страницы А и Б, его прекрасно индексируют боты, теперь, мы добавляем возможность пользователю не уходя со страницы А получить контент со страницы Б... зачем для этого ботам читать DOM?  бот может получить контент страницы Б естественным путем - перейдя по href ссылки из меню, а пользователь получить контент КЛИКНУВ, и вызывав функцию, которая посредством AJAX вытянет этот контент и вставит прямо в тело страницы А...
Записан
userxp
Администратор
*******

Репутация: +388/-6
Offline Offline

Пол: Мужской
Сообщений: 3185


Злой и ужасный бармалей


« Ответ #14 : 13.07.2007, 18:18:25 »

наверно я себе плохо представил процесс получения контента в данной реализации..
Записан
proxits
Осваиваюсь на форуме
***

Репутация: +6/-0
Offline Offline

Пол: Мужской
Сообщений: 56


Я нисколько не лев, и посему - не всегда прав


« Ответ #15 : 13.07.2007, 18:37:57 »

А если я уже прописал для календаря новостей такое вот:

Код:
<?php /*mosMainBody();*/ ?>
<div id="ajax_main_body"><?php mosMainBody(); ?></div>

Как быть? Azn
Записан
Alex Revo
Практически профи
*******

Репутация: +103/-0
Offline Offline

Пол: Мужской
Сообщений: 2036


« Ответ #16 : 13.07.2007, 19:24:54 »

Цитировать
2. Модули Joomla имеют привязку... Мы решились и этого...

Опечаточка вкралась. Мы лишились, а не решились.  Smiley
Записан
bzzik
JComments Tester
*

Репутация: +189/-0
Offline Offline

Пол: Мужской
Сообщений: 3486


Contra Gaming Community


« Ответ #17 : 13.07.2007, 19:27:06 »

Alex Revo уху... я тоже щас прочитал, но не успел написать Azn
Записан
pedrosoft
Завсегдатай
*****

Репутация: +110/-7
Offline Offline

Пол: Мужской
Сообщений: 618



« Ответ #18 : 13.07.2007, 20:08:28 »

Alex_B, наверное надо подумать над какой-то индекацией загрузки т.к. контент и тяжелый бывает, а некоторые на мопедах сидят.
Записан
smart
Администратор
*******

Репутация: +1077/-14
Offline Offline

Пол: Мужской
Сообщений: 8292


тружусь даже во сне...


« Ответ #19 : 13.07.2007, 20:31:35 »

Опечаточка вкралась. Мы лишились, а не решились.  Smiley
исправлено
Записан
Timon_Crazy
Завсегдатай
*****

Репутация: +31/-4
Offline Offline

Пол: Мужской
Сообщений: 641


Лицензнаци


« Ответ #20 : 13.07.2007, 21:44:10 »

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

будет ли шаблон с определенными всеми стилями?
Записан
Timon_Crazy
Завсегдатай
*****

Репутация: +31/-4
Offline Offline

Пол: Мужской
Сообщений: 641


Лицензнаци


« Ответ #21 : 13.07.2007, 21:47:13 »

нашел обшибку в статье
Все это будет работать только на родной Joomla, по причине используемых кодровок.
надо кодировок
Записан
Alex_B
Завсегдатай
*****

Репутация: +39/-0
Offline Offline

Сообщений: 619


« Ответ #22 : 13.07.2007, 21:56:23 »

спасибо.
удобно, работает на ура Azn
Пожалуйста.

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

будет ли шаблон с определенными всеми стилями?
Я планирую довести до ума саму реализацию – все ссылки, какие возможно, сделать Ajax.
Проблемы с SEO и прочее.

План как сделать есть, достаточно четко представляю дальнейшие действия.

И вот потом хочу выпустить полностью рабочее решение и полностью рабочий шаблон к нему (как пример).

Вроде сложностей ни каких нет – дело только во времени.
Записан
Alex Revo
Практически профи
*******

Репутация: +103/-0
Offline Offline

Пол: Мужской
Сообщений: 2036


« Ответ #23 : 13.07.2007, 22:11:03 »

Ну раз такое дело исправьте еще одну:
Цитировать
это id контейнера DIV в котором нужно разместить сдержимое
- содержимое
Записан
userxp
Администратор
*******

Репутация: +388/-6
Offline Offline

Пол: Мужской
Сообщений: 3185


Злой и ужасный бармалей


« Ответ #24 : 14.07.2007, 01:04:00 »

ну так что будем делать с русской кодировкой?
а то я обошелся без утф-8 и без перекодировки...
ловкость рук и никакого мошенничества
Записан
Alex_B
Завсегдатай
*****

Репутация: +39/-0
Offline Offline

Сообщений: 619


« Ответ #25 : 14.07.2007, 14:22:30 »

ну так что будем делать с русской кодировкой?
а то я обошелся без утф-8 и без перекодировки...
ловкость рук и никакого мошенничества
Я пока вот так сделал:

В фале
includes/frontend.php строка 50

echo $GLOBALS['_MOS_OPTION']['buffer'];

Передней явно указал хедер:

header("Content-Type: text/html; charset=windows-1251");
echo 
$GLOBALS['_MOS_OPTION']['buffer'];


Работает на LE.
Записан
userxp
Администратор
*******

Репутация: +388/-6
Offline Offline

Пол: Мужской
Сообщений: 3185


Злой и ужасный бармалей


« Ответ #26 : 14.07.2007, 15:05:13 »

это нужно делать не там, а в index2.php
ты же его вызываешь с сервера

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

мои предложения такие:
1) в статье ОБЯЗАТЕЛЬНО указать категорию "для разработчиков" (из серии ну сунь два пальца в розетку), а именно - НЕ публиковать готовых расширений, а только предложения по написанию кода
2) умерить пыл в сторону аякса (много хорошо - тоже плохо), ибо вылезут проблемы с компонентами (там аякс без ботов скорей всего работать не будет, либо нужно будет извращаться)
3) как я писал выше - возможные вопросы не совместимости с другими ботами, использующими аякс-технологии (LightBox, MooTools, JQuery и т.д.)

теперь итого - данный материал нужно позиционировать как исключительно для программистов, причём отнюдь не для начинающих
« Последнее редактирование: 14.07.2007, 15:16:29 от userxp » Записан
Alex_B
Завсегдатай
*****

Репутация: +39/-0
Offline Offline

Сообщений: 619


« Ответ #27 : 14.07.2007, 15:34:47 »

На мой взгляд – есть возможность сделать все одним (или двумя) махом. По крайней мере для Joomla! в стандартном виде.
Записан
userxp
Администратор
*******

Репутация: +388/-6
Offline Offline

Пол: Мужской
Сообщений: 3185


Злой и ужасный бармалей


« Ответ #28 : 14.07.2007, 16:22:00 »

не выйдет.
смена урла влчёт за собой привязку Itemid и модулей... в чём фигня, надеюсь, понятно?

всё не перестаю повторять - глубже думайте, ГЛУБЖЕ!

зы. красивое не значит полезное
Записан
Alex_B
Завсегдатай
*****

Репутация: +39/-0
Offline Offline

Сообщений: 619


« Ответ #29 : 14.07.2007, 16:28:57 »

не выйдет.
смена урла влчёт за собой привязку Itemid и модулей... в чём фигня, надеюсь, понятно?
Да, это так. Это самый первый вопрос который всплывает - как оставить привязку модулей к пунктам меню?
(в статья я об этом говорил)

А смены урл не будет (по крайней мере я сейчас так думаю)
Записан
Страниц: [1] 2 3 4 5 6 7 8 9   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Рейтинг@Mail.ru Rambler Top100 Powered by SMF 1.1.16 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet