■ユーザーズフォーラム リニューアルのお知らせ
新規投稿は新ユーザーズフォーラムにお願いします。

Google Maps を読み込めません。

ftbfg > Google Maps を読み込めません。 @ 2013/4/8 11:38
BaserCMSバージョン: 1.6.15 、レンタルサーバ Heteml です。
「Google Maps を読み込めません。管理画面で正しい住所が設定されているか確認してください。」の
表示が出ます。修正方法を教えてください。
ftbfg です。よろしくお願いします。
GUSSAN > Re: Google Maps を読み込めません。 @ 2013/4/8 12:14
こちらと同じ件ではないでしょうか?
http://project.e-catchup.jp/issues/3606

baserCMSバージョン: 3.0.16
PHP:5.5
スマートURL: ON
レンタルサーバー名:lolipop
設置フォルダ:サブフォルダ
セーフモード:Off
データベース: MySQL
PHPスキル:D

ftbfg > Re: Google Maps を読み込めません。 @ 2013/4/8 13:07
BaserCMSバージョン: 1.6.15 では bc_gmaps.php ではなく gmaps.php です。
gmaps.php の修正版はどうすれば入手できるのでしょうか。
よろしくお願いします。
GUSSAN > Re: Google Maps を読み込めません。 @ 2013/4/9 12:48
当て外れのコメントで、申し訳ありません。
以下の件は、参考にならないでしょうか?
小職は、以下を参考にページ内で直接、緯度経度記述して表示させていました。
ご参考になれば良いのですが。
http://forum.basercms.net/modules/newbb/viewtopic.php?viewmode=flat&topic_id=314&forum=9

baserCMSバージョン: 3.0.16
PHP:5.5
スマートURL: ON
レンタルサーバー名:lolipop
設置フォルダ:サブフォルダ
セーフモード:Off
データベース: MySQL
PHPスキル:D

