こちらのサイトではDRUPAL10に関連する記事を掲載しています。
Drupalでは「モジュール」と呼ばれる、小さなソフトウェアを実装することで機能拡張を行います。本ウェビナーシリーズでは、Drupalのモジュール開発に関する基礎知識を解説します。Drupalのバックエンド周りについて体系的に学びたい方、自分でカスタムモジュールを作れるようになりたい方、アクイア認定デベロッパー試験を目指す方におすすめです。
Drupalを一通り操作したことがある方を対象としています。まだDrupalを触ったことが無い方は、初心者向けDrupalチュートリアル動画(日本語)を先に見ておくとより理解が深まります。
コンテンツエンティティとは
DrupalのFormは以下のようにさまざま


エンティティタイプ
用途に応じてグループ化する
Drupal標準機能のノードがエンティティタイプに相当する
⇒ エンティティタイプはそれぞれデータベースのテーブルが存在する
エンティティサブタイプ
エンティティタイプを細分化する
ノードの中に、基本ベージや記事があるが、それらがエンティティサブタイプに相当する
フィールド
コンテンツエンティティ
主なコンテンツエンティティ

コンテンツエンティティ ⊃ エンティティタイプ ⊃ エンティティサブタイプ ⊃ フィールド
コンテンツ構造の計画の例

コンテンツタイプ
エンティティタイプ | エンティティサブタイプ | 定義モジュール |
コンテンツアイテム | コンテンツタイプ | Nodeモジュール |
NODE | 基本ページ、記事 |
サイト構築からコンテンツタイプを選択

コンテンツタイプの追加を選択

新しいコンテンツタイプを作成する


投稿前にプレビューで、表示有無を設定できる

デフォルトでの挙動を設定できる
- 掲載は、チェックを外すと下書きモードになる
- フロントページへ掲載は、nodeカテゴリトップページでの掲載有無の指定
- リスト上部に固定は、nodeカテゴリトップページを表示した際に上部に表示する



基本ページにフィールドを追加する

参照フィールドとは

演習





フォームとウィジェット

カスタムフォームモードは積極的には使用されていない
ユーザープロファイルで使用されている
タクソノミー

ボキャブラリーを追加を選択


コメント

ユーザ権限により投稿可否を設定可能




即時反映

承認待ちリストに追加
管理者に承認されたのちに反映

お問い合わせフォーム

演習

name: drupal9
recipe: drupal9
config:
webroot: web
services:
mailhog:
type: mailhog
hogfrom:
- appserver
Lando rebuild を実行する





メディア管理
メディア機能とは

画像フィールドとメディア参照フィールドの違い

多言語化
多言語化機能
4つのモジュールの有効化が必要


多言語化の手順

使用する言語を追加

日本語を追加する

コンテンツの翻訳

選択対象のエレメントごとに設定が可能

構成の翻訳

ユーザーインターフェイスの翻訳

Drupal翻訳の例

言語判定の設定
デフォルトではURLによる判定
- 他にもアカウントによる判定
- セッションパラメータにより判定も可能
- ユーザの優先言語により判定
- ブラウザの言語設定による判定

設定ボタンから詳細設定が可能

言語スイッチャーブロックを追加
ブロックレイアウトからブロックを表示したい領域を指定してブロックを配置する
ブロックから「言語の切り替え」をサイトに表示する

翻訳
インターフェイス設定


翻訳タグから翻訳する

構成の翻訳


練習問題


この記事またはDrupalに関するご質問がございましたら、お気軽にお問い合わせください。