Новости Joomla

Как тестировать Joomla PHP-разработчику? Компонент Patch tester.

👩‍💻 Как тестировать Joomla PHP-разработчику? Компонент Patch tester.Joomla - open source PHP-фреймворк с готовой админкой. Его основная разработка ведётся на GitHub. Для того, чтобы международному сообществу разработчиков было удобнее тестировать Pull Requests был создан компонент Patch Tester, который позволяет "накатить" на текущую установку Joomla именно те изменения, которые необходимо протестировать. На стороне инфраструктуры Joomla для каждого PR собираются готовые пакеты, в которых находится ядро + предложенные изменения. В каждом PR обычно находятся инструкции по тестированию: куда зайти, что нажать, ожидаемый результат. Тестировщики могут предположить дополнительные сценарии, исходя из своего опыта и найти баги, о которых сообщить разработчику. Или не найти, и тогда улучшение или исправление ошибки быстрее войдёт в ядро Joomla. Напомню, что для того, чтобы PR вошёл в ядро Joomla нужны минимум 2 положительных теста от 2 участников сообщества, кроме автора. Видео на YouTubeВидео на VK ВидеоВидео на RuTubeКомпонент на GitHub https://github.com/joomla-extensions/patchtester@joomlafeed#joomla #php #webdev #community

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6.2PageBuilder Toolkit - это специализированный плагин для конструктора страниц Yootheme Pro, содержит набор различных утилит для ускорения процесса работы и отладки макета, множественные улучшения в интерфейсе, включая поддержку dark mode, подсказки, быстрая смена разрешения в окне просмотра и много чего еще.v.1.6.2 Что нового?- Индикатор статусов: теперь не просто показывает состояние запросов, но и делает автоматические попытки их отправки при кратковременных сбоях в сети, а если это не помогло, то переводит конструктор в ручной режим, что позволяет сохранит макет и настройки темы прежде чем вы потеряете все, что было сделано с момента последнего сохранения- Подсветка ошибок в макете: плагин анализирует код страницы и может автоматически подсвечивать data атрибуты с кучей мусора, которые попадают в код страницы при копипасте из Figma в TinyMCE (пригодится для старых макетов, в текущей работе плагин сам очищает код мусора). Также есть подсветка семантических ошибок сборки - дубли h1 тега на странице и вложенных друг в друга заголовков.- Улучшена поддержка будущего релиза Yootheme Pro 5 и редактора CodeMirror 6Плагин для русскоязычных пользователей доступен в каталоге расширений SovMart и распространяется за символическую плату (100р). Разработчики Joomla расширений и партнеры автора могут получить плагин бесплатно.Для работы плагина необходим конструктор страниц Yootheme Pro.Разработчик плагина - участник нашего сообщества Александр Судьбинов (@alexrevo), член официальной группы поддержки Yootheme Pro. Страница расширенияОписание на сайте автора@joomlafeed#joomla #yootheme

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

Sergey2

  • Давно я тут
  • 651
  • 15 / 1
Есть таблица в БД, созданная мной. В таблице идет привязка данных к id материала.
Нужно при выводе материала вывести эти данные. Данные нужно вывести после заголовка и перед текстом, так что подойдет com_content.
А как их выводить? Вернее даже не так.
Как более правильно сформировать sql запрос?
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Вывести в материале значения из БД
« Ответ #1 : 30.09.2010, 07:22:45 »
Подобная тема: http://joomlaforum.ru/index.php/topic,131575.msg719308.html#msg719308
добавляешь в выборку свое поле, скажем SELECT my.some_field ....
а во фрагмент FROM присоединяешь свою таблицу, типо так:
FROM #__content AS a
    LEFT JOIN #__mytable AS my ON my.article_id = a.id'
А во вью материала выводишь так: echo $this->article->some_field;
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

Sergey2

  • Давно я тут
  • 651
  • 15 / 1
