WEB学会(オンライン学会)サービスを開始しました!

WordPress、ZOOM、VIMEOを組み合わせてWEB学会(オンライン学会)システムにこの度仕上げましたので1ページ記事を作ってみました。

 

どんな機能があるのか?

・タイムスケジュール表示

・ログイン管理(参加者、発表者、閲覧…)

・ログイン履歴

・一般演題、講演、企業展示

・ZOOMのウェビナーの埋め込み

・コメント機能(投稿期間と閲覧期間の指定、演者の場合の投稿期間)

・動画視聴の履歴(指定動画のみ)

 

トップページ(スケジュール)

こんな感じでスケジュールを表示します。クリックすると詳細ページにジャンプします。

スケジュールのタイムライン表示はちょっと悩み中です。見せなくてはいけない文字数もあるので。

 

ZOOM埋め込みって?

こんな感じページ内にZOOMが埋め込まれます。1ページ見ている感じにZOOMウェビナーが入ります。

 

学会って

ある講義を受けて認定というケースがあるのですが、そのときの条件が

その場にどれだけいなくてはいけないのか、ちゃんと聞いていたのかというチェックポイントがあります。

動画視聴は履歴を取得機能を開発しましたので、誰がどれだけ視聴したのか記録します。

また、このような動画の場合は、早く送り禁止となります。

履歴取得のシステムを作りましたがなんだかんだ、俺は見たんだっていう人がいるかも知れませんのでそのときは、動画内にキーワードを入れてキーワードチェックをすると更に精度があがります。

 

ZOOMウェビナー操作ってやってもらえる?

こちらではやっていません。パートナー等に依頼することになります。金額もそれなり高いので覚えていただくのが良いかと思います。

 

WEB学会って、パソコン、スマートフォンどっち?

気軽に自分のタイミングでアクセス!ってことでスマートフォンの割合が増えています。

それだけ参加が気軽になったのかなと思っています。

 

 

WEB学会サービスに関してのサイトを立ち上げたのでそちらもどうぞ。

 

https://webgakkai.com/

 

WP Super Cacheが動作しない…

警告: WP Super Cache のキャッシュが壊れたため、修正しました。スクリプト advanced-cache.php は wp-cache-phase1.php をロードできませんでした。

 

キャッシュが壊れたそうです・・・?

WPCACHEHOMEのパスが正しくないようです。

wp-config.php

define('WP_CACHE', true);
define( 'WPCACHEHOME', '<サーバーのパス>/wp-content/plugins/wp-super-cache/' );

 

ZOOMのウェビナー、ミーティングの設定を改めて考えてみる

ZOOMをウェブサイトに埋め込むようになり、ウェビナー、ミーティングの動作をもう一度改めてみました。

ミーティングの設定

■代替ホストを使いたい

代替ホストを指定するにはエデュケーション契約(Education)かエンタープライズ契約(enterprise)が必要。プロじゃ使えない。

 

■ホストなしでミーティングを開始する。ホストキーでホストになる

1.ZOOMのアカウント設定で「ホストより先に参加することを参加者に許可」を有効にする

https://zoom.us/account/setting

2.ミーティングを作成時に「ミーティングオプション」で「参加者に参加を許可する 任意の時間」にチェックを入れる

※待機室を有効化すると待機室が優先となるようなのでチェックを入れないこと。

 

3.ミーティングに参加後、「ホストの要求」をクリックする

 

4.ホストキーを入力し、「ホストの要求」をクリックする

 

