V-antena and Tanimoto's page

谷本の備忘録・雑記帳・work

>

月: 2025年11月

MONTHLY ARCHIVE

wordpressのサイトヘルスでPHPが旧いと怒られたのでPHPを更新した。その際の実施メモ。

まだ、エラーが残っていたので追記(3.3)と一部追記(3.2) 2025/11/20

背景

本サイトでwordpressを運用しているが、サイトヘルスでPHPの版数が旧いので更新してください、と怒られていた。そこでPHPの更新に取り組んだが、それなりに大変だったの記録として残す事にした。
なお、OSがbusterのままだとPHPを更新出来なかったのでOSもバージョンアップした。

更新前の状況
OS: Raspbian buster PHP: ver. 7.4

更新後の状況
OS: Raspberry Pi OS bullseye PHP: ver. 8.4

第一段階 raspberry Pi OSのバージョンをbusterからbullseyeに更新

1.1 ソースリストの変更
1.1.1 sources.list中のbusterをbullseyeに変更する
   (security部分に一部フォーマットの変更もあり)

sudo nano /etc/apt/sources.list
下記の様になる様に変更する

deb http://deb.debian.org/debian bullseye main contrib non-free
deb http://deb.debian.org/debian-security/ bullseye-security main contrib non-free
deb http://deb.debian.org/debian bullseye-updates main contrib non-free

1.1.2 sources.list.d/raspi.list中のbusterをbullseyeに変更する

 sudo nano /etc/apt/sources.list.d/raspi.list
 下記の様になる様に変更する

 deb http://archive.raspberrypi.org/debian/ bullseye main

1.2 OSを更新

sudo apt update
sudo apt upgrade --without-new-pkgs
sudo apt full-upgrade
sudo apt autoremove

sudo apt install zstd
(bookwormに更新時必要になるのでついでにインストールしておく)
 
sudo reboot

1.3 xrdpがブルーの画面のままとなる場合の対応

こちらのサイトを参照
https://raspberrypi.stackexchange.com/questions/133425/connection-problem-giving-up-on-xrdp-with-raspberry-pi-os-11-bullseye

第2段階 PHPをバージョンアップ

2.1 おまじない

sudo apt update
sudo apt upgrade

2.2 サービス一時停止

sudo systemctl stop mariadb.service
sudo systemctl stop php7.4-fpm.service
sudo systemctl stop apache2.service

2.3 PHP類インストール

sudo apt install php php-mbstring php-gd php-mysql php-pspell
sudo apt install php-xml php-xmlrpc php-fpm php-curl php-imagick php-zip php-intl

バージョン確認
php -v

2.4 インストール中のメッセージ内で言われたとおりの事を行う

sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php8.4-fpm

sudo systemctl reload apache2
sudo systemctl restart apache2

第3段階 PHP8系とwordpressの相性の悪さに対応

wordpressを表示しようとしたところ、fatalエラーや表示されない問題が発生したので対処

3.1 Fatalエラー対策 functions.php

create_functionがPHP8で削除され無くなったらしく、無名関数で対応

 sudo nano  wp-content/themes/使用しているtheme/functions.php
 
 add_action('widgets_init', function(){register_widget("My_Widget_Meta");});

下記を上記の様に書き換える
# add_action('widgets_init', create_function('', 'return register_widget("My_Widget_Meta");'));

3.2 内容が表示されない問題対応 single.php, index.php, archive.php

クォーテーションで囲まれてないと「Use of undefined constant」というエラーになる様になった。自作のPHPファイルなのでその様なところが残っていた。 自作でなければ必要ないかも

 sudo nano wp-content/themes/使用しているtheme/single.php

下記の場合、DATA_W3Cをシングルクォートで囲む様に書き換えた。

          esc_attr( get_the_date( 'DATA_W3C' ) ); ?>">

同様にindex.php  と archive.php 内の DATA_W3C をシングルクォートで囲む。

         esc_attr( get_the_date( 'DATA_W3C' ) ); ?>">

3.3 他にhtml5とコメントで名前とメールが入力必須になっているかの判断のところうまく動かなくなっていたので、そこを暫定的に決め打ちした  cooments.php

comments.php の先頭に下記を追加

 <?php
  $aria_req = " aria-required='true'" ; 
 ?>

comments.php で$html5 を使っているところを使っていることに決め打ちする。
下記
 '<input id="email" name="email" ' . ( $html5 ? 'type="email"' : 'type="text"' ) . ' value="' . 
下記の様にする
  '<input id="email" name="email" ' . 'type="email"'  . ' value="' .

おしまい

これで、復活し、wordpressのサイトヘルスでも怒られなくなった

3dプリンターを購入したので気づいた点をメモとして残す

購入したもの

Bambu Lab a1 mini アマゾンで29999円(上図)

電源3ピン2ピン変換アダプター   付属の電源コードが3ピンなのでコンセントにさすのに必須

また、フィラメント(PLA)を購入

他にフィラメントを湿気から守るために、フィラメント保管boxを作成。
100均で靴収納ボックス(300円)と湿気取り大容量除湿(100円)で構成

最初に戸惑った事

・添付マニュアルといえるものがなく、ネットで調べながらでないと判らない事がいろいろあり

・フィラメントのロードの仕方が最初よく分からなかった。ネットで調べて分かった。
 左側のスイッチを強い力で押し下げて、フィラメントを強く押し込む

準備するソフト類(windowsで使用)

・3D CADソフト : Freecad を使った
Bambu Studio 
・文字を掘り込み時使用のフォント(ゴシック体やボールド体などの濃い(線が太い)もの)
 pythonなどを使ってwindowsのフォントttcファイルからttf形式フォントを取り出した
 ※ 参考:https://muralnotes.com/freecad-seventeenth/2/
・fonttools pythonのライブラリー ( pip install fonttools)
・2値画像からsvg形式に変換  inkspaceを使った

Freecadで気を付ける事

・ネジ類のために Fastener ワークベンチを導入しておく

・boolean演算は、partdesign ではなく partワークベンチでやるのが良い。partdesignでは、ずれたりエラーになりがち。また、押し出しもエラーの方が確実

・難しいものを作図するには線を引いてからそれを使って作図、その後その線を削除という方法がある

・ポリラインでうまく作図出来ない場合は、点を拘束してその後線を引くのが良いかも

作ったものと補足

・ブラシ立て
 最初なので厚さが3mmで作成したが、1.5mmか2mmで良さそう

・いくつかのケース
 内箱と外箱の隙間を変えて作ったが、0.5mmだと滑り落ちる、0.4mmか0.3mmが良かった。0.3mmだと少し固め。

・軽量スプーン
 持つ柄のところの厚さを6mmで作成したが厚すぎた。3mmでよかったかも

・飾りスタンド
 穴と円筒で繋ごうとしたが、接続部の安定性に欠ける。接着剤に留めた。接続は接着剤がよさそう。

・ネジとネジ穴
 ネジ部分をM8のネジ、ネジ穴は8.2mmぐらいがよさそう。ピッチは1mmで作ったが1.25mmの方が良かったかも

・手書き文字の掘り込み
 スマホで写真、「ペイント」で2値画像化、inkspaceでsvg化して作成。
 参考: https://geek.tacoskingdom.com/blog/5

V-antena and Tanimoto's page

あなたはIPv4でアクセスしています