ba_user > Re: Google Maps を読み込めません。 @ 2013/7/4 15:48
さっぱり解決されません。
バージョン1.6の対策は一切されないということなのでしょうか。
bakcms > Re: Google Maps を読み込めません。 @ 2013/7/9 20:24
これでbaserCMSが過去バージョンのユーザーには全く対応しないことが分かった。
企業ユーザーが簡単にバージョンアップできないことも理解できないならコーポレートサイトに最適なCMSとか言うな。
より多くの企業やWEB制作関係者に「baserCMS」を利用しないようにと伝える必要がある。
goichi > Re: Google Maps を読み込めません。 @ 2013/7/11 0:07
こんにちは(^^

何はともあれ、誤解部分があるようなので、少しだけそこに触れておきます。
baserCMSはオープンソースで、その動作の保証について全くの無担保です。これは、他のオープンソースのソフトウェアも同様です。このフォーラムも、ボランティアで、皆さんが善意で書き込んで回答しています。まず、その点をご理解ください。

そして、『過去バージョンのユーザーには全く対応しない』と言われる部分、これは少し視点を変えてみると、分かりやすいかも知れません。過去のバージョンで問題があったり、改善の余地があった場合、それを使っているユーザーに対応するからこそ、バージョンアップが行われます。過去の問題に対応すればするほど、バージョンが変わ上がります。『過去のバージョン』が存在しているということは、つまりbaserCMSの開発者さん達が、それだけ対応してきたという事です。『全く対応しない』というのは、少し誤解があるようです。(実際、このGoogleMapが表示されない問題が起こった際、かなり早い対応がされたと思いますよ〜!)

ただ、当たり前ですが、通常、問題が起きた時点での現行バージョンに対して、優先的な修正が加えられます。これはどんなソフトウェアでもそうだと思います。例えばPHPだって、古いバージョンはサポートが切れたりしますよね、それと同じです。まして、バグでもなんでもなく、後発的なGoogleMap側の仕様変更なわけで、しかも、このスレッド内にも、回避策(ページ内で直接、緯度経度記述して表示)が載っており、ついでにいうと、baserCMSの仕様なんか無視して、GoogleMapのコードをコピペして貼り付けるだけで、もう解決できるような問題です。優先順位は低くなると思います。

今、おっしゃっている『過去のバージョン』というのは1.6系統だと思います。
引用:
企業ユーザーが簡単にバージョンアップできないことも理解できないなら

『簡単に』というのが、技術的な意味あいかどうか分かりませんが、baserCMSのアップデートは結構親切だと思います(WordPress程じゃないにせよ)。少なくとも、毎回、新しいバージョンがリリースされる度に、アップデート方法が掲載されていると思います(私も長らくここのフォーラムを見ていますが、アップデートよりも、インストールでつまずく方の方が多い印象です。でもまぁ、簡単インストールなんかも出来るようになってますんで、それももう少なくなっていくのかなーと。)。
もしも、『簡単に』というのが技術的な問題であるなら、むしろ「アップデートが上手く出来ない」という旨のスレッドを立ててみると良いかも知れません(ただし動作環境をしっかり書いて下さい。今回、回答がつきにくかったのは、環境や状況がほとんど不明だったのもあると思うのです)。きっとその方が建設的ですし、GoogleMapの問題を抜きにしても、確実に貴方が管理しているホームページに有益だと思います。(^^
少なくとも、オープンソースのCMSを使おうとお考えになるくらいなので、ごくごく一般的な企業のホームページ担当者さんより、知識や技術をお持ちだと思います。普通にアップデートできると思います。

引用:
より多くの企業やWEB制作関係者に「baserCMS」を利用しないように

この辺りは、その企業の担当者さんの好みや、ホームページの目的、制作の予算なんかで判断されるところで、その企業のニーズにあったCMSが他にあれば、それが選ばれてるのが現状だと思います。baserCMSの関係者の方でも、必要に応じて使い分けてるはずで、まぁ、それがクライアントさんの為にもなるのだと思います。

それと、最後になっちゃいましたが(すみません、これが本題です・・・)、1.6系統をお使いの場合でも、gmaps.phpを現行のbc_gmaps.phpと比較して、数行の差分を反映すれば動くと思います。具体的には、
/baser/controllers/components/gmaps.php
を以下の内容で上書きすればイケると思います。(ただし、バックアップをとってから作業して下さい。いかんせん、環境や細かいバージョンが分かりませんので、確認のしようもなく。)
<?php
/* SVN FILE: $Id$ */
/**
 * GoogleMap コンポーネント
 *
 * PHP versions 4 and 5
 *
 * BaserCMS :  Based Website Development Project <http://basercms.net>
 * Copyright 2008 - 2011, Catchup, Inc.
 *								9-5 nagao 3-chome, fukuoka-shi
 *								fukuoka, Japan 814-0123
 *
 * @copyright		Copyright 2008 - 2011, Catchup, Inc.
 * @link			http://basercms.net BaserCMS Project
 * @package			cake
 * @subpackage		cake.app.controllers.components
 * @since			Baser v 0.1.0
 * @version			$Revision$
 * @modifiedby		$LastChangedBy$
 * @lastmodified	$Date$
 * @license			http://basercms.net/license/index.html
 */
/**
 * defines
 */
define('MAPS_HOST', 'maps.googleapis.com');
/**
 * GoogleMap コンポーネント
 *
 * @package			cake
 * @subpackage		cake.app.controllers.components
 */
class GmapsComponent  extends Object {
/**
 * Latitude
 *
 * @var double
 */
	var $_latitude;
/**
 * Longitude
 *
 * @var double
 */
	var $_longitude;
/**
 * Address
 *
 * @var string
 */
	var $_address;
/**
 * Country name
 *
 * @var string
 */
	var $_countryName;
/**
 * Country name code
 *
 * @var string
 */
	var $_countryNameCode;
/**
 * Administrative area name
 *
 * @var string
 */
	var $_administrativeAreaName;
/**
 * Postal Code
 *
 * @var string
 */
	var $_postalCode;
/**
 * Base Url
 *
 * @var string
 */
	var $_baseUrl;
/**
 * Construct
 */
	function __construct () {
		$this->_baseUrl= "http://" . MAPS_HOST . "/maps/api/geocode/xml?";
	}
/**
 * getInfoLocation
 *
 * @param string $address
 * @param string $city
 * @param string $state
 * @return boolean
 */
	function getInfoLocation ($address) {
		if (!empty($address)) {
			return $this->_connect($address);
		}
		return false;
	}
/**
 * connect to Google Maps
 *
 * @param string $param
 * @return boolean
 */
	function _connect($param) {

		$request_url = $this->_baseUrl . "sensor=false&language=ja&address=" . urlencode($param);
		App::import('Xml');
		$Xml = new Xml($request_url);
		$xmlArray = Set::reverse($Xml);

		$xml = $xmlArray['GeocodeResponse'];

		if (! empty($xml['Result'])) {
			if(!isset($xml['Result']['Geometry']['Location'])) {
				return false;
			}

			$point= $xml['Result']['Geometry']['Location'];
			if (! empty($point)) {
				$this->_latitude = $point['lat'];
				$this->_longitude = $point['lng'];

			}
			/*
			$this->_address= $xml['Response']['Placemark']['address'];

			if(isset($xml['Response']['Placemark']['AddressDetails'])) {
				$this->_countryName= $xml['Response']['Placemark']['AddressDetails']['Country']['CountryName'];
				$this->_countryNameCode= $xml['Response']['Placemark']['AddressDetails']['Country']['CountryNameCode'];
				if(!empty($xml['Response']['Placemark']['AddressDetails']['Country']['AdministrativeArea']['AdministrativeAreaName'])) {
					$this->_administrativeAreaName= $xml['Response']['Placemark']['AddressDetails']['Country']['AdministrativeArea']['AdministrativeAreaName'];
				}
				if(!empty($xml['Response']['Placemark']['AddressDetails']['Country']['AdministrativeArea'])) {
					$administrativeArea= $xml['Response']['Placemark']['AddressDetails']['Country']['AdministrativeArea'];
				}
			}

			if (!empty($administrativeArea['SubAdministrativeArea']['Locality']['PostalCode']['PostalCodeNumber'])) {
				$this->_postalCode= $administrativeArea['SubAdministrativeArea']['Locality']['PostalCode']['PostalCodeNumber'];
			} elseif (!empty($administrativeArea['Locality']['PostalCode']['PostalCodeNumber'])) {
				$this->_postalCode= $administrativeArea['Locality']['PostalCode']['PostalCodeNumber'];
			}
			*/
			return true;
		} else {
			return false;
		}
	}
/**
 * get the Postal Code
 *
 * @return string
 */
	/*function getPostalCode () {
		return $this->_postalCode;
	}*/
/**
 * get the Address
 *
 * @return string
 */
	/*function getAddress () {
		return $this->_address;
	}*/
/**
 * get the Country name
 *
 * @return string
 */
	/*function getCountryName () {
		return $this->_countryName;
	}*/
/**
 * get the Country name code
 *
 * @return string
 */
	/*function getCountryNameCode () {
		return $this->_countryNameCode;
	}*/
/**
 * get the Administrative area name
 *
 * @return string
 */
	/*function getAdministrativeAreaName () {
		return $this->_administrativeAreaName;
	}*/
/**
 * get the Latitude coordinate
 *
 * @return double
 */
	function getLatitude () {
		return $this->_latitude;
	}
/**
 * get the Longitude coordinate
 *
 * @return double
 */
	function getLongitude () {
		return $this->_longitude;
	}
}
?>


どうでしょうか。お試し下さい。
ログイン
ユーザー名:
パスワード:


  新規登録 / パスワード紛失

検索

facebook
フォーラムで悩みが解決した場合など、よかったら「いいね!」をポチっとクリックしてください!質問の回答者や開発者の励みになります

フォーラムガイド


関連リンク

オンライン状況
13 人のユーザが現在オンラインです。 (11 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 13