包装成本
回答
OPTION 1
最好的方法是创建一个“自由文本字段(配置 - >免费文本字段管理),然后修改SQL查询中Storefrontsettings(配置 - >基本设置 - >前端 - >运输成本模块)。
它现在取决于您想如何改变它或包装成本是否相同。虽然我相信你可能想让他们依赖于产品的大小。
,所以你可以这样的事情:
//You put this code in the Shipping Costs Modules
MAX(a.topseller) AS has_topseller, MAX(at.attr3) AS has_comment
MAX(b.esdarticle) AS has_esd,
SUM(at.attr4*b.quantity)
这里最重要的部分是最后一行代码。
为了完成这项工作,您必须创建一个名为attr4的“自由文本字段”,然后在后端的文章详细信息(Items - > Overview - > Pen Symbol)中添加您希望的文章值。
然而,这个例子非常具体,因为你必须为每一篇文章都做,但这种方法对于几乎每一种情况都保持不变。
- 添加新的空白文本字段
- 编辑为它的价值在文章详细
- 修改在SQL“运费模块”
如果你懂德语,你还可以检出有该主题的文档here。
OPTION 2
在备选方案1的价格被刚添加到正常的运输成本。虽然如果你想让它们分开显示,我能想到的唯一方法就是创建一个小插件。
要从选项2开始,您必须创建一个自由文本字段。 你之后创造了它去收银台 - > cart_footer.tpl
有你加运费和总和这样你之间新增加的免费文本字段:
{block name='frontend_checkout_cart_footer_field_labels_shipping'}{/block}
{block name='frontend_checkout_cart_footer_field_labels_package}
{block name='frontend_checkout_cart_footer_field_labels_package_label'}
<div class="entry--label block">
Packaging Costs
</div>
{/block}
{block name='frontend_checkout_cart_footer_field_labels_package_label'}
<div class="entry--label block">
{s name="CartFooterLabelPackage"}{/s}
</div>
{/block}
{/block}
{block name='frontend_checkout_cart_footer_field_labels_total'}{/block}
这基本上是只为顾客看到他为包装支付的价格。
现在是插件创建的时候了。
你基本上需要做的就是创建一个本地插件,它提交了一些简单的SQL查询。
你创建了显示here
基本插件结构,然后修改它的结账/结束控制器上您操作INVOICE_AMOUNT:
public function addPackage()
{
$package = 2.5;
$select = "SELECT invoice_amount FROM s_attribute_configuration ORDER BY id DESC LIMIT 1";
$select_result = Shopware()->Container()->get('models')->getConnection()->fetchColumn($select);
$new_price = $select_result + $package;
$update = "UPDATE s_attribute_configuration SET invoice_amount = $new_price ORDER BY id DESC LIMIT 1"
$update_result = Shopware()->Db()->query($update);
}
类似的东西应该这样做。只需将其挂钩即可。
你现在最后一个问题是总金额在前端已经被更新了。我想你可以用一些Javascript来更新它。
OPTION 1.1
刚刚得到这个想法而选择2创建的PHP脚本:
就在OPTION 1的包装增加了运输成本等,然后加点运输费用下的信息包括(在此插入包装金额)的包装成本。你也可以用自由文本字段来做到这一点。将是最简单的解决方案,可以让你几乎完美地满足你的期望结果。
我希望这些帮助。
- 1. 彬Python的包装 - 打印总成本
- 2. Facebook包装文本
- 3. 组成,转发和包装
- 4. 成员变量包装器
- 5. TextView不包装成多行
- 6. 成本装饰者
- 7. 本地安装时的无关包装
- 8. 如何包装DynamicLayout文本?
- 9. CTFramesetterSuggestFrameSizeWithConstraints包装文本时
- 10. HTML文本包装盒
- 11. 用perl包装文本流
- 12. Python - “撤消”文本包装
- 13. PowerShell脚本安装nuget包
- 14. 包装注释文本
- 15. vim:包装显示文本
- 16. asp:表长文本包装
- 17. 用subprocess.Popen包装脚本()
- 18. 在PIL中包装文本
- 19. 用PHP包装大文本
- 20. Textview不包装文本
- 21. 安装的NodeJS包本地
- 22. 在记事本中包装++
- 23. 在pdf生成器中包装文本PHP
- 24. PAR包装器可以生成独立的脚本吗?
- 25. bin可变bin成本和大小的bin包装Python查询
- 26. 包装文本= “文本” 元件HTML/CSS
- 27. 重新包装硬包装文本的算法?
- 28. 最低成本的背包
- 29. C++自动生成包装boost :: make_shared
- 30. cmake手册页生成/打包/安装
谢谢@MLK的详细回复“+1”。在这种情况下,您将运输成本与包装成本相混合。但我想分开处理这些信息。任何信息都有单独的一行。顺便说一下,包装成本是包装成本(在德国,包装成本是Verpackungskosten werden pauschal berechnet)。这意味着包装费用不适用于任何订单。我感谢你的参考。我已经知道了,但它明确地说明了货运成本。你有什么想法,我怎么能分开处理。 –
什么是使您能够决定需求仅通过实现可能的插件的标准。 –
是的,这是正确的。随着我的解决方案,它数了。为了使它完全分离,你将不得不编写一个Shopware插件。首先,将自由文本字段插入checkout/cart.tpl中,以便它也可以显示在客户的前端。完成后,您可以制作一个简单的插件,通过mysqli/PDO/DBAL与数据库进行通信,并基本修改** s_order表**中的** invoice_amount **列。尽管如果您不熟悉PHP/DBAL和Shopware插件结构,这可能会有很多工作。 – MLK