Новости Joomla

Вышел плагин CFI v.2.0.0 - экспорт/импорт материалов Joomla в таблицы.

Вышел плагин CFI v.2.0.0 - экспорт/импорт материалов Joomla в таблицы.

Плагин позволяет делать экспорт материалов Joomla в CSV файл, после чего вы можете отредактировать данные в табличном редакторе (например, Excel или OpenOffice Calc) и затем загрузить файл обратно. В некоторых случаях это удобнее и быстрее.

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

Первые версии плагина CFI создал разработчик AlekVolsk для Joomline. Он разработал версии 1.0.0–1.0.16 для Joomla 3. Затем, в 2026 году, плагин был передан компании WebTolk для дальнейшего развития.

CFI v.2.0.0 — Что нового?

  1. Рефакторинг. Плагин полностью переписан заново.
  2. Новый интерфейс импорта/экспорта. Экспорт и импорт открываются в модальном окне. Появилась возможность выбора свойств материала, тегов и пользовательских полей для экспорта непосредственно перед началом экспорта.
  3. Фильтрация материалов при экспорте. Вы можете отфильтровать нужные материалы с помощью стандартных параметров поиска в панели администратора и экспортировать только их: избранные, опубликованные, материалы из определённых категорий, с заданным тегом и т.д.
  4. Импорт и экспорт всех данных материала. Ранее плагин позволял экспортировать только часть данных. Теперь можно изменять все данные материала, доступные в форме редактирования, включая нередактируемые (просмотры, дата изменения и др.). Это позволяет быстро обновлять meta-description или только данные пользовательских полей.
  5. Импорт только пользовательских полей. Обязательным полем для импорта остаётся только articleid. Это позволяет импортировать исключительно данные пользовательских полей без изменения основного содержимого материала.
  6. Joomla 6. Плагин переписан в соответствии с актуальной архитектурой Joomla 4+ и успешно протестирован на Joomla 6.
  7. Для разработчиков: предобработка плагинами. Возможна обработка данных собственными плагинами группы cfi непосредственно перед импортом или экспортом. Доступные события:
    • onExportPrepareData($event)
    • onImportPrepareArticleData($event)

Системные требования

  • Joomla 4.3+
  • PHP 8.1+

Для обновления со старых версий выпущен релиз 1.0.16, в котором добавлен новый сервер обновлений.

Ссылки

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

zorom

  • Осваиваюсь на форуме
  • 45
  • 5 / 0
Нашол такой глюк. Или мои кривые руки )). Короче создал несколько категорий. Все работает, норм. Обратил внимание что в одной категории описание ввел с ошибками грамм. Выбираю в админке эту категории, редактирую поле "Описание" -нажимаю кнопку "Сохранить". А оно мне не редактирует, а создает еще одну категорию точно с таким названием, другой номер ID естественно.  :o. Шо бы это могло значить?
*

beliyadm

  • Moderator
  • 9758
  • 1665 / 66
  • Севастополь, Россия
ага, встречал такой глюк на 1.8.1, в кишки на предмет исправления не залезал
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Kincher

  • Новичок
  • 6
  • 0 / 0
Ага, и у меня такая пролбема... Решения пока нет?
*

TyT

  • Захожу иногда
  • 81
  • 8 / 3
Аналогичная проблема :(
*

zorom

  • Осваиваюсь на форуме
  • 45
  • 5 / 0
выход нашол пока только такой. (Думаю он наверное пока единственный.). Заходи в phpMyAdmin, находим в нашей базе таблицу jos_datsogallery_catg. Открываем ее, удаляем лишнюю категорию, в той категории правим описание на то что нам нужно. Вот и все - все красиво. И без жертв. Кста если кто знаком с SQL, можна столько интересного сделать. Например перед запуском сайта, я не нашол в админке как сбросить количество просмотров картинок. А с помощью одного запроса мона сразу всем сбросить на ноль., и не только просмотр, все что угодно. Только делать акуратно.))). Может кому интересно будет, незнаю.
*

TyT

  • Захожу иногда
  • 81
  • 8 / 3
