エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


BizVektor環境の引越しでメニュー、バナーが消える不具合の対応方法解説

      2017/03/12

BizVektor環境の引越しでメニュー、バナーが消える!

 

コーポレートサイト構築用無料テーマ「BizVektor」

 
WordPressのコーポレートサイトを作成するために便利な「BizVektor」という無料テーマがあります。
コーポレートサイトを構築するために必要な機能を備えているテーマですので、コーポレートサイトの構築はもちろんのこと、下記のような Webサービスサイトを構築する際にも便利に使えます。
 
  月極駐車場検索エース
  http://parking.s-giken.info
 
 
今回は、この「BizVektor」を使ったサイトを、開発環境から本番環境(本番から開発環境)へと引越しをする際に、メニューが表示されなくなったり、トップページのバナーが表示されなくなったりする不具合の対応方法について解説します。
 
要するに、上記の「月極駐車場検索エース」を構築する際に発生した不具合の紹介とその対応方法に関する解説です。
 
 

WordPress環境の引越し手順について

 
WordPressの環境の引越し手順に関しては、下記に記事を書きました。
 WordPress環境を引越し、複製、バックアップ、リストアの手順解説
 
この通り対応してもらえれば、BizVektor環境の引越しも問題なく上手くいきます。
そもそも記事中の「WordPress環境を引越し、複製、バックアップ、リストアの手順解説/4.データベースの値を変更」に BizVektor環境の引越しでは問題が起こりやすいことにも触れています。
 
ただ、WordPress環境を引越し、複製、バックアップ、リストアの手順解説の記事中ではさらっと触れているだけですので、もう少し詳しく説明しよう、というのがこの記事です。
 
 

BizVektor環境の引越しで起こる不具合の原因

 
WordPressのテーブルの中に「wp_options」という WordPressの設定情報が保存されているテーブルがあります。
 
この中に項目「option_name」が「biz_vektor_theme_options」のレコードがあり、ここに BizVektorのメニューに関する設定や、テーマオプションの設定情報などが保存されています。
この設定が上手く変更されていない場合に不具合が発生します。
 
 
「biz_vektor_theme_options」レコードのサンプルを掲載しようかと思いましたが、非常にいろいろなことが記述されていまして、無謀だと思いましたのでやめにしました。
それもそのはずで、1レコードには「外観」-「テーマオプション」の画面で設定する内容が記述されているからです。
 
このレコードはすごい文字数になっていますが、実は細かな項目の組み合わせでできています。
 
たとえば、「contact_link」で検索すると下記のような項目がヒットします。
 

 
これは下記のような仕組みのレコードになっています。
20160506_wp_01
 
このように、テーマオプションの項目名と入力値がセットになって保存されています。そのため、項目はいっぱいありますが、一つずつテーマオプションの画面と見比べていくと何が書いてあるかが分かってくるでしょう。
 
 
そして、例えば、新・旧の環境が以下のようだとした場合、
  旧環境 http://localhost:8080/wordpress/
  新環境 http://www.example.com/
 
「http://localhost:8080/wordpress/」を「http://www.example.com/」に置換することになります。
その際「s:40」の部分も変更する必要があるわけです。
 
「s:40」は、上にも書きましたがその項目に入っている値の文字数になりますので、新しい環境が「http://www.example.com/contact」となると 31文字となりますので、下記の様に URLと共に「s:31」と変更する必要があります。
 

 
 
この仕組みを理解していないと、この「s:40」の部分を変更せずに URLを一括置換してしまうことになり、メニューやバナーなどテーマオプションで設定した項目が正しく取り込まれず、表示されないという不具合につながるのです。
 
 
新しい環境の情報に置換していく際は、この仕組みを理解して、URLとファイルのパスを置換しつつ、文字数のカウントも新しい環境のものに変更をしていきましょう。
 
 


 

WordPress環境引越しの作業方法

 
今回解説をした URLやファイルのパスに関する文字列の置換と、それに伴う文字数のカウントですが、私はテキストエディタで検索しながら、一つ一つ手作業で修正を行っています。
文字列を置換すると何文字の増減があるかを計算して、加減算をするだけですが、「月極駐車場検索エース」はいろいろなプラグインを入れてカスタマイズをしましたので、かなり変更点が多くて時間がかかりましたね。
 
 
環境を引越しするのは、特別な何かがあった時だけで数か月に 1回程度の頻度でしか発生しませんので「まぁいいか」と思いますが、文字列を置換しつつ、文字数の値も変換するツールを提供してくれている方もいます。
 
