インポートツールでデーターベース引越し後、リンクが更新されない
-
追加情報です。
インポートに失敗した可能性があると思い、再度WordPressをインストールして実施してみました。
その結果、
1)Import WordPress にて
1.Import author: admin
or create new uwer with login name:( )
or assign posts to an existing user ( -Select-)
Import Attachments
()download and import file attachments
Submit
上記の画面でインポートを実施するのですが、後半のImport Attachmentsにチェックを入れるとエラー終了してしまう(500 Internal Server Error)ため、このチェックをはずして実施すると、インポートが実施されました。
しかしその時画面には、正常にコピーされたファイルと同数くらい、コピーに失敗したファイルの履歴が表示されました。2)インポートされた記事のソースを確認したところ、全ての記事内のリンクは前のサーバー上のリンクと同じものでした。
上記の結果から、1)で正常にインポートが失敗したからリンクが書き換わらないのか?
あるいは、2)の記事内リンクはそもそも手動で変更しなければ駄目なものなのか?
が分かりません。
よろしくお願いします。はじめまして。
画像パスは以降前のブログのURLのままです。
記事の内容はwp_postsテーブルのpost_contentに、静的な状態で格納されているだけで、それをコピーしているだけですから。記事内のパスを変えたければ、1件1件手動で書き換えるか、MySQLでUPDATEコマンドを叩いて修正するしかないと思います。
添付ファイルのインポートに失敗するのは、情報が少なすぎてわかりません。
egoblockさん、
返信ありがとうございました。
画像パスは手動で編集するしかないのですね。
了解いたしました。
インポートファイルの失敗についてはサーバーの問題もしくはパーミッションに問題があると表示されているので、サーバーの会社に問い合わせてみます。
ちなみに書き込みフォルダーはパーミッションには問題がありませんでしたが、画面上からはそれ以上の情報が取れないので現状ではそれ以上の対応は取れないでいます。こんにちは。
あらかじめURLをテンプレートタグで記述しておけば、URL(ドメイン)が変わっても自動的に置換されますが、全て「http://hoge.com/img/hoge.jpg
」という感じで記述していたのでしょうか?skunk0915さん、こんにちは
「URLをテンプレートタグで記述」についてですが、
これは
設定>メディア設定>ファイルへの完全なURLパス
のことでしょうか?
詳細知りたいので、よろしくお願いします。ちなみに、現状ですが、
エキスポートしたファイルの画像ファイルのパスを全てエディターで
新しいサーバーのURLに置き換えてインポートしたところ、
記事中の画像は、新サーバーの画像がちゃんと表示されるようになりました。
(当たりまえですが)
しかし、その画像をクリックしたときに表示される、元画像のURLが無効なようで、
ページが無いと表示され進めません。このURLですが、移行したサブドメインのURLで、
移行前のサイトからサブドメインを移管したものです。
なので、URLは活きると勝手に思っていたのですが、
全てURLが無効ということになると、
この先どのような変更を加えたらよいものかわからず、再び止まってしまっています。
アドバイスいただければありがたいです。(内容が少し最初と変わってしまったので、適切と判断したらこの件は新しいトピックを興して書き直しますが、、、、。)
解決方法は簡単です。そして、覚えておかなければ今後も躓きます。
前のデーター(エクスポートした元データー)をterapadなどで開きます。
terapadの場合はメニューの検索をクリックその中の置換をクリック、
そうすると「検索する文字列」と「置換後の文字列」が出ます。使い方は「検索する文字列」にデーターないで使われていた「サイトのアドレス」
「置換後の文字列」は「新たなサイトのアドレス」を入れます。そして、「すべて置換」のボタンを押します。
エディターは文字コードが指定できるものならどれでもよいです。
例を載せておきます。「検索する文字列」→http://exsample.com/
新たにwpフォルダーを作りそちらにwordpressを設置した場合
「置換後の文字列」→http://exsample.com/wp/ と入力します。
アドレスは絶対アドレスで指定することです。chattranさん こんにちは。
WordPressではテンプレートや固定ページ等に書く「http:自分のサイトURL」を
<?php bloginfo('template_url');?>
や<?php bloginfo('url');?>
といったテンプレートタグで記述することでそのサイトのURLを動的に取得できます。実際に表示されたサイト上では区別がつきませんが、今回のようにURLが変わるような移設やドメインを変更したときに自動的に連動するので便利です。
手作業で検索・置換するのもいいですが、人力では限界がありますし、効率的ではありません。
これに限らずWordPressはテンプレートタグで様々なものを動的に取得できます。
管理するサイトが多くなるほど、サイトの規模が多くなるほどその恩恵は大きいです。…と、やたら偉そうな物言いですが、これWordPressの一番の特徴といってもいいくらいの特徴ですよね…誰でも知ってますよね…。
なんか質問の意図をものすごい勢いでカン違いしてドヤ顔しちゃってる気がしてならないんですが…大丈夫ですかね自分。
==
追記あ、投稿内の画像のことかな?
WordPress管理画面のインポート・エクスポートは機能が中途半端で使ったことないのでわかりませんが、自分はいつもデータベースそのものを1つのsqlファイルにまとめてダウンロードして、そのファイル内の元URLを新URLに一括で検索・置換して移設先のDBへインポートしてます。これなら一回で全部のパスが変更できます。
質問の意図間違えてたらすみません。
ryouji98さん、今晩は!
今回の移行処理ですが、エキスポートしたファイルを言われたのと同じ方法で、全件検索して置換した後インポートしました。
つまり、インポートしたファイルには前のサイトのURLは含まれていません。
今回のリンク切れは、最終的にドメイン移管した後に使用したいURLのパーマリンクが無効になってしまうという問題です。
説明しにくいので例を書きます。★元のサーバー:
最初にインストールしたURL:http://old-server
使用している独自ドメイン:http://subdomain.com★新しいサーバー:
最初にインストールしたURL:http://new-server
移管後に使用するドメイン(元と同じURL):http://subdomain.com★エキスポートしたファイル:
<a href="http://subdomain.com/?attachment_id=2827" rel="attachment wp-att-2827"><img src="http://old-server/wp-content/uploads/2011/11/DSC07749_edited-1-400x300.jpg" alt="xxxxx" title="xxxxx" width="400" height="300" class="alignleft size-medium wp-image-2827" /></a>xxxxx。<br class="clear" />
※エディターで修正箇所:
<img src="http://old-server/
→<img src="http://new-server/
★インポートしたファイル:
<a href="http://subdomain.com/?attachment_id=2827" rel="attachment wp-att-2827"><img src="http://new-server/wp-content/uploads/2011/11/DSC07749_edited-1-400x300.jpg" alt="xxxxx" title="xxxxx" width="400" height="300" class="alignleft size-medium wp-image-2827" /></a>xxxxx。<br class="clear" />
★リンク切れになるURL:
<a href="http://subdomain.com/?attachment_id=2827" rel="attachment wp-att-2827">
つまり画像のパスはエディターの修正で修正できるのですが、その時に作成される画像のページのURLは投稿時に自動的にパーマリンクが貼られ、なおかつ最終的に使用するドメインのURLになっているので、どのように修正したら良いかがわからないのです。
そもそも論で大事な事を勘違いしていたり、やるべき処理を忘れているのかもしれませんが、何百もある記事の全ての画像のリンク先のURLを設定し直す事は非現実的で出来ないので、これが駄目なら画像ページのリンクを全部捨てるしかないと思っています。
是非ご教示お願いします。skunk0915さん、今晩は!
テンプレートでURLをそのまま書いているところはありません。
おっしゃられたように bloginfo(~)見たいな書き方です。
私の勝手な解釈では、このテンプレートによって絶対アドレスが読み込まれ、実際にページが展開されたときにはその絶対アドレスで表示される。
その結果、データをエキスポートしたときには、解釈され展開された絶対アドレスが書き出されるので変換が必要になる。
と考えたのですが、間違いでしょうか?あるいは、新しいサイトをインストールするときに、どこかの設定を変更しておけば、
エキスポートするデータからも絶対アドレスではなくて変換可能なURLで書き出してくれることが可能なのでしょうか?skunk0915サンではなくて、こちらこそ思い切りはずしているかもしれませんが、
どうぞよろしくお願いします。
- トピック「インポートツールでデーターベース引越し後、リンクが更新されない」には新たに返信することはできません。