Новости Joomla

Astroid обновился до версии 3.3.7!

Astroid обновился до версии 3.3.7!

Astroid — это мощный фреймворк для дизайнеров и разработчиков, позволяющий создавать адаптивные, быстрые и надежные веб-сайты и шаблоны на базе Joomla.

Главное в новой версии:

-   Исправлена загрузка файлов макетов

В предыдущем крупном релизе Astroid 3.3.6 были сделаны важные улучшения:

Основные моменты:

  • Улучшенный UI/UX в ключевых областях конфигурации
  • Повышенная стабильность и согласованность в Layout Builder и Form Builder
  • Исправления ошибок на основе отзывов сообщества
  • Улучшенная обработка визуальных эффектов, границ и шрифтов

Улучшения:

  • Обновленный UX Layout Builder
  • Улучшенный эффект предзагрузчика
  • Улучшенный стиль границ
  • Улучшенный UI/UX вкладки «Layout» в Template Options

Исправления ошибок:

  • Решены проблемы с некорректными динамическими значениями
  • Исправлен Color Transform при прокрутке
  • Устранены проблемы с работой Form Builder в Article Layout и Module Layout Builder
  • Исправлена проблема с созданием ненужных временных файлов при обработке шрифтов

Скачать: https://github.com/templaza/astroid-framework/releases/tag/v3.3.7

Как тестировать 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

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

Kosiak

  • Захожу иногда
  • 76
  • 1 / 0
  • Рулевой
При добавлении нового материала открывается wysiwyg редактор, мы имеем возможность редактировать заголовок статьи, и основной текст.
Необходимо добавить несколько новых полей в материал, наравне с заголовком статьи, чтобы при просмотре материала они отображались, к примеру, снизу в небольшом блоке.

Например, нужно добавить поля к материалу:
- Источник информации
- Тип лицензии (выпадающим списком чтоли сделать?)

Подскажите, может быть есть какое-то расширение решающее этот вопрос?
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Дополнительные поля в материале
« Ответ #1 : 19.08.2008, 13:19:02 »
Свеженькое, сам не проверял - http://joomlaforum.ru/index.php/topic,40455.0.html
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Kosiak

  • Захожу иногда
  • 76
  • 1 / 0
  • Рулевой
Re: Дополнительные поля в материале
« Ответ #2 : 19.08.2008, 13:58:15 »
beliyadm
Спасибо, но хотелось бы что-то посерьёзней чем костыли (хаки). Может быть есть именно расширение (плагин или компонент), которое рулит этим процессом?
*

era

  • Администратор
  • 1588
  • 392 / 5
  • В туалете лучше быть пользователем, чем админом.
Re: Дополнительные поля в материале
« Ответ #3 : 20.08.2008, 06:48:21 »
именно так и решили, отдельная таблица с тремя полями: ID собственное, ID материала, ID категории
да так-то и двух хватит столбцов: ID материала, ID категории
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Дополнительные поля в материале
« Ответ #4 : 20.08.2008, 08:18:15 »
да так-то и двух хватит столбцов: ID материала, ID категории
теоретически да, но от третьего инкрементного поля вреда не будет и никогда не знаешь когда оно понадобится :)
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

vasya000

  • Захожу иногда
  • 109
  • 0 / 0
  • Реально Вася :)
Re: Дополнительные поля в материале
« Ответ #5 : 02.08.2009, 23:44:16 »
Уважаемые мэтры своего дела, а не подскажите ли Вы, новичку-первооткрывателю пару секретиков, в частности связанных с полями в материале!?
Я использую QuickFAQ на J!1.5! Встала задача такая:как добиться,что бы материалы,публикуемые(в моем случае) в всего лишь в одной моей категории были эксклюзивны!Тобешь не повторялись ;D!Желательно конечно же иметь 2 поля для названия материала,публикуемого пользователями,ну да ладно...  ;) Основная задача,-это сделать так(сам не знаю как) что бы нельзя было создавать материалы в одной моей категории с одинаковым названием!Может подтолкнете хотя бы куда копать мне с этой задачей?Круто конечно же еслиб на "пальцах" ::) все объяснили!
С уважением!  ;)
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Дополнительные поля в материале
« Ответ #6 : 03.08.2009, 10:32:42 »
vasya000 - только в пределах одной категории или вообще сделать запрет на одинаковые имена?
Если второе, то можно выполнить запрос
Код: sql
ALTER TABLE `jos_content` ADD UNIQUE (
`title`
)
Теперь при попытке создать второй материал с таким же заголовком будет выдаваться SQL ошибка, а чтобы было красиво - нужно писать дополнительно проверку в ядре (либо системный плагин)
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

vasya000

  • Захожу иногда
  • 109
  • 0 / 0
  • Реально Вася :)
