WordPress5.3以降で大きな画像が強制的に小さくアップロードされるようになっていた

あんまりアップロードすることがないのですが、2560px以上の画像をアップロードした場合は、ワードプレス5.3から強制的に2560pxのサイズにリサイズされてアップロードされるようです。

 

元記事はこちら

 

大きい画像のサイズを無効化するには下記のコードをfunction.phpに追記すればOK

add_filter( 'big_image_size_threshold', '__return_false' );

 

 

2560px以上の画像って稀な感じもするけど。。。

 

WordPressのユーザー権限の違いによる投稿がどうなのか改めて確認してみた

WordPressは最初から下記の権限が用意されています。

 

権限名 概要
購読者 読むだけのユーザー
寄稿者 記事を投稿し、管理者に承認を得て記事が公開されるユーザー

公開された記事は変更できない。メディアは利用できない

投稿者 自身で自身の記事を公開できる。メディアは利用できる(メディアにアップされたものはすべて利用可能)

他人の記事は変更できない

編集者 他人の記事も変更できる
管理者 なんでも。

 

寄稿者が投稿画面を使って投稿する場合

テキスト投稿のみ。公開はできない

 

投稿者が投稿画面を使って投稿する場合

自身の投稿は何でもできる。メディアも自身+他人がアップしたものを利用できる

 

これが基本的なWordPressの権限になります。

 

権限を変更する場合は「User Role Editor」を利用するとよいです。

 

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の設定は、マニュアルと実際の画面が異なったり、新旧の情報が散乱しているので、ほかと比べて面倒くさいと感じてしまいます。

 

こんなところです。