こんにちは。
データベースコンテンツを表示させるためにリピーターを使用するかと思いますが、データセットと連携したリピーター内に設置したテキストにデータセット内のURLを紐付ける機能は今の所用意されていません。
このような、HTMLで言えばaタグを使用した使い方は一般的になっているにもかかわらず、Wixではデータセットと紐付けてこれをGUI上で設定できないのは勿体無いなと実装のたびに思っていました。
最近はVeloを使って、リピーターに置いたテキストがクリックされたときにデータベース(コレクション)の同じ行に保存しているURLへ飛ぶというのをよく使うようになったので共有します。
import wixLocation from 'wix-location';
$w.onReady(function () {
//リピーターに設置したテキストがクリックされたとき、
$w('#textTitle').onClick( (event) => {
//リピーター内の要素にアクセス
let $item = $w.at(event.context);
//データセットのURLを取得
let url = $item('#dataset1').getCurrentItem().url
//URLへ移動
wixLocation.to(url);
});
*3/28コードの一部に誤りが有りましたので修正しました。
🙅♂️ $w('#dataset1').getCurrentItem().url → 🙆♂️ $item('#dataset1').getCurrentItem().url
上記の方法では、リピーター内のクリックしたら実行したいテキストのIDを "textTitle"、データセットのIDを "dataset1" 、データベース(コレクション)内に保存しているURLのフィールドキーは " url "としています。
この実行文一通りを何回も使う場合、フロントエンドにjsファイルを作って関数として定義して使用しています。
これを動的ページのアイテムページに飛ばすことによく使っていますが、動的ページ側でも設定が必要でちょっと長くなってしまうので、需要があればまた書きたいなと思います!🍵
@CREAP Co. KAI さん 貴重な情報を共有していただきありがとうございます!こちらは以前コメントしてくださった、機能リクエストの回答にもなっていてありがたいです。 機能リクエスト:データに接続されたテキストにリンクを貼りたい >動的ページのアイテムページに飛ばすことに 上記についてもまた良かったらコミュニティに共有してください。