Re: Дополнительные поля в материале
« Ответ #7 : 03.08.2009, 11:59:28 »
Уважаемый beliyadm! А куда вписать мне этот код? Конечно было бы не лишним знать какой запрос вписать в пределах и одной категории(всяко может быть)! ^-^
"нужно писать дополнительно проверку в ядре (либо системный плагин)"- а это как будет выглядеть(я имею введу какой код мне нужно прописать), может уже готовое решение есть????
Спасибо! *DRINK*
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Дополнительные поля в материале
« Ответ #8 : 03.08.2009, 12:03:05 »
насчет готового решения не знаю, не встречал но и не искал
готовый код конечно сразу не выдам, правильным решением было бы написание дополнительного плагина для админки в котором делать проверку на существование материала с таким же именем в пределах категории, но этим надо заниматься.

А если вот такое хардкодовое решение запросом - то выполнить в phpmyadmin (убедившись что префикс таблиц у нас действительно jos)
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

vasya000

  • Захожу иногда
  • 109
  • 0 / 0
  • Реально Вася :)
Re: Дополнительные поля в материале
« Ответ #9 : 03.08.2009, 12:08:03 »
то выполнить в phpmyadmin (убедившись что префикс таблиц у нас действительно jos)

да,префикс таблиц у меня jos!Просто в поле  "Выполнить SQL запрос(ы) на БД" вписать этот код!?А галочку "Показать данный запрос снова" ставить?
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Дополнительные поля в материале
« Ответ #10 : 03.08.2009, 12:28:54 »
да,префикс таблиц у меня jos!Просто в поле  "Выполнить SQL запрос(ы) на БД" вписать этот код!?А галочку "Показать данный запрос снова" ставить?
можно и поставить, будет снова показан текст запроса. Не забываем делать резервную копию!
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

vasya000

  • Захожу иногда
  • 109
  • 0 / 0
  • Реально Вася :)
Re: Дополнительные поля в материале
« Ответ #11 : 03.08.2009, 12:47:04 »
Я выполнил этот запрос,но когда пишу материал в QuickFAQ с названием,которое уже было использовано-он всеравно добавляется!Я пишу название материала тоже что и использовалось,а ответ(описание) - конечно же другое..... В чем может быть загвостка??
Может в запросе нужно не jos_content а jos_quickfaq?Не буду умничать,-не знаю.... crazy!
А как делать резервную копию?Пардон за ламерские вопросы! :laugh:
« Последнее редактирование: 03.08.2009, 12:53:00 от vasya000 »
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Дополнительные поля в материале
« Ответ #12 : 03.08.2009, 13:11:29 »
я писал для стандартного com_content, если нужно для QuickFAQ - то конечно же да, смотрите таблицу jos_quickfaq и вместо уникального "title" подставляйте имя нужного поля
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

vasya000

  • Захожу иногда
  • 109
  • 0 / 0
  • Реально Вася :)
Re: Дополнительные поля в материале
« Ответ #13 : 03.08.2009, 13:20:42 »
Блин,Вы меня простите,но я вобще ни че не понял! :-X
У меня есть такие строки с префиксом jos:
 jos_quickfaq_categories
  jos_quickfaq_cats_item_relations
  jos_quickfaq_favourites
  jos_quickfaq_files
  jos_quickfaq_files_item_relations
  jos_quickfaq_items
  jos_quickfaq_tags
  jos_quickfaq_tags_item_relations
какая из них отвечает за название материала?
Может поподробнее,  beliyadm! !!!???!!!
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Дополнительные поля в материале
« Ответ #14 : 03.08.2009, 13:32:05 »
это таблицы, выбираем наверно jos_quickfaq_items (если я правильно понимаю название), в ней находим поле типа name или title или еще как то (которое содержит заголовок материала) и подставляем в запрос вместо title (ну и таблицу тоже соответственно указываем нужную для которой делаем ALTER TABLE
Детально не скажу, данным компонентом никогда в жизни не пользовался
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

vasya000

  • Захожу иногда
  • 109
  • 0 / 0
  • Реально Вася :)
Re: Дополнительные поля в материале
« Ответ #15 : 04.08.2009, 03:09:04 »
Все!Разобрался!!!!!
Да,конечно жестковато выглядит....  ::)
Слушайте,ребят,а реально сделать такой запрос к базе, что б если чел пишет название материала какое уже использовалось,а описание к нему свое то материал с таким же именем не создается,а описание(ответ в данном случае) отправлялось к тому материалу,который уже был создан!
Реально такое осуществить!? *DRINK*
« Последнее редактирование: 04.08.2009, 03:26:19 от vasya000 »
*

