如何在drupal8中的cron作业中创建节点?

时间:2017-04-26 13:35:35

标签: cron drupal-8

一旦cronjob在drupal 8中运行,我需要创建节点。

我有这个代码。但是没有工作。

function modulename_cron() { 
    $node = entity_create('node', array(
      'title' => 'New Article',
      'body' => 'Article body',
      'type' => 'article',
    )); 
    $node->save();
}

2 个答案:

答案 0 :(得分:0)

你的代码也在运作......

但是如果您在创建节点时遇到问题,那么也可以尝试使用此代码。

您还可以在Drupal 8中使用此代码进行节点创建

getElementsByTagName("div");

答案 1 :(得分:0)

更好的解决方案是使用Drupal的entity.manager服务:

// Get node storage.
$nodeStorage = \Drupal::service('entity.manager')->getStorage('node');

// Set node content.
$content = [
    'type' => 'article',
    'title' => 'title',
    'body' => [
        'value' => 'Lorem ipsum dolor sit amet...',
        'format' => 'basic_html'
    ]
];

// Create a new node.
$node = $nodeStorage->create($content);

// Save the node.
$node->save();

https://github.com/BoldizArt/UsefulDrupal8Functions/blob/master/CreateNodeProgrammatically.php