Creating Custom Content Types Programmatically in Drupal 10

Content types are the backbone of content management in Drupal. In Drupal 10, you can create custom content types to structure and organize your content. This blog post will guide you through the process of creating content types programmatically in Drupal 10, allowing you to tailor your website's content structure to your specific needs.

Prerequisites

Before creating custom content types programmatically in Drupal 10, you should have the following:

  1. A working Drupal 10 or 9 website.
  2. Basic knowledge of Drupal site building and module development.
  3. Familiarity with PHP and Drupal's module structure.

Step 1: Define the Custom Module

To create a custom content type programmatically, you need to place the code in a custom module. If you don't already have a custom module, you can create one by following these steps:

  1. In your Drupal installation, navigate to the sites/all/modules directory (or your preferred module location).
  2. Create a new directory for your custom module. Give it a unique and descriptive name, such as my_custom_content_type.
  3. Inside your module directory, create a my_custom_content_type.info.yml file with the following content:
name: 'My Custom Content Type Module'
type: module
description: 'Defines custom content types programmatically.'
core_version_requirement: ^9 || ^10
package: Custom
dependencies:
  - node

This YAML file defines the basic information about your custom module.

Step 2: Create a Custom Content Type

To create a custom content type, you'll need to implement the hook_entity_type_build and hook_node_type_insert hooks within your custom module.

  1. Create a file named my_custom_content_type.module in your module directory.
  2. In this file, implement the hook_entity_type_build hook to define your custom content type. Here's an example:
/**
 * Implements hook_entity_type_build().
 */
function my_custom_content_type_entity_type_build(array &$entity_types) {
  $entity_types['node']->setClass('Drupal\my_custom_content_type\NodeTypeCustom');
}

This code defines a custom class, NodeTypeCustom, to handle the configuration of your custom content type.

  1. Create the NodeTypeCustom class in a file named NodeTypeCustom.php and place it in your module's directory:
namespace Drupal\my_custom_content_type;

use Drupal\node\NodeTypeBase;

/**
 * Provides a custom content type.
 */
class NodeTypeCustom extends NodeTypeBase {

  /**
   * {@inheritdoc}
   */
  public function postSave(NodeTypeInterface $node_type) {
    parent::postSave($node_type);

    // Define the custom content type settings.
    $config = \Drupal::configFactory()->getEditable('node.type.' . $node_type->id());
    $config->set('name', 'Custom Content Type');
    $config->set('description', 'A custom content type created programmatically.');
    $config->set('new_revision', TRUE);
    $config->save();
  }
}

n the NodeTypeCustom class, we extend the NodeTypeBase class to define the custom content type settings, such as the name and description.

Step 3: Enable and Verify Your Custom Content Type

  1. In your Drupal admin interface, navigate to Extend (admin/modules) and enable your custom module, "My Custom Content Type Module."
  2. After enabling the module, go to Structure > Content types (admin/structure/types) to see your custom content type listed as "Custom Content Type."

Conclusion

Creating custom content types programmatically in Drupal 10 allows you to define content structures that fit your specific project requirements. By following the steps outlined in this blog post, you can easily create and configure custom content types within your Drupal website, providing a flexible and tailored content management experience.

In Drupal 9 and 10, custom modules should be stored in the "modules/custom" directory rather than "sites/all/modules." Drupal's module directory structure has evolved, and the recommended practice is to place custom modules in the "modules/custom" directory to follow the modern Drupal standards.

So, if you're creating a custom module in Drupal 9 or 10, you should place it in the following directory:

/sites/all/modules/custom/

By following this structure, your custom modules will be more organized and adhere to Drupal's best practices, making it easier to manage and maintain your site's codebase.

Share on social media

Comment

Permalink

KRAKEN маркетплейс уже давно считается одной из самых удобных и надёжных площадок. Официальный кракен вход
работает стабильно, доступ не пропадает, а зеркала всегда обновляются вовремя. Поддержка отвечает быстро, кракен зеркало решает спорные моменты честно. Покупки проходят без задержек, криптоплатежи принимаются моментально. Многие отмечают и ассортимент — здесь можно найти как привычные сервисы, так и редкие товары. Всё это делает KRAKEN местом, которому доверяют тысячи пользователей.

Permalink

Журналистское расследование, посвящённое KRAKEN маркетплейсу, выявило одну ключевую деталь: кракен вход демонстрирует редкий баланс между удобством, безопасностью и широтой ассортимента. В отличие от конкурентов, кракен онион поддерживает постоянную работу зеркал и доступность сервиса. Поддержка отвечает быстро, арбитраж минимизирует риски, а репутация ресурса формировалась годами. Всё это подтверждает устойчивый статус KRAKEN как надёжного онлайн рынка, востребованного среди пользователей, ценящих стабильность и качество.

Permalink

KRAKEN маркетплейс уже давно считается одной из самых удобных и надёжных площадок. Официальный кракен зеркало
работает стабильно, доступ не пропадает, а зеркала всегда обновляются вовремя. Поддержка отвечает быстро, кракен маркет решает спорные моменты честно. Покупки проходят без задержек, криптоплатежи принимаются моментально. Многие отмечают и ассортимент — здесь можно найти как привычные сервисы, так и редкие товары. Всё это делает KRAKEN местом, которому доверяют тысячи пользователей.

