プログラムで翻訳を作成するときのdrupalの動作を再現する必要があります。
フック挿入で$node->addTranslation('de');
を実行すると、空のノードが作成されますが、フィールドに未翻訳のノードコンテンツを入力する必要があります。
メインノードからすべてのフィールドを再入力する代わりにこれを達成する方法はありますか?
addTranslation
は2番目のパラメータ$values
を受け取ります:
翻訳可能なフィールドに割り当てられる初期値の配列。デフォルトはnoneです。
したがって、理論的には、そのパラメーターを使用して、ノードの現在のフィールド値を渡すだけでよいのです。
$node->addTranslation('de', $node->toArray());