FormspreeでGhostにコンタクトフォームを設置する

FormspreeでGhostにコンタクトフォームを設置する
Photo by Pavan Trikutam / Unsplash

ブログには問い合わせフォームがあった方が良さそうなので、設置することにします。Formspreeというサービスを使うと、生成されるHTMLコードをコピペするだけでいいので簡単でした。

Custom Forms with No Server Code | Formspree
Formspree is a form backend, API, and email service for HTML & JavaScript forms. It’s the simplest way to embed custom contact us forms, order forms, or email capture forms on your static website.

この記事では以下リンクでGhostが提供する設定ガイドを参考に進め、その手順を記録しておきます。現在のFormspreeの登録画面と少し違いますが、問題なく設置できました。

Official Ghost + Formspree Integration
Formspree is a sensible online form builder for businesses which can be integrated with Ghost using a sensible HTML card and some customisable code.

Formspreeアカウントの作成

Formspreeのサイトで無料のアカウントを作ります。入力したメールアドレスに届いたメールからリンクをクリックして、アドレスの認証を行います。

新規フォームの作成

ログインしたらダッシュボード画面で+ボタン(Click + to create a form)をクリックします。

Formspreeのダッシュボード画面
Formspreeのダッシュボード画面

出てくる画面でフォーム名と送信先のメールアドレスを入力します。

💡
メールアドレスはAccountページで事前に登録したものから選択する形式なので、必要なアドレスは先に登録しておきます

フォームが作成できたら表示される、Your form's endpoint is:のURLはformタグのaction属性に記述するものです。生成したフォームのURLをGhostに貼り付けるときに使います。

フォームのスタイルの選択

See some examplesに書いてあるForm Libraryのリンク先にはいろんな種類のフォームが準備してありますので、好きなものを選んで使うことができます。

Form Library
Form Library

2024年4月時点では以下の6種類がありました。

  • Simple Contact Form
    • シンプルな基本のフォーム
    • 名前、メールアドレス、メッセージ
  • Survey Form
    • アンケート用のフォーム。買い物とかカスタマーサポート使った後とかにくるやつ
    • 名前、メールアドレス、アンケート
  • Basic RSVP Form
    • 参加確認用のフォーム
    • 名前、参加確認、参加人数
  • Department Contact Form
    • Simple Contact Formに部署名のドロップダウンがついたもの
  • Registration Form
    • 登録フォーム
    • 名前、メールアドレス、住所
  • Complaint Form
    • 苦情用フォーム
    • 名前、メールアドレス、電話番号、苦情内容

この中から自分の用途に近いものを選んで編集すると簡単です。

フォームのスタイルを選択すると、HTMLとフォームの見た目が表示されるので、このHTMLをサイトに埋め込むことで選んだスタイルのフォームを設置することができます。この画面でHTMLを編集して、入力欄の追加・削除やタイトルの変更などを確認した上でコピーすることもできます。

編集ができたらCOPY FORM CODEをクリックするとHTML+CSSがコピーされるので、これを次に作成するコンタクトページにペーストします。

フォームのHTMLコード編集画面
フォームのHTMLコード編集画面
💡
サイトに設置する際には自分のendpointのURLをaction属性に記述することを忘れないようにします。

Ghostに設置

Ghost管理画面から設定画面にいき、Navigationを選択します。SecondaryでContactページを設定するとサイトの下部にリンクが表示されるようになります。

Pagesからコンタクトページを作成

準備できたらダッシュボードのトップ画面からPagesを選択し、Create a new pageをクリックします。

ページ作成画面が出たら、+ボタンをクリック、HTMLを選択してHTMLカードを挿入します。

Ghostのページ作成画面
Ghostのページ作成画面

フォームのHTMLを貼り付け

先ほどコピーしたコードを貼り付けます。Previewで見た目が大丈夫か確認します。僕の場合はそのまま貼ると入力欄の文字が小さすぎたので、以下のようにfont-sizeを100%に書き換えました。(CSSのことをよくわかってないので、その場しのぎ)

#fs-frm ::placeholder {
  font-size: 100%;

送信確認

設置したコンタクトページからメッセージを送信してみましたが、問題なく登録したアドレスに通知が届きました。

おしまい

HTMLをコピペするだけなのですごく簡単にフォームが設置できました。便利ですね。

