昨日の今日ですが、MT4i v2.0β2を仮公開します。
- MT4i v2.0β2(β3を仮公開したのでダウンロードを停止します。β3はこちら)
変更点は以下の通り。
■v2.0β1からの変更点
- mt-sukeroku-plus.plやMarkDownといった、TextFormatプラグインに対応
- 上記変更に伴い、ページ分割時の区切り文字列であるSprtStrを、複数パターン指定できるようにした
- 全角カナ→半角カナ変換がOFFでページ分割が発生した場合、2ページ目以降の表示が正常に行われなかった不具合への対策
以上です。TextFormatプラグインへの対応は、以下のEntryを参考にさせて頂きました。
ささやかなる実験場の開発室(HSJ.jp): MT4iとmt-sukeroku-plus.plをセットで使う場合…
本家 MT4i でも、記事の管理機能が付いた!! | 亜細亜ノ蛾 - Weblog
合わせて、これまでは独自に改行をBRタグへと変換していたところを、apply_text_filters()を使用してフォーマットするようにしました。ただしこれには一つ問題があって、BRタグが<br />となってしまうんですよね。また、Pタグも入り込んでくるので、ページ分割時の区切り文字列であるSprtStrが今までのままだと、ページ分割が上手く行われない可能性が有ります。必ず、SprtStrを見直してください。推奨値は「<br />,</p>」です(今バージョンからカンマで区切って複数指定できるようになっています)。
3つ目の不具合については、ユーザーさんからコメントでお知らせいただきました。ありがとうございます。無事解決いたしました。
更にもう1つ、β1公開時に書き漏れていた変更点がありました(やっぱり漏れてた)。
- 文字コード変換処理の一部を、Encodeモジュールを使用して行うようにした
UTF-8での「〜」などが文字化けする問題への対策です。本当はすべてEncodeで置き換えるべきなんでしょうが、ちと面倒なので文字化けに関係ありそうなところだけです。もちろん、Encodeモジュールが使用できる環境でのみ使用するようにしています。
では、アップグレードの手順をば。
■v2.0β1からのアップグレード
- mt4i.cgiを文字コードEUC-JPを扱えるエディタ等で開き、一行目のPerlパスをインストールする環境に合わせて編集、保存。
- mt4imgr.cgiを文字コードEUC-JPを扱えるエディタ等で開き、一行目のPerlパスをインストールする環境に合わせて編集。9行目の「my $password = 'dummypassword';」の「dummypassword」部分を、設定プログラムにログインする為のパスワードに書き換え、保存。
- ファイル「mt4i.cgi」「mt4imgr.cgi」をサーバーにアップロード(前バージョンを上書き)。
- Webブラウザより「mt4imgr.cgi」にアクセス。パスワード入力しログイン、SprtPtrの設定値を見直して保存。
- Webブラウザより「mt4i.cgi」にアクセスして動作確認。
■新規インストール及びv2.0未満からのアップグレード
動作報告お待ちしております。
You
お世話になっております。
MT4i v2.0β2を利用させていただいているのですが、
以下のエラー表示がでており、困っています。
一応、動作はしているのですが・・・・。
Software error:
Can't locate bytes.pm in @INC (@INC contains: ./extlib ./lib /usr/local/lib/perl5/site_perl/5.005/i386-freebsd /usr/local/lib/perl5/site_perl/5.005 . /usr/libdata/perl/5.00503/mach /usr/libdata/perl/5.00503) at lib/MT/Util.pm line 1069.
Please send mail to this site's webmaster for help. Content-type: text/html; charset=Shift_JIS Content-Length: 2352
対応法などはありますでしょうか?
よろしくお願いいたします。
太鉄
一度MTホームディレクトリ(MT_DIR)の設定を絶対パスで指定してみて頂けませんか?
それでも同様のエラーが出るとなると……。
requireとかで失敗しているのかもしれませんね。
MT4i側を少しいじる必要があるかもしれません。
You
絶対パスでやってみましたが、結果は同じでした。
もう1回いろいろ見てみますが、現時点では
原因不明です。
よろしくお願い致します。
太鉄
>Youさん
Tonkeyさんとこの以下のEntryのコメント欄にて、そのものズバリのやり取りがなされていました。
MT4i Tonkey Ver. MT3.0暫定対応版(MT4i_18T7)
http://tonkey.mails.ne.jp/archives/000546.html
エラーメッセージそのまま、bytes.pmが見付からないよ、と理解すれば良かったみたいですね。
ちょっと深読みしてしまいました。
サーバにbytes.pmがインストールされているかどうか、確認できますでしょうか。
しかし、MTのlib/MT/Util.pmでbytes.pmが呼び出されているのに、MT側でエラーが出ていない(ですよね?)のは謎ですね。
bytes.pmがなくても動かす方法があるのかもしれませんが……。
太鉄
追記。
もしかすると、CGI::Carpが悪さ(想定された動作かもしれないが)しているのかもしれません。
29行目辺りの、以下の一行をコメントアウトするか削除して試してみてください。
use CGI::Carp qw(fatalsToBrowser);
つるこ
はじめまして。
MT4i v2.0β2、とても便利に使わせていただいております。
あまりに導入が簡単でびっくりしてしまいました。
便利なCGIをありがとうございます。
今日はお尋ねがあって参りました。
私はCGIの事はあまりよく判らないのですが、MT4i内から、chtmltransを解除できるようにはできないでしょうか?
エントリ内からリンクしてある携帯対応のCGIにそのままアクセスできるといいなと思っておりまして…。
過去ログ一応見せていただいたつもりなのですが、もし解決している事でしたら申し訳ありません。
よろしくお願いいたします。
太鉄
>つるこさん
AタグのTITLE属性に"携帯対応"の文字を含めて頂くと、chtmltransの変換を回避することができます。
この"携帯対応"の文字列は、設定のExitChtmlTransを変更することで、任意に設定可能です。
的外れだったらごめんなさい。
つるこ
いえいえ、これです!
過去ログではなくてmti4mgrをちゃんと見るべきだったのですね。お手数をおかけいたしました。(汗)
今まで手前にQRコードを貼ったりして苦労していたのが、あっさり出てきてくれて小躍りしてしまいました。
β3も早速使わせていただきます。
ありがとうございました!
You
>29行目辺りの、以下の一行をコメントアウトするか削除し>て試してみてください。
>
>use CGI::Carp qw(fatalsToBrowser);
上記方法で治りました。
サーバー会社の方にも、念の為にBytes.pmについて
問い合わせてっみます。
ありがとうございました。