kintoneをはじめてみました。

この度「kintone」(キントーン)を始めてみることにしました。

 

kintone(キントーン)とは

 

サイボウズのkintoneでは、顧客管理、案件管理、アンケート、〇〇業務…などなど多目的に利用できるツールです。

くわしくは↓

https://kintone.cybozu.co.jp/

 

簡単にフォームを作ることはできるのですが、IF文などはjavascriptにて作成するとのこと。

例:選択Aが選択されているときだけ有効になる入力ボックス等

 

下準備

とりあえず、デベロッパー登録

https://developer.cybozu.io/hc/ja

 

そして、チュートリアル

 

まあ、簡略するとjavascriptを使うときには自分で作ったファイルをアップロードするかJSEdit for kintoneを利用するようだ。

「JSEdit for kintone」はJSEdit for kintoneを使ってみようコーナーからダウンロードしてプラグインとして読み込む。

 

その後、個別のアプリで「アプリの設定」>「プラグイン」から「JSEdit for kintone」プラグインを追加する。

追加したプラグインの設定欄の歯車からコード作成画面を開くことが可能

 

覚えたてのhogehogeコード

詳細を開いたときに処理を行う

    kintone.events.on('app.record.detail.show', function(e) {
~略~
    });

※「https://developer.cybozu.io/hc/ja/articles/360000903686」を参照

 

一覧を表示したときに処理を行う

    kintone.events.on('app.record.index.show', function(e) {
~ 略 ~
    });

※「https://developer.cybozu.io/hc/ja/articles/360000903686」を参照

 

イベントはまとめて書くとよいみたいなので

    var events = ['app.record.detail.show',
        'app.record.create.show'];

    kintone.events.on(events, function(event) {
~略~

 });

って感じで詳細のときと追加の時の処理になる。

 

↓イベント。チュートリアルサイトより。

| app.record.detail.show | レコード詳細画面表示時 |
| app.record.create.show | レコード追加画面表示時 |
| app.record.create.change.past | レコード追加画面表示でフィールドコード[past]変更時 |
| app.record.create.change.radio2 | レコード追加画面表示でフィールドコード[radio2]変更時 |
| app.record.create.change.radio3 | レコード追加画面表示でフィールドコード[radio3]変更時 |
| app.record.create.change.radio4 | レコード追加画面表示でフィールドコード[radio4]変更時 |
| app.record.create.change.radio5 | レコード追加画面表示でフィールドコード[radio5]変更時 |
| app.record.edit.show | レコード編集画面表示時 |
| app.record.edit.change.past | レコード編集画面表示でフィールドコード[past]変更時 |
| app.record.edit.change.radio2 | レコード編集画面表示でフィールドコード[radio2]変更時 |
| app.record.edit.change.radio3 | レコード編集画面表示でフィールドコード[radio3]変更時 |
| app.record.edit.change.radio4 | レコード編集画面表示でフィールドコード[radio4]変更時 |
| app.record.edit.change.radio5 | レコード編集画面表示でフィールドコード[radio5]変更時 |

 

よくある「その他」の選択肢を選ぶと理由を書く場合(選択肢(input_select)、理由ボックス(input_select_other)とした場合

    //レコードの追加、編集、詳細画面で適用する
    var events = ['app.record.detail.show',
        'app.record.create.show',
        'app.record.edit.show',
        'app.record.create.change.input_select', 
        'app.record.edit.change.input_select'];

    kintone.events.on(events, function(event) {
        var record = event.record;
        var input_select = record['input_select']['value'];
        if (input_select === 'その他') {
            kintone.app.record.setFieldShown('input_select_other', true);
        } else {
            kintone.app.record.setFieldShown('input_select_other', false);
        }
    });

こんな感じでその他の選択肢が表示非表示となる。

 

 

 

Publish kintone dataプラグインでWordPressにデータを送ってみるのまき

kintoneを前回、WordPressからkintoneにデータを送るのを試してみました。今度はkintoneからWordPress側にデータを反映してみたいと思います。

 

利用するプラグインは「Publish kintone data」です。(https://ja.wordpress.org/plugins/import-kintone/

使い方は「https://ht79.info/2017/08/19/how-to-publish-kintone-data/」を参照していただければ、簡単に連携できます。

 

気になった点をまとめてみた。

・ACF(Advanced Custom Fields)との連携。

⇒そのままカスタムフィールドに値を設定すればいい感じ。repeatはちょっとね…

 

・kintoneから新規に追加された記事が下書きとなる。

⇒プラグインを見てみたところ、「import_kintone_insert_post_status」でフィルターを掛ければ、指定できそうだということでざっくりと。

function func_import_kintone_insert_post_status($status)
{
	return 'publish';
}
add_filter('import_kintone_insert_post_status', 'func_import_kintone_insert_post_status',10,3);

こんな感じで「公開」になる。

 

・kintoneから更新された場合にステータスを変えられるのか

⇒だめそうっすな。そのままだと。更新時は、ステータスは変更しないみたい。

 

 

 

 

 

ContactForm7とkintoneを連携していみる

ワードプレスの問い合わせフォームとしてコンタクトフォーム7が定番ですが、これをkintoneと連携してみたいと思います。

 

■初期準備手順

・contactform7プラグインをインストールする

・「Form data to kintone」プラグインをインストールする

 

・kintoneにユーザー登録をする

https://kintone.cybozu.co.jp/」無償お試しがあるのでそれで行ってみます。

 

すでに登録があったらしくサイボウズストアからパスワードリセットをして、お試しでkintoを選んでみました。

 

 

 

■kintoneで問い合わせフォームのアプリを作る

・「設定」>「アプリ管理」>「アプリを作成する」をクリックする

・「はじめから作成」をクリックする

 

・ペタペタとパーツを入れてフォームを作る

 

・「フィールド名」と「フィールドコード」を設定する

 

・「設定」タブ>「APIトークン」をクリックする

APIトークンを生成する。レコード閲覧とレコード追加のアクセス権を付与した

 

・URLのところに「app=XX」と数字があるのでこの数字がAPP IDになるので記録しておく。

 

■WordPressのコンタクトフォームでkintoneの設定をする

・コンタクトフォームのkintoneのタブを開く

・下記の設定を行い、「GET」ボタンを押す。

kintoneのドメイン:取得した時のドメイン名

kintone へ登録エラーを送信するメールアドレス:エラーを送信するアドレス

APP ID:URLで「app=XX」となっていた数字

API TOKEN:作成したAPIトークン

 

 

 

・コンタクトフォームのフィールドとkintoneのアプリのフィールドを一致させ、保存する

 

あとはフォームを設定してテスト。

成功すればkintoneのアプリにデータが格納される。

 

■その他

・添付ファイルについて

「Form data to kintone」プラグインでは、Add onとなっているが今とのころ未定っぽい。

以前はフォームクリエイターというのが別サービスであっただのが今は終わってしまい「フォーム」ブリッジというのを利用するとkintoneのフォームを一般公開できるみたい。

あとは、自作するしかないっぽいな…

 

・ルックアップフィールドは登録、更新ができない。

そのような仕様とのこと。

https://developer.cybozu.io/hc/ja/articles/201941754#step12