月50通までなら無料で使えるようなので、しばらくは無料プランで問題なさそうです。有料プランは月10ドルからと結構高いので、必要になったら別の方法を考えるかもしれません。

Read more

Ghostでコードブロックや画像を折りたたむ方法

Ghostでコードブロックや画像を折りたたむ方法

GhostのエディタではCardsという機能を使って記事本文中に様々な要素を埋め込むことができます。 Editor cardsJump to a card * Images * Markdown * HTML * Gallery * Divider * Bookmark * Email content * Email call to action * Public preview * Button * Callout * GIF * Toggle * Audio * Video * File * Product * Header * Embeds * Signup Card The Ghost editor includes rich media objects called Cards, which can be inserted into your content to add

ghost updateをすると編集したテーマファイルが元に戻ってしまう問題の解決策

ghost updateをすると編集したテーマファイルが元に戻ってしまう問題の解決策

以前Sourceテーマのファイルを編集して、タグ一覧のページを作りました。 Ghostブログにタグ一覧ページを作る (Sourceテーマの場合)記事を分類するのにタグをつけているのですが、いくらタグをつけたところで絞り込みに使えないのであれば何の意味もないですよね。 僕はSourceというGhostのデフォルトのテーマを使っているのですが、このテーマだと、それぞれのタグをそのままナビゲーションバーに設置することはできるんですが、ドロップダウンでタグを選んだり、タグの一覧を表示したりはすぐにはできないようです。 そこで今回は、Sourceテーマを使ってタグ一覧のページを作ってみましたという記事です。 Sourceテーマを使ってタグ絞り込みをしたいときにできること 上でも述べましたが、このテーマだと、ドロップダウンとか一覧ページはそのままだと出せません。 できるのは、それぞれのタグをナビゲーションバーに置くくらいです。 これは例えば、「ブログ」というタグをつけた記事があって、そのタグを持っている記事一覧を出せるようにしようと思ったら、ナビゲーションバーに「ブログ」という項目をわざわざ作ら

GhostにCode injectionでThree.jsの3Dモデルを埋め込んでみる

GhostにCode injectionでThree.jsの3Dモデルを埋め込んでみる

Three.jsを使って作られた3Dモデルをブログ記事の中にCode injectionを使って埋め込めるのかなとふと思ったので試してみました。 本文中でHTMLカードに<canvas>タグ、Code injectionのヘッダに<style>タグでCSSを、<script>タグでJavaScriptを貼り付けると、ちゃんと動かすことができました。 埋め込んだのはThree.jsのマニュアルにあった以下の例です。 three.js manual コードの中身は全く理解できていませんが、3Dって面白いですね。 Three.jsでは3Dモデルをインポートして使用することもできるようですが、以下のようなところから素材を使わせてもらうこともできるみたいですね。 OpenGameArt.orgというサイトで、ゲーム制作をしている人には有名なのかもしれませんが、僕は初めて知りました。 OpenGameArt.orgOpenGameArt.org 素材によってライセンス形態が異なるようですが、先日の記事で描いたCC0みたいなライセンスにしてある3D素材もあって、Three.j

Joseph Mallord William Turner "Mortlake Terrace", 1827 | Courtesy National Gallery of Art, Washington

部屋に飾る絵画とブログの画像

僕は特別アートに詳しいわけでもないですが、たまに絵を見たくなることもあります。 そういうとき、思い切って美術館に行くこともあるにはあるんですが、基本的に出不精なのでネットで調べて満足してしまうことが大半です。 ただやっぱり画面の中で見るのはその一瞬だけですし、なんだか味気ないってのも正直あります。 この記事は、そんなときはパブリックドメインになっている絵画データを印刷するとなんかいいよってことを伝えたくて書きました。 こういう自由に利用可能な素材はブログの画像なんかにも使えるのもいいですよね。この記事のトップにもパブリックドメインの絵画をお借りして載せてみました。 パブリックドメインってなんぞや 高画質な絵画データでもパブリックドメインで無償でダウンロード可能になってるものが結構あったりします。 パブリックドメインとは、誰でも自由に利用可能(商用利用含む)な素材です。 パブリックドメインになっている素材は大きく分けて、 1. 著作権が切れたもの 2. 著作者がパブリックドメインにしたもの(CC0と表記されている) の2種類があるようです。 💡僕は