ITで遊ぶ

eラーニングシステムの作り方

COVID-19のせいで、eラーニングが流行るのは当然ですが、便乗して聞いたことない会社がeラーニングのさまざまなクラウドシステムを宣伝しています。

個人的見解です。

「機能の割にタケーよ。このローテク野郎!」

月ひとり300円で100人いたら30000円、年間360000円。しかもコンテンツはあなたまかせ?
こんなのIT知らない人事しか使わねーわ。
企業のみなさん騙されないでください。
eラーニングシステムは、(レンタルサーバーがあるなら)Vimeoにお金を払うだけでOKです。

説明します。

自分で作るeラーニングシステム

eラーニングシステムで最も有名なものはMoodleです(Moodle日本語)。Moodleではオンラインの学校ができるでしょう。

これ、昔、インストール、カスタマイズしたことがありますが、3,4日でeラーニングシステムが構築できます。

機能はすごいので普通の人はコンテンツ登録にまごつくでしょう。

もっと簡易なものに日本製でイロハボードというものがあります。これも無料で使えます。

が、当然、デザインに制約があります。

かくいう私もこうやってeラーニングシステムの論評をしているということは、eラーニングシステムを作らなくてはいけなくなり、コンテンツを持っている人間と、システムを管理する人間(私)が別であるという境遇になったからです。

さらに探すと、WordPress上で動くeラーニングシステム(LMS)がいくつかあります。
もちろん多くはフリーです。

WordPress+senseiLMSプラグイン

WordPressはとてもポピュラーですから今さら導入方法やカスタマイズ方法については触れません。
お金がない人はネットで入門用記事を見ながら、少しお金がある人は入門書を買ってすすめましょう。
本は情報にもれなく親切に書いてありますから、ネットで勘違いや嘘がまざった記事を探しながら作業するより、はるかに効率的に導入、カスタマイズ作業が進むでしょう。
技術本はできるだけ新しいものを購入してください。
間違っても10年以上前の拙著「いま一番わかりやすいWordpress日本語版でブログサイト構築入門」なんぞを読んではいけません。
「インターネットになんでもあるから本はいらない」ってまともな勉強をした人間の言うことではありませんよね?

私は比較議論で「最も機能が限られる」と書かれているsenseiLMSを導入してみました。
やりたいことはシンプルで最低限でいいと思ったからです。シンプルなものは学習時間も少なくてすみます。

主な機能は

  • 会員・非会員で閲覧できる学習ページを使い分けられる
  • 管理画面で学習の進捗を把握できる
  • 先生と生徒でやりとりができる
  • レッスンごとに課題など設定できる
  • レッスンに「このレッスンが終わらないと受講できない」と前提をつけられる
  • 修了証を出せる

このLMSは、コースとレッスンという簡単な概念からできています。
例えば「カヌレの作り方」コースを作り、その中にレッスン「材料調達」、レッスン「準備」、レッスン「こねこね」、レッスン「焼く」という構成を作ればいいだけです。これはわかりやすいので悩みませんね。

もしここを見ているあなたが、システムに含まれるすべてのコースが一度お金を払ってもらったら使い放題にしたいのであれば、senseiLMSの場合、ユーザーを「購読者」で登録すればOKです。

もし、コースごとに課金したいのであればsenseiLMSにお金を払い、WoooComerceを導入することになります。
「え?」と引いた人は課金がいかに難しいアプリか知らない人だと思います。
私はプログラマーでもありますが、課金のプログラムなんていうお金が動くシステムはそれなりの理由がないと触りたくもありません。
このsenseiLMSはWoooComerceを作った人によって開発されていますから親和性は抜群なんです。

senseiLMSプラグインはWordpressのプラグイン管理画面で新規インストールから検索してインストール、自分のWordpressのsenseiLMSの管理画面でもう一度、インストールボタンを押せば動きだします。

トラブルはありました。
私が遭遇したトラブルは、senseiLMSプラグインを入れて、インストール作業をした後、固定ページに「コース」と「マイコース」ができます。
説明書きでは「コース」は中身が空であっても、システムがそのタイトルから自動的にコースリストを作ってくれるということでしたが、出てきませんでした。
しかしショートコード[sensei_courses]を書き込んだら、動作しました。(ショートコードについてはここ
「マイコース」も一度消して、固定ページとして作り直し、ショートコード[sensei_user_courses]と書き込んだら動作しました。

senseiLMSを使うと、いわゆるWordpressの「投稿」は必要なくなります。
ブログっぽくはないです。

それでもメニューにLMSのメニューを載せるとか、ユーザーのログイン・ログアウトについては別のプラグインを入れるなど、Wordpressの柔軟性のおかげでプログラム一行書く必要はないです。

プロダクションで使うのであれば、Wordpressのバックアップサービス(月額500円足らず)を使えますし、データベースの最適化ツールも必須でしょう。
プラグインを導入してプラモデルのように自分好みのシステムにできるところがWordpressのよさだと思います。
他のLMSだとこうはいきません。

ただしWordpressの最新のテーマTwentytwentyを使ったので、この挙動に手を焼いた時間のほうが長かったです。
理由はやはり最新のエディターというグーテンベルクのせいです。テーマはグーテンベルクでの編集が前提ですから困りました。
テーマはよく選んでください。

WordPressで購読者に管理画面を見せない方法

なお、豆知識ですが、senseiLMSを入れて生徒としてユーザー登録する場合、権限は「購読者」になるはずです。

この購読者でログインした時に、Wordpressの管理メニューは見せたくないでしょう。一般ユーザーに見せると混乱の元です。

私は子テーマのfunctions.phpに以下のコードをコピペしました。(子テーマについてはこちらを)

  add_action( 'auth_redirect', 'subscriber_go_to_home' );

  function subscriber_go_to_home( $user_id ) {
       $user = get_userdata( $user_id );
       if ( !$user->has_cap( 'edit_posts' ) ) {
          wp_redirect( get_home_url() );
          exit();
       }
  }

   add_action( 'after_setup_theme', 'subscriber_hide_admin_bar' );

   function subscriber_hide_admin_bar() {
      $user = wp_get_current_user();
       if ( isset( $user->data ) && !$user->has_cap( 'edit_posts' ) ) {
          show_admin_bar( false );
      }
   }

Vimeo推奨の理由

大事なことはコンテンツに動画がある場合、自分のレンタルサーバーに置かないことです。

理由は単純で、そんな帯域もってますか?
ブツブツ止まるはずですし、そのうちサーバー屋さんから「帯域使いすぎ」と警告をもらう可能性があります。

じゃぁ、動画をYoutubeに置くのか?
もしあなたのeラーニングシステムが第三者に見られて構わないものであれば、Youtubeに置くこともありです。

しかし内部向け、有料だとしたらVimeoの一択です。

Vimeoはプライバシー設定で、アクセスできるドメインを指定できます。
言い換えるとeラーニングシステムのドメインを登録すると、他からは再生できないわけです。

しかも動画サイトなので帯域制限など言われません。

なお動画を入れるeラーニングはドットインストールのように、ひとつの動画を3分以下にすることがよいと思います。
ご参考まで。

以上、小規模かつクローズドなeラーニングシステムを作る方法でした。

関連記事

  1. ロリポップでPHPエラーが出た時

  2. WordPress Dtree

  3. WordPressのログインにBasic認証をかける

  4. 会員サイトのちょっとしたプラグインの日本語化

  5. びっくりアクセス!18,000PV

  6. wordpress2.9+mysql5

  7. WordPress再インストール

  8. WordPressで管理者IDがわからないけれど、アカウントを作る方法…