PHP7でmodx1.0.21上のmaxygalleryを動かす

ハッキリ言ってアップデートは10年以上前から止まってるしGDとかセキュリティホールがあるかもしれない画像アルバムを作るmodx用スニペットのmaxygallery。

そもそも最新版のmodx自体もアップデート画面でこけたわけですが、これは順番が間違ってた。modx1.0.21はphp7じゃないと動かないのか、php5のままアップグレードしようとしたらエラー。
先にサーバ側のphpを7にしてからmodxをアップグレードする。

次にmaxygallery。こちらもrevo-galleryを使うようにアナウンスされているがインストールできないし動かない。一説によるとevo環境だと動かないと。

で、面倒なのでmaxigalleryをphp7対応させてみた

まず、私の環境だけかもしれないですがDB名にハイフンがはいっていて、SQLが通らない。今までは動いていたのでmodx側のapi出力が変わったのかも。

maxigallery.phpの240行あたり、$mg->pics_tbl の$modx->db->config[‘dbase’].を消して直接DB名に置き換えた。`で括る。

285行と289行あたり、チェック関数のreturnが邪魔して?画像が表示されないので消去。

templates内のフォームやリンクの最初に/がついており、リンク先が変になるので全て削除。baseuriのせい?

maxigallery.class.inc.phpの250行目辺りで、php7で無くなったsplit関数がエラー吐いてるのでexplode関数に置き換え。

大体こんな感じだったと思うが、他にも色々いじったり戻したりしてるのでファイル名も行数も曖昧です。まぁ今時maxigalleryとmodx使う人は稀と思いますが。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です