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

sk8work

  • Новичок
  • 3
  • 0 / 0
Всем привет.
Неожиданно столкнулся со следующей проблемой.
Пишу CRUD для работы с вакансиями на сайте, чтобы облегчить работу отдела кадров (жалуются, что шибко сложная админка).
Понимаю, что занимаюсь ерундой, но такая задача поставлена.
Все работает превосходно, Кастомные поля редактируются, рубрики тоже. Все отлично кроме добавления новой вакансии (материала),
т.к. ума не приложу, как составить запрос к БД, чтобы прикрепить к новому материалу метку 'jobs'...  *ОХ-Х-Х*
Если есть идеи, буду очень признателен. !

(возможно не в ту ветку пишу)
*

sivers

  • Живу я здесь
  • 2402
  • 327 / 0
Если знакомы с системой плагинов, то можно использовать событие onContentBeforeSave или onContentPrepareForm:
https://docs.joomla.org/Plugin/Events
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

sk8work

  • Новичок
  • 3
  • 0 / 0
Посидел, поизучал материалы, так ни к чему и не пришел.
Тело в том, что при добавлении вакансии, я делаю запрос к БД:

$query = "INSERT into #__content (asset_id, title, alias, images, urls, attribs, metadata, introtext, state, catid, created, created_by, created_by_alias, modified, modified_by, checked_out, checked_out_time, publish_up, publish_down, version, ordering, metakey, metadesc, access, hits, language, xreference, note)
        VALUES ('$asset_id', '$title', '$alias', '$images', '$urls', '$attribs', '$metadata', '', '$state', '$catid', '$publish_up', '522', '', '0000-00-00 00:00:00', '0', '0', '0000-00-00 00:00:00', '$publish_up', '0000-00-00 00:00:00', '1', '5', ' ', ' ', '1', '1', '*', '', '')";
       $db->setQuery($query)->execute();

Результат: Появляется материал в БД

Если мне надо заполнить кастомные поля для этого материала, я использую следующий код:



$query = "SELECT * FROM #__content WHERE alias='$alias' && catid='$catid'";
$db->setQuery($query);
$fields = $db->loadObjectList();
$thisID = $fields[0]->id;
   
   
// Зарплата - 3
if(isset($_POST["tax"])){
        $tax = $_POST["tax"];
   $query = "INSERT into #__fields_values (field_id, item_id, value) VALUES ('3', '$thisID','$tax')";
   $db->setQuery($query)->execute();
}


Ну и так далее.
Все прекрасно заполняется.

Необходимо только проставить материалу метку.
Из БД получил вывод таблицы #__tags. Там я необходимую метку нашел. А вот как составить запрос, чтобы материал был к этой метке отнесен, я не могу понять, т.к. нет таблицы с привязкой по меткам (как в кастомных полях, где есть привязка по ID материала).
*

sivers

  • Живу я здесь
  • 2402
  • 327 / 0
а как же #__contentitem_tag_map?
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

sk8work

  • Новичок
  • 3
  • 0 / 0
а как же #__contentitem_tag_map?

Точно!
Вот такое решение:

$type_alias       = 'com_content.article';
$core_content_id    = '179';  // Тут от балды - взял от другого поста
$content_item_id    = $thisID; // ID материала
$tag_id         = '66';      // ID необходимого тэга(метки), к которой надо привязать материал (у меня - это 'jobs')
$tag_date         = $publish_up;
$type_id          = '1';

$query = "INSERT into #__contentitem_tag_map (type_alias, core_content_id, content_item_id, tag_id, tag_date, type_id)
           VALUES ('$type_alias', '$core_content_id', '$content_item_id', '$tag_id', '$tag_date', '$type_id')";

$db->setQuery($query)->execute();

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

Вывод даты материала в списке тегов

Автор androv77

Ответов: 2
Просмотров: 537
Последний ответ 09.11.2023, 16:33:08
от denxio
Вывод дополнительного поля материала в модуле

Автор timofe

Ответов: 10
Просмотров: 1267
Последний ответ 06.10.2023, 14:02:24
от Mitriy
Как сделать отображение времени создания материала?

Автор Pzhigalov

Ответов: 0
Просмотров: 236
Последний ответ 27.09.2023, 22:45:29
от Pzhigalov
Cайт через браузер недоступен

Автор rezchik

Ответов: 0
Просмотров: 285
Последний ответ 01.04.2023, 10:49:08
от rezchik
[Решено] Получить список тегов каждого материала в блоге категории

Автор goga_pgasovav

Ответов: 1
Просмотров: 330
Последний ответ 02.03.2023, 14:20:21
от goga_pgasovav