ファンリピート社のブログFR note

bubbleでページ遷移先を動的に変更する方法

bubbleでページ遷移先を 動的に変更する方法

こんにちは。ファンリピートの鳴海です。

今回は動的に遷移先をBubbleで変更する方法について、説明したいと思います。

目次
「システムを短納期かつ低予算で作成したい」
ローコード開発に興味がある

Bubble.ioとは

Bubble.ioは、直感的なドラッグ&ドロップ操作でシンプル〜複雑なWebアプリケーションを構築できるサイトです。

Bubble
Bubble | Build Powerful Full-Stack Apps Without Code Discover the future of software development with Bubble, a no-code platform used to build SaaS tools, marketplaces, CRMs, & more — hosted securely in the cloud.

ドラッグ&ドロップ操作

Drug & Drop on Bubble

ドラッグ&ドロップという操作で、Webアプリが制作できます

またアプリをインストールする必要がなく、クラウドプラットフォームというサイト上でアプリケーションを構築できるので、インターネットがあればいつでもどこでもアクセスができるため、チームで連携してアプリを作れます。

レスポンシブに対応している

you can develop web responsive on Bubble

画面サイズに合わせて、自動調整してくれる機能があります。

BubbleではCSS Flexboxと呼ばれるページ要素のレイアウト方法により、要素自体に0~100%、px単位で設定ができるため、細かいデザインの設計が可能となっています。

拡張性が高い

extensive plugins

プラグインでは、UI、機能など様々なプラグインをインストールできます。

マップ機能や検索機能などデフォルトでも様々なシステムが搭載されていますが、プラグインでは画像をスライドショーでの表示、ヘッダーをハンバーガーメニューなどといった機能があります。

Bubbleの遷移方法について

Bubbleでページ遷移方法としては、リンクエレメントかGo to page…のWorkflowで処理を行うことができます。

リンクエレメント

リンクエレメントでは、テキストを押下するとページ遷移するような処理となっています。

あわせて読みたい
Link element
Link element

Show an icon instead of text

このオプションを選択すると、リンクテキストの代わりにアイコンを表示できます。

Content

これはリンクに表示されるテキストまたはメッセージを設定するフィールドです。ユーザーにリンクの目的を伝えるために使用されます。

Link destination

リンクが指す先、つまりユーザーがクリックしたときに遷移するURLを設定します。

Destination page

リンクがユーザーを遷移させる具体的なBubbleアプリケーション内のページを指定します。

Data to send

遷移先のページに送るデータを指定します。遷移先のページで特定の動作をトリガーするために使用されます。

Open in a new tab

ユーザーがリンクをクリックしたときに新しいタブでリンク先が開きます。ユーザーが現在のページを離れずにリンク先をチェックできるようにするために使用されます。

This element isn’t clickable

選択すると、リンクはクリックできなくなります。特定の状況下でリンクを無効にするために使用されます。

Mark the link as nofollow

このオプションを選択すると、リンクにrel=”nofollow”属性が追加されます。検索エンジンがこのリンクをフォローしないように指示するために使用されます。

Send current page parameters

現在のページのパラメータがリンク先に送信されます。遷移先のページが現在のページの状態に基づいて動作する必要がある場合に使用されます。

Send more parameters to the page

パラメータをリンク先に追加で送信できます。遷移先のページがこれらの追加パラメータに基づいて特定の動作をする必要がある場合に使用されます。

Go to page…

Go to page…ではリンクエレメントとは別で、要素やボタンを押下時、ページ読み込み時など特定の処理を行った際にWorkflowで遷移先を設定できるものとなります。

あわせて読みたい
Multi-page applications | Bubble Docs This section covers navigation of multi-page applications
Go to page...
Workflow

内容としてはリンクエレメントと同じとなるので、省きます。

Bubbleの動的遷移方法について

2023年3月23日に新しくGo to page…のDestinationで選択後に、下記の内容が追加されました。

  • Current page
  • Dynamic page…
Destination on Go to page...
workflow

Current page

現在のページに遷移するようになります。

使い方としては現在のページにパラメータをもたせたい時に、Current pageで選択することです。
プロジェクトなどで複数ページがあると、探しづらくなってしまうということがあったので、便利になったなと思います。

Dynamic page…

処理に応じてページ名を変更できるようになります。具体的な内容としては続きで説明します。

Bubble
Bubble Forum Bubble Community Forum. Bubble is a visual programing language. Instead of typing code, use a visual editor to build applications.

実装方法について

今回は、メール認証や未ログインの場合は、それぞれの遷移先に変更させる処理について説明します。

メール未認証の場合

Destination to auth on setting
workflow

遷移先をメール認証ページにする。

Only whenに下記で入力してください。

Current User is logged in and Current User's email confirmed is "no"
  • Current User is logged inは、ログイン済みの状態を指しています。
  • Current User’s email confirmed is “no”は、ログイン済みでメール未認証の状態で指しています。

未ログインの場合

Destination to auth on user is logged out
workflow

遷移先をログインページにする。

Only whenに下記で入力してください。

Current User is logged out

Current User is logged outは、未ログインを指しています。

統合する場合

formatted as textを使う方法となります。

これはある条件に対して、yes/no型に合わせて、ページ名を入力するといった内容です。

Arbitrary textは静的テキスト化する処理となるので、formatted as textでそのままベタ打ちしても問題ないです。

STEP
遷移方法について
Go to page...
workflow

はじめにDestinationでDynamic page…を選択し、Dynamic page nameでArbitrary textを選択します。

STEP
Arbitrary textについて
Go to page...
workflwo
  1. Current User is logged in and Current User’s email confirmed is “no”
  2. ここではログイン済みでメールが未認証かどうかを表現しています。
STEP
format as textについて
Format as text
Boolean Formatting

下記のように条件を振ります。

  1. yesでは、該当する場合はauthへ
  2. noでは、他の条件(未ログイン)を下記に展開します。
    1. Current user is logged out:formatted as text
    2. ここでは未ログインかどうかを表現しています。
STEP
noついて
Format as text
Boolean Formatting

下記のように設定します。

  1. yesでは、該当するのでloginへ
  2. noでは、今までの条件から外れるため、空欄にします。

まとめ

今回はBubbleで動的に遷移先を変更するような処理について説明しました。
複数のstepに分けて処理を行うのではなく、1つの処理で行うようにすれば読み込み改善に繋がると思います。

ここまで見てくれてありがとうございました。

メンバーを募集中!

当社ではお客様に向き合い、お客様の事業成功にコミットをできる仲間を募集しています。

正社員、インターンから副業まで、幅広く採用活動を進めております。プロジェクトマネージャーやシステムエンジニアとして当社のシステム開発業務に携わってみませんか?

当社と共に、業界トップを目指して挑戦したい方は未経験者から経験者まで広く募集しているので、ぜひエントリーをお待ちしています。

「システムを短納期かつ低予算で作成したい」
ローコード開発に興味がある
「煩雑なExcel管理から脱したい」
慣れ親しんだシステムを使って効率化したい
「大規模なシステム開発を行うためにPoCを行いたい」
「社内のDXを進めていきたい」
  • URLをコピーしました!

この記事を書いた人

株式会社ファンリピートのアバター

株式会社ファンリピート

FRnoteは株式会社ファンリピートのメンバーによって運営されている社内ブログです。ノーコード・ローコードの技術ブログを始めとして、最新のIT技術、業務で役立つノウハウなど様々なトピックをまとめています。


目次
閉じる