ブログのテンプレートの履歴:Fatal error: 投稿する

投稿者:  投稿日時:2022-06-21 14:26:07
HTML,CSSがわかる程度のユーザです。
現時点の最新版をDLしてインストールしました。
ブログ作成時に、テンプレートを適用しましたが、反映されません。
テンプレートの履歴ボタンを押してみたところ、Fatal errorと出ました。
どのようにすればよいでしょうか。お手数ですがどうぞよろしくお願いいたします。

レポートは以下の通りです。
DETECT DATE: 2022-06-21T07:14:20+02:00

MESSAGE: Uncaught TypeError: date(): Argument #2 ($timestamp) must be of type ?int, HTMLList_DummyObject given in C:\xampp\htdocs\cm\soycms\webapp\pages\Blog\TemplateHistoryPage.class.php:63
Stack trace:
#0 C:\xampp\htdocs\cm\soycms\webapp\pages\Blog\TemplateHistoryPage.class.php(63): date('Y-m-d H:i:s', Object(HTMLList_DummyObject))
#1 C:\xampp\htdocs\cm\common\lib\soy2_build.php(6769): HistoryList->populateItem(Object(HTMLList_DummyObject), NULL, -1, 1)
#2 C:\xampp\htdocs\cm\common\lib\soy2_build.php(6732): HTMLList->populateItemImpl(Object(HTMLList_DummyObject), NULL, -1, 1)
#3 C:\xampp\htdocs\cm\common\lib\soy2_build.php(6963): HTMLList->execute()
#4 C:\xampp\htdocs\cm\common\lib\soy2_build.php(6981): HTMLPage->add('templateList', Object(HistoryList))
#5 C:\xampp\htdocs\cm\soycms\webapp\pages\Blog\TemplateHistoryPage.class.php(39): HTMLPage->createAdd('templateList', 'HistoryList', Array)
#6 C:\xampp\htdocs\cm\common\lib\soy2_build.php(5547): TemplateHistoryPage->__construct(Array)
#7 C:\xampp\htdocs\cm\common\lib\soy2_build.php(269): SOY2HTMLFactory::createInstance('TemplateHistory...', Array)
#8 C:\xampp\htdocs\cm\common\lib\soy2_build.php(236): SOY2PageController->execute()
#9 C:\xampp\htdocs\cm\soycms\index.php(8): SOY2PageController::run()
#10 {main}
thrown
EXCEPTION TYPE: ErrorException
LOCATION: /cm/soycms/webapp/pages/Blog/TemplateHistoryPage.class.php (63)

SOY CMS Version: 3.2.27
SOY CMS Build Date: 2022-06-10T11:13:28+09:00
SOY CMS DB Type: sqlite
SOY2RootDir: C:/xampp/htdocs/cm/common/
SOY2_DOCUMENT_ROOT: undefined


STACK TRACE
-----------------------
0:soycms_shutdown

()

Server Environment
PHP Version: 8.1.6

PHP SAPI NAME: apache2handler
PHP SAFE MODE: No
SHORT_OPEN_TAG: No

MEMORY_LIMIT: 512M Bytes
Memory Usage: 3,110,040 Bytes
6,291,456 Bytes (Real)
4,290,736 Bytes (Peak)
6,291,456 Bytes (Peak, Real)

MAX_EXECUTION_TIME: 120 sec.
POST_MAX_SIZE: 40M Bytes
UPLOAD_MAX_FILESIZE: 40M Bytes

mb_string: Yes
PDO: Yes
PDO_SQLite: Yes
PDO_MySQL: Yes
Standard PHP Library: Yes
SimpleXML: Yes
JSON: Yes
Services_JSON: No
ZIP: Yes
ZipArchive: Yes
Archive_Zip: No
OpenSSL: Yes
HASH: Yes
GD: No

Module/CGI Module
Rewrite OK

USER_AGENT: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.0.0 Safari/537.36
REQUEST_URI: /cm/soycms/index.php/Blog/TemplateHistory/12/top
SCRIPT_NAME: /cm/soycms/index.php
PATH_INFO: /Blog/TemplateHistory/12/top
QUERY_STRING:

