我正在尝试将国家名称命名为"United States"(或缩写为"USA"/"US").我在下面尝试了很多变化:
echo Mage::getSingleton('customer/session')->getCustomer()->getCountry();
$countryName = Mage::getModel('directory/country')->load(Mage::getSingleton('customer/session')->getCustomer()->getCountry())->getName();
error_log("countryName = $countryName");
Run Code Online (Sandbox Code Playgroud)
第一个电话"似乎"起作用,因为我得到了6回(美国).但在那之后,我无法找到如何将其映射到正确的名称或slug.
我已经看过程序员获取所有国家名称和id的列表的帖子,但我不想迭代所有组合来查找名称.
TIA!
编辑:根据clockworkgeeks的建议,我试过:
$customer = Mage::getSingleton('customer/session')->getCustomer();
error_log(print_r($customer, true));
$countryCode = $customer->getDefaultBillingAddress()->getCountry();
Run Code Online (Sandbox Code Playgroud)
但是,第3行无法调用getCountry().也许getDefaultBillingAddress()不会返回对象.错误信息:
PHP Fatal error: Call to a member function getCountry() on a non-object in ...
Run Code Online (Sandbox Code Playgroud)
思考?$ customer对象正确返回,虽然CLASS是MYCLIENT_Customer_Model_Customer对象...也许它不会扩展正确的父对象以使其访问getCountry?
编辑:(解决方案):添加为答案.
对于我正在开发的网站,我希望它能说每个国家/地区有多少用户访问过我的网站,但我很好奇的是如何获取用户的国家/地区(来自他们的IP,可能?)?我已经四处寻找API了几个小时,但我找不到任何体面的东西.有没有人有任何建议?谢谢您的帮助 :).
我们只运送到28个欧盟国家+ EEA,并想知道是否有办法减少结账时的客户目前从全球列表中选择的结果列表.
非常感谢!
ps在"配置"菜单中选择"运送到特定国家/地区"没有太大区别.
我正在将一个电子商务网站转换为特定于区域(例如美国、欧盟)的网站,因此根据访问者将看到的内容,它基本上会感觉像是一个不同的网站,即使它实际上是一个网站(对于许多人来说)原因)。我网站上的大多数路径都将成为特定于区域的路径,通过在路径开头添加区域前缀,例如“/us/”(我可以转换所有路径,但如果它使它变得更加容易的话)。
我的计划:
中间件根据 1) 请求路径、2) 会话或 3) 根据 IP 地址的顺序猜测来识别区域,并将其设置在请求对象上。此外,一旦他们使用区域路径,它就会存储为会话值。通过这种方式,区域上下文可以跨非区域特定的 URL 传递。
特定于区域的 URL 模式必须更新以匹配区域,即使我已经在中间件中检测到该区域,因为逻辑比路径更复杂。尽管如此,出于下一个原因(反向),我必须将其作为参数并传递到我的所有视图中。此外,任何变为区域性的路径都将使其先前的模式301重定向到其区域性路径。
为了生成特定于区域的链接,我必须通过添加区域参数来更新对 reverse() 和 {% url %} 的许多调用。我希望这里有一些层可以自定义,以便在了解请求的情况下动态反转 URL。
我的主要问题是处理逆转的最佳方法(最后一个项目符号)。感觉像是做了很多不必要的工作。我愿意接受更好的方法来解决整体问题。
更新:
我认为这非常困难...我想给用户提供插入世界之城并查看其周围最近地震的可能性。问题是如何创建所有城市的输入列表。
在我的表单中,用户必须在插入国家之前:http : //jsfiddle.net/Dimcho/LUZvS/
<div class="datalist-holder">
<input list="country" name="country" class="datalist-input" />
<datalist id="country">
<option value="Afghanistan" />
<option value="Albania" />
<option value="Algeria" />
<option value="American Samoa" />
<option value="Andorra" />
//...
//...
</datalist>
</div>
Run Code Online (Sandbox Code Playgroud)
而且这个jsfiddle效果很好...
但是插入城市是一个大问题,怎么可能?如何找到世界上所有城市的纬度,经度和城市名称(含地区/省)的良好数据库?
无论如何,我无法在页面中插入所有城市,所以我曾想过使用来将单个国家/地区的城市加载到一个文件中javascript
。
是个好主意吗?
我想提出很多建议,最重要的是不要降低代码和页面速度的解决方案。表演很重要。
非常感谢,对不起我的英语
我经常去网站:http: //gadm.org 找到我想用R绘制的国家的轮廓.但今天,这个网站已关闭,我不知道如何继续准确地图...
当我尝试:
library(maps)
map("world", xlim=c(15,23), ylim=c(45.5,49))
Run Code Online (Sandbox Code Playgroud)
这个国家的轮廓不是很准确......
我试图找到一个可以给出轮廓的其他网站,但我没有找到.
有人可以帮帮我吗?