vasya000

  • Захожу иногда
  • 109
  • 0 / 0
  • Реально Вася :)
Re: Дополнительные поля в материале
« Ответ #16 : 06.08.2009, 17:32:36 »
насчет готового решения не знаю, не встречал но и не искал
готовый код конечно сразу не выдам, правильным решением было бы написание дополнительного плагина для админки в котором делать проверку на существование материала с таким же именем в пределах категории, но этим надо заниматься.

А если вот такое хардкодовое решение запросом - то выполнить в phpmyadmin (убедившись что префикс таблиц у нас действительно jos)

Уважаемый beliyadm, а можно например как-нибудь страницу с ошибкой ("хардкодовое решение") заменить своей,с текстом что-то типа "такой материал уже создан,воспользуйтесь поиском"?
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Дополнительные поля в материале
« Ответ #17 : 06.08.2009, 17:35:33 »
Уважаемый beliyadm, а можно например как-нибудь страницу с ошибкой ("хардкодовое решение") заменить своей,с текстом что-то типа "такой материал уже создан,воспользуйтесь поиском"?
нет, так не получится, ведь эта страница в принципе не знает почему произошла ошибка.
Проще чуть разобраться и добавить проверку в форму админки по созданию материала, в контроллер дописать обработку (проверка существования такого материала) и выдавать return false;
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

vasya000

  • Захожу иногда
  • 109
  • 0 / 0
  • Реально Вася :)
Re: Дополнительные поля в материале
« Ответ #18 : 06.08.2009, 19:20:09 »
нет, так не получится, ведь эта страница в принципе не знает почему произошла ошибка.
Проще чуть разобраться и добавить проверку в форму админки по созданию материала, в контроллер дописать обработку (проверка существования такого материала) и выдавать return false;
шандец короче.... ладно,будем думать.... :)
*

vasya000

  • Захожу иногда
  • 109
  • 0 / 0
  • Реально Вася :)
Re: Дополнительные поля в материале
« Ответ #19 : 15.08.2009, 00:11:38 »
Проще чуть разобраться и добавить проверку в форму админки по созданию материала
beliyadm, вот что я нашел:
CREATE TABLE IF NOT EXISTS `table` (
....
) ENGINE=... DEFAULT CHARSET=...;

http://phpforum.ru/index.php?showtopic=20107

но у меня что-то не получается...
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Дополнительные поля в материале
« Ответ #20 : 15.08.2009, 00:17:06 »
ты не то нашел, это проверка на уровне запроса SQL cуществования указанной таблицы БД, тебе же нужно совершенно другое - при сохранении материала (есть такой триггер в админке) проверять наличие идентичного названия в заданной категории и возвращать false при провале
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

vasya000

  • Захожу иногда
  • 109
  • 0 / 0
  • Реально Вася :)
Re: Дополнительные поля в материале
« Ответ #21 : 15.08.2009, 00:26:50 »
beliyadm, а если например не заниматься этим геммором (для меня это ваще невыполнимая задача,тк я ваще ни че не понимаю crazy!), а сделать с проверкой Ajax!Чел пишет название,тут же понятно что есть такая тема или нету!Это проще реализовать?
 *DRINK*
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Дополнительные поля в материале
« Ответ #22 : 15.08.2009, 00:51:56 »
в любом случае (и на AJAX в том числе) нужно делать запрос в БД и проверять соответствие заголовка, если не знаешь php, но связку JS+PHP (что и есть по сути ajax) - уж точно будет сложнее сделать
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

vasya000

  • Захожу иногда
  • 109
  • 0 / 0
  • Реально Вася :)
Re: Дополнительные поля в материале
« Ответ #23 : 15.08.2009, 11:59:37 »
beliyadm, я тут на форумчике другом поспрашивал... вот такой код предлагают для обработки ошибки:

Код
$result=mysql_query ("insert into `xxx` set title='dfdfd'");
if ($result) {
    // все ОК
} else {
   //Вывести сообщение
}

и такой код (если без ALTER TABLE... )

Код
//Ввели $title
$result=mysql_query ("select count (*) from `xxx` were title='$title'");
$row=mysql_fetch_row ($result);
$kol=$row[0];
if ($kol) {
    // Уже имеется запись - Вывести сообщение
} else {
   //все ОК
}

Если это верно,то куда мне воткнуть этоот PHP-шный код? *DRINK*
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Дополнительные поля в материале
« Ответ #24 : 15.08.2009, 12:16:52 »
второй вариант более правильный, только нужно еще добавить условие WHERE catid = 'текущая категория', я как понял тебе нужно избежать дублирования в пределах одной категории. И не mysql_query а использовать стандартное API движка $bd
А вот куда воткнуть - надо смотреть где происходит обработка сохранения материала
Сейчас дам решение
« Последнее редактирование: 15.08.2009, 12:25:40 от beliyadm »
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

