Новости Joomla

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

👩‍💻 Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1. Это релиз, в который включены уже проверенные изменения, но ещё очень многие исправления и улучшения ждут своей очереди. Joomla следит за качеством и безопасностью своего кода и каждое изменение должно быть успешно протестировано как минимум ещё двумя участниками сообщества. Разработка Joomla ведётся на платформе GitHub.Филипп Уолтон (Philip Walton) - один из разработчиков, кто активно вносит свой вклад в ядро Joomla. Он уже несколько месяцев посвящает свои послеполуденные часы пятницы работе с Joomla и предлагает присоединиться к нему. 📆 Пятница, 30 мая 2025, с 15:00 до 17:00 по UTC (Лондон) - с 18:00 до 20:00 по Москве.В чате Google Meet Филипп готов помочь с тестированием тем, кто будет делать это в первый раз. А так же он подготовил список лёгких Pull Request, которые можно протестировать довольно быстро. Чем больше тестов будет проведено сейчас, тем меньше ошибок вылезет потом. На данный момент 148 (уже 147 на момент написания заметки) PR на GitHub Joomla ждут тестирования.👩‍💻 Open to all. All together.Также вам поможет сделать первые шаги это видео.GitHub JoomlaДа, это вечер пятницы. Но тестирование занимает порой минут 15, а доброе дело сделано. Просто убедитесь, что разработчик чего-то не пропустил и всё работает как ожидается.#joomla #joomla6 #community

0 Пользователей и 1 Гость просматривают эту тему.
  • 3 Ответов
  • 2898 Просмотров
*

MrImho

  • Осваиваюсь на форуме
  • 33
  • 3 / 0
Нужна помощь в освоении
« : 18.08.2009, 04:12:55 »
Здравствуйте. Прежде чем приступить хочу написать некое вступление.
PS: То что будет написано ниже, необязательно правильно, это сугубо моё мнение, на основе изучения движка в течении одного дня. Вполне возможно я допустил ошибку (и) из-за невнимательности, усталости или по каким бы то ни было причинам.

Всё то время, что я был на форуме, я так сказать присматривался к Joomla, смотрел какие ошибки возникают в чём появляются сложности и т.д. Так вот теперь решил перейти на разработку сайтов при помощи Joomla. Прежде чем создать эту тему, целый день смотрел код Jooml'ы. Конечно есть что мне не понравилось:

3 раза добавлен файл:jimport ('joomla.application.helper');
2 раза добавлен файл:jimport ('joomla.client.ftp');
2 раза добавлен файл:jimport ('joomla.user.helper');
2 раза добавлен файл:jimport ('joomla.filesystem.file');
2 раза добавлен файл:jimport ('joomla.user.authorization');
2 раза добавлен файл:jimport ( 'joomla.user.user');
2 раза добавлен файл:jimport ( 'joomla.environment.uri' );
2 раза добавлен файл:jimport ( 'joomla.html.html' );
2 раза добавлен файл:jimport ( 'joomla.utilities.utility' );
2 раза добавлен файл:jimport ( 'joomla.event.dispatcher');

имеется ввиду одновременный инклуд. Разработчики повидимому не хотели использовать глобальные переменные, видимо, чтобы не было не совместимости с другими скриптами. Но по мне тормоз в компиляции хуже. Самое главное старались избавиться от глобальных переменных, даже пожертвовали скоростью компиляции, и всё равно 1 переменная остаётся глобальной global $mainframe;

Разработчики компонентов используют порой не тот класс db иногда лучше JTable:: использовать, вместо & JFactory::getDBO ();
И вручную писать занового уже имеющийся код. Но это - разработчикам, а не Joomla, что-то я отклонился от темы. Кстати разработчики Joomla как будто забыли про JTable:: и порой тоже его игнорируют, ток не пойму почему.

Есть тормоз из за неправильного порядка инклуда файлов (причём значительный), а javascript Выдал бы тучу ошибок с такой последовательностью инклуда.

Не понял предназначения файла: joomla/registry/format.php Может просто сонный и пропустил что-то. А может бесполезный вовсе.

Зачем это? ini_set ('session.save_handler', 'files'); У всех хостов и так хранение в файлах, а если нет, то запрещено изменять этот параметр, ну может западная политика:-)))

