標準ページでのページ雛形の適用でエラー 投稿する

投稿者:りゅーと  投稿日時:2022-10-28 09:46:37
開発、メンテナンスの継続、ありがとうございます。

稼働環境
PHP:version: 8.1.6
SOY CMS:version: 3.6.21

表題の件を含めて3件あります。

1件目:標準ページを新規作成した後、ページ詳細画面で「ページ雛形の適用」をクリックすると、以下のような致命的なエラーが出て次へ進めません。

Fatal error: Uncaught TypeError: count(): Argument #1 ($value) must be of type Countable|array, null given in
/*****/webapp/pages/Page/ApplyTemplatePage.class.php:68 Stack trace: #0
/*****/webapp/pages/Page/ApplyTemplatePage.class.php(46): ApplyTemplatePage->buildTemplateList() #1
/*****/common/lib/soy2_build.php(5548): ApplyTemplatePage->__construct(Array) #2
/*****/common/lib/soy2_build.php(269): SOY2HTMLFactory::createInstance('ApplyTemplatePa...', Array) #3
/*****/common/lib/soy2_build.php(236): SOY2PageController->execute() #4
/*****/index.php(8): SOY2PageController::run() #5 {main} thrown in
/*****/webapp/pages/Page/ApplyTemplatePage.class.php on line 68

どうも、PHP8からはcount()に代入する変数を配列で初期化する必要があるようです。


2件目:これも標準ページなんですが、標準ページの雛形をインストールしている状態において、
「ページ新規作成」で「ページ雛形を選択」をクリックすると、ドロップダウンメニューでページ雛形のタイトルは表示されますが、そのタイトルをクリックしようとしても選択されません。
ブログページでは問題なく「ページ雛形を選択」で該当するページ雛形を選択できます。


3件目:ブログページを新規作成し、その後テンプレートで「ページ雛形の適用」をクリックすると、以下の警告は出ますがページ雛型は適用されます。

Warning: foreach() argument must be of type array|object, null given in
/*****/webapp/pages/Blog/ApplyTemplatePage.class.php on line 75

こちらは、foreach()関数にて配列またはオブジェクトが指定されていない場合に発生するエラーのようです。

急いではおりませんので、対応をよろしくお願いします。

PS.
こういったものは個別にトピックを立てたほうが良かったでしょうか?
投稿者:齋藤毅  投稿日時:2022-10-28 12:20:22
エラーメッセージの件は修正しました。

「ページ新規作成」で「ページ雛形を選択」をクリックすると、ドロップダウンメニューでページ雛形のタイトルは表示されますが、そのタイトルをクリックしようとしても選択されません。
上記の件もおそらく対応できていると思います。

修正版は下記ページからダウンロードできます。
https://saitodev.co/soycms
投稿者:齋藤毅  投稿日時:2022-10-28 12:23:09
こういったものは個別にトピックを立てたほうが良かったでしょうか?
上記の件は掲示板の運営をする上で個別にトピックを立ててもらえた方が有り難いです。

トピック毎にタスク管理をしていますし、他ユーザの方が同様の問題で困っている場合に別トピックの方が検索に引っかかりやすくなると考えています。

個別にトピックを立ち上げるのは面倒なことではありますので、余力のある時は個別にトピックの立ち上げをお願いします。
投稿者:りゅーと  投稿日時:2022-10-28 16:42:27
素早い対応、ありがとうございます。

3件とも問題なく動きました。

余力のある時は個別にトピックの立ち上げをお願いします。
了解しました。今後は個別にトピックを立ち上げたいと思います。
ログインして投稿する