More from: wordpress

データベースの更新

このブログはwordpressで作成している。
先日、そのwordpressが更新を促してきた。
新バージョンは6.5で早速更新しようとしたところ、データベース(DB)のバージョンが古いので更新できないとしてエラーとなった。
DBはMySQLを使用しているが、しばらく放置だったのでバージョンは古いままだった。
ホスティング先で更新しようとしたが、DBをそのままバージョンアップは出来ない。
そこで新たに新バージョンのMySQLでDBを構築し、wordpressが接続するDBを切り替える形で対処した。

先ずはホスティング先のユーザーページからDBの設定画面に入り、現状のデータとテーブル構成のバックアップを取り、その後に新バージョンのMySQLでDBを作成しバックアップからレストアしてDBを複製。
次にwordpressの設定ファイルである”wp-config.php”を別ディレクトリ(もしくはローカルのHDD)にバックアップ。
その後にそのファイルに書いてあるDBサーバー名とDB名、接続するためのアカウント名とパスワードを新DBのものに書き換えて終了。
さらに当初の目的であるwordpressのバージョンアップも無事に完了した。

こう書くと簡単に見えるけど、実際にはバックアップしたDBの内容をレストアする際にエラーでレストアできなかったり、wp-config.phpを新しく書き換えたファイルで上書きしようとしても更新され無かったりで結構悩んでしまった(汗)。
DBのレストアが出来なかったのはレストア時にDBの指定を忘れていたためで、指定したら問題無くレストアできた。
wp-config.phpの更新はFTPツールでは上書き出来なかったので、直接サーバー上で書き換えた。
そうしたらwordpressがDBに接続できなくなってしまって焦ったが、修正時にサーバー名のTLDも変更されているのを見落としていて、そこを修正したら無事に接続できるようになりブログが復活した。
いやぁ、久々にDBやwordpressの設定をしたなぁ(汗)。

←クリックしてくれると嬉しいです。

THETAの画像をWordPressに貼りつけることが出来た

