やったこと:2020/9/29

sirius2wpにバグ発見。

投稿するページのslugを取得するための正規表現。

match = re.match(targetUrl+'(.+?/)?(.+?)/?$', link['url'])

これだと、カテゴリーのディレクトリ階層になっていた場合に、子カテゴリの下にある記事ページのslugが「子カテゴリー名-記事ページ名」となってしまう。

group(1)の方は貪欲なマッチをさせないといけない。でないとgroup(2)に残りが押しつけられる。

ってことで、正解はこっち。

match = re.match(targetUrl+'(.+/)?(.+?)/?$', link['url'])

あと今日は、WordPressをアクティベートするときにSIRIUSのファイルを退避させるのに、なんとなく*.htmlとかでやるんじゃなくて、きちんと存在しているファイルやカテゴリーディレクトリのリストを作って、それを元に移動させることにした。

ってことで、sitemapを読み込んでslugを作るところで移動するファイルのリストも作ることに。

そこで上のバグも見つけられた。

しかも、動作確認する際に「ディレクトリ階層になっていると思って試したら同一階層だった」という偶然から、退避ファイルのリスト作成処理に間違いがあることに気がついて、さらに上のバグまでたどり着いたというラッキーだった。

タイトルとURLをコピーしました