Php Opencart:每个国家或地区的价格不同?

Php Opencart:每个国家或地区的价格不同?,php,e-commerce,opencart,Php,E Commerce,Opencart,根据注册客户的国家/地区,每种产品可以有不同的价格吗?(我说的是底价,不是运费、税金或特价) 有什么想法或模块可以建议吗?没有这样的扩展,好吧,要求推荐这样的扩展是结束问题的一个原因。但可以通过以下方式实施: 检查IP地址-找到原产国(通过互联网上的许多免费/付费服务之一),并相应更改价格。这可能不是100%准确,因为用户可能使用代理,因此来自美国的用户最终可能拥有来自中国的IP 要求用户先登录,然后检查其发货/发票地址以获取国家/地区。考虑到用户可能有更多的发货地址(到不同的国家),或者他的发

根据注册客户的国家/地区,每种产品可以有不同的价格吗?(我说的是底价,不是运费、税金或特价)


有什么想法或模块可以建议吗?

没有这样的扩展,好吧,要求推荐这样的扩展是结束问题的一个原因。但可以通过以下方式实施:

  • 检查IP地址-找到原产国(通过互联网上的许多免费/付费服务之一),并相应更改价格。这可能不是100%准确,因为用户可能使用代理,因此来自美国的用户最终可能拥有来自中国的IP
  • 要求用户先登录,然后检查其发货/发票地址以获取国家/地区。考虑到用户可能有更多的发货地址(到不同的国家),或者他的发货地址和发票地址的国家可能不同,这也可能有一些黑客攻击
  • 通知用户价格取决于国家/地区,他们需要选择一个国家/地区(类似于语言/货币选择器的选择框),然后您可以相应地更改价格。然后必须检查所选国家/地区是否与装运/发票地址的国家/地区相同
  • 无论如何,所有的方法都需要一个巨大的修改-可能是后端的一个新模块来设置产品/国家的价格比(类似于货币),或者是修改产品的详细信息,以便能够为每个国家设置具体的价格(请记住,有数百个国家,所以可能只允许少数国家是明智的)当然,对前端进行了修改,以正确计算该国的价格


    我的观点:这是无用的浪费时间。。。在使用不同货币的比率时,您可以实现类似的行为(不同的国家-不同的货币-直到您想用欧元为欧盟国家/地区设置不同的价格).

    假设您的所有用户都已注册,并具有实际的账单或发货地址,您可以根据用户所在国家/地区轻松更改定价

    有三种方法可以解决这个问题。因为我假设您熟悉如何定制OpenCart,所以我将用最少的代码来布局指南。我还假设您的所有用户都已按照您的建议注册。 这些选择包括:

  • 客户群(简单但不推荐)
  • 向国家/地区表中添加价格比率列。(温和但推荐)
  • 覆盖您的货币(简单但有限的解决方案)
  • 使用客户群。

    您必须为每个国家(或大陆,如果您愿意)创建一个独特的客户群,并且在注册后,您将为用户分配正确的客户群。您可以通过更改注册模型和控制器文件自动执行此操作,也可以通过确保所有新客户都需要首先获得批准来手动执行此操作。 设置产品折扣时,可以为每个客户组设置不同的折扣。 这是一个很大的工作,将很难维持,但这是可能的

    请注意,默认情况下,客户将能够看到折扣前的基本价格(有时可能低于其客户组价格)。您可以编辑product.tpl或css文件并将其从显示中删除

    添加价格比率列

    第二种方法(我推荐的方法)是修改您的国家mysql表,并为每个国家添加一个固定的价格比率(即美国为1,英国为1.2,泰国为0.8等)。这将以固定比率更改所有产品的基本定价

  • 编辑数据库表“country”并添加名为“price_ratio”的列
  • 编辑模型和控制器文件以按价格*价格比计算有效价格
  • 将其发送到视图并显示有效价格
  • 您还需要修改您的管理员本地化/国家/地区模型、视图和控制器,以便您可以直接从管理员处更改价格比
  • 使用此方法,您只需更改一次价格比,所有价格都将更新(与第一种方法相反,您必须更改每个产品和每个国家/地区的价格)

    另外,从技术上讲,如果您对此不感兴趣,可以将所有价格比存储在代码中的关联数组中,并避免所有其他修改,但这将很难在以后进行修改

    使用货币

    第三种方法是覆盖您的货币,但这只会给您有限的控制权(即欧洲不同国家共享相同的货币,因此您不能显示不同的定价)


    希望这有帮助

    这是我发现的与您的问题相关的扩展列表

  • 按IP分配客户群(按D3MO)
  • 按GeoIP自动涨价/降价规则(按D3MO)
  • 还有另一个扩展,可以为每种货币设置不同的价格

  • 货币价格(ashwani_multi)
  • 我希望这些能帮助你。以下是这些扩展的链接


  • 那么,您打算如何区分每个国家的交通通信?你能查一下访客的IP地址吗?您是否需要先登录才能获得他们的国家/地区?您是否计划在他们登录后立即更改价格?是否要先显示初始屏幕以选择其原产国?是否有适用于您提到的任何案例的模块?假设他们登录时我会更改价格。但是,如果其他任何情况下存在解决方案,请给我一些指示…谢谢!这真的很有帮助!这是一个很好的实践,如果你在复制某人的答案(或部分答案),你会提到这一点,或者你根本不复制,而是指向与你有相同/相似想法的答案。。。那你就别光看了