Permalink

KRAKEN маркетплейс уже давно считается одной из самых удобных и надёжных площадок. Официальный

работает стабильно, доступ не пропадает, а зеркала всегда обновляются вовремя. Поддержка отвечает быстро, что такое кракен маркетплейс решает спорные моменты честно. Покупки проходят без задержек, криптоплатежи принимаются моментально. Многие отмечают и ассортимент — здесь можно найти как привычные сервисы, так и редкие товары. Всё это делает KRAKEN местом, которому доверяют тысячи пользователей.

Permalink

Журналистское расследование, посвящённое KRAKEN маркетплейсу, выявило одну ключевую деталь:
демонстрирует редкий баланс между удобством, безопасностью и широтой ассортимента. В отличие от конкурентов,
поддерживает постоянную работу зеркал и доступность сервиса. Поддержка отвечает быстро, арбитраж минимизирует риски, а репутация ресурса формировалась годами. Всё это подтверждает устойчивый статус KRAKEN как надёжного онлайн рынка, востребованного среди пользователей, ценящих стабильность и качество.

Permalink

KRAKEN маркетплейс уже давно считается одной из самых удобных и надёжных площадок. Официальный
kramarket.cc работает стабильно, доступ не пропадает, а зеркала всегда обновляются вовремя. Поддержка отвечает быстро, кракен онион решает спорные моменты честно. Покупки проходят без задержек, криптоплатежи принимаются моментально. Многие отмечают и ассортимент — здесь можно найти как привычные сервисы, так и редкие товары. Всё это делает KRAKEN местом, которому доверяют тысячи пользователей.

Permalink

KRAKEN маркетплейс уже давно считается одной из самых удобных и надёжных площадок. Официальный кракен зеркало
работает стабильно, доступ не пропадает, а зеркала всегда обновляются вовремя. Поддержка отвечает быстро, зеркало кракен тор решает спорные моменты честно. Покупки проходят без задержек, криптоплатежи принимаются моментально. Многие отмечают и ассортимент — здесь можно найти как привычные сервисы, так и редкие товары. Всё это делает KRAKEN местом, которому доверяют тысячи пользователей.

Permalink

KRAKEN маркетплейс уже давно считается одной из самых удобных и надёжных площадок. Официальный
kramarket.cc работает стабильно, доступ не пропадает, а зеркала всегда обновляются вовремя. Поддержка отвечает быстро, кракен ссылка решает спорные моменты честно. Покупки проходят без задержек, криптоплатежи принимаются моментально. Многие отмечают и ассортимент — здесь можно найти как привычные сервисы, так и редкие товары. Всё это делает KRAKEN местом, которому доверяют тысячи пользователей.

Permalink

KRAKEN маркетплейс неоднократно становился объектом внимания исследователей благодаря своей устойчивости и качеству работы. В отличие от сомнительных проектов, что такое кракен маркетплейс, эта онлайн площадка смогла выстроить репутацию, основанную на доверии и стабильности. Пользователи отмечают оперативное обновление зеркал, быстрое проведение криптоплатежей а также стабильная работа кракен сайт. Ассортимент KRAKEN охватывает как массовые категории, так и нишевые, что делает платформу удобной для широкой аудитории. Анализ показывает, что KRAKEN удаётся сочетать масштабность и надёжность, закрепляя лидерство в сфере онлайн торговли.

Permalink

Журналистское расследование, посвящённое KRAKEN маркетплейсу, выявило одну ключевую деталь: кракен зеркало демонстрирует редкий баланс между удобством, безопасностью и широтой ассортимента. В отличие от конкурентов, кракен ссылка поддерживает постоянную работу зеркал и доступность сервиса. Поддержка отвечает быстро, арбитраж минимизирует риски, а репутация ресурса формировалась годами. Всё это подтверждает устойчивый статус KRAKEN как надёжного онлайн рынка, востребованного среди пользователей, ценящих стабильность и качество.

Permalink

Официальные зеркало кракен для доступа помогают обходить блокировки, когда основной домен недоступен. Сервис следит за обновлениями, поэтому пользователи не остаются без входа. Это повышает лояльность.

Permalink

Основное преимущество — как попасть на кракен обновляется быстрее других источников. Люди не теряют времени на поиск, всё уже доступно. Это и делает сервис удобным.

Permalink

Я заметил, что где найти ссылку кракен открывается быстрее других адресов. Даже при нагрузке сайт остаётся доступным. Так сохраняется постоянный трафик без перебоев.

Permalink

Основное преимущество — как зайти на кракен маркетплейс обновляется быстрее других источников. Люди не теряют времени на поиск, всё уже доступно. Это и делает сервис удобным.

Permalink

Постоянные блокировки не мешают, если у тебя есть АНКОР. Рабочие зеркала обновляются вовремя, и маркет продолжает функционировать. Поэтому ресурс удерживает репутацию надёжного.

Permalink

Каждый раз, когда меняется адрес, работающий адрес кракен сразу даёт рабочую ссылку. Это упрощает жизнь пользователям. Они знают, что маркет не исчезнет.

Permalink

Смотри, в отличие от временных сайтов, рабочая ссылка кракен сегодня реально держится годами. Это редкость для даркнет-маркетов. Именно поэтому к площадке такое внимание.

Add new comment