0

一段时间以来,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!文档没有说明这一点(并且非常过时)。

4

1 回答 1

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

于 2018-11-06T17:30:03.403 回答