Мне не нравится защита от удалённого инклуда библиотечных файлов, ручками надо править, а этого многим делать не охота мы любители готового! :-)

Многие файлы просто не используются в движке и не документированы на офф сайте. Только для необычных целей библиотеки эти пригодятся. А так зачем их копировать на сервер, лишний объём занимать.
Я думал у нас политика: нужно добавляй, не нужно пусть на локалке лежит).

Не понял к чему это:
function clone ($object) {
   return unserialize (serialize ($object));
}
вначале собирать в 1 строку потом разбирать, вообще ничего не понимаю. Объясните балбесу.
Давайте тогда explode делать так: explode ('blabla',implode ('blabla',explode ('blabla',$var))); Помойму тотже маразм что и в приведённой функции.

мне не нравится в language.php это: var $_default='en-GB'; - пусть будет по умолчанию русский язык! Это шутка, в принципе эта переменная ничего не значит. Просто русский хочу и всё тут ru ru ru. А за бугром пусть en будет.

Не понимаю зачем это: создавать index2.php сувать туда: include ('index.php'); Приколисты блин.
------------------------------------------------------------------------------------------------------------------------------------
Итак перечислил что не понравилось, может я где-то ошибся, поправьте. Только я упёртый "баран" без доказательств останусь при своём мнении и Ваш рейтинг на форуме тоже не повлияет) Люблю себя очень)).

Что делалось дальше, а дальше решил создать компонент. Прочитал доки на офф сайте и приступил. Собираюсь сделать компоненты, который по функционалу будет схож с marketplace. Ток под 1.5 версию. Кстати пишу первый раз в виде MVC структуры, поэто выложил начальную (сырую) версию компонента и прошу тех кто писал компоненты для Joomla в виде MVC структуры взглянуть на код и сказать что не так. Може что-то не туда разместил и т.д. и т.п.
Также есть конкретные вопросы.
1) Контроллеры вот код:
if ($controller=JRequest::getWord ('controller')) {
    $path=JPATH_COMPONENT.DS.'controllers'.DS.$controller.'.php';
    if (file_exists ($path)) {
        require_once $path;
    }else{
        $controller = '';
    }
}
$classname='MainController'.$controller;
$controller=new $classname ();
$controller->execute (JRequest::getVar ('task'));
$controller->redirect ();
Судя из кода надо передавать имя контроллера в пост, гет и т.д. запросах. Так вот мне нужно добавить контроллер в папке controllers
для view=cat. Чтобы всё было понятно на коде установите мой компонент и зайдите в раздел категории.
Теперь о моделях, там должны храниться функции запросов к бд и только? А зачем некоторые разработчики создают папку tables и там извлекают и заносят в массивы данные?

Если может кто напишите простенький мануал. Вида:
Таким образом добавляются контроллеры: .....
Таким образом модели: ...
Таким образом представления: ...
Я уже кое-что разобрал
Например в view.html.php
Название класа должно выглядеть так чтобы всё работало:
class НазваниеконтроллераViewНазвание представления extends JView
{
   function display ($tpl = null) {
      parent::display ($tpl);
   }
}
есть вопрос: Как грузить файл с название отличном от default в представлении (View)?
Также в голове упёрто остаётся наглая мыслишка, о том чтобы попросить того кто делал компоненты для 1.5 версии. Помочь мне, вести меня на этапе разработки. Ведь только первый компонент такой сложный потом поняв что к чему будет легче. Но это так к слову.

Я наверное уморил Вас думаю надо будет остальное в следующей теме. Продолжение освоения Jooml'ы.
Заранее благодарю всех кто будет учавствовать в данном посте. Кстати прошу Вас не посылать меня к компоненту hello Word ни русскому ни английскому с оффа. Эти компоненты исчерпали себя. Мне их кода не достаточно. Я сам ковырял различные компоненты, но там хаос, каждый разработчик пишет в своём стиле порой забываю про стандарты. Мало того стандартные компоненты Joomla (не все) вообще не используют MVC структуру, особенно касается админ части. А если не использовать MVC - зачем тогда 1.5 нужна вообще?!
Ещё раз прошу прощение за столь долгий пост.

[вложение удалено Администратором]
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: Нужна помощь в освоении
« Ответ #1 : 18.08.2009, 04:58:29 »
3 раза добавлен файл:jimport ('joomla.application.helper');
2 раза добавлен файл:jimport ('joomla.client.ftp');
та хоть 100 :)
контроллер импорта подгружает файл только единожды

