質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
Webサーバー

Webサーバーとは、HTTPリクエストに応じて、クライアントに情報を提供するシステムです。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

Q&A

解決済

1回答

334閲覧

WordPress ローカルで開発を行い、サーバー上のサイトを更新したい

suvera

総合スコア106

Webサーバー

Webサーバーとは、HTTPリクエストに応じて、クライアントに情報を提供するシステムです。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

0グッド

0クリップ

投稿2017/07/13 07:38

前提

WordPressでサイトを作成しています。
既にサーバーにはサイトが存在しています。
しかし、開発環境といったものがないため現在は編集が直接公開先に反映されてしまいます。

実現したいこと

直接公開先に反映されてしまう、確認する方法が公開されているサイトを見る以外にない。
この状態がよろしくないため、それを避けるためにローカルの開発環境を整えたいと思いました。

サーバー側の環境

サーバー側はlolipopを利用しています。
置き場所もDBもlolipopで賄っています。

ローカルに準備した環境

PCは windows7 を利用しています。
MAMPをインストールしてそれでローカルのWordPressの環境を整えました。

発生している問題

テーマ内の編集内容や、カスタマイズした情報が反映されなくなる問題が発生しています。
メディアにアップした画像の情報や、プラグインの有効無効の状態は複製先と同じ状態です。

テーマの選択は複製先と同じものですが、編集内容は全てデフォルトのものが表示されます。
カスタマイズの内容も全てテーマのデフォルトのものに戻っています。

具体的には以下の様なものがデフォルトに戻されます。

  • テーマオプション
    • セクションの順番
    • セクション文章や画像の編集内容
  • カスタマイズ
    • タイトルロゴに設定したはずの画像などのリンク
    • マージンなどの数値の設定

発生する状況

ローカルからサーバー、サーバーからローカルでサイトの複製を行った際に発生しています。

DBのデータについて

DBを確認したところ wp_options の name が onetone となっているデータのvalueにある情報は消えていませんでした。
比較を行っても差異があるのはURL部分のみでした。

DB上では編集した情報が残っているにも関わらず
編集した内容がブラウザのカスタマイズや、閲覧時に反映されない状態になっています。

試したこと

ローカルでのサイトの複製

一度サーバーからローカルに転送して上手く行かなかったためローカルでサイトの複製から試してみました。
その時上手く行かなかった問題はDBの中身の編集に抜けが合ったのと、セキュリティ周りのプラグインが邪魔をしていたようでした。

この2つを解決した状態でローカルでサイトの複製を行いました。
テーマの編集内容や、カスタマイズの編集内容、メディアにアップしたファイル、プラグインとその有効無効状態。
これらを確認し、複製元と同じ状態であることが確認できました。

複製の際に行っていること

  • セキュリティ周りのプラグインを一旦無効にする
  • コピー&ペーストで複製先のサイトを作成
  • 複製元のサイトのDBをエクスポート(SQLファイル)
  • DBのURLを複製先のものに書き換える
    • これはエクスポートしたSQLで文字列置換で行っています
  • 新しくDBを作成し、SQLファイルをインポート
  • コピーしたフォルダのwp-config.phpの中のDBの情報をさっき作成したDBに編集

###補足情報(言語/FW/ツール等のバージョンなど)

WordPressで利用しているテーマは Onetone です。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

多分エクスポートしたデータベースのファイルをエディタ等で置換してインポートしてるのだと思うのですが、そうした場合シリアライズされた項目は反映できないので、置換せずにそのままインポートして以下リンク先のツールを利用して置換してください。

使い方はreplaceと書かれた方に本番サイトのURL、withと書かれた方にローカルのURL、あとはname、user、pass、host、portを入力してlive runを押せば置換されます。

https://interconnectit.com/products/search-and-replace-for-wordpress-databases/

投稿2017/07/13 07:55

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

suvera

2017/07/13 08:35

ありがとうございます。 シリアライズ化された情報を置換できない問題は気がついていませんでした。 その情報だけでも非常にありがたいです。 おすすめしていただいたツールを使って移行のテストを行ってみます。 結果を確認次第また報告させて頂きます。
suvera

2017/07/14 01:50

成功しました! ありがとうございました。 ローカルからサーバー、サーバーからローカルの両方向から試して編集が残っていることが確認できました。 指摘された文字置換が問題だったようです。 本当にありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問