このサイトは格安レンタルサーバーのドメインキングで運営しています。少しでもページ表示速度を速く、さらには今後のWordPressのアップデートにも耐えられるようにPHPのバージョンを7.0に変更したら・・・【CS SHOP】の商品一覧が表示されなくなって、しかもそれ以降のコンテンツが表示されないという不具合が発生しました
そして自身で粉になる位(大げさ?)調べて、独学なりにコードの修正などもして・・いろいろやった挙句に出た結論は・・・「ダメだこりゃ」でした。
このプラグインは今まで出会った物販アフィリエイトの中で個人的にはマストなもので、Amazonアソシエイトと楽天市場の両方の商品がショートコードで簡単にリスト化できる優れもの。しかもキーワードで自動的に商品を検索して表示をしてくれるのでリンク切れは皆無!本当にいいプラグインなんです(知らない人意外と多いんですよね)。
で、「ダメだこりゃ」となったため、楽天市場の商品が一覧表示できるプラグインを探したところ全くなし、Amazonアソシエイト用のプラグインもほとんどがAWSのAPIを使うものだったので、もしも、もしもCS SHOPが使えるようになったら日本版のAPIが使えない・・ということでいろいろ探して
にたどり着きました。AWS?国内?と思う方もいるかもしれませんね。Amazonアソシエイトの商品を表示するプラグインにはローカルな国のAPIを使うものとグローバル(世界)共通のAPIを使うものがあるんです。後者がAWS(アマゾンウェブサービス)のAPIです。そして国内のAmazonアソシエイト公式ページでAWSのAPIを取得してしまうとローカルのAPIが使えなくなる・・・というような仕様となっているようです。Amazonアソシエイトの商品を扱うプラグインを探していて「何だ使えないじゃん!!」と思った方はそのプラグインがどちらに対応しているのかを確認した方がいいと思います(マーケットプレイスに応じて・・みたいな説明書きのものはローカルのAPIに対応していると考えればいいと思います)。
脱線しました・・・(まあ必要な情報なので勘弁してくださいね)。
そしてCS SHOPの代替として使ったこのプラグインもなかなか設定が難しく、商品が表示されたりされなかったりなんて現象が起きたりしたのを何とか対処し、すべてのショートコードをコツコツ張り替えて運営していたもののやっぱりCS SHOPが恋しい・・・。
そんな中、なんとCS SHOPが更新された!!WordPress4.9.4に対応しましたという内容のアップデート。キターーーーー!!で再度インストールするもやっぱり動作せず・・・・。やっぱりあきらめるしかないのか??
そこでサーバーの問題だとしたらサーバーに聞くのが一番だろうということでドメインキングのサポートにダメ元で問い合わせしてみました。
内容はこんな感じ(本当に素人だなぁと思う内容です)
【お問い合わせ本文】
お世話になっております貴社サーバーにてWordPressでサイト運営をしております。
「CS Shop(https://wordpress.org/plugins/cs-shop/)」というプラグイン を以前から使用しており、php5.6では正常に動作していたのですが、7.0に変更したところ動作しなくなってしまいました。
エラー内容は
Notice: Undefined index: args in /var/www/vhosts/momosiri.info/httpdocs/wp-includes/functions.php on line 5149Warning: require_once(): open_basedir restriction in effect. File(/usr/local/php70/share/pear/Cache/Lite.php) is not within the allowed path(s): (/var/www/vhosts/momosiri.info/:/tmp/) in /var/www/vhosts/momosiri.info/httpdocs/wp-content/plugins/cs-shop/service-base.php on line 16
Notice: Undefined index: args in /var/www/vhosts/momosiri.info/httpdocs/wp-includes/functions.php on line 5149
Warning: require_once(/usr/local/php70/share/pear/Cache/Lite.php): failed to open stream: Operation not permitted in /var/www/vhosts/momosiri.info/httpdocs/wp-content/plugins/cs-shop/service-base.php on line 16
Fatal error: require_once(): Failed opening required ‘Cache/Lite.php'(include_path=’.:/usr/local/php70/share/pear’) in /var/www/vhosts/momosiri.info/httpdocs/wp-content/plugins/cs-shop/service-base.php on line 16
WordPressのバージョンは4.9.0です。その他のプラグインをすべて停止してみましたが改善されませんでした。
何か特別な設定等が必要なのでしょうか?
失礼ながら他社のサーバーでも同じプラグインを使用しており、そちらでは特に問題なく動作しております。
そのことから何らかのサーバーの設定等によるエラーかと考え、質問させていただきました。
対応策や設定のヒントなどお分かりになりましたらご返答いただけると幸いです。
最後の方失礼な内容ですよね~「ほかのサーバーでは動いてる」だって・・・。
こんな不躾な質問だから「何ら問題は発生していましぇーーーん」なんて素っ気ない回答が来るように思ってました(笑)。
そしたら
平素はドメインキングサービスをご利用いただき、誠にありがとうございます。
お問い合わせいただいた件について、ご回答申し上げます。
エラー文を確認する限りではございますが、PHP 設定の「open_basedir」にて制限がかかっているようでございます。
一度、こちらの設定をデフォルトに変更し動作確認をしていただきますようお願い申し上げます。
という返信とともに手順が書かれていました。
早速対応するもやっぱり・・・という結果。そこでもう一度返信してみることに
> 早速の回答ありがとうございます。ご提案いただいた通り処置してみましたがやはり状態は改善されませんでした。エラー内容も同じものが出力されます。他に要因が見つからないようであればこのプラグインの使用を控えようと考えております。
関連して今回行ったPHP 設定の「open_basedir」について、自身では全くカスタマイズした覚えがないのですが、この設定が変更となるのはどんな場合が考えられるのでしょうか??
今のところサイトは正常に表示されており問題ないように思われますが、このままの設定でいいのでしょうか?
これに対してもきっちり返信が来ました
平素はドメインキングサービスをご利用いただき、誠にありがとうございます。
お問い合わせいただいた件について、ご回答申し上げます。
下記の件でございますが、ご利用プラグインのエラーにつきましては詳細が分かりかねますため、お客さまには大変ご迷惑をお掛けしており
申し訳ございません。弊社でわかる範囲の確認とはなりますが、お客さまのサーバー上で動作検証を行わせていただいてもよろしいでしょうか。
お手数ではございますが、エラーが発生するURLをご連絡いただきますようお願い申し上げます。なお、PHP設定の「open_basedir」につきましては、通常はデフォルトの設定となっており、弊社側では変更はかけないものとなっております。
明確なご回答とはならず恐縮ではございますが、何卒ご容赦いただきますようお願い申し上げます。
ご検討いただき、ご返信をいただきますようお願い申し上げます。
お?何かテストしてくれるらしい。そこで外部にpingやRSS情報、サイトマップにも追加されない「お知らせ」投稿タイプでテスト記事を作成して返信しました
> 返信いただきありがどうございます。
サイト内のどの投稿タイプで行っても同じようになりますが、一応不具合の発生している投稿を作成しました(フロントエンド上では非表示にしてあります)
ページのURL
ちなみに他社のサーバー内で作成したサイトでは
参考ページのURL
な感じで表示されます(アマゾンと楽天の商品一覧が表示されます)
「open_basedir」の設定についてはやはり当方では全く変更した記憶がないのですが、自動インストールを行ったり、キャッシュ系のプラグインを使用したりすることでもこの項目が変更されることがあるのでしょうか??不思議な感じがします。
以上お手数おかけしますがよろしくお願いいたします。
そしてしばらくしたら返信が来ました
平素はドメインキングサービスをご利用いただき、
誠にありがとうございます。お問い合わせいただいた件について、ご回答申し上げます。
この度は何度もお問い合わせをいただき、お手数をかけしておりますこと心よりお詫び申し上げます。
下記プラグインの動作につきましては、弊社で過去にPHPのメンテナンスを行なっている事が原因でいまくプラグインが動作していなかったようでございます。
大変恐縮ではございますが、システムで調整をかけさせていただきましたので再度WordPressの動作を確認いただけますようお願い申し上げます。
また、「open_basedir」の設定につきましては、現時点で明確なご案内ができかんる状況ではございます。
恐れ入りますが、一旦は様子を見ていただき、また、不具合が発生しましたら再度、ご連絡をいただきますようお願い申し上げます。
また、ご不明点がございましたら、お気軽にお問合せ下さい。
システムの安定運用を心がけると共に、今後ともよりよいサービスにしていけるよう、努力してまいります。
今後とも、ドメインキングサービスをご愛顧くださいますようよろしくお願い申し上げます。
え??動くようになったの??うそ!?
で該当ページを見てみたら・・・キターーーーーー♪♪きちんと表示されているではありませんか!!
よくドメインキングの評判記事で「ヘルプの対応が・・」なんてのが書かれていることもあるし、プロの方なら「当たり前の対応では?」なんて言われそうですけど、本当に感謝!!でした。
ドメインキングを酷評されている記事を書かれている方、本当に対応してもらったことがあるのかな?しかもきちんとやり取りしたのかな?なんて疑問が湧く位本当にきちんと対応してくださいました。
月100円しか払ってないサーバーなのに・・・動作もきちんとしてるし、今のところドメインキング側でのサーバーエラーなんか発生してないし・・本当にいいサーバーだと感じた瞬間でした。
今後もずっとドメインキングを使っていきたいと思います。
とはいえもう一度CS SHOPのショートコードに張り替えかぁ・・・ちょっと憂鬱。
3月31日追記
商品一覧をCS SHOPへ戻す作業をしています。そういえば・・・共通のリストを表示する部分は
で一括管理にしたんだっけ。おかげで作業がグンと楽になりました(喜)。別のプラグインにしたときにこうしておいてよかったよかった。
4月1日 追記
やっぱりCS SHOPはいいですね。特にキーワード+並び順(人気順とか価格順とか)で件数指定して商品掲載できる機能は秀逸です。これはプラグイン検索すると有料のプラグインで有名な〇〇と同じ機能で、ざっくりいうと貼りっぱなしでメンテンナス不要、自動でその時のキーワードと条件に合ったものが表示されるんです。
代替で使ったAmazon Assosiate Link Builderなど通常のプラグインでは商品を選択して挿入する作業を投稿編集画面から簡単に検索できるだけですから挿入した商品に人気があるのか?価格がどうなのか?などのネタはほとんどなく、候補から自身で「これ」って載せるだけ。当然その商品が廃番などで販売休止になればぽっかり穴が開くなどリンク切れの状態となってしまいます。
商品決め打ちで紹介するサイトではこれでいいのかもしれませんけど、そうでないサイト(ほとんどそうでしょう)ではいかに今の時流に乗った商品をいかに手間なく維持できるかがポイント。そんなとき本当にCS SHOPはありがたいですね。
今切り替え作業をコツコツと進めていますけど、もうすでに成果が表れています。CS SHOPから他のプラグインにしたときにはガクッと成果が下がって低空飛行だったので本当に良かったです。・・・自身の商品の見極め能力が低いだけなのかもしれませんね・・・。
CS SHOPのいいところは楽天市場にも対応しているところ。楽天市場はAmazonと違っていろいろな方が出品する文字通り「市場」ですから商品がコロコロ変わることが多いのです。そんな環境で「これ」って商品を選定しても、すぐにリンク切れ・・・なんてことになるんですね。そうなると自動で切り替わる「モーションウィジェット」頼みになってしまってこちらもやはり成果が・・・。でもCS SHOPなら自動で今扱われている商品を掲載してくれるわけですからリンク切れともさよなら~です(キャッシュのタイミングによってはうまくいかないこともありますけど・・・)。
とにかく張り替え作業を進めていこうと思っています。