WordPress本体およびプラグインをアップグレードする前に

  • すでに何らかのサービスを運営されている、いわゆる「本番サイト」においては特に、WordPress本体のアップグレードや、プラグインの新規追加・アップグレードなどは慎重に行なわれてください。
    別途、テストサイトやバックアップサイトを準備されて、そちらで十分な試用と確認をされた上で、「本番サイト」をアップグレードされることをおすすめします。

 

あれ?動作がおかしい..と思った時にお試しいただきたいこと

Attendance Manager をお試しくださったユーザーさんから、「うまく動かない」といったご相談をいただくことがありますが、以下の方法によって解決したことが多いので、おかしいなと思ったときはぜひ試してみてください。

(なお、Attendance Manager はWordPressのマルチサイトでの利用は考慮されていません

 

どのユーザーでログインしているか確認してみる

スケジュールを登録しようとしたら「アクセス権がない」というエラーが表示される場合、以下の可能性が考えられます。

  • 管理者アカウントでログイン中に「出勤管理(スタッフ用)」にアクセスした
  • スタッフアカウントでログイン中に「出勤管理(管理者用)」にアクセスした

アクセス権のあるアカウントでログインし直してみてください。

 

お使いのサーバーのPHP設定を確認してみる

「スタッフの数を増やしたら、"出勤管理(管理者用)" でスケジュールを登録しても反映されなくなった」という場合、お使いのサーバーのPHP設定の制限に引っかかってしまった可能性があります。

Attendance Managerでは「利用可能なユーザー数」のような制限はしていません。
ただ、PHPの環境として、フォームから一度にPOSTできる項目数には上限があります。
この上限を超えると、フォームから送信される項目が途切れ、誤動作を招くことがあります。

原因

  1. スタッフの登録数が増加
  2. それにともない、出勤管理(管理者用)フォーム内にある入力項目数も増加
  3. その項目数が、お使いのサーバーのPHP設定「max_input_vars」の上限を超えた
  4. 上限を超えた分の項目(特に、更新を指示する項目)が途切れて、送信されない
  5. スケジュールが更新されない

もし、スタッフ個人のアカウントでログインし、スタッフ自身の出勤管理(スタッフ用)でなら更新できる場合、フォーム内の項目数が関係していると思われます。

解決方法

このケースに当てはまる場合、お使いのサーバーのPHP設定「max_input_vars」の上限値(1000とか2000ぐらいが多いようです)をより大きくすることで解決します。
PHP設定の編集・変更方法はお使いのサーバーによって異なりますので、サーバーの利用ガイドなどを参照してみてください。

例1:「お名前サーバー」の場合
  1. テキストエディタ(HTMLやJavascript等のコーディングに適したもの)を開きます
  2. 新規作成したファイルに下記の1行を記入します
    max_input_vars = 5000
  3. ファイル名を「php.ini」として保存します
  4. FTPで、WordPressサイトの直下にこのファイルをアップロードします
例2:「さくらのレンタルサーバー」の場合
  1. コントロールパネルを開きます
  2. 「アプリケーションの設定:PHP設定の編集」を開きます
  3. 下記の1行を記入して保存します
    max_input_vars = 5000

もし、「max_input_vars」の値を変更しても解決しない場合はほかの原因が考えられます。
その際はまたご相談ください。

 

ショートコードの記述が正しいか確認してみる

各ページに挿入するショートコードの記述に誤りがあると、以下のようなことが起きる場合があります。

  • ショートコードの箇所に何も表示されない
  • ショートコードの文字がそのまま表示される
  • スケジュールを設定しても反映されない

 

これらの原因として、次のようなケースがありました。

  • スペルミスがあった([正]weekly → [誤]weekry, [正]monthly → [誤]montlhy など)
  • ショートコードを挿入する際、本文を「ビジュアル」モードで入力してしまった。
    または、ガイドに掲載のショートコードをコピーし、「ビジュアル」モードで貼付けてしまった。 (ショートコードは「テキスト」モードで入力してください)
  • ダブルクォーテーション(")が全角文字になっていた
  • 角括弧([])が全角文字になっていた
  • 空白( )が全角文字になっていた
  • アンダースコア(_)がハイフン(-)になっていた
  • "id="で指定したスタッフIDが全角数字だった
  • "id="で指定したスタッフIDが誤っていた
  • "id="で指定したスタッフIDが無効だった(スタッフユーザーの削除+再登録など)

念のため、確認してみてください。

 

javascriptのエラーの有無を確認してみる

何らかの影響で javascript に関するエラーが生じていると、正しく動作しないことがあります。
念のため、ブラウザのツールを使って、スクリプトエラーの有無をチェックしてみてください。

スクリプトエラーの有無を確認する

  1. ブラウザ「Google Chrome」で、メニュー「表示 > 開発/管理 > javascriptコンソール」を表示する
  2. 問題が生じているページを開く
  3. ツールの「Console」タブにスクリプトエラーなどが出ていないか確認する

エラーの原因を特定する

javascript に関するエラーの原因は、お使いのテーマによるものだったケースが多いですが、他のプラグインによるものだったこともあります。
問題の原因を絞り込むために、テーマをWordPress同梱のものに変更したり、他のプラグインを一旦すべて停止してみることもおすすめします。

もし、お使いのテーマ自体にスクリプトエラーがある場合(そのテーマのデモサイトでも同じエラーが出ていたりします)は、テーマの制作元に問い合わせてみてください。

とりあえずの対処

  1. 「404 (Not Found) (=ファイルが見つからない)」エラーの場合
    1. そのファイルを参照・リンクしている行を削除またはコメントアウトする
    2. あるいは、ダミーで同名のファイルを作り、参照先に置く

  2. javascriptの中でエラーが生じている場合
    1. そのjavascriptが不要であれば、読み込ませないようにする
    2. あるいは、エラーの箇所をコメントアウトする(/* */ で括る) 

 

テーマをWordPress同梱のものに変更してみる

お使いのテーマとプラグインの間で何らかの影響が生じ、プラグインのスタイルシートやjavascriptが適用されないというケースはあります。

表示や動作がおかしい時は、念のため、テーマをWordPressに同梱のテーマ(Twenty Sixteenなど)に替えて、問題が解消されるか確認してみてください。

WordPressに同梱されていたテーマ

  • Twenty Sixteen
  • Twenty Fifrteen
  • Twenty Fourteen
  • Twenty Thirteen
  • Twenty Twelve など

調査等について

基本的に、テーマに依存する問題については対応できかねますが、やむをえないご事情がある場合については有償にて調査・対応いたします。

 

Attendance Manager以外のプラグインを全て停止してみる

これで問題が解決するようでしたら、他のプラグインとの間で何らかの影響があったのかもしれません。停止させた他のプラグインを1つずつ元に戻しながら動作を確認し、どのプラグインとの併用で問題が起きるのか確かめてみてください。

  • WP Super Cacheプラグインなどでキャッシュを有効にしていると、スケジュールの更新が反映されなくなることがあります。

 

別途もう1つテストサイトを作ってみる

「プラグインがうまく動いていない」という当該サイトとは別に、もう1つテストサイトを用意して、WordPressのインストールからプラグインのインストールまでを最小限の手順で行なってみてください。

確認のための簡単な導入手順

  1. 新たに別のディレクトリへWordPressをインストールし、管理者としてログイン
    (URLを、仮に http://example.com/test/ とします)

  2. 「設定 > パーマリンク設定」で「投稿名」を選択して保存

  3. 「外観 > テーマ」で「Twenty Sixteen」を有効化。
    (WordPress同梱の、他のテーマでも可)

  4. 「プラグイン > 新規追加」から「attmgr」か「attendance manager」でプラグインを検索
    Attendance Managerをインストール&有効化

  5. 「ユーザー > 新規追加」で「スタッフ」としてのユーザーを登録

  6. 「出勤管理(管理者用)」でスケジュールを登録

  7. スケジュールが反映されているか確認

このテストサイトで問題なく動作するようであれば、元のサイトの方に何らかの原因があったと思われます。

 

WordPress本体のファイル一式を再アップロードしてみる

最初に作ったサイトではプラグインがうまく動作せず、同じサーバーに別途もう1つテストサイトを作ってみるとそちらではちゃんと動作した、という事例の後日談です。

その後、最初に作ったサイトにもう一度 WordPress本体のファイル一式をアップロードし直してみたところ、今度はちゃんと動作した、というご報告をいただいたケースがありました。そういうこともあるようです。

 

それでもやっぱりうまく動かないときは

一通りこれらの方法を試してみたけれど、「やっぱりうまく動かない」という場合は、ご利用環境などの情報を添えてご相談ください。

[ご利用環境について]
- WordPressのバージョン
- お使いのテーマ
- 同時に使われているプラグインの一覧
- お使いのブラウザ
- ご契約のレンタルサーバーとプラン

お問い合わせはこちらから » お問い合わせ