※ホストキーは、「マイプロフィール」(https://zoom.us/profile)の下部にあります。

※ホストキーは、基本的には固定。(編集も可能)

 

 

5.承認されるとホストになることができる。

 

※無料ホストで予定された会議の場合:40分以上経過しても何も警告など表示されませんでした

 

 

 

 

ウェビナーの設定

 

■質疑応答機能を利用しない

初期状態ですと、ウェビナーに関するQ&Aが有効になっており、その状態でスケジュール化したウェビナーはQ&Aが有効な状態です。

質疑応答=Q&Aと理解して設定してください。

 

↓質疑応答を有効かした状態でスケジュールしたウェビナーは後で設定を変えても質疑応答が有効な状態。(質疑応答のタブが表示されたまま。逆は客のまま)

 

質疑応答の無効化の設定方法

1.「個人」>「設定」を表示させる。具体的は下記のURLをクリック。

https://zoom.us/profile/setting

 

2.「ウェビナーに関するQ&A」をオフにする

 

3.ウェビナーを作成する

 

これで質疑応答が無効かされたウェビナーが作成できます。

 

ZOOMアプリでもウェブでも同じ動作になります。

 

 

■チャット機能を利用しない

この機能は一律のようです。それなので、Q&Aのようにウェビナーの作り直しは不要です。

チャット機能の無効化の設定方法

1.「個人」>「設定」を表示させる。具体的は下記のURLをクリック。

https://zoom.us/profile/setting

 

2.「チャット」を無効にします。関連の設定も無効化されます。

↓チャット項目が消えました。

 

 

■手を挙げる機能を禁止したい

すみません。設定どうしたらよいのかわかりません。

 

■ウェビナーをブラザで参加したときにギャラリービューを利用したい

2021.2.18現在ではウェビナーに参加者に対して、ギャラリービューの機能がないようです。

 

ウェビナーのホスト、パネリスト、ミーティングではギャラリービューができます。

↓はブラウザでミーティングをギャラリービューで行った場合

 

 

■ウェビナーでブレイクアウトルームは利用できない

利用できません。ミーティングのみです。

 

 

共通

■faicerigと組み合わせてvtuber的にミーティングに参加する。

1.steam でfaceirigを購入する

https://store.steampowered.com/app/274920/FaceRig/?l=japanese

 

2.顔認識とアバターの準備をする。

 

3.「アドバンスUIに変更する」をクリックする

 

4.ブロードキャストに切り替える

 

 

5.ZOOMのビデオ設定でカメラを「facerig」にする

↓はZOOM開始後にカメラ選択を変更する場合

 

・バーチャル背景と組み合わせた場合。もうなんだかわかりませんね。

 

 

 

 

WordPressのキャッシュを比較してみる

WordPressでどのようなツールでキャッシュするとどうなのか比較してみました。

 

初期値のスペック。

GTMETRIXで比較(https://gtmetrix.com/

 

abコマンド(ab -n 1 -c 1):Requests per second: 1.67 [#/sec] (mean)

abコマンド(ab -n 10 -c 10):Requests per second: 2.39 [#/sec] (mean)

abコマンド(ab -n 100 -c 100):Requests per second: 1.78 [#/sec] (mean)

abコマンド(ab -n 1000 -c 100):NG

スペックをかなり落としているのでここまでらしい…

 

 

kusanagiのbcacheをON

 

abコマンド(ab -n 1 -c 1):Requests per second: 24.79 [#/sec] (mean)

abコマンド(ab -n 10 -c 10):Requests per second: 71.82 [#/sec] (mean)

abコマンド(ab -n 100 -c 100):Requests per second: 134.61 [#/sec] (mean)

abコマンド(ab -n 1000 -c 100):Requests per second: 362.26 [#/sec] (mean)

abコマンド(ab -n 10000 -c 1000):Requests per second: 274.28 [#/sec] (mean)

 

「onにします。失敗しました。WP_CACHE定数が重複して定義されています。完了しました。」と表示される場合

キャッシュはONではありません。ややこしいのですが「wp-config.php」に下記の行が必要です。重複でないのでメッセージがややこしくしてます。

define('WP_CACHE', true);

 

WordPressプラグインのWP Super Cacheを使用

※kusanagiのキャッシュはオフ

とりあえず、設定は初期値で。キャッシュを有効化

abコマンド(ab -n 1 -c 1):Requests per second: 95.30 [#/sec] (mean)

abコマンド(ab -n 10 -c 10):Requests per second: 137.31 [#/sec] (mean

abコマンド(ab -n 100 -c 100):Requests per second: 394.15 [#/sec] (mean)

abコマンド(ab -n 1000 -c 100):Requests per second: 744.06 [#/sec] (mean)

abコマンド(ab -n 10000 -c 1000):Requests per second: 886.51 [#/sec] (mean)

 

キャッシュの結果まとめ

-N1 -C1 -N10 -C10 -N100 -C100 -N1000 -C100 -N10000 -C1000
初期値 1.67 2.39 1.78
bache 24.79 71.82 134.61 362.26 274.28
WP Super Cache 95.3 137.31 394.15 744.06 886.51

 

あれ、kusanagiのbacheよりwp super cacheの方が1秒間あたりに処理できる数が多いことが判明!!

bacheにこだわっていたがそうでもないようだ。ただ、これは計測結果の一つなので環境やHP構成によっても異なるので注意を。

 

 

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

 

 

welcartで見積書、請求書、納品書、領収書に印鑑のイメージやロゴを入れたい

welcartで見積書、請求書、納品書、領収書に印鑑のイメージやロゴを入れたい場合のメモです。

 

結論からするとfunctionでfilterを追加することになります。

 

・function.phpに追記

function my_filter_pdf_sign() {
	return get_template_directory() . '/画像ファイル.jpg';
}
add_filter( 'usces_filter_pdf_estimate_sign', 'my_filter_pdf_sign' );//見積書
add_filter( 'usces_filter_pdf_invoice_sign', 'my_filter_pdf_sign' );//納品書
add_filter( 'usces_filter_pdf_receipt_sign', 'my_filter_pdf_sign' );//領収書
add_filter( 'usces_filter_pdf_bill_sign', 'my_filter_pdf_sign' );//請求書

 

・サイズや位置を指定する場合(横の位置、縦の位置、画像の幅、画像の高さ)

function my_filter_pdf_sign_data() {
	return array(110, 50, 50, 50);
}

 

うーん。複数は設定できなさそうなので、どっちか1つですかね。。

 

welcartでpaypalエクスプレスチェックアウトの決済を設定してみる

WordPressのショッピングサイトツールのWelcartでPaypalエクスプレスチェックアウトの決済を設定してみたいと思います。

※Paypalアカウントが登録されていることが前提。

 

■本番用のAPI情報を取得する

・PayPalのサイトにアクセスします

・右側の設定アイコンから「アカウント設定」をクリックします。

 

・APIアクセスの更新をクリックします。

 

 

・「NVP/SOAP APIの実装(旧バージョン)」の「API認証情報の管理」をクリックします。

 

・APIの情報が表示されます。

この内容は本番用として、何かにメモとして保存しておきます。

 

■ウェブペイメントの設定

ウェブペイメント設定ページを開きます。

https://www.paypal.com/businessmanage/preferences/website

 

自動復帰の設定

顧客がペイパルで決済を完了した際、ペイパルの決済画面から自動的にECサイトに戻るよう設定を行います。とのこと。

↓自動復帰の説明(Paypal)

https://www.paypal.com/jp/webapps/mpp/developer/paypal-button/checkout-setting

・自動復帰のURL(?acting=paypal_wpp&acting_return=1を付けるとのこと)詳しくはこちら

https://ECサイトURL?acting=paypal_wpp&acting_return=1

 

PayPalアカウントオプションサービス

「オン」にする。アカウントが無い人でも支払いできるようにするためのオプション

 

 

■テスト用アカウントの準備

Sandbox test accountsは下記のURLから。

https://developer.paypal.com/developer/accounts/

 

アカウントが無い場合は「Create Account」から作成する。TypeがBusinessは販売、Personalは買う人

「Manage accounts」欄からAPIに必要な情報を記録する。あとメールアドレスも。

 

 

 

■Welcartの設定手順

・WordPressの管理画面で「Welcart Shop」>「クレジット決済設定」をクリックします。

・利用できるクレジット決済モジュール欄から「Paypalエクスプレスチェックアウト」を右側の「利用中のクレジット決済モジュール」に移動させて「利用するモジュールを更新する」をクリックします。

 

・そうすると「Paypal(EC)」タブが表示されます。

 

 

・上記の作業で本番用とテスト用のAPIを取得しているので利用する用途に合わせて入力します。

 

※最初はテストで動作させて動くか確認します。

 

・「Welcart Shop」>「基本設定」で支払い方法にPaypalを追加する。

 

 

■動作確認

実際に適当な商品をカートに入れて決済に移動します。Paypalで支払うと表示されたら、テスト用のアカウントでログインして決済します。

 

正しくできていればよいのですがエラーメッセージが表示された場合は、「Welcart Management」ページを開き、上部に「決済エラーログ」の文章が表示されているのでそこでエラーを確認できます。

 

一度できてしまえばそんなもんというところですがPaypalの設定は、マニュアルと実際の画面が異なったり、新旧の情報が散乱しているので、ほかと比べて面倒くさいと感じてしまいます。

 

こんなところです。

welcartで商品一括登録を行ってみるって言いながらもその他もろもろ

WordPressのショッピングカートのwelcartの商品一括登録を行ってみました。

その時のメモを残しておきます。

 

※Welcartの商品一括のマニュアルはこちら

 

 

商品一括登録手順

・メニューの「Welcart Shop」>「商品マスター」をクリックする。

・「操作フィールド表示」をクリックする

 

・そうすると右側に「商品一括登録」「商品データ出力」が表示される

 

・商品インポートの元ファイルは、マニュアルサイトにサンプルのエクセルがあるのでそちらをベースに用意します。

SKU展開するしない等あるので、実際に一括取込する前にテストサイトで試すのが良いです。

※注意:1.9.31で試したところインポートはCSVのみ。1行目にヘッダーは必須

 

元のファイル(Excelで開いたところ)

 

インポートした画面

 

 

■インポートをやってみてわかったこと

存在しないカテゴリを指定した時は、何も選択もカテゴリの追加もされない。

カテゴリは、スラッグ指定ではうまくいかなかった。IDは問題なし

 

取込のCSVのPost IDが空欄だと新規登録となり、商品コードがすでに登録されていると登録がスキップされる

⇒既存の商品を更新したい場合はPost IDを指定する

 

 

商品をゴミ箱に捨てた場合は、「検索項目」>「表示状態」>「ゴミ箱」とすることで表示される

 

Advanced Custom Fields PROを利用することができない!??

Advanced Custom Fields PRO を Welcart で使えるようにするためのパッチが出ているようです。

そのまま、カスタムフィールドを利用した場合は商品にフィールドは追加されませんでした。

商品のpost_typeが「post」なのできつめの設定で行う場合は、投稿にも影響するので注意が必要

カテゴリを商品で指定すれば何とかなるのかな。

インポートする際にもカスタムフィールド列に「カスタムフィールド名=値」で登録できた。

 

リピート項目の場合にはちょっとした注意事項が必要だった。

イメージをつかむためには、一度、リピート項目に値を追加し、商品のデータをダウンロードし、カスタムフィールド列を見てみるのが良い。

 

下記のようにカスタムフィールドを作ってみた。

 

では、どのように商品インポート時にカスタムフィールドを設定すればよいのかというと

 

1.フィールドラベル(繰り返しフィールド)のフィールド名で、何件追加するのか指定する。2行の場合は「itemrepeat=2」となる。

2.サブフィールドのフィールド名を指定する

・サイズの場合

1行目に入れる値:itemrepeat_0_size=1234

2行目に入れる値:itemrepeat_1_size=576

 

まとめると、2件のデータで上記のサイズを入れる場合は

itemrepeat=2;itemrepeat_0_size=1234;itemrepeat_1_size=576

となる。

また、指定されていないフィールドは上書きされないので空欄などにしたい場合は空欄で指定が必要

 

 

WordPressのwelcartの商品インポートについてはこんなところでしょうか…

simple post order wordpress plugin で並び順が変わらなくなった

カスタム投稿の並び順を手動で変更するために「simple post order 」プラグインを利用していた。

いつかしら、並びを変えることができなくなった。

 

■作業の経過を追ってみた

1.記事をWP All Importでインポート

2.simple post orderで並び替え

3.記事をWP All Importでインポートで更新

4.WP-PostViewsを入れた

5.Disable Commentsを入れた

6.simple post orderで並び替えがで動作しない(現在ここ)

 

■動作するようになった方法

「simple post order」の並び順をリセットした

 

■原因として考えるに…

WP ALL Importで何度か記事を更新したことに原因が???

 

っていう推測な領域。

 

とりあえず、リセットしたら治ったのでもう一度設定。