Webサイト構築情報 baserCMSテーマ画像表示されない

baserCMSで、一部テーマでテーマ設定によって、画像変更や追加をしても、表示されません。2~3日程度素行錯誤していましたが、どうやら原因をつかむことを出来ました。公式サイトでもすぐに情報を発見できなかったので、同様な方と、将来のリンク切れに備えるために、つまり未来の自分に対する備忘録です。こちらのサイトに情報がありました。

 引用すると「こんにちは、tommy6073です。
/theme/ratio_3_2/Helper/Ratio32Helper.php のget_main_image内の以下の部分を、

if ( $data['main_image_' . $args['num']] ) {
			$image_path = '/files/theme_configs/' . $data['main_image_' . $args['num']];
		} else {

以下のように書き換えることで表示されるようにできました。

if ( $data['main_image_' . $args['num']] ) {
			$image_path = $this->getBaseUrl() . 'files/theme_configs/' . $data['main_image_' . $args['num']];
		} else {

」とのことです。情報ありがとうございます。

また、本テーマの親切かつ詳細な情報はhttps://ratio32-baser.cms-skill.net/にあります。

 上記のtommy6073さんの対策に加えて、私の対処法で、完全な対策とできました。
具体的には、chownとchmodを追加対策として実施することでした。またchromeのキャッシュクリアとbaserCMS管理システムのキャッシュクリアは、画像変更や設定変更時のお約束です。
もし、パーミッション変更を忘れていると、下記のようなワーニングを吐かれてしまいます。

Warning (2): move_uploaded_file(/var/www/html/basercms_dir/files/theme_configs/main_image_1.jpg): failed to open stream: 許可がありません [CORE/Baser/Model/ThemeConfig.php, line 71]

念のために下記します。
 上記のtommy6073さんの対策前後に以下を実施します。
(※ 以下 basercms_dirは、今回設置しているサブディレクトリー名です。)
 sudo chown -R www-data:www-data basercms_dir
 sudo find basercms_dir -type d -exec chmod 707 {} +
 sudo find basercms_dir -type f -exec chmod 606 {} +
 恐らく、chownは、不要ですが、オーナーを混在したままにしておくのも、気持ち悪いので、実施しています。

この下に経緯を残しておきます。
 テーマ設定で画像変更と追加を反映してくれないのは、LinuxMint(LAMP)ローカルサーバーによる、テスト環境です。LOLIPOPレンタルサーバーでは、全く問題とならなかったので、LOLIPOPと比較検討をします。
 そこで、気づいたのは、オーナーとパーミッションの違いです。ローカルサーバーでは、インストール時に、www-dataと自分(オーナー)とが混在していました。そこで、まず下記のコマンドを打ち込んでみます。
(※ 以下 basercms_dirは、今回設置しているサブディレクトリー名です。)
 sudo chown -R www-data:www-data basercms_dir
これでオーナーをwww-dataに統一することが出来ました。その結果、Theme ratio_3_2logoを表示してくれました。一歩前進したようです。さらに、ローカルサーバーとLOLIPOPとファイル、ディレクトリーのパーミッションを比較します。かなり違いがあったので、同様にしました。
 sudo find basercms_dir -type d -exec chmod 707 {} +
sudo find basercms_dir -type f -exec chmod 606 {} +
先ず、一括でパーミッション変更をしてから、一部パーミッションの違うinstall.iniファイルなどを、ローカルサーバーとLOLIPOPとを同様にしていきます。残念ながら、状況に違いはありませんでした。
 そこで、データーベースなどに、ごみが残っているのかもと考え、インストールを何度か繰り返して、様々な組み合わせで、試行錯誤をしました。しかしながら、残念なことに状況を改善できず、原因把握も出来ません。
 ただ、収穫もありました。以前の投稿で紹介した「基礎から学ぶbaserCMS」にあるように、gitで落としてくるのと、baserCMS公式サイトより、落としてくるのとでは、ディレクトリー構成が違うことでした。
 特にwebrootディレクトリー有無の違いは大きかったです。トラブル対処情報を入手した時に、変更すべきファイル位置を読み替えることを気づかせてくれました。予想していたバージョン違いではなかったのです。
 途方に暮れたときに、ユーザーズフォーラムを再度調査することで、先の情報をやっと見つけました。
 他のテーマでも、画像表示がうまくいかないものがあり、調査のヒントになります。

ご参考になれば、幸いです。

Follow me!

コメントを残す

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

CAPTCHA