cyca 0 Опубликовано: 28 декабря 2016 Рассказать Опубликовано: 28 декабря 2016 Приветствую. Прошу вас, поклонников дле, поделиться ссылками на всевозможную информацию по разработке модулей для DLE, а разработчиков расширить эту информацию в документации или дать ссылку, возможно я не видел всего. Мне нужен был модуль статистики на DLE, я прочитал пару книг по PHP+MySQL и решил заняться этим сам. Первым делом скачал документацию по DLE, там без труда нашел, что для того чтобы модуль было доступен, нужен файл в engine/modules и для админке в папке inc. Hello World вывести получилось быстро. Но после этого документация дле показалась мне бесполезной, я начал гуглить по этой теме и нашел статью Пафнутия, по которой, вероятно делают 90% неопытных разработчиков, потому что больше толковых статей нет, я про эту статью http://pafnuty.name/statyi/144-make-a-module.html Смотря эту статью, полагаясь на свои знания и одним глазом смотря код реализованных модулей в дле (стандартных и сторонних) у меня получилось создать модуль, но понимания маловато, где можно почитать про ключевые моменты, что такое и как работает: tpl->set tpl->result tps->complite в документации есть список классов которые я могу использовать, И ВСЕ, а описание этих классов? /classes/mysql.php $db->connect $db->query $db->super_query и тд. элементарно, в чем отличия query от super_query? Вот что получилось - https://dota2bet.club/team/19-newbee.html, но я больше чем уверен что код для работы этого, никакой, потому что тот же блок tpl set вставлялся без понимания, а хочется оптимизировать все, ускорить работу и уменьшить нагрузку. Возможно, всего этого поста и не было бы, если мне б не понадобился AJAX. На главной dota2bet.club вверху выводится рейтинг, который я хочу сортировать по заданому критерию, это работает (на главной пока криво т.к. приостановил пока разработку и решил узнать у вас про аякс), но по выбору критерия страница перезагружается, а я хочу, чтоб данные подгружались при помощи AJAX, как это сделано в последних версиях DLE (сортировка новостей). Я начал гуглить DLE AJAX и нашел единственную статьи http://habrahabr.kz/blog/508.html , она безусловна хороша, но ей уже 6 лет и файлов которые там надо редактировать в новых версиях DLE уже нет. Смотря код, можно заметить, что весь AJAX для стандартных модулей DLE содержит ссылку с параметром в стиле onclick=doSort, где описываются эти функции? Как добавить AJAX для моих post/get запросов? Как вообще работает (в DLE) система подгрузки, какие файлы и скрипты она используется, что кроется под этим {AJAX}? В поисках документации... Я постарался расписать все подробно, прошу вас, неравнодушных пользователей, и в первую очередь разработчиков, подробно ответить. Буду рад даже оффтопам, которые помогут начинающему разработчику, с уважением Андрей Савчук. Цитата Ссылка на сообщение Поделиться на других сайтах
Captain 625 Опубликовано: 28 декабря 2016 Рассказать Опубликовано: 28 декабря 2016 (изменено) delete Изменено 28 декабря 2016 пользователем Captain Цитата Ссылка на сообщение Поделиться на других сайтах
SKYNET74 315 Опубликовано: 28 декабря 2016 Рассказать Опубликовано: 28 декабря 2016 6 часов назад, cyca сказал: что такое и как работает: tpl->set tpl->result tps->complite в документации есть список классов которые я могу использовать, И ВСЕ, а описание этих классов? /classes/mysql.php $db->connect $db->query $db->super_query и тд. элементарно, в чем отличия query от super_query? Может если бы были нормальным разработчиком, открыли бы код и посмотрели что это за классы и функции? Но вы же прочитали пару книжек и тут же полезли "кодить" модули для системы, которую даже не удосужились изучить для начала... 6 часов назад, cyca сказал: как это сделано в последних версиях DLE (сортировка новостей) Где вы там увидели ajax? AJAX в DLE к сожалению кривой, но он есть, свою погрузку по AJAX вам ничего не мешает сделать. А вообще нужно писать свои обёртки над окошками, уведомлениями и т.п., ибо по дефолту ничего этого нет. Цитата Ссылка на сообщение Поделиться на других сайтах
cyca 0 Опубликовано: 28 декабря 2016 Рассказать Опубликовано: 28 декабря 2016 Автор 5 минут назад, SKYNET74 сказал: Может если бы были нормальным разработчиком, открыли бы код и посмотрели что это за классы и функции? Но вы же прочитали пару книжек и тут же полезли "кодить" модули для системы, которую даже не удосужились изучить для начала... Где вы там увидели ajax? AJAX в DLE к сожалению кривой, но он есть, свою погрузку по AJAX вам ничего не мешает сделать. А вообще нужно писать свои обёртки над окошками, уведомлениями и т.п., ибо по дефолту ничего этого нет. Я прошу помощи в изучении - документацию по работе DLE. Цитата Ссылка на сообщение Поделиться на других сайтах
germanydletest 457 Опубликовано: 28 декабря 2016 Рассказать Опубликовано: 28 декабря 2016 6 минут назад, cyca сказал: Я прошу помощи в изучении http://api.jquery.com/jquery.ajax/ http://php.net/manual/ru/ http://dle-news.ru/extras/online/index.html изучайте Цитата Ссылка на сообщение Поделиться на других сайтах
cyca 0 Опубликовано: 28 декабря 2016 Рассказать Опубликовано: 28 декабря 2016 Автор Доброжелательный форум однако Цитата Ссылка на сообщение Поделиться на других сайтах
germanydletest 457 Опубликовано: 28 декабря 2016 Рассказать Опубликовано: 28 декабря 2016 5 минут назад, cyca сказал: Доброжелательный форум однако Вам тут никто не будет разжёвывать как делать связку PHP + MySQL + jQuery.ajax, я Вам дал ссылки на официальные мануалы, изучайте и возможно когда нибудь дорастёте до того уровня, когда начнёте понимать, что и для чего вставляется в код, а не тупо копипастить его. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
cyca 0 Опубликовано: 28 декабря 2016 Рассказать Опубликовано: 28 декабря 2016 Автор 5 минут назад, germanydletest сказал: Вам тут никто не будет разжёвывать как делать связку PHP + MySQL + jQuery.ajax, я Вам дал ссылки на официальные мануалы, изучайте и возможно когда нибудь дорастёте до того уровня, когда начнёте понимать, что и для чего вставляется в код, а не тупо копипастить его. я ничего не копипастил, просто сделал по образцу, как будто это плохо если это плохо, отключите библиотеки все и пишите с нуля на js Цитата Ссылка на сообщение Поделиться на других сайтах
alex32 942 Опубликовано: 28 декабря 2016 Рассказать Опубликовано: 28 декабря 2016 8 часов назад, cyca сказал: Возможно, всего этого поста и не было бы, если мне б не понадобился AJAX. ЗАчем вам знать, как работает AJAX в DLE, если у вас даже сайта на ДЛЕ нет? Цитата Ссылка на сообщение Поделиться на других сайтах
cyca 0 Опубликовано: 28 декабря 2016 Рассказать Опубликовано: 28 декабря 2016 Автор 9 минут назад, alex32 сказал: ЗАчем вам знать, как работает AJAX в DLE, если у вас даже сайта на ДЛЕ нет? dota2bet.club Цитата Ссылка на сообщение Поделиться на других сайтах
alex32 942 Опубликовано: 28 декабря 2016 Рассказать Опубликовано: 28 декабря 2016 (изменено) 8 минут назад, cyca сказал: dota2bet.club Ну вот с этого и надо было начинать, а не права качать. А теперь я открою несколько маленьких секретов: Работа с AJAX в ДЛе ничем не отличается от работы с AJAX в любых других php-приложениях. Это означает, что надо изучать не ДЛЕ, а php в целом, что бы понимать, что происходит. Далее, какую такую документацию для разработчиков вы хотите? Разработчик у ДЛЕ один, и он часто бывает тут на форуме. Но разжевывать элементарные вещи (как написать Hell Word) это уж слишком. Далее, никаких пошаговых инструкций по написанию модулей в ДЛЕ нет, потому что, что бы писать модули, надо знать php и все, что с ним связанно. Поэтому, для начала, надо научиться писать элементарные приложения, а потом уже лезть в движки и углублять знания. А что такое классы, как их использовать, это к ДЛЕ имеет очень отдаленое отношение, потому что это АЗЫ. php тут учить никто вас не будет. Тут не школа. Ставьте сервер и вперед, пишите приложения, которые будут обмениваться данными с БД с помощью AJAX, обрабатывать их и выдавать результат. И когда научитесь, понимание, как это использовать в ДЛЕ, само придет. Изменено 28 декабря 2016 пользователем alex32 1 Цитата Ссылка на сообщение Поделиться на других сайтах
cyca 0 Опубликовано: 28 декабря 2016 Рассказать Опубликовано: 28 декабря 2016 Автор 7 минут назад, alex32 сказал: Ну вот с этого и надо было начинать, а не права качать. А теперь я открою несколько маленьких секретов: 1. Работа с AJAX в ДЛе ничем не отличается от работы с AJAX в любых других php-приложениях. Это означает, что надо изучать не ДЛЕ, а php в целом, что бы понимать, что происходит. Далее, какую такую документацию для разработчиков вы хотите? РАзработчик у ДЛЕ один, и он часто бывает тут на форуме. Но разжовывать элементарные вещи (как написать Hell W) https://dle-news.ru/extras/online/index.html Раздел разработчикам. Очень скудно описано и хорошо если обновлялось последний раз пару лет назад. Вообщем я уже понял, что кинуть пару толковых ссылок это называется разжевать Цитата Ссылка на сообщение Поделиться на других сайтах
alex32 942 Опубликовано: 28 декабря 2016 Рассказать Опубликовано: 28 декабря 2016 6 минут назад, cyca сказал: Раздел разработчикам. Очень скудно описано и хорошо если обновлялось последний раз пару лет назад. Написано там ровно столько, сколько нужно разработчикам, что бы понять, как работать с ДЛЕ. Что там еще должно быть написано? "Откройте программу для редактирования php-файлов. Создайте новый документ. Теперь в первой строке напишите <?php" так что ли?ТАм все толково написано. Учите php и будете понимать, о чем там речь идет. 8 минут назад, cyca сказал: Вообщем я уже понял, что кинуть пару толковых ссылок это называется разжевать Про разжевать я уже выше написал. Яне понимаю, что такое разжевать и почему кто-то это должен делать. Модуль кому нужен? Мне? Еще кому-то тут на форуме? Модуль нужен вам. Берите книжки и учите. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
cyca 0 Опубликовано: 28 декабря 2016 Рассказать Опубликовано: 28 декабря 2016 Автор Я просто спросил про описание работы DLE с точки зрения разработчика Я думаю, что вероятно все, кто писали в этой теме, смотрели и разбирали каждый файл движка по строчкам, и их возмущает мое желание получить готовое описание Жаль нельзя удалить эту тему. Цитата Ссылка на сообщение Поделиться на других сайтах
alex32 942 Опубликовано: 28 декабря 2016 Рассказать Опубликовано: 28 декабря 2016 5 минут назад, cyca сказал: Я просто спросил про описание работы DLE с точки зрения разработчика С точки зрения разработчика, ему вообще это не надо. Он разрабатывает этот движок и продает. Этот движок это результат его работы. А что бы написать модуль, не надо разбирать ДЛЕ, как вы выразились "каждый файл по строчкам", внутри ДЛе никакой магии нет, и волшебства и тайн сакральных тоже. достаточно уметь работать с php. А уж с этим умением написать модуль для ДЛЕ очень легко. ЛЕгче, чем для многих существующих движков. Ваша беда в том, 9 часов назад, cyca сказал: Мне нужен был модуль статистики на DLE, я прочитал пару книг по PHP+MySQL и решил заняться этим сам. то есть, хватанули макушек, научились писать <?php echo "Hello Word", радостно лапки потерли и решили, что "О, ща я модулище то наваяю" А потом, ой! И не получились. И начали грешить на ДЛЕ и плохую документацию. А грешить надо на себя. В документации информации для разработчиков достаточно более чем. Любому, кто мало-мальски понимает php инфы в том разделе выше головы и все понятно, что и как делать. Учиться надо, а не думать, что, повторюсь, будет написано 15 минут назад, alex32 сказал: "Откройте программу для редактирования php-файлов. Создайте новый документ. Теперь в первой строке напишите <?php" 1 Цитата Ссылка на сообщение Поделиться на других сайтах
SKYNET74 315 Опубликовано: 29 декабря 2016 Рассказать Опубликовано: 29 декабря 2016 Опозорили бедного "разработчика"...) Раз уж тему раздули, пора бы уже Владимиру сделать подключение модулей в DLE так же, как это сделано в админке, т.е. таблица+кеширование, а не редактированием engine.php. Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.