Re: Вывести в материале значения из БД
« Ответ #2 : 30.09.2010, 19:19:29 »
а у меня там должно не одно поле "вылести", а несколько. Как массив получить? Массив я знаю как обработать, а вот с SQL у меня туго :(
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: Вывести в материале значения из БД
« Ответ #3 : 30.09.2010, 19:42:40 »
Код: php
$sql = "SELECT id, title, alias FROM #__content WHERE state=1 LIMIT 10";
$db = &JFactory::getDBO();
$db->setQuery( $sql );
$rows = $db->loadAssocList();

print_r( $rows );
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

Sergey2

  • Давно я тут
  • 651
  • 15 / 1
Re: Вывести в материале значения из БД
« Ответ #4 : 30.09.2010, 19:46:21 »
Код: php
$sql = "SELECT id, title, alias FROM #__content WHERE state=1 LIMIT 10";
$db = &JFactory::getDBO();
$db->setQuery( $sql );
$rows = $db->loadAssocList();

print_r( $rows );
неее, ну на таком уровне я sql знаю. Как его в вышепрведенный пример засунуть? Или
$this->article->some_fields->rows - и есть нужный мне массив?
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Вывести в материале значения из БД
« Ответ #5 : 30.09.2010, 19:49:04 »
Блин...
SELECT my.some_field, my.some_field2, my.some_field3 ...

echo $this->article->some_field;
echo $this->article->some_field2;
echo $this->article->some_field3;
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

Sergey2

  • Давно я тут
  • 651
  • 15 / 1
Re: Вывести в материале значения из БД
« Ответ #6 : 30.09.2010, 19:52:28 »
Блин...
SELECT my.some_field, my.some_field2, my.some_field3 ...

echo $this->article->some_field;
echo $this->article->some_field2;
echo $this->article->some_field3;
я наверно некоректно выразился. Не поле а запись. Т.е. заданному SELECT будут соответствовать несколько записей. Мне бы массив получить....
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Вывести в материале значения из БД
« Ответ #7 : 30.09.2010, 20:18:19 »
У вас одному материалу соответсвтвует несколько записей?
Тогда думаю (по крайней мере будет проще) нужно делать отдельный запрос в вашу таблицу

после          
Код
if ( ! $this->_article ) {
return false;
}
пишем

Код
			$query = 'SELECT *.
' FROM #__mytable AS my' .
' WHERE my.id = ' . (int) $this->_id;
$this->_db->setQuery($query);
$this->_article->myfields = $this->_db->loadObjectList();

print_r($this->_article->myfields);
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

Sergey2

  • Давно я тут
  • 651
  • 15 / 1
Re: Вывести в материале значения из БД
« Ответ #8 : 30.09.2010, 20:21:26 »
У вас одному материалу соответсвтвует несколько записей?
да, именно так.
Цитировать
Тогда думаю (по крайней мере будет проще) нужно делать отдельный запрос в вашу таблицу

после          
Код
if ( ! $this->_article ) {
return false;
}
пишем

Код
			$query = 'SELECT *.
' FROM #__mytable AS my' .
' WHERE my.id = ' . (int) $this->_id;
$this->_db->setQuery($query);
$this->_article->myfields = $this->_db->loadObjectList();

print_r($this->_article->myfields);
ясно, спасибо.
*

Sergey2

  • Давно я тут
  • 651
  • 15 / 1
Re: Вывести в материале значения из БД
« Ответ #9 : 02.10.2010, 01:02:44 »
и последний глупый вопрос. Вот сделал я это все. Наковырял в form.php и в админке. А как теперь сделать так что бы сохранялось это после редактирования материала?
Когда поле в той же таблице как и митериал (ну или в другой таблице), то оно "само" сохраняется. Но у меня там не одно поле, а несколько и сколько конкретно неизвестно. В каком месте все это дело сохраняется? Где ковырять?
*

Sergey2

  • Давно я тут
  • 651
  • 15 / 1
Re: Вывести в материале значения из БД
« Ответ #10 : 08.10.2010, 16:04:52 »
А как с массивами работать? Вот поле metadata в таблице _content - это же массив. Как мне сделать такое же поле?
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Вывести в материале значения из БД
« Ответ #11 : 08.10.2010, 16:18:53 »
Это обычное ничем не примечаетьное поле типа text.
Чтобы получить значения из поля metadata:
Код: php
$params = new JParameter($row->metadata);
echo $params->get('robots');
echo $params->get('author');
чтобы записать:
$params = new JParameter('');
$params->set('author', 'вася');
echo $params->toString();
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Вывести в материале значения из БД
« Ответ #12 : 08.10.2010, 16:20:07 »
Можно сохранять и вытягивать чистый массив, без всяких jparameter. Тут на помощь придут php-функции serialize() и unserialize()
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

Sergey2

  • Давно я тут
  • 651
  • 15 / 1
Re: Вывести в материале значения из БД
« Ответ #13 : 08.10.2010, 16:27:28 »
Неее, мне не надо работать с metadata. Я хочу создать вот такую фигню:
При редактировании материала есть выпадающий список:
<select><option ... и т.д.
Собственно с ним я работать научился. Все нормально. Но мне нужно что бы в этом селекте можно было выбрать несколько значений, т.е. уже не одна переменная <select name"my_element" ... а <select name"my_element[]"... вот как этот массив мне сохранить?
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Вывести в материале значения из БД
« Ответ #14 : 08.10.2010, 16:38:55 »
$values = JRequest::getVar('my_element', array(), 'array');
в базу пишем implode('|', $values)

в параметрах модуля это все автоматизировано кстати.
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

Sergey2

  • Давно я тут
  • 651
  • 15 / 1
Re: Вывести в материале значения из БД
« Ответ #15 : 08.10.2010, 16:43:07 »
$values = JRequest::getVar('my_element', array(), 'array');
в базу пишем implode('|', $values)

в параметрах модуля это все автоматизировано кстати.
а можно поподробней для тупых, типа меня. У меня проблема именно с сохранением в базу. Раньше я ничего для этого не делал. Сделал как тут написано http://joomlaforum.ru/index.php/topic,40455.0.html и все само сохранялось. Куда надо вставить строчку implode('|', $values) что бы в базу записалось?
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Вывести в материале значения из БД
« Ответ #16 : 08.10.2010, 16:58:38 »
А..ну тогда чесно говоря не подскажу...
И помоему проще не воротить такую кучу файлов, а добавить в administrator\components\com_content\models\article.xml в раздел params это:
Код: xml
		<param name="my_element" type="list" label="My Element">
<option value="0">value 1</option>
<option value="1">value 2</option>
<option value="2">value 3</option>
</param>
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

Sergey2

  • Давно я тут
  • 651
  • 15 / 1
Re: Вывести в материале значения из БД
« Ответ #17 : 08.10.2010, 17:02:36 »
А..ну тогда чесно говоря не подскажу...
И помоему проще не воротить такую кучу файлов, а добавить в administrator\components\com_content\models\article.xml в раздел params это:
Код: xml
		<param name="my_element" type="list" label="My Element">
<option value="0">value 1</option>
<option value="1">value 2</option>
<option value="2">value 3</option>
</param>
мне это для каждого материала нужно :(

Тогда остается только вариант с "конвертацией" массива в одну переменную в джаваскрипте.
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Вывести в материале значения из БД
« Ответ #18 : 08.10.2010, 17:09:47 »
мне это для каждого материала нужно :(

И что? твой параметр появится рядом с Псевдоним автора, Уровень доступа, Дата создания и тдд.. они же в каждом материале есть, верно?
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

Sergey2

  • Давно я тут
  • 651
  • 15 / 1
Re: Вывести в материале значения из БД
« Ответ #19 : 08.10.2010, 17:15:08 »
И что? твой параметр появится рядом с Псевдоним автора, Уровень доступа, Дата создания и тдд.. они же в каждом материале есть, верно?
как там одновременно выбирать несколько значений?
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Вывести в материале значения из БД
« Ответ #20 : 08.10.2010, 17:47:21 »
в Joomla нет такой фишки. нужно дописывать самому. но это не сложно. береш за основу list( libraries/joomla/html/elemets/list.php вродебы...)
Кидаешь в administrator\components\com_content\elements, переименовываешь в скажем multylist. Далее внутри тоже все переименовываешь в multylist, и JHTML::_('select.generic'...) или как оно там.. добавляешь еще атрибуты multiple="multiple" size="10". Вот и усе. в xml'ке вместо list указываешь тип multylist

верней multilist
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

Sergey2

  • Давно я тут
  • 651
  • 15 / 1
Re: Вывести в материале значения из БД
« Ответ #21 : 08.10.2010, 19:28:54 »
в Joomla нет такой фишки. нужно дописывать самому. но это не сложно. береш за основу list( libraries/joomla/html/elemets/list.php вродебы...)
Кидаешь в administrator\components\com_content\elements, переименовываешь в скажем multylist. Далее внутри тоже все переименовываешь в multylist, и JHTML::_('select.generic'...) или как оно там.. добавляешь еще атрибуты multiple="multiple" size="10". Вот и усе. в xml'ке вместо list указываешь тип multylist

верней multilist
мда. Пока решил вопрос через скрипт на джаваскрипт, который перед сохранением, "собирает" значения в одно поле. Потом, перед выдачей пользователю, на PHP распарсиваю обратно :)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как вывести подобное меню?

Автор kelevra

Ответов: 3
Просмотров: 5006
Последний ответ 26.06.2016, 23:28:34
от kelevra
Как в title вывести дополнительное поле из БД

Автор Sergey2

Ответов: 2
Просмотров: 2757
Последний ответ 30.09.2010, 04:06:01
от Sergey2