DOCUMENT_ROOT: C:/xampp/htdocs
SCRIPT_FILENAME: C:/xampp/htdocs/cm/soycms/index.php

SOY CMS Options
SOYCMS_ALLOWED_EXTENSIONS: undefined
SOYCMS_ALLOW_PHP_SCRIPT: undefined
SOYCMS_SKIP_MOBILE_RESIZE: undefined
SOYCMS_BLOCK_LIST: undefined
SOYCMS_TARGET_DIRECTORY: C:/xampp/htdocs/
SOYCMS_TARGET_URL: undefined
SOYCMS_ADMIN_ROOT: undefined
SOYCMS_LANGUAGE: ja
投稿者:齋藤毅  投稿日時:2022-06-21 14:35:40
明日までに修正してダウンロードできるようにします。

お急ぎであれば、
C:\xampp\htdocs\cm\soycms\webapp\pages\Blog\TemplateHistoryPage.class.php:63
にdate("H:i:s", $obj->getUdate())
のようなコードがあるはずですが、これを
date("H:i:s", (int)$obj->getUdate())
にしてみてください。

PHP8.1の対応漏れです。
投稿者:  投稿日時:2022-06-21 15:56:44
早速の返信ありがとうございます。
修正しましたが、微妙に違うエラーが出ました。
違うことをしたのかもしれません。(元のコードを取っておこうとして違う行をコピペするという失態をしました。)
明日まで、待ちます。
どうぞよろしくお願いいたします。

DETECT DATE: 2022-06-21T08:51:20+02:00

MESSAGE: Uncaught Error: Call to a member function getUdate() on null in C:\xampp\htdocs\cm\soycms\webapp\pages\Blog\TemplateHistoryPage.class.php:63
Stack trace:
#0 C:\xampp\htdocs\cm\common\lib\soy2_build.php(6769): HistoryList->populateItem(Object(HTMLList_DummyObject), NULL, -1, 2)
#1 C:\xampp\htdocs\cm\common\lib\soy2_build.php(6732): HTMLList->populateItemImpl(Object(HTMLList_DummyObject), NULL, -1, 2)
#2 C:\xampp\htdocs\cm\common\lib\soy2_build.php(6963): HTMLList->execute()
#3 C:\xampp\htdocs\cm\common\lib\soy2_build.php(6981): HTMLPage->add('templateList', Object(HistoryList))
#4 C:\xampp\htdocs\cm\soycms\webapp\pages\Blog\TemplateHistoryPage.class.php(39): HTMLPage->createAdd('templateList', 'HistoryList', Array)
#5 C:\xampp\htdocs\cm\common\lib\soy2_build.php(5547): TemplateHistoryPage->__construct(Array)
#6 C:\xampp\htdocs\cm\common\lib\soy2_build.php(269): SOY2HTMLFactory::createInstance('TemplateHistory...', Array)
#7 C:\xampp\htdocs\cm\common\lib\soy2_build.php(236): SOY2PageController->execute()
#8 C:\xampp\htdocs\cm\soycms\index.php(8): SOY2PageController::run()
#9 {main}
thrown
EXCEPTION TYPE: ErrorException
LOCATION: /cm/soycms/webapp/pages/Blog/TemplateHistoryPage.class.php (63)

SOY CMS Version: 3.2.27
SOY CMS Build Date: 2022-06-10T11:13:28+09:00
SOY CMS DB Type: sqlite
SOY2RootDir: C:/xampp/htdocs/cm/common/
SOY2_DOCUMENT_ROOT: undefined


STACK TRACE
-----------------------
0:soycms_shutdown

()

Server Environment
PHP Version: 8.1.6

PHP SAPI NAME: apache2handler
PHP SAFE MODE: No
SHORT_OPEN_TAG: No

MEMORY_LIMIT: 512M Bytes
Memory Usage: 3,075,880 Bytes
10,485,760 Bytes (Real)
4,290,736 Bytes (Peak)
10,485,760 Bytes (Peak, Real)

MAX_EXECUTION_TIME: 120 sec.
POST_MAX_SIZE: 40M Bytes
UPLOAD_MAX_FILESIZE: 40M Bytes