Ну я так пока и правлю, через PhpMyAdmin, и ID меняю меняю у категорий... да это не только к компоненту применимо, так и новости создавать можно и админка в таком случае не нужна, но метод не совсем корректен и ошибки связанной с обновлением категории не объясняет...
*

Wertos

  • Захожу иногда
  • 489
  • 22 / 0
Наверно вместо INSERT нада гдето вставить UPDATE :) только хоть убейте немогу найти где...
*

beliyadm

  • Moderator
  • 9758
  • 1665 / 66
  • Севастополь, Россия
вот исправление.
Открываем файл administrator\components\com_datsogallery\admin.datsogallery.php
находим строки для функции function saveCatg($option,$task) примерно 1791
Код: php
    if ($row->cid = 0) {
      $mainframe->redirect("index.php?option=".$option."&task=showcatg",_DG_SUBCAT_SELECT_ERROR);
    }
и удаляем
После этого сохранение редактируемой категории и создание новой проходит корректно. Единственно но - таким образом мы убрали и проверку на привязанность категории к самой себе - потому при создании\редактировании категории не указывайте ее саму в списке "Корневая категория:", иначе сервер повесится в почти бесконечной рекурсии :)
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Wertos

  • Захожу иногда
  • 489
  • 22 / 0
beliyadm, аналогично упёрся в эту функцию... Вот причину ошибки найти немогу. т.е. при редиректе _GET передаётся повторно или что вообще ??
*

beliyadm

  • Moderator
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Wertos - ну так попробуй просто удалить указанные строки с проверкой, я погонял локально на 1.8.1 - редактируется корректно, создается корректно, главное случайно само себя родителем не указать и все будет хорошо. Глубже лезть пока лень, хватает такого решения

Во первых в этой функции совершенно неправильная проверка, в строке if ($row->cid = 0) переменной $row->cid присваивается значение 0, а не проверяется на равенство, ну а дальше тоже есть ньюанс, но это уже тонкости, предложенный мной вариант должен работать
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Wertos

  • Захожу иногда
  • 489
  • 22 / 0
beliyadm, да я проверил ) работает... также проверил как быстро хостер блочит сайт :) достаточно быстро... поэтому какбы для меня это не выхо :)
Рою дальше...
*

beliyadm

  • Moderator
  • 9758
  • 1665 / 66
  • Севастополь, Россия
достаточно быстро... поэтому какбы для меня это не выхо :)
в смысле? Если при редактировании категории не указывать ее же в качестве родителя - никаких проблем нет, соответственно и нагрузка на хостера не выше стандартной при использовании данного компонента
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Wertos

  • Захожу иногда
  • 489
  • 22 / 0
beliyadm, дык я специально указал....
*

beliyadm

  • Moderator
  • 9758
  • 1665 / 66
  • Севастополь, Россия
beliyadm, дык я специально указал....
что указал? я так понимаю у тебя была проблема с созданием новой категории при редактировании существующей, так мы это исправили - какая еще проблема есть?
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Wertos

  • Захожу иногда
  • 489
  • 22 / 0
beliyadm, да ты непонял просто... я специально попробовал присвоить саму себе :)
PS снеси посты чтоб не путать пользователей...
*

beliyadm

  • Moderator
  • 9758
  • 1665 / 66
  • Севастополь, Россия
beliyadm, да ты непонял просто... я специально попробовал присвоить саму себе :)
ну дык я про это предупреждал в своем решении, что сервер повесится, не надо так делать и все будет хорошо. А вообще бы надо в список категорий родительских добавить условие, чтобы текущая категория в нем не отображалась - и вообще будет хорошо
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
С галереей не знаком, поэтому могу не в тему, но что-то мне подсказывает, что вот это
 if ($row->cid = 0) и создает лишнюю категорию, попробуйте  if ($row->cid == 0) .
Должно помочь.
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

beliyadm

  • Moderator
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Lex - тогда прикол в том, что если мы создаем новую категорию, ей в процессе где то присваивается значение 0 и соответственно компонент ругается на то что нельзя себя же делать родителем. Я первое на что обратил внимание - на эту неправильную проверку, потому остановился пока на полном удалении условия
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Wertos

  • Захожу иногда
  • 489
  • 22 / 0
