1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Discord.jsのEmbedの書き方

Last updated at Posted at 2024-08-07

ここなにも書くことないりょうです
今回はDiscordでたくさんの情報をカッチョイイ感じに整理できるEmbedの使い方。
使えるようになると便利だし見やすいので覚えましょ

Embedとはなんぞや

まず、Embedがなんのことかわからない人もいると思います。
まああれです、埋め込みです(語彙力皆無)
こんなの↓

image.png

こいつの書き方についての解説記事になってます。ではれっつごー

Embedの各部名称

以前私もお世話になったこちらの記事から引用させていただきます🙇‍♀ 
image.png

それぞれの説明です
Author [name, iconURL]
bot名、アイコン表示
Title
Embedのタイトルとなる部分です。
Description
Embedの説明を入れるとこです。
Thumbnail [url]
Embedのサムネイルです。
Fields [name, value, inline]
いろんなのをいれていくところです。inlineを活用して横にも並べられます
Image
画像を入れるところです
Footer [text, iconURL]
フッターです。Embedに関連する情報や画像を置くところ
(左下にあるちっさい画像と©exampleなんちゃらってとこです)
TimeStamp
時刻を表示するところです。設定次第では現在時刻以外でも表示可
Color
Embedの右側に出てる色です。

EmbedBuilder

ここからはEmbedを作っていきます。
discord.js v14からMessageEmbedに替わってEmbedBuilderが出ました。
これを使います。

const { EmbedBuilder } = require('discord.js');
/**
うんたらかんたらぴゃー
**/
      const embed = new EmbedBuilder()
        .setAuthor({ name:bot名, iconURL:アイコンURL })
        .setTitle('Embedのタイトル')
        .setDescription('Embedの説明')
        .setThumbnail('サムネイルURL')
        .addFields({ name: 'fieldのタイトル', value: 'fieldの内容' })     
        .setImage('画像URL')
        .setFooter({ text: 'フッターに表示したい内容', iconURL: 'アイコンURL' })
        .setTimestamp()
        .setColor('好きな色'); 
        
	message.channel.send({ embeds: [embed] });
//  await interaction.reply({ embeds: [embed] });

こんなかんじ。

各部注意点

.addFields()

sを忘れないように書いてください。
Fieldは1つのEmbedに25個まで含めることができます
inline(3つまでFieldsを横に並べられる)も活用して縦に長くなりすぎないよう注意したほうがいいと思います。
ただし、thumbnailを設定している場合は2つまでしか横並びにすることができません。

複数個の場合

    .addFields(
        { name: 'field2️⃣', value: '2つめのfieldだよ', inline: true },
        { name: 'field1️⃣', value: '1つめのfieldだよ', inline: true },
    );

このようになります。実際に送信した画像です↓
image.png

thumbnailがある場合
image.png

.setTimestamp()

Timestampは、特に設定せずこのまま使えば現在時刻が表示されます。

.setColor()

色の指定形式は('#FFFFFF')もしくは(0xFFFFFF)のようにしてください。

マークダウンについて

Embed内でマークダウン(文字を太くしたりする装飾)が行える場所は限られています。
Description、Fieldsのvalueのみです。
また、#を使うものはできないので注意。*~などは使えます

まとめ

Embedは慣れると簡単に情報まとめられるから超便利です
なにかわからないこと等あれば書いてくれれば返答させてもらいます!

Discordに湧いてる荒らしの情報や対策法の共有を行っている自鯖です↓
https://discord.gg/ESRGwGQhxc

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?