カスタムフィールドアドバンスで「セレクトボックス」を追加でエラー 投稿する
投稿者:mitsu
投稿日時:2021-10-31 23:15:05
お世話になります。
SOY CMSを活用させていただいている
phpに詳しくないWebデザイナーです。
今回、プラグインのカスタムフィールドアドバンスで、カスタムフィールドを追加しようと以下の操作をしたところ、エラーが発生してしまいました。
(操作内容)
・IDを「arttype」
・ラベル名を「画像の種類」
・タイプを「セレクトボックス」
(エラーの内容)
Catchable fatal error: Argument 1 passed to CustomFieldListComponent::_buildLabelSelectBox() must be an instance of int, integer given, called in /home/******/www/******/******/common/site_include/plugin/CustomFieldAdvanced/component/CustomFieldListComponent.class.php on line 221 and defined in /home/******/www/******/******/common/site_include/plugin/CustomFieldAdvanced/component/CustomFieldListComponent.class.php on line 226
(環境)
SOY CMS Version: 3.1.3.69
SOY CMS DB Type: sqlite
当方の初歩的なミスかもしれず、お忙しいところ恐れ入りますが、
解決方法について、アドバイスをいただけると幸いです。
記事の投稿画面では、セレクトボックス自体は、表示されました。
参考になるかわかりませんが、「カスタムフィールド」プラグインでは、
同様のフィールドを作成でき、問題ありませんでした。
何卒よろしくお願いいたします。
SOY CMSを活用させていただいている
phpに詳しくないWebデザイナーです。
今回、プラグインのカスタムフィールドアドバンスで、カスタムフィールドを追加しようと以下の操作をしたところ、エラーが発生してしまいました。
(操作内容)
・IDを「arttype」
・ラベル名を「画像の種類」
・タイプを「セレクトボックス」
(エラーの内容)
Catchable fatal error: Argument 1 passed to CustomFieldListComponent::_buildLabelSelectBox() must be an instance of int, integer given, called in /home/******/www/******/******/common/site_include/plugin/CustomFieldAdvanced/component/CustomFieldListComponent.class.php on line 221 and defined in /home/******/www/******/******/common/site_include/plugin/CustomFieldAdvanced/component/CustomFieldListComponent.class.php on line 226
(環境)
SOY CMS Version: 3.1.3.69
SOY CMS DB Type: sqlite
当方の初歩的なミスかもしれず、お忙しいところ恐れ入りますが、
解決方法について、アドバイスをいただけると幸いです。
記事の投稿画面では、セレクトボックス自体は、表示されました。
参考になるかわかりませんが、「カスタムフィールド」プラグインでは、
同様のフィールドを作成でき、問題ありませんでした。
何卒よろしくお願いいたします。
投稿者:齋藤毅
投稿日時:2021-11-01 05:14:50
ご利用中のPHPのバージョンが5.6だったりしませんか?
PHPのバージョンが低い場合は、
PHPのバージョンが古い場合、可能であればPHPのバージョンを上げてほしいです。
このエラーはPHP5.6の環境をご利用中の方からよく報告を受けます。
PHPのバージョンが低い場合は、
上記ファイルの226行目にある/common/site_include/plugin/CustomFieldAdvanced/component/CustomFieldListComponent.class.php
private function _buildLabelSelectBox(int $selectedLabelId){
を
private function _buildLabelSelectBox($selectedLabelId){
に変更すれば良いです。
PHPのバージョンが古い場合、可能であればPHPのバージョンを上げてほしいです。
本件のエラーの原因ですが、_buildLabelSelectBox()というメソッドの第一引数が整数(int)を指定しているところ、整数の値(integer)を渡していますという意味不明なエラーになっています。Catchable fatal error: Argument 1 passed to CustomFieldListComponent::_buildLabelSelectBox() must be an instance of int, integer given
このエラーはPHP5.6の環境をご利用中の方からよく報告を受けます。
投稿者:mitsu
投稿日時:2021-11-01 10:20:51
早速のご返事をいただき有難うございます。
おっしゃるように、PHPのバージョンが5.6.40だったため、
レンタルサーバー(さくらインターネット)のPHPバージョンを7.4.24に変更したところ、
エラーが解消されました!
大変助かりました。
ちなみに、あらためてsaitodev.coサイトのsoycmsページを拝見すると、
PHP7.2の対応を進めていただいているとのことですが、
PHP8.0にバージョンをあげても大丈夫でしょうか?
(もし他の画面で使用環境など記載していたらすみません…)
PHPのバージョンアップに関してきちんとわかっておらず
お手すきの時に教えていただけると幸いです。
何卒よろしくお願いいたします。
おっしゃるように、PHPのバージョンが5.6.40だったため、
レンタルサーバー(さくらインターネット)のPHPバージョンを7.4.24に変更したところ、
エラーが解消されました!
大変助かりました。
ちなみに、あらためてsaitodev.coサイトのsoycmsページを拝見すると、
PHP7.2の対応を進めていただいているとのことですが、
PHP8.0にバージョンをあげても大丈夫でしょうか?
(もし他の画面で使用環境など記載していたらすみません…)
PHPのバージョンアップに関してきちんとわかっておらず
お手すきの時に教えていただけると幸いです。
何卒よろしくお願いいたします。
投稿者:齋藤毅
投稿日時:2021-11-01 10:26:32
PHP8.0にも対応していますので、PHPのバージョンアップは大丈夫です。PHP7.2の対応を進めていただいているとのことですが、PHP8.0にバージョンをあげても大丈夫でしょうか?
表記の修正をしておらず、紛らわしい状態ですみません。
投稿者:mitsu
投稿日時:2021-11-01 10:48:57
早速に有難うございます!
PHP8.0にて利用させていただきます。
初歩的な質問で恐れ入りますが、
今後とも何卒よろしくお願いいたします。
PHP8.0にて利用させていただきます。
初歩的な質問で恐れ入りますが、
今後とも何卒よろしくお願いいたします。