beliyadm, а если сделать чтоб эта категория неотображалось в списке категорий... т.е. делаем например так...
Код
    if ($row->cid = 0) {
      $mainframe->redirect("index.php?option=".$option."&task=showcatg",_DG_SUBCAT_SELECT_ERROR);
    }

меняем на
Код
    if ($row->cid == 0) {
      $mainframe->redirect("index.php?option=".$option."&task=showcatg",_DG_SUBCAT_SELECT_ERROR);
    }
и чтото типа этого в функции ShowDropDownCategoryList в запросе
Код
$query="select *, cid AS id from #__datsogallery_catg and cid != '.$cat.' ORDER BY ordering DESC";
*

beliyadm

  • Moderator
  • 9758
  • 1665 / 66
  • Севастополь, Россия
в принципе это и имел в виду, попробуй так пропатчить ShowDropDownCategoryList и отпишись по результатам (но мне кажется по старым версиям что эта функция использовалась не только в этом месте, потому могут всплыть проблемы в других местах)
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Wertos

  • Захожу иногда
  • 489
  • 22 / 0
Как я понял это и есть список выпадающий...
Код
$options[]=JHTML :: _('select.option' ,$item->id,$item->treename);
Я незнаю как присвоить знвчение disabled в options... ну незнаю я Joomla :(
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Ну да. Только трех параметров не хватает. Вообще-то целиком он выглядит так
$treelist[] = JHTML::_('select.option',$treeitem->id, $treeitem->title, 'id', 'title',$disable);
Шестой параметр $disable определяет будет ли пункт списка доступен для выбора в выпадающем списке true - недоступен, false - доступен, по умолчанию - false.
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Wertos

  • Захожу иногда
  • 489
  • 22 / 0
'id', 'title'  это откуда брать ?
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Поставь имена соответствующих полей в БД. А вообще-то это значит что будет создан stdClass такого вида:
        $obj = new stdClass;                        
        $obj->id    = $treeitem->id;                      
        $obj->title    = $treeitem->title;                                
        $obj->disable        = $disable;
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Wertos

  • Захожу иногда
  • 489
  • 22 / 0
Осталось вытянуть как-то id редактируемой категории в функции ShowDropDownCategoryList
*

beliyadm

  • Moderator
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Осталось вытянуть как-то id редактируемой категории в функции ShowDropDownCategoryList
$row->cid - если 0 (или пусто) - значит категория только создается
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Wertos

  • Захожу иногда
  • 489
  • 22 / 0
неповеришь.... оно всегда пусто, даже если редактировать...
*

beliyadm

  • Moderator
  • 9758
  • 1665 / 66
  • Севастополь, Россия
в всяком случае в функцию saveCatg именно оно и передается (сделай банальный alert на js) вместо редиректа - увидишь
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Wertos

  • Захожу иногда
  • 489
  • 22 / 0
сделал... пусто...
*

beliyadm

  • Moderator
  • 9758
  • 1665 / 66
  • Севастополь, Россия
в function saveCatg закомментировал строку редиректа
Код: php
$mainframe->redirect("index.php?option=".$option."&task=showcatg");
и добавил
Код: php
echo "<script> alert('" . $row->cid . "'); </script>\n";
после
Код: php
$row=new DatsoCategories($db);
При сохранении редактируемой категории получаю ее ID, если новая - то 0
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Есть ли достойная замена для DatsoGallery?

Автор vbulletinX

Ответов: 5
Просмотров: 5551
Последний ответ 14.07.2022, 20:00:50
от marbert
В какую галерею перенести все фото из DatsoGallery?

Автор darkknight

Ответов: 5
Просмотров: 3786
Последний ответ 08.12.2021, 18:45:41
от sergeytolkachyov
Как реализовать меню -> категории?

Автор VadimY

Ответов: 2
Просмотров: 5139
Последний ответ 19.12.2018, 18:21:54
от NewsPR666
[download] Datso Gallery (Download DatsoGallery free all version)

Автор beliyadm

Ответов: 354
Просмотров: 185810
Последний ответ 10.08.2018, 14:43:21
от pH43
cache заполняется DatsoGallery

Автор relat

Ответов: 3
Просмотров: 4106
Последний ответ 05.03.2018, 17:56:11
от beliyadm