問題の現象の詳細
管理画面の一覧画面から「新規登録」ボタンを押すと「必要なシステム項目がありません」と表示されます。メッセージ全体は下記のようなものです。JavaScript は有効にしてある事を確認しましたが、やはり同じエラーが出ます。
必要なシステム項目がありません。JavaScript を有効にして一覧から再度作業してみて下さい。(no step value: undef or length 0)
問題の原因
直接的には、管理画面で利用している JavaScript がうまく機能していない事が原因です。状況としては外部 JavaScript が読み込めていない事が多く、作業上は、サーバの cgi-bin/ ディレクトリの下に「すぐ使えるCMS」を設置した時にしばしばこのエラーが起こります。
対応方法
場合分け
もし、既に「すぐ使えるCMS」の設定を変更していてこのエラーが起こった場合は、以下の2点を確認して下さい。この2点のどちらかに問題がある筈です。
- テンプレート templates/admin/1.html で読み込んでいる外部 JavaScript ファイルがきちんと読み込まているか。
- 管理画面のテンプレートの編集中に、ボタンやフォームのコードを書き換えてしまっていないか。
もし「すぐ使えるCMS」の設置の最初からこのエラーが出ている場合は、 cgi-bin/ ディレクトリの下に「すぐ使えるCMS」を設置している事が原因だと考えられます。この場合は引き続き以下の対応を行って下さい。
基本方針
parts/、css/、js/ など製品に含まれているディレクトリを、cgi-bin/ の下から出して別の場所(htdocs/ や html/ の下など)に移動していただくのが基本な対応方法です。
同時に行う対応
この問題が起こるサーバでは、「書き出したファイルを表示しようとするとエラーになる」という問題も後で出てしまいますので、この問題への対応のために、webdir/ と tempfiles/ の移動も行って下さい(下記の 1)。
1. webdir/ と tempfiles/ の移動
以下のページでご案内している方法で、webdir/ と tempfiles/ ディレクトリを移動して下さい。
※ tempfiles/ ディレクトリは製品によってはありません。
ファイルは書き出せますがブラウザで表示できません ( 500 Internal Server Error)
2. 確認
webdir/ を移動すれば問題が解消する場合がありますので、この段階でもう一度管理画面の動作を試して下さい。
3. パーツファイルの移動
2 で問題が解消しなかった場合は、引き続き下記のディレクトリの移動も行って下さい。なお、全てのディレクトリがある訳ではありません。製品に含まれていたディレクトリを移動して下さい。
parts/
font/
img/
images/
css/
js/
cleditor/
これらのディレクトリについては、移動の時に(1で行ったような)admin/admin.cgi の設定変更は不要です。代りに、後述のようにデザインテンプレート内の設定を変更して下さい。
4. 管理画面テンプレートの修正
管理画面用テンプレート templates/admin/1.html、2.html、3.html、5.html、6.html では、外部ファイル(CSS や JavaScript、画像)の読み込みを行っています。読み込まれているファイルの中に、3で移動したディレクトリに含まれているものがある筈です。それらを見つけ、 src 属性や href 属性を移動した先に変更して下さい。
設定には例えば以下の様なものがあります。
<link href="../parts/css/admin.css" rel="stylesheet" media="screen">
<script src="../parts/js/admin.js" type="text/javascript" charset="utf-8"></script>
この設定を、ディレクトリを移動した先のURLに変更して下さい(青字部分)。変更対象ヶ所は場合によっては複数ありますので、3 で移動したディレクトリが含まれている指定が無いかを検索して置換して下さい。
<link href="/parts/css/admin.css" rel="stylesheet" media="screen">
<script src="/parts/js/admin.js" type="text/javascript" charset="utf-8"></script>
5. アップロードと確認
管理画面のテンプレートを編集したら、サーバに上書きアップロードして動作確認を行って下さい。
6. 書き出しページテンプレートの修正
書き出しページでは、追加のパーツファイルを読み込んでいる場合も読み込んでいない場合もあります。もし設置した場所での動作や表示が「すぐ使えるCMS」サイトでのデモと同様にならなければ、やはり同じ原因が考えれらますのでテンプレートファイル内のパスを修正して下さい。
変更対象テンプレートファイルは、templates/article/ の中にある .html ファイルです。
変更対象は例えば以下のようなタグです。
<link href="../parts/css/site.css" rel="stylesheet" media="screen">
<script src="../parts/js/site.js" type="text/javascript" charset="utf-8"></script>
この設定を、ディレクトリを移動した先のURLに変更して下さい(青字部分)。変更対象ヶ所は場合によっては複数ありますので、3 で移動したディレクトリが含まれている指定が無いかを検索して置換して下さい。
<link href="/parts/css/site.css" rel="stylesheet" media="screen">
<script src="/parts/js/site.js" type="text/javascript" charset="utf-8"></script>
7. アップロードと再構築(テンプレート変更反映)
書き出しページのテンプレートを編集したら、サーバに上書きアップロードして「再構築(テンプレート変更反映)」ボタンを押して下さい。
その後、ブラウザのキャッシュをクリアしてからページを再読み込みして、動作確認を行って下さい。