0

我正在为自定义元数据字段使用自定义插件。当我尝试在元数据模式中编辑字段时,当前活动语言以外的语言字段为空。我想修改代码,使其在相应字段中显示所有支持语言的值。

插件的编辑功能包含以下代码:

$additional=$metadatafieldDAO->getAdditionalFieldValue($articleId, ‘additional’);
$templateMgr->assign(‘additional’,$additional);

很容易修改 getAdditionalFieldValue 函数以返回所有支持的语言的值,但我不知道如何将这些值分配给字段并显示它们。

以下是附加元数据字段的模板:

{fbvFormSection label="plugins.generic.articleMetadata.additional" }
        {fbvElement type="textarea" rich="extended" multilingual=true name="additional" id="additional" value=$additional }
{/fbvFormSection}
4

1 回答 1

0

经过一番搜索和实验,我才找到了答案。

因此,可以通过简单地将关联数组传递给函数来更新多语言字段$templateMgr->assign()

数组采用$array[$locale]=$value_for_that_locale. 例如:

$additional[‘en_US’]=“additional metadata”;
$additional[‘ar_IQ’]=“بيانات وصفية اضافية”;
$templateMgr->assign(‘additional’,$additional);
于 2019-08-10T12:19:38.353 回答