そのツールを使ったことはありますが、ツールをどこまで信頼するかという問題もあり、結局は手作業でやるわけですが...
 
 

DuplicatorでWordPress環境引越し

 
WordPress環境を引越し、複製、バックアップ、リストアの手順解説」でも紹介していますが、WordPressの環境を引越しするプラグイン「Duplicator」を使うと、ここで紹介したような文字数をカウントする作業なども含めて WordPress環境の引越しを簡単にやってくれます。
もちろん、ファイルのコピーやデータベースのコピーもすべてやってくれます。
 
「Duplicator」の使い方の記事は「DuplicatorでWordPressを簡単引越し!インストーラー付のバックアップにも」に書いています。
 
ただ「Duplicator」の難点は、サーバ環境やファイルの容量などに制限があるため、古いサーバー、大きなサイトでは使えないという点ですね。
また、日本語化されていませんし、データベース内のテーブルを全て削除してからテーブルを作り直しますので、仕組みを理解していないと他のシステムのテーブルまで消えてしまうという事態が発生します。
 
テスト環境を用意して、どんな動作をするのかを試してから使うことをお勧めします。
 
 

文字数をカウントする仕組みは使わない場合もある

 
今回紹介した、項目の値の文字数をカウントし、その数値を編集する仕組みは WordPressの中では多くの処理で使われています。
 
ですが、実際には、編集されている文字数を利用するか、利用しないかはそれぞれの処理によって違います。
 
具体的には、今回紹介したテーマ「BizVektor」や、プラグイン「Announce from the Dashboard」は、編集してある文字数を利用しています。
そのため、この数値が違う場合は、正しく処理が行われません。
 
ですが、WordPressの本体や、プラグイン「WP Admin UI Customize」は、編集してある文字数を利用していないようで、文字数が一致していなくても何の問題もなく動作します。
環境の引越し作業などでこの値が正しくなくなる場合を想定し、正しくなくても動作するように設計してあるのかもしれません。
 
 
このように、文字数カウントの値が合っていないと動かないものや、違っていても動くものなどの違いがあるため、動かないときに悩む原因にもつながるのだと思いますね。

 - WordPress

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

Advanced Custom Fieldsの全項目解説・公開側表示編集編

Advanced Custom Fieldsは現時点でカスタムフィールドを設定する最高のプラグイン。それで入力した情報を取り出す方法を全て網羅して解説しました。

WordPressの投稿データ(記事データ)の管理方法

投稿の登録の方法、投稿データの管理方法の解説。MetaManagerなどのプラグインを入れた場合の入力ボックスを表示させる方法についても解説します。

WP Multibyte PatchでWordPressの管理画面のイタリック体を解消

管理画面の一部の文字がイタリック(斜体)になっているのはプラグイン「WP Multibyte Patch」が有効になっていないためです。日本語を使うには必ず有効化しましょう。

Search RegexでWordPress投稿の文字列を検索・置換する使い方解説

WordPressの投稿テキストを検索、置換するプラグイン Search Regexの使い方の詳細解説です。

AdminerはWordPressのデータベース管理プラグインの決定版!

データベース管理プラグインはAdminerがあれば他に必要ありません。なぜならDB管理ツールAdminerと同じものをプラグインとして提供しているからです。

WordPressのプラグイン WP-DBMANAGERを使って PHP、CakePHP、baserCMSなどで作った Webサービスのデータベースも自動バックアップ

WP-DBMANAGERを使って WordPress以外の PHP、CakePHP、baserCMSなどで作った Webサービスのデータベースも自動バックアップする方法を解説。

Custom Field Templateで簡単にカスタムフィールドをフル活用

カスタムフィールドを簡単に設定するプラグイン。簡単にカスタムフィールドが管理で来て作業効率が数倍にアップします!

WordPressの高速化でSEO対策!広告費も削減!高速化の施策のまとめ

WordPressを高速化するためのまとめ記事。これまで多様な高速化の対応を行ってきましたが、それを具体的に何をすればいいかが一目でわかるようまとめ記事にしました。

DuplicatorでWordPressを簡単引越し!インストーラー付のバックアップにも

WordPressの引越しや開発環境から本番環境への移行など他の環境に移す作業を簡単にしてくれるプラグインの紹介。インストーラー付のバックアップツールとしても使る。

WordPressのカテゴリの編集の解説

WordPressのカテゴリって何?というところから説明し、カテゴリを登録、編集する方法を解説します。また、カテゴリの順番を自由に変える方法も解説します。