先日引き取ったリコーの全天球カメラ「THETA」。
PCでも認識されたので取り込みも楽になり活用できそうだ。
ただ、ブログ等に掲載する際はリコーのオンラインサービス(THETA 360)を利用するしか無いかな?と思っていた。
ところがちょっとググったところ、WORD PRESSには”WP VR”というプラグインがあり、それを利用すればブログの投稿にインラインで表示できるということがわかった。
このページ(https://wp-customize.net/wordpress/8393.html)を参考に導入から投稿まで試したところ、無事に全天球イメージを表示することが出来た。
プラグインの画面がほぼ全て英語なので最初は直観(笑)でやってみてエラーになったけど、右ペインの”公開”ボタンを押して表示が英語になってからさらにもう一回押すことでステータスが本当の”公開”状態になり表示された。
イマイチすっきりしないけど、表示できたからまぁヨシとするかな?(汗)

←クリックしてくれると嬉しいです。

wordpressでコメントが正しく表示されなくなった(汗)

当ブログはフリーのブログシステムである”wordpress”で構築している。
テーマも古い”Exray Theme.”を妻がカスタマイズしてくれたものを使っていて、これまで大きな問題も無く運用してきた。
過去にあったトラブルではphpのバージョンを上げた時にサーバーエラーが出て表示されなくなったのが一番大きかった。
この時はダッシュボードは表示も操作も可能だったので、プラグインを停止して原因を探し、原因となったプラグインを停止して通常運用に戻せた。
今回はODDSプロジェクトの関連記事にコメントを頂いたので、その返信をする際に元々の記事「”ODDS プロジェクト”」へのリンクを追加して表示を確認したところ、沢山頂いたコメントの内の最新の2件のみしか表示されなくなっていた。
慌てて調べたところテーマやプラグインも原因として考えられるが、コメント数52件の内の2件のみの表示となっている点と、コメントの下に”?php previous_comments_link( __(‘← Older Comments’, ‘exray-framework’)); ?>”という文字列が表示されている点からコメントページの分割に問題がありそうだとにらんだ。
そこで設定画面の「ディスカッション」セクションにある「他のコメント設定」内の”1ページあたり〇〇件のコメントを含む複数ページに分割し、最後のページをデフォルトで表示する”の項目を見ると、〇〇件が50件となっていた。
ここを増やして”変更を保存”して問題のページを表示し直すと無事に全てのコメントが表示された。
やっぱりコメントページの分割の部分が正しく動作していないようなので、今度きちんとコードを追いかけて調べてみるかな?(汗)

←クリックしてくれると嬉しいです。

解決!?(wordpress)

当ブログに画像をアップロードできない件が解決(?)した(ように見える)。
先の記事に書いたエラーメッセージでググって見つけたページ、

wordpress でメディアのアップロードができないときの対処

にいくつかの原因と対策が書かれていて、そこに書いてあったようにパーミッションを変更してもダメだった。
そこで、そのページからリンクしていた別のページ、

WordPress : Permissionがあっているのに画像をアップロード出来ない件 heteml

には、
「ディレクトリの位置が違ってるんじゃないか」
とあり、さらには
「このブログはかなり前のWordpress ver.2.xくらいから使っていることもあり、パスの位置がDBに保存されていたようだ。」
ともある。
当ブログも2008年に開設し、ずっとwordpressを使っているので当初のバージョンはかなり古く(たしか”2”時代)、アップデートを繰り返している。
そこで、上記サイトに書いてあるように設定ページの「メディア」の項目を見ると、同じように「アップロードするファイルの保存場所」が設定されていた。
一応、内容をコピーしておき、その後に内容を削除して”変更を保存”をクリックすると項目そのものが見えなくなった。
そうしてからファイルのアップロードを試してみると、今度はうまくいって画像を投稿に挿入することが出来るようになった。

そういえば当ブログを設置しているレンタルサーバーも最近になってサーバーを移行させると連絡が来ていて、数日前に移行完了の通知が来ていた。
その移行時にアップロード場所が変更になっていたのだろう。
いやぁ、ちょっと焦ったけど解決して良かった(汗)。
でも、サーバーのftpツールで見るとアップロードされたファイルが見え無いんだよなぁ・・・

←クリックしてくれると嬉しいです。

画像のアップロードが出来ない?(wordpress)

当ブログはwordpressを使っている。
今日になって画像をアップロードしようとすると

”Unable to create directory uploads/2023/03. Is its parent directory writable by the server?”

というエラーメッセージが表示されてアップロードできなくなってしまった。
これまでも時折アップロードできないことがあり、その際にはブラウザの再起動や新しいタブでメディアページを開く等すればアップロード出来た。
ところが今回はそれらを行なっても全く同じエラーが出てしまう。
メッセージの内容はパーミッションに関することなので、ディレクトリのパーミッションを見ると”755”で問題無いように見える。
これを”777”(危なっ!なので真似しないように)や反対に”705”に変更してみたが同じエラーになってしまう。
うーむ、パーミッションだけの問題では無いのかな?

←クリックしてくれると嬉しいです。

画像表示を”Light Box”にしてみた

このブログに掲載している画像の表示をこれまでの画像直接リンクから”Light Box”に替えてみた。
これまではブラウザの同じウィンドウに表示されていたのが、浮き上がるような表示になった。
取り敢えず試したところ、PCのブラウザではウィンドウの中央に出るんだけど、スマートフォンのブラウザ(Chrome/FireFox)では画面の上端に出てしまい、ぱっと見では表示されていないように見える場合もあるので、改良が必要かも?

←クリックしてくれると嬉しいです。

リンク等のssl化をしてみた

以前、当ブログをSSL化したが、その際にはサーバーでの設定でSSLに対応させただけで、httpでもhttpsでもアクセスできるようにしただけだった。
そのため、SSL化以前にアップした写真へのリンクや写真のソースの参照はhttpのままになっていた。
それを一括でhttpsに変換するためにwordpressのテーマを若干変更して対応した。
と言っても妻がやっていたのでそれを真似しただけ(汗)。
変更したのはwordpressのテーマファイルの内”functions.php”というファイル。
所在はインストールディレクトリを/wordpressとすると、
/wordpress/wp-content/themes/テーマ名/
というディレクトリになる。
ここにある”functions.php”の最初の方に下記を挿入した。
————————————————–
// SSL化のURLに置換
function replacement_content($content){
$replace = array(
//’変更前’ => ‘変更後’
//複数行ある場合は「,」で繋いでください
//最終行には「,」不要です
‘http://hoge.com/’ => ‘https://hoge.com/’,
‘http://gesho.co.jp/’ => ‘https://gesho.co.jp/’
);
$content = str_replace(array_keys($replace), $replace, $content);
return $content;
}
add_filter(‘the_content’, ‘replacement_content’);
————————————————–
見ての通り特定urlの先頭のプロトコル指定をhttpからhttpsに置換している。
本来であればDB内に保存してあるリンク等を全て置換すべきなんだろうけど、操作を誤ると最悪DBを飛ばしてしまう可能性があるので、表示時に書き換えるこの方法のほうが安全かと。

”functions.php”の書き換え時には念の為ファイルのバックアップをしておいたほうが良いかも。

←クリックしてくれると嬉しいです。

blogにアクセスできなくなった(汗)

当ブログに一時期アクセスできなくなってしまった。
ダッシュボードにアクセスしようとするとデータベース(DB)に接続できないと言われてしまいエラー画面しか見ることが出来ない。
公開画面も接続エラーの画面になってしまい、記事の内容どころかタイトルすら表示されなくなってしまった。
直前に行ったphpのバージョンアップが原因であることは間違いないんだけど、私の使っているサーバーは一度バージョンを上げると元には戻せない仕様なので、なんとかして新しいバージョンでwordpressを動作させるしか無かった。
いろいろ調べている内に妻が見つけてくれた情報の中にDBのパスワードの形式が変更になったというのがあった。
そういえば以前phpのバージョンを上げようとした際にパスワードの形式が変更になるのでそちらも変更する必要があるなと思ったのを思い出した。
そこでDBの管理画面からパスワードを再設定し、wordpressのコンフィグファイルにも再設定したところ、今度は”重大なエラーが発生しました”とのメッセージに替わった(汗)。
こちらは管理用のメールアドレスにエラーの詳細を記したメールが来ていて、そのメールを読むと使っているプラグインの中でエラーが発生しているということだった。
そこでメールの中に書かれていたリカバリーモード用のurlにアクセスしてエラーを起こしているプラグインを無効化したところ、無事にこのサイトの表示と書き込みが出来るようになった。
いやぁ、最初はどうなることかと思ったよ(汗)。
下手をしたら12年近く書いているこのブログの中身を失うところだったな(汗)。
wordpressが自動で(しかも日本語で)エラーの内容を詳細に書いたメールを送ってくれたので助かったよ。

←クリックしてくれると嬉しいです。

連日の更新だな

このブログはWordpressで作っていて、プラグインをいくつか入れている。
その中の一つに”Easy Watermark”というプラグインがある。
”Easy Watermark”というのはWordpressでアップロードした写真に自動で”透かし”を入れてくれるもの。
この”Easy Watermark”が先日メジャーバージョンが上がって1.00になったんだけど、それから連日のようにアップデートが繰り返され早くも1.03になっている。
細かい説明は読み飛ばしていて更新の理由は判らないんだけど、随分と更新頻度が高いな(汗)。

←クリックしてくれると嬉しいです。

phpのバージョンアップ

このブログはWordPressを使っていて、最新のバージョンが出る度にバージョンアップをしている。
ところが現時点での最新バージョンはphpの5.6.20以降が必須ということでそのままではアップデートが出来なかった(汗)。
そこでサーバーの方でphpのバージョンを上げてからwordpressのバージョンを上げた。
ちゃんとこのブログが表示できるか少々不安だったが特に問題は無かったようで、表示も投稿も無事に出来ている。
久々のバージョンアップだったなぁ(汗)。

←クリックしてくれると嬉しいです。