web-dev-qa-db-ja.com

既存のノードエンティティの言語を更新する方法は?

kint($node)を使用すると、使用できるメソッドがいくつか提供されますが、ノードの言語を設定できないようです

推測して_$node->landcode_を見つけました。これはメソッドsetLangcode($langcode)を提供しますが、機能しません

$node->langcode->setLangcode('cat');および$node->save();をロードした後も、インターフェースのノードはまだ言語を更新していません

3
Gianni Di Falco

次のように、(FieldableEntityInterfaceの)get()/set()メソッドを使用する必要があります。

// Get the current node's language.
$node->get('langcode')->value;
// Set the current node's language.
$node->set('langcode', 'de');
// Save the node to persist the change.
$node->save();

これがあなたのための質問に答えることを願っています。

3