Я пытаюсь создать многоязычный узел, используя скрипт php.
Я делаю это:
$node = new stdClass();
$node->title = "Test ".mktime();
$node->type = "job";
$node->language = 'de'; // Or e.g. 'en' if locale is enabled
$node->uid = $user->uid;
$node->status = 1; //(1 or 0): published or not
$node->promote = 0; //(1 or 0): promoted to front page
$node->comment = 1; //2 = comments on, 1 = comments off
$node->path = array('alias' => 'das-ist-ein-test-'.mktime());
$node->body[$node->language][0]['value'] = "Body Body Body";
$node->body[$node->language] = text_summary("Body Body Body");
$node->body[$node->language] = 'filtered_html';
node_save($node);
Пока я устанавливаю $ node-> language в 'und', все работает нормально. Но как только я установил язык 'de' или 'en' (оба языка активированы в моей установке Drupal), основной текст не будет сохранен.
Поэтому мой вопрос: кто-нибудь может дать мне рабочий пример того, как сохранить многоязычный узел (de, en) в Drupal с помощью программного кода.
Спасибо
7
i18n-l10n
bootstrapping
caspermc
источник
источник
Ответы:
Это зависит от того, является ли ваше тело поле переводимым или нет. Пожалуйста, посмотрите это объяснение о переводимых полях: https://drupal.stackexchange.com/a/31639/2466
В Drupal 8 существует проблема, позволяющая сделать API Field Language более удобным.
источник
'und'
как ключ поля на многоязычных сайтах.LANGUAGE_NONE
вместо этого.