今回はムーバブルタイプからワードプレスのインポートについてです。デフォルトで使っている場合の記事は多くありますのでそちらをご参考になさってください。今回はアーカイブテンプレートでアーカイブパスを変更されている場合にインポートするアドレスと異なっているときの対処方法をご紹介します。
ムーバブルタイプでエクスポートしたときにBASENAMEという項目がありますがここがファイル名になります。post_1234という風に出ているかアルファベットで記載されているはずです。
今回は意図的にアーカイブパスを変更していて例えばpostがentryとか時間の数値をアドレスにしている場合はBASENAMEと相違ができますのでそこのところを対処してインポートする方法をご紹介したいと思います。
因みにですが、post_1234がワードプレスにインポートされてpost-1234になってしまうという場合はワードプレスのプラグインフォルダ内のmovabletype-importerフォルダにあるmovabletype-importer.phpを書き換えを行います。(ワードプレスの管理画面からツール-インポートからMovableTypeとTypePadをインストール済み前提になります。)
387行目あたりから以下の通り記載されているはずです。
$post->post_name = $slug;
を$post->post_name = str_replace( '_', '-', $slug );
と書き換えます。以下の通り。
これでインポートすればWordPress側とMovable TypeのBASENAME(ファイル名)が同じになります。内部リンクでリンクの相違がある場合はこのようにして合わせます。
MTからのインポートファイルが2MB以上ならwp-contentディレクトリにmt-export.txtリネームしてアップロードしてインポートした方がよいです。
さて、ここからが本題です。アーカイブマッピング対策の場合は、ムーバブルタイプのエキスポート部分を修正します。ImportExport.pmのファイルをちょっと変更します。BASENAMEの下にPERMALINKとIDを追記します。
/htdocs/cgi-bin/lib/MT/ImportExport.pm
630行目あたりの#⇒は追加したところです(#⇒矢印は記載しないでください)
この通りに修正した後エクスポートすると例ですが以下のように出力されます。export-000014-2018102300000.txtというダウンロードファイルの一部分です。
AUTHOR: admin TITLE: タイトルタイトルタイトルサンプルサンプルテストテスト BASENAME: post_3650 PERMALINK: https://www.its-office.jp/blog/2018/10/231612/ ID: 3650 STATUS: Publish ALLOW COMMENTS: 1 CONVERT BREAKS: richtext ALLOW PINGS: 1 PRIMARY CATEGORY: cms CATEGORY: cms DATE: 10/23/2018 06:12:28 PM
上記見てもらえればわかりますがBASENAMEとPERMALINKのアドレスが違います。このままワードプレスにインポートするとpost-3650というファイル名になりますが実際のアドレスは231612という数値なので内部リンクしている場合はリンク切れになります。
このような記載が数百とか数千もあると変更が大変なのでここで正規表現で処理を行います。
まず正規表現ができるテキストエディタでエクスポートしてきたファイルを開きます。因みにCotEditorを使っていますがWindowsなら秀丸エディタとかでもできると思います。
検索文字に
BASENAME: ([!-~]+)
と入力して置換は空にします
これでBASENAMEと記載された文字列(post_xxx)は消えたはずです。
さらに検索文字列は以下
PERMALINK: https?://www.its-office.jp/[a-z]+/\d{4}/\d{2}/([!-~]+)/
置換文字列は以下
BASENAME: $1
と記載して変更します。
BASENAME: xxxxという風に変更されているはずです。 これでアーカイブマッピングアドレスに変更できました。後はワードプレスにインポートするだけです。
参考になれば幸いです。
∞Tadashi Suyama∞
あまりcgiは使いたくないのですが使わざるを得ない時があります。仕方なく設置するのですがエラーが出ちゃうんです。なんか知らないけど。 ありがちなのがパーミッションとかパスが問題になるんのですけど...
19 Feb 2022
今回はワードプレス専用のアドレス変更方法をご紹介します。ワードプレスのアドレスはwordpress@~という形で送られてきますが変更可能です。 functions.phpに記載するのですがプラグ...
12 Feb 2022
Sassの遷移は多すぎる今日この頃 Ruby Sass→LibSass→DartSass(いまここ) Ruby SassはSassの最初の実装でしたが、2019年3月26日にサポートが終了しま...
22 Jan 2022
明けましておめでとうございます。 本年も何卒よろしくお願いいたします。 年末年始は雪でしたね、そこまで積もっていませんが。 {% include adsensearticle.html...
10 Jan 2022
最近はjQueryよりvueで書いた方が楽ではないかと思い学習中です。 そもそもVuejsはドキュメントが日本語対応なので試しやすいし情報も豊富なので学習しやすいです。 3大フレームワークと呼...
02 May 2021
ウェブエンジニアの須山のブログです。
WEBに関することや個人的に関心のあることについて書きます。主に技術系ブログです。