SIRIUSのサイトからWordPressに移行させるツールを作るのに、カテゴリーをどうするかが問題になってしまった。
SIRIUSは、記事ページもカテゴリーページも同じHTMLファイルなんだけど、一方WordPressの方のカテゴリーは投稿ページを束ねる仮想ページ。
なのでSIRIUSの記事ページとカテゴリーページは区別をして扱わなければいけない。
カテゴリー内に記事があれば区別は可能
SIRIUSのカテゴリーページは、基本的なHTML部分は記事ページと同じ。
でもカテゴリー内の記事が並んでいる記事リスト部分のdivタグに、カテゴリー特有のidが使われているので、このidがあったらカテゴリーページと区別できるので、これでいけると思ったの。
思ったんだけど、例外的に記事ページが無いカテゴリーの場合、記事リストが無いので記事リスト部分のdivタグも無い、ってことがわかった。
つまり作成途中でまだ中の記事が無いカテゴリーの場合、そのカテゴリーページが普通の記事ページとして扱われてしまうことに。
けっこう真剣に見比べてみたんだけど、記事リスト部分しかカテゴリーページと記事ページの違いはないみたい。
ってことで困ったことなりました。
記事の無いカテゴリーは無かったことにする
配下の記事の無いカテゴリーページは区別はできないけど、普通の記事ページとして投稿してしまうわけにもいかないし…。
ってことで、記事の無いカテゴリーはスキップすることにした。
WordPressでも、記事の無いカテゴリーは表示されないし。WordPressでそのカテゴリーの記事を書いたときに、WordPressでカテゴリーを作ればいいかな、と。
このスキップするっていうのは、プログラムでスキップするんじゃなくて、あらかじめSIRIUSサイトから消しておくってこと。プログラムで判断するのが無理なんで。
SIRIUSでサブサブカテゴリーが作れたのはバグ?
SIRIUSって仕様としてサブカテゴリーまでしか作れないと思っていたんだけど、サブサブカテゴリーまで作れた。
というのが1度あったんだけど、これってバグなのかな?
サブカテゴリーのところに更にカテゴリーをドラッグ&ドロップできちゃったんですよ。
で、サブサブカテゴリーまで出来上がって、そのままサイト作成までできちゃった。
それならそれでもいいと思ったんだけど、このサブサブカテゴリー配下のページがサイトマップに出てこない。
WordPressに投稿する記事のリストはサイトマップから拾っているので、サイトマップに出てこないとそれは困る。出てこないページはWordPressに投稿する対象としてカウントできない。
すこし悩んだけど、これはたぶんバグで本来の動きではないので(その後再現できないし)、無視することにした。
とりあえずカテゴリー関連で困ったこと。
コメント