Разработчики повидимому не хотели использовать глобальные переменные, видимо, чтобы не было не совместимости с другими скриптами.
это какими?

Но по мне тормоз в компиляции хуже.
а как компиляция соотносится с globals ?

Разработчики компонентов используют порой не тот класс db иногда лучше JTable:: использовать, вместо & JFactory::getDBO ();
И вручную писать занового уже имеющийся код. Но это - разработчикам, а не Joomla, что-то я отклонился от темы.
JTable - это надстройка над JDatabase

Кстати разработчики Joomla как будто забыли про JTable:: и порой тоже его игнорируют, ток не пойму почему.
я тоже.
пользуюсь им только в простых случаях

Есть тормоз из за неправильного порядка инклуда файлов (причём значительный), а javascript Выдал бы тучу ошибок с такой последовательностью инклуда.
:)

Не понял предназначения файла: joomla/registry/format.php
Pattern классов для INI/PHP/XML

Мне не нравится защита от удалённого инклуда библиотечных файлов,
О чем речь? defined ('_JEXEC') что ли? :)

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

Не понял к чему это:
function clone ($object) {
   return unserialize (serialize ($object));
}
там, вообще-то, достаточно лаконичный комментарий по этому поводу

вначале собирать в 1 строку потом разбирать, вообще ничего не понимаю. Объясните балбесу.
а ты б почитал про десериализацию объектов ;)

Не понимаю зачем это: создавать index2.php сувать туда: include ('index.php');
ну вот тебе не понять, а им надо было.
если коротко, то это для совместимости при портировании компонентов с линейки 1.0

Что делалось дальше, а дальше решил создать компонент. ... бла-бла-бла
:) я не буду комментировать код ибо сам MVC Joomla 1.5 не пользуюсь (скромно умолчу, почему).
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

MrImho

  • Осваиваюсь на форуме
  • 33
  • 3 / 0
Re: Нужна помощь в освоении
« Ответ #2 : 19.08.2009, 01:09:32 »
Спасибо за некое разъяснение. Теперь жду помощи по разработке компонента. Там появляется ошибка, я даже знаю почему, потому, что не могу поключить контроллер из папки controllers, в принципе include никто не отменял, но хотелось бы по jooml'овски. Благодарю userxp.
« Последнее редактирование: 19.08.2009, 01:13:34 от MrImho »
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: Нужна помощь в освоении
« Ответ #3 : 19.08.2009, 17:46:43 »
ой, блин. я тя умоляю!
делай как умеешь и не заморачивайся этой ерундой.
я вон недавно отказалося от ряда, казалось бы "правильных" джумловских решений.

1. я пользуюсь только тремя функциями DB: loadObjectList, loadRow и loadResult и то только в простых случаях (для экономии места в голове). остальное в топку
2. MVC не пользуюсь вообще (это я уже писал)
3. практически отказался от обращения в $mainframe (редко)
4. не пользуюсь jimport по определению ;D

зы. недавненька заметил одну интересную ремарку разработчиков Zoo в SEF роутере... я сначала и сам не обратил внимание, пока не проверил реальный возврат переменных из URL при репарсинге строки запроса....
вот кто бы мне объяснил, почему ,если передать двоеточие, то на возврат идет тире, а если передать тире, то идет возврат ....двоеточием ;D


зы. насчет десериализации могу объяснит ьв двух словах (на всякий случай).
PHP 4 не поддерживает клонирование объектов. Это известно.
можно, конечно копировать наследованием и пересборкой переменных, но универсальной функции сделать.... ну это немного геморно да и не быстро.
а пересборка в сериализацию и обратно на выхлопе автоматом пересоздаст объект (благо класс уже подгружен и существует), сделав чистую копию.
это как отмывание бабла :)
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Нужна помощь в написании плагина

Автор makslm

Ответов: 16
Просмотров: 1257
Последний ответ 06.10.2016, 15:48:06
от makslm
Нужна помощь по PHP

Автор pahtab

Ответов: 2
Просмотров: 1343
Последний ответ 26.03.2016, 08:12:43
от b2z
Помощь с com_content

Автор hack3p

Ответов: 1
Просмотров: 936
Последний ответ 09.06.2014, 16:07:29
от b2z