ブログを運営していると、ごくたまに、消せないファイルが出現することがあります。
主にキャッシュファイルとか。
日本語をファイル名に入れたものをアップロードした時とか。
まあ色々ですけど、そんな消せないファイルを消す方法です。
今回は、FTPクライアントソフト「FileZilla」を使った方法になります。
ブログを運営していると、ごくたまに、消せないファイルが出現することがあります。
主にキャッシュファイルとか。
日本語をファイル名に入れたものをアップロードした時とか。
まあ色々ですけど、そんな消せないファイルを消す方法です。
今回は、FTPクライアントソフト「FileZilla」を使った方法になります。
MacのブログエディターMarsEditから、WordPressのブログに記事を投稿した際に、htmlタグが勝手に動作しないように書き換えられる現象が発生しました。
具体的には、<p>がpになったりといった現象です。
今更、Movable Type 3.37から5.0.4へのアップデートを行ったのでメモ。
今回アップデートしたのは、MT4リリース時に一度アップデートを試みたが、文字化けしたので面倒になってアップデートせずに今の今まで3.37のままで運用してきたブログ。サーバーの引っ越しに伴いそろそろ潮時を感じたのでアップデートすることにした。
文字化けの原因は、そもそものデータベーステーブルのエンコードが「latin1_swedish_ci」になっているからutf8で文字化けするというものだった。これは、PHP My Admin で編集(一度binaryにしてからutf8に変換)すればいいようなので手作業で行った。
XREAからSAKURAへWordPressを移転する際。
XREA側のphpMyAdminで該当データベースを見てみると、データベーステーブルのエンコードが utf8_general_ci になっているのに、日本語のデータが文字化けしています。ちょっと気持ち悪いので、移転ついでに直したい。(こうなった理由は、昔のサーバーのMySQLが当初EUCで、後々、UTF-8に対応するために wp-config.php に mb_language(‘Japanese’); と mb_internal_encoding(‘UTF-8’); を追記しているからだと思います。)
とにかく、このままの状態でphpMyAdminでエクスポートしたら、移転先でも同じ状態になるので、WordPressからバックアップPlugin「WordPress Database Backup」を使ってエクスポートした.sqlファイルを、移転先のphpMyAdminにインポート。
これで、データベース側の文字化けは無くなりましたが、このままだとWordPress側で文字化けが発生するので、wp-config.php の mb_language(‘Japanese’); と mb_internal_encoding(‘UTF-8’); を削除、wp-config-sample.php と比較して抜けていた部分の define(‘DB_CHARSET’, ‘utf8’); と define(‘DB_COLLATE’, ”); を追記しました。
いままで正常動作していて、アップデートしたら文字化け。
何でだろう?と思っていろいろ試していたらわかりました。
以前のバージョンでwp-includes/wp-db.php
内をいじっていた部分がアップデートで上書きされていたせいでした。
具体的には
$this->select($dbname);
の上の行に
mysql_query("SET NAMES utf8", $this->dbh);
を追加していたもの。
新らしいwp-includes/wp-db.php
にもmysql_query("SET NAMES utf8", $this->dbh);
を追記したら無事直りました。