Добавьте Joomla! настраиваемые поля к статьям

В течение некоторого времени Joomla! предлагает возможность добавлять пользовательские поля в статьи.

Теперь я хочу создавать новые статьи через Joomla! Api, который работает нормально, используя следующий код (который также используется в документации Joomla!):

$article = JTable::getInstance( 'content' );

// create article entity object
$article->title             = $title;
$article->alias             = JFilterOutput::stringURLSafe( $title );
$article->fulltext          = $imagesHTML;
$article->images            = json_encode($image);
$article->catid             = $paramsArray['category_sun'];
$article->created           = JFactory::getDate()->toSQL();;
$article->created_by        = $paramsArray['user_author'];
$article->access            = 1;
$article->metadata          = '{"page_title":"","author":"","robots":""}';
$article->language          = '*';
$article->state             = 1;

// validate article
if (!$article->check()) {
JError::raiseNotice( 500, $article->getError() );
return false;
}
// store article into database
if (!$article->store(true)) {
JError::raiseNotice( 500, $article->getError() );
return false;
}

Но теперь я хочу добавить значения настраиваемого поля также? Как я могу это сделать? К сожалению, Joomla! документация не говорит об этом (и очень устарела).

0

Решение

Я нашел способ сделать это с Joomlas Dbo, который делает запрос к базе данных:

$field = new stdClass();
$field->field_id = 1;
$field->item_id = $article->id;
$field->value = "2018-11-06";

$result = JFactory::getDbo()->insertObject('#__fields_values', $field);

Сначала вы должны создать новый объект поля и сохранить его, используя метод insertObject. Таблица базы данных, в которой хранятся значения настраиваемых полей, называется [prefix]_fields_values,

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]