mb_string: Yes
PDO: Yes
PDO_SQLite: Yes
PDO_MySQL: Yes
Standard PHP Library: Yes
SimpleXML: Yes
JSON: Yes
Services_JSON: No
ZIP: Yes
ZipArchive: Yes
Archive_Zip: No
OpenSSL: Yes
HASH: Yes
GD: No

Module/CGI Module
Rewrite OK

USER_AGENT: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.0.0 Safari/537.36
REQUEST_URI: /cm/soycms/index.php/Blog/TemplateHistory/12/top
SCRIPT_NAME: /cm/soycms/index.php
PATH_INFO: /Blog/TemplateHistory/12/top
QUERY_STRING:

DOCUMENT_ROOT: C:/xampp/htdocs
SCRIPT_FILENAME: C:/xampp/htdocs/cm/soycms/index.php

SOY CMS Options
SOYCMS_ALLOWED_EXTENSIONS: undefined
SOYCMS_ALLOW_PHP_SCRIPT: undefined
SOYCMS_SKIP_MOBILE_RESIZE: undefined
SOYCMS_BLOCK_LIST: undefined
SOYCMS_TARGET_DIRECTORY: C:/xampp/htdocs/
SOYCMS_TARGET_URL: undefined
SOYCMS_ADMIN_ROOT: undefined
SOYCMS_LANGUAGE: ja
投稿者:齋藤毅  投稿日時:2022-06-22 05:46:14
コードを確認しました。

date("Y-m-d H:i:s", $entity->getUpdateDate())

date("Y-m-d H:i:s", (int)$entity->getUpdateDate())
すれば解決します。

反映番は下記のページからダウンロードできるようにしています。
https://saitodev.co/soycms
投稿者:  投稿日時:2022-06-23 09:14:20
コード変更をしたところ、エラーはでなくなりました。
迅速なご対応ありがとうございます。
ただ、テンプレートがいまだに適用できずにいます。
改めてマニュアルを見つつ適用させてみます。
3.2.28インストールも念のため試してみます。
取り急ぎ、お礼まで。ありがとうございました。
投稿者:齋藤毅  投稿日時:2022-06-23 09:52:26
PHP8.1対応でテンプレート周りは見落としていましたので、もしかしたら使用できなくなっている可能性があります。
みてみます。
投稿者:  投稿日時:2022-06-24 17:29:57
インストールしたBootstrapのCSSをファイルマネージャから見ると、HTML形式で、中身もHTMLでした。
(自作のCSSは、CSSのアイコンですが、↑のCSSはHTMLのアイコンです)
しかし、Bootstrapをローカルで解凍して中身を見ると中身はCSSです。
テンプレートを当てたHTMLをソースで確認し、CSSを表示させると中身はHTMLでした。
元のHTMLのソースがCSSの中身に書き換わっている状態です。
解凍したCSSを直接ファイルマネージャに置いてみたところ、アイコンはCSSになりました。
HTMLのソースからCSSを確認するとHTMLです。

いかがでしょうか?やり方が間違えているようでしたら、ご指摘いただけると幸いです。
お手数ですが、よろしくお願いいたします。
投稿者:齋藤毅  投稿日時:2022-06-24 17:43:51
ご報告をありがとうございます。
おそらくsoycmsで利用しているunzipの機能まわりの使い方があやしいです。

コードを見てみます。
投稿者:齋藤毅  投稿日時:2022-06-27 18:02:51
コードに不具合がありましたので修正しました。
修正版を下記のページでダウンロードできるようにしました。
https://saitodev.co/soycms
投稿者:  投稿日時:2022-06-28 10:00:41
ご対応ありがとうございます!
SOY CMSブログテンプレートは適用できました。
が、Bootstrapの方は症状が変わりませんでした。
Bootstrapの入れ直し、キャッシュの削除やXAMPPの再起動などは試してみています。
(こちらのやり方の問題かもしれませんが、念のためお伝えします。)
このまま、SOY CMSのテンプレで作成していきます。

今日改めて確認したところ、Bootstrapも適用されました。大変失礼いたしました。
対応いただき、ありがとうございました。
ログインして投稿する