首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Magento和Google Trusted Store实现- Google返回数据集中的额外小数

Magento和Google Trusted Store实现- Google返回数据集中的额外小数
EN

Stack Overflow用户
提问于 2015-02-19 01:43:51
回答 1查看 484关注 0票数 0

我正在尝试在我的Magento 1.9 CE网站中完成Google Trusted Store的集成。我目前已经正确地实现了徽章,并通过了所有测试。我遇到的问题是确认脚本中的美元金额。我收到了格式错误的错误,并且从一个错误到另一个错误,格式不一致。我已经尝试了几个不同的php代码片段来从不同的地方提取美元金额(过于复杂的主题),但似乎都不起作用。以前有没有人遇到过这种情况?

严重错误1:不正确的数字格式:“gts-o-tax- total”修复方法:在谷歌可信商店订单确认JavaScript代码的“gts-o-shipping-total”字段中提供与订单关联的总税额时,请遵循所需的格式。必填格式:“123.45”您的值:“1.6500”。

严重错误2:不正确的值格式:“gts-i- price”修复方法:在谷歌Trusted Stores订单确认JavaScript代码的“gts-i-price”字段中提供与订单关联的项目价格时,请遵循所需的格式。必填格式:“123.45”,取值:“19.9900,0.0000”。

大多数错误显示为第一个,小数点后仅多出两位。"gts-i-price“是我无法理解的东西。

下面是我的success.phtml页面中的代码。在尝试了其他几个脚本后,我在SE上发现了以下内容:

代码语言:javascript
运行
复制
<?php
    $orderId = $this->getOrderId();
    $order = Mage::getModel('sales/order')->loadByIncrementId($orderId);
    $customer = Mage::getModel('customer/customer')->load($order->getCustomerId());
    $address = $order->getShippingAddress();
    $backorder = false; // some backorder logic
    $download = false; // some download logic
    $shipDate = new Zend_Date(); // some logic to determine ship date
?>
<div id="gts-order" style="display:none;" translate="no">

  <!-- start order and merchant information -->
  <span id="gts-o-id"><?php echo $orderId; ?></span>
  <span id="gts-o-domain">www.mywebsite.com</span>
  <span id="gts-o-email"><?php echo $email = $customer->getData('email'); $email_address2 = $address->getEmail(); if($email=="") $email = $email_address2; ?></span>
  <span id="gts-o-country">US</span>
  <span id="gts-o-currency">USD</span>
  <span id="gts-o-total"><?php echo $order->getGrandTotal(); ?></span>
  <span id="gts-o-discounts">-<?php echo $order->getDiscountAmount(); ?></span>
  <span id="gts-o-shipping-total"><?php echo $order->getShippingAmount(); ?></span>
  <span id="gts-o-tax-total"><?php echo $order->getTaxAmount(); ?></span>
  <span id="gts-o-est-ship-date"><?php echo $shipDate->toString('yyyy-MM-dd'); ?></span>
  <span id="gts-o-est-delivery-date">ORDER_EST_DELIVERY_DATE</span>
  <span id="gts-o-has-preorder">N</span>
  <span id="gts-o-has-digital">N</span>
  <!-- end order and merchant information -->

  <!-- start repeated item specific information -->
  <!-- item example: this area repeated for each item in the order -->
  <?php foreach ($order->getAllItems() as $item): ?>
  <span class="gts-item">
    <span class="gts-i-name"><?php echo htmlentities($item->getName()); ?></span>
    <span class="gts-i-price"><?php echo $item->getBasePrice(); ?></span>
    <span class="gts-i-quantity"><?php echo (int)$item->getQtyOrdered(); ?></span>
    <span class="gts-i-prodsearch-id">SKU</span>
    <span class="gts-i-prodsearch-store-id">000000</span>
    <span class="gts-i-prodsearch-country">US</span>
    <span class="gts-i-prodsearch-language">en</span>
  </span>
  <?php endforeach; ?>


</div>
EN

回答 1

Stack Overflow用户

发布于 2015-03-17 11:07:36

不知道我是否能帮上忙,但我也在努力完成这项工作。我已经联系了谷歌,他们给我发来了这个专门针对Magento的代码片段:

代码语言:javascript
运行
复制
<?php
// Obtain order variables with Magento functions
$orderId = $this->getOrderId();
$order = Mage::getModel('sales/order')->loadByIncrementId($orderId);
$customer = Mage::getModel('customer/customer')->load($order->getCustomerId());
$address = $order->getShippingAddress();
?>
<!-- START Google Trusted Stores Order -->
<div id="Google Trusted Stores-order" style="display:none;" translate=”no”>
<!-- start order and merchant information -->
<span id="Google Trusted Stores-o-id"> <?php echo $orderId; ?> </span>
<span id="Google Trusted Stores-o-domain"> MERCHANT_ORDER_DOMAIN </span>
<span id="Google Trusted Stores-o-email"> <?php echo
htmlentities($customer->getEmail()); ?> </span>
<span id="Google Trusted Stores-o-country"> <?php echo
htmlentities($address->getCountryId()); ?> </span>
<span id="Google Trusted Stores-o-currency"> CURRENCY </span>
<span id="Google Trusted Stores-o-total"> <?php echo $order->getGrandTotal(); ?> </span>
<span id="Google Trusted Stores-o-discounts"> -<?php echo $order->getDiscountAmount();
?> </span>
<span id="Google Trusted Stores-o-shipping-total"> <?php echo
$order->getShippingAmount(); ?> </span>
  <span id="Google Trusted Stores-o-tax-total"> <?php echo $order->getTaxAmount();
?> </span>
<span id="Google Trusted Stores-o-est-ship-date"> ORDER_EST_SHIP_DATE </span>
<span id="Google Trusted Stores-o-est-delivery-date"> ORDER_EST_DELIVERY_DATE </span>
<span id="Google Trusted Stores-o-has-preorder"> HAS_BACKORDER_PREORDER </span>
<span id="Google Trusted Stores-o-has-digital"> HAS_DIGITAL_GOODS </span>
<!-- end order and merchant information -->
<!-- start repeated item specific information -->
<?php foreach ($order->getAllItems() as $item): ?>
<span class="Google Trusted Stores-item">
<span class="Google Trusted Stores-i-name"> <?php echo htmlentities($item->getName());
?> </span>
<span class="Google Trusted Stores-i-price"> <?php echo $item->getBasePrice(); ?> </span>
<span class="Google Trusted Stores-i-quantity"> <?php echo (int)$item->getQtyOrdered();
?> </span>
</span>
<?php endforeach; ?>
<!-- end repeated item specific information -->
</div>
<!-- END Trusted Stores -->

他还说:

要触发OCM代码,以下所有变量都是必需的。请参考Order level variables here

代码语言:javascript
运行
复制
<span id="Google Trusted Stores-o-est-ship-date">ORDER_EST_SHIP_DATE</span>
<span id="Google Trusted Stores-o-est-delivery-date">ORDER_EST_DELIVERY_DATE</span>
<span id="Google Trusted Stores-o-has-preorder"> HAS_BACKORDER_PREORDER </span>
<span id="Google Trusted Stores-o-has-digital"> HAS_DIGITAL_GOODS </span>

我根据需要更改了变量,但对我来说,我甚至不能像OCM那样得到错误消息,所以我不知道这些代码是否正确,但可能是针对其他人的。

我相信你已经看过所有这些信息了,但我也需要一个答案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28590260

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档