sitemap関数関連の不具合報告
syokken > Re: sitemap関数関連の不具合報告 @ 2017/2/19 23:16 |
---|
@ryuring さん
迅速な修正ありがとうございました。 |
ryuring > Re: sitemap関数関連の不具合報告 @ 2017/2/19 13:29 |
---|
syokkenさん、こんにちは。
サイトマップとパンくずについて、indexページとフォルダが重複しないように修正を入れました。 http://project.e-catchup.jp/issues/16180 http://project.e-catchup.jp/issues/16181 次の v4.0.2 に反映されます。 Twitter:@ryuring |
syokken > sitemap関数関連の不具合報告 @ 2017/2/15 16:48 |
---|
4系のwiki等を参考にsitemapで表示されるテーマのカスタマイズを行おうといくらか試行し動作がおかしい気がしたので報告します。
BcBaserHelper.phpのsitemap関数を辿ったところcontents_menuエレメントを参照している様子で、APIドキュメントにはsitemapエレメントと記載されておりソースまたはドキュメントが誤っているようです。 (参考:実際にsitemap.phpを作成しましたが動作はしませんでした。) リンク: APIドキュメント(sitemap):http://api.basercms.net/classes/BcBaserHelper.html#method_sitemap GitHub(BcBaserHelper.php):https://github.com/baserproject/basercms/blob/41e82b98d680820e582a23e1639df69ea4e1a797/lib/Baser/View/Helper/BcBaserHelper.php ※githubの確認は最新のソース(ブランチ:dev-4)を参考にしました。 カスタマイズするにあたってsitemap関数は挙動がよく分からなかったので参照されている根本のエレメントcontents_menu.phpを作成し、$this->BcBaser->contentsMenu()で呼び出して対処しました。 またここで別の不具合がありまして、特定のフォルダ階層において重複が発生することを確認しました。 特定の環境とは任意の名称のフォルダ階層を1つ用意し、その階層直下にindexというURLに設定したページを設置すると$this->BcBaser->contentsMenu()で呼び出したとき、階層が重複してしまいます。 表示される理由は分からなくはないですが、訪問者にとっては誤りであると判断されると思うのでバグかなぁ。と考えた次第です。 とりあえず一時的な対策としてbc_sample/Elements/global_menu.phpの40、41行目の間にarray_shift($content['children'])を挟んで1つ目の配列を1つ消して対応はしています。 ※呼び出しはcontentsMenu()で行っていますので実際にはglobal_menu.phpの名称をcontents_menu.phpに変更しています。 これは内部のバグというよりかはテーマのバグかもしれません...。 長く読みづらい報告で申し訳ありません。 参考画像: ■ BaserCMSのバージョン:4.0.1 ■ レンタルサーバー名:lolipop ■ スマートURLの利用:ON ■ 設置フォルダ:サブフォルダ ■ 利用しているデータベース:MySQL ■ PHPスキル(自己評価):C |