MovableType を MT7 R5507 にアップデートした。
その時のトラブルとそのワークアラウンドのメモ:
[1] アップロードしたファイルのサムネイルが作られない
ファイルのアップロードはできるのだが、画像のサムネイルが作られなくなった(これがR5003という古いバージョンのままアップデートせずにほったらかしにしていた原因だった)
原因はImageDriverにImageMagickを使っていることだった。これをGDに変更したら解決した。
具体的には mt-config.cgi の
ImageDriver ImageMagick
という行を
ImageDriver GD
に変えただけである。
もちろん、ImageMagickはインストールされていたが、おそらくMT7-R550xと互換性がないバージョンなのだろう。ImageMagickをCPANでアップデートしようとしたが、ユーザー権限ではできなかった(sakuraのレンタルサーバーを使っているので)
[2] TinyMCE6を有効にしてはいけない
アップグレードしたついでに「わーい」とばかりに、TinyMCE6のプラグインを有効にしたところ、まったくエントリの編集ができなくなってしまった。TinyMCE6関連のプラグインをすべてdisableに戻したら元に戻った。
TinyMCE プラグインの切り替え のページに、
リッチテキストを拡張するサードパーティー製プラグインを使用している場合、新しい TinyMCE に非対応でリッチテキストが正常に動作しなくなるケースがあります。
原則は最新の TinyMCE の利用をおすすめしますが、拡張機能が正しく動作しない場合には、従来の TinyMCE に切り替えて引き続きご利用になれます。
とあった。使っているプラグインのどれかがTinyMCE5に依存しているらしい。
[3] メニューが英語になってしまった
なぜか編集メニューが全部英語になってしまった。(言語設定は日本語にしてあるのだが)。
これについては解決法がまだ見つかっていない。
小辞典の項目がソートされないという話。ただし、ローカルの開発環境だけ発生(ieji.orgでは発生しない)。
1. ロケールjaでソートするためには、intlモジュールが必要なのに、php.iniで
;extension=intl
となっていたのが原因だった。
しかし、行頭の;を削除して、Apacheを再起動しても改善しなかった。
2. error_logs を見てみることにする
error_log="\xampp\php\logs\php_error_log"
php/の下にlogs/がなかったので、mkdirして再試行。
3. PHP Startup: Unable to load dynamic library 'intl' というエラーメッセージが出ている。
https://www.narenohate.com/install-intl
によると、PATHが通っていないのが原因だとか。\XAMPP\PHPを追加して再起動。
解決しました。
WordPressで行頭に全角スペースを入れるのは意外と難しい。
正解は、
<span> </span>(間は全角スペース)
行頭にスペースを入れたい
Wordpressで英単語の途中でブレークしたいとき
<wbr>だとハイフンが入らないので、ソフトハイフン(­)を使う
ソフトハイフンは特殊文字一覧の左上から二番目にある。
wbrで単語の途中で改行
https://ginpen.com/2021/12/10/wbr/
第7回オンライン公開講座
「患者学」へようこそ
加藤眞三 慶應義塾大学名誉教授
酒を手ばなした人々をむすぶ場を、作り、保つ
『アルコホーリクス・アノニマス(AA)の歴史』から学べること
葛西賢太 上智大学グリーフケア研究所特任准教授
https://www.youtube.com/watch?v=9Tlq-B2MHU8
ときどきセキュリティアップデートをインストールしなければならないが、WordPressなどと違って、管理画面の操作一発でアップデートとならいなところがMTの面倒なところだ。メモ書きとして、MT7のアップデート手段を書いておく。
【1】 まずMovableTypeのアップデートの前に、Perlのバージョンを確認する
MovableTypeのダッシュボードから システム→設定→システム情報 と進み 「システム情報」のPerlのバージョンがバージョン番号だけで、特にメッセージが表示されていなければオーケー。Perlのバージョンが古すぎれば、バージョンを切り替える(少なくとも、さくらやロリポップの場合には、サーバーのコントロールパネルでPerlのバージョン切り替えが可能である)。
【2】Movable Type 個人無償版ダウンロード
ここから行なう。
メールアドレスを入力し、利用目的は「バージョンアップ」として送信すると、ダウンロードのURLがメールで届く。
【3】 データベースのバックアップをする
私は面倒くさいのでいつも省略しているが、忘れずにやっておくべき。
(さすがに毎日の定期バックアップは行なっている)
【4】 ZIPファイルのアップロード
MT7-Rxxxx.zip を tmp ディレクトリにアップロードする
(FTPとかで良いが、下の例はscpを使っている)
scp MT7-Rxxxx.zip [email protected]:tmp
【5】 ログインしてunzipする
ssh [email protected]
# httpdのディレクトリに移動
cd www
# unzipすると MT7-Rxxxx というディレクトリができて、その中に展開される
unzip ../tmp/MT7-Rxxxx.zip
# MT7-Rxxxx → mt-new にリネーム
mv MT7-Rxxxx mt-new
【6】 古いMovableTypeからコピーするもの
# mt-config.cgi のコピー
cp mt/mt-config.cgi mt-new
# MovableTypeのデフォルトプラグイン以外のプラグインをインストールしていたらコピーする
- デフォルトプラグイン:
- BlockEditor
- Comments
- FacebookCommenters
- FormattedText
- FormattedTextForTinyMCE
- GoogleAnalytics
- Markdown
- OpenID
- Textile
- TinyMCE
- Trackback
- WXRImporter
- WidgetManager
- spamlookup
cp -r mt/plugins/pluginname mt-new/plugins
# テーマ類のコピー
cp -Rf mt/mt-static/support/ mt-new/mt-static/support/
# あるいは↓でも同じ
cp -Rf mt/mt-static/support mt-new/mt-static
【7】 切り替える
mv mt mt-old
mv mt-new mt
【8】 ダッシュボードにアクセスする
https://hoge.org/mt/mt.cgi?__mode=dashboard
「アップグレード開始」が表示されるはず
ローカルでZIPを展開して、FTPで直接上書きしていたのに比べれば、スマートなやり方になったと言えると思う。