Drupal 8开发实战宝典:60个动手教程探索Drupal 8的强大功能

需积分: 7 4 下载量 89 浏览量 更新于2024-07-18 收藏 8.42MB PDF 举报
Drupal 8 Developmen Cookbook 是一本针对Drupal 8开发者的实用指南,它是一本面向有一定英文基础的Drupal爱好者编写的入门速查手册。Drupal 8 是一个流行的开源内容管理系统(CMS),使用PHP语言构建,特别适合于构建动态网站和复杂的Web应用程序。这本书提供超过60个实战配方,让读者能够快速熟悉Drupal 8的功能,并学会如何充分利用其强大的功能。 作者Matt Glaman以其丰富的经验和深入理解,带领读者通过一系列实际操作步骤,涵盖了诸如安装、配置、主题开发、模块管理、内容类型创建、用户权限设置、API集成以及工作流管理等多个关键领域。这本手册旨在帮助开发者从零开始,逐步掌握Drupal 8的核心概念和技术。 值得注意的是,书中强调了版权问题,所有内容未经出版商Packt Publishing的书面许可,不得复制、存储或以任何形式传播,除非用于嵌入在批评性文章或评论中。尽管作者和出版社已经尽最大努力确保信息的准确性,但本书并不保证无误,且不承担因本书引发的直接或间接损失的责任。 Packt Publishing在提及商标时,力求尊重所有书中涉及的公司和产品的知识产权,但并不能保证所有商标信息的准确性。对于想要深入学习Drupal 8的开发者来说,这本Cookbook是一份不可或缺的参考资料,提供了实用的实战经验和理论指导,有助于提升开发技能和项目实施能力。无论是初学者还是进阶开发者,都能从中受益匪浅。

The website encountered an unexpected error. Please try again later. AssertionError: Cannot load the "commerce_order_item_type" entity with NULL ID. in assert() (line 295 of core\lib\Drupal\Core\Entity\EntityStorageBase.php). assert(, 'Cannot load the "commerce_order_item_type" entity with NULL ID.') (Line: 295) Drupal\Core\Entity\EntityStorageBase->load(NULL) (Line: 488) Drupal\Core\Entity\EntityBase::load(NULL) (Line: 65) commerce_ticketing_form_commerce_product_variation_type_form_alter(Array, Object, 'commerce_product_variation_type_add_form') (Line: 562) Drupal\Core\Extension\ModuleHandler->alter('form', Array, Object, 'commerce_product_variation_type_add_form') (Line: 840) Drupal\Core\Form\FormBuilder->prepareForm('commerce_product_variation_type_add_form', Array, Object) (Line: 284) Drupal\Core\Form\FormBuilder->buildForm(Object, Object) (Line: 73) Drupal\Core\Controller\FormController->getContentResult(Object, Object) call_user_func_array(Array, Array) (Line: 123) Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}() (Line: 580) Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 121) Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext(Array, Array) (Line: 97) Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}() (Line: 169) Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81) Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58) Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48) Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 106) Drupal\page_cache\StackMiddleware\PageCache->pass(Object, 1, 1) (Line: 85) Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48) Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51) Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23) Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 718) Drupal\Core\DrupalKernel->handle(Object) (Line: 19)

2023-06-02 上传