vasya000

  • Захожу иногда
  • 109
  • 0 / 0
  • Реально Вася :)
Re: Дополнительные поля в материале
« Ответ #25 : 15.08.2009, 12:40:27 »
Да, beliyadm, в пределах одной категории... и стандаотный MySQL без всяких там query!
Жду!
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Дополнительные поля в материале
« Ответ #26 : 15.08.2009, 13:03:38 »
Значит вот такое решение хардокодом у меня работает прекрасно - не дает создавать одинаковые заголовки в пределах одной категории
administrator\components\com_content\controller.php
находим там функцию сохранения function saveContent (), в самом ее конце есть блок switch ($task) {многа букав}, заменяем его на такой вот код
Код: php
//проверка на существование одинаковых заголовков
        $query = 'SELECT title FROM #__content WHERE title LIKE "'.$row->title.'" AND catid = '.$row->catid.' AND id <> '.$row->id.' AND state=1';
$db->setQuery ($query);
$sql = $db->loadObject ();
if ($sql->title != '') {
$msg = 'Такой материал уже существует';
$task = 'apply';
} else {
$msg = JText::sprintf ('SUCCESSFULLY SAVED CHANGES TO ARTICLE', $row->title);
}
switch ($task)
{
case 'go2menu' :
$mainframe->redirect ('index.php?option=com_menus&menutype='.$menu);
break;

case 'go2menuitem' :
$mainframe->redirect ('index.php?option=com_menus&menutype='.$menu.'&task=edit&id='.$menuid);
break;

case 'menulink' :
ContentHelper::menuLink ($redirect, $row->id);
break;

case 'resethits' :
ContentHelper::resetHits ($redirect, $row->id);
break;

case 'apply' :
$mainframe->redirect ('index.php?option=com_content&sectionid='.$redirect.'&task=edit&cid[]='.$row->id, $msg);
break;

case 'save' :
default :
$msg = JText::sprintf ('Successfully Saved Article', $row->title);
$mainframe->redirect ('index.php?option=com_content&sectionid='.$redirect, $msg);
break;
}
И сохраняем (не забываем сохранить в кодировке UTF-8, чтобы наша русская надпись алерт работала). В принципе сам материал сохраняется, но не дает выйти из режима редактирования материала пока не изменим заголовок

Вообще то есть такое событие onBeforeContentSave, можно оформить плагином, но я не придумал как без сохранения материала выдавать предупреждение и возвращать автора в материал без потери внесенного текста
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

vasya000

  • Захожу иногда
  • 109
  • 0 / 0
  • Реально Вася :)
Re: Дополнительные поля в материале
« Ответ #27 : 15.08.2009, 13:21:32 »
Хорошая работа дружище! :D
Но я что-то туплю... при создании такого же материала вылезает тупо страница с жесткой ошибкой!
я заменил все что написано ниже switch ($task) на твой код,
до вот такого знака
/**
Правльно?

так так так... у меня почему то не выбирается категория при создании материала.... ее вобще нету...
В менеджере категорий она есть..... хммм
« Последнее редактирование: 15.08.2009, 13:27:07 от vasya000 »
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Дополнительные поля в материале
« Ответ #28 : 15.08.2009, 13:32:34 »
нет, не до /**, там же еще закрывающие скобки есть
приложил свой файл контроллера, попробуй заменить (не забывай про резервную копию оригинала)

[вложение удалено Администратором]
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

vasya000

  • Захожу иногда
  • 109
  • 0 / 0
  • Реально Вася :)
Re: Дополнительные поля в материале
« Ответ #29 : 15.08.2009, 13:37:28 »
воткнул твой controller, тоже самое почему то...

вот мой контроллер!

[вложение удалено Администратором]
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Изображение-ссылка в материале

Автор Omedius

Ответов: 4
Просмотров: 2529
Последний ответ 02.07.2017, 21:11:10
от vipiusss
Как размещать h1 в header в материале?

Автор kirill-juk

Ответов: 12
Просмотров: 3140
Последний ответ 02.11.2016, 15:56:51
от kirill-juk
Фон текста в материале выделен стеклом за которым что то находится

Автор masfisha

Ответов: 3
Просмотров: 1876
Последний ответ 20.03.2015, 13:19:18
от umbabaraumba
В админке нет поля ввода логина/пароля

Автор menar

Ответов: 4
Просмотров: 2009
Последний ответ 25.02.2015, 21:51:37
от menar
Нету поля "Lightbox Rel параметр"

Автор slavikrovno

Ответов: 0
Просмотров: 1261
Последний ответ 22.01.2014, 02:16:40
от slavikrovno