[Movable Type version 5.11]を使用しております。
最近、サーバーのログに、
下記のようなエラーメッセージが頻繁に表示されて困っております。
PHP Fatal error: mttoplevelfolder must be used in a category context in /XXX/XXX/XXX/cgi-bin/mt/php/lib/MTViewer.php on line 160
PHP 1. {main}() /XXX/XXX/XXX/WWW/mtview.php:0
PHP 2. MT->view() /XXX/XXX/XXX/WWW/mtview.php:5
PHP 3. MTViewer->error() /XXX/XXX/XXX/cgi-bin/mt/php/mt.php:516
PHP 4. trigger_error() /XXX/XXX/XXX/cgi-bin/mt/php/lib/MTViewer.php:160
PHP 5. MT->error_handler() /XXX/XXX/XXX/cgi-bin/mt/php/lib/MTViewer.php:160
PHP 6. MTViewer->tag() /XXX/XXX/XXX/cgi-bin/mt/php/mt.php:807
PHP 7. multiblog_MTInclude() /XXX/XXX/XXX/cgi-bin/mt/php/lib/MTViewer.php:445
PHP 8. __lambda_func() /XXX/XXX/XXX/cgi-bin/mt/plugins/MultiBlog/php/init.MultiBlog.php:110
PHP 9. smarty_function_mtinclude() /XXX/XXX/XXX/cgi-bin/mt/php/lib/MTViewer.php(484) : runtime-created function:1
PHP 10. Smarty->_eval() /XXX/XXX/XXX/cgi-bin/mt/php/lib/function.mtinclude.php:241
PHP 11. eval() /XXX/XXX/XXX/cgi-bin/mt/php/extlib/smarty/libs/Smarty.class.php:1936
PHP 12. multiblog_MTInclude() /XXX/XXX/XXX/cgi-bin/mt/php/extlib/smarty/libs/Smarty.class.php(1936) : eval()'d code:52
PHP 13. __lambda_func() /XXX/XXX/XXX/cgi-bin/mt/plugins/MultiBlog/php/init.MultiBlog.php:110
PHP 14. smarty_function_mtinclude() /XXX/XXX/XXX/cgi-bin/mt/php/lib/MTViewer.php(484) : runtime-created function:1
PHP 15. Smarty->_eval() /XXX/XXX/XXX/cgi-bin/mt/php/lib/function.mtinclude.php:241
PHP 16. eval() /XXX/XXX/XXX/cgi-bin/mt/php/extlib/smarty/libs/Smarty.class.php:1936
PHP 17. multiblog_MTInclude() /XXX/XXX/XXX/cgi-bin/mt/php/extlib/smarty/libs/Smarty.class.php(1936) : eval()'d code:10
PHP 18. __lambda_func() /XXX/XXX/XXX/cgi-bin/mt/plugins/MultiBlog/php/init.MultiBlog.php:110
PHP 19. smarty_function_mtinclude() /XXX/XXX/XXX/cgi-bin/mt/php/lib/MTViewer.php(484) : runtime-created function:1
PHP 20. Smarty->_eval() /XXX/XXX/XXX/cgi-bin/mt/php/lib/function.mtinclude.php:241
PHP 21. eval() /XXX/XXX/XXX/cgi-bin/mt/php/extlib/smarty/libs/Smarty.class.php:1936
PHP 22. smarty_block_mttoplevelfolder() /XXX/XXX/XXX/cgi-bin/mt/php/extlib/smarty/libs/Smarty.class.php(1936) : eval()'d code:5
PHP 23. smarty_block_mttoplevelparent() /XXX/XXX/XXX/cgi-bin/mt/php/lib/block.mttoplevelfolder.php:11
PHP 24. get_category_context() /XXX/XXX/XXX/cgi-bin/mt/php/lib/block.mttoplevelparent.php:12
PHP 25. MTViewer->error() /XXX/XXX/XXX/cgi-bin/mt/php/lib/MTUtil.php:918
PHP 26. trigger_error() /XXX/XXX/XXX/cgi-bin/mt/php/lib/MTViewer.php:160
1行目のエラーメッセージを調べてみると
「mttoplevelfolder は、<MTCategories>コンテナ内で使ってください。」
というエラーのようでした。
mt:TopLevelFolder~</mt:TopLevelFolder>は、
mt:Categories~</mt:Categories>内で使用しなさいという意味かと思ったのですが、
この認識で良いのでしょうか?
テンプレート内で、mt:TopLevelFolderが使用されている箇所を
検索してみましたが、見つかりませんでした。
(代わりに、mt:TopLevelFoldersは、3ヶ所ほどヒットしたのですが…。)
mt:TopLevelFolderが使用されていないのに、エラーが出ているので、
どうしてエラーになるのか、よく分かりません。
どのように修正したらこのエラーを修正できるのか、ご教授いただけないでしょうか?
なお、/cgi-bin/mt/php/lib/MTViewer.php の 160行目は、以下の関数のところですので、
あまり関係ないかと思われます。
function error($err, $error_type = E_USER_ERROR) {
trigger_error($err, $error_type);
return '';
}
お手数をおかけいたしますが、よろしくお願いいたします。
あなたの回答
tips
プレビュー