加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 如何以编程方式在Drupal 8中创建节点?

发布时间:2020-12-13 13:40:22 所属栏目:PHP教程 来源:网络整理
导读:我正在Drupal 8中设计一个新模块.这是一个长期项目,至少几个月不会上市,所以我用它来弄清楚什么是新的. 在这个模块中,我希望能够以编程方式创建节点.在Drupal 7中,我会通过创建对象,然后调用“node_submit”和“node_save”来完成此操作. 这些函数在Drupal 8
我正在Drupal 8中设计一个新模块.这是一个长期项目,至少几个月不会上市,所以我用它来弄清楚什么是新的.

在这个模块中,我希望能够以编程方式创建节点.在Drupal 7中,我会通过创建对象,然后调用“node_submit”和“node_save”来完成此操作.

这些函数在Drupal 8中不再存在.相反,根据文档,“模块和脚本可以使用通常的表单API模式以编程方式提交节点”.我很茫然.这是什么意思?我已经使用Form API在Drupal 7中创建表单,但是我没有得到文档在这里说的内容.

我想要做的是基于不是直接从用户呈现的表单中获取的信息,以编程方式创建至少一个并且可能多个新节点.我需要能够:

1)指定内容类型

2)指定URL路径

3)设置以前已经过时的node_object_prepare()处理的任何其他必要变量

4)提交新节点对象

我希望能够在一个独立的,高度抽象的函数中执行此操作,而不依赖于特定的块或形式.

那么我错过了什么?

use DrupalnodeEntityNode;

$node = Node::create(array(
    'type' => 'your_content_type','title' => 'your title','langcode' => 'en','uid' => '1','status' => 1,'field_fields' => array(),));

$node->save();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读