Prestashop将tpl转换为php

时间:2015-01-27 22:33:34

标签: prestashop

我有一个问题,我有一个聪明的代码,但我必须把它放在一个模块中的一个php文件中,但我不知道该怎么做。 这个模块中的我可以在包的总宽度中接收m.in。

{$ db = Db :: getInstance()}

            {$flag = 0}
            {foreach $products as $product}
                {$flag = $flag + 1}
                {assign var='productId' value=$product.id_product}

                {*Height*}
                {$sql = "SELECT height FROM ps_product WHERE id_product = $productId"}
                {assign var='height' value=$db->getValue($sql)}
                {*/Height*}

                {*Width*}
                {$sql = "SELECT width FROM ps_product WHERE id_product = $productId"}
                {assign var='width' value=$db->getValue($sql)}
                {*/Width*}

                {*DEPTH*}
                {$sql = "SELECT depth FROM ps_product WHERE id_product = $productId"}
                {assign var='depth' value=$db->getValue($sql)}
                {*/DEPTH*}

                {assign var='quantity' value=$product.cart_quantity-$quantityDisplayed}
                {assign var='capacity' value=$height*$width*$depth}

                {$Arrayquantity.$flag = $quantity}
                {$ArrayCapacity.$flag = $capacity}
                {$weight = $cart->getTotalWeight()|escape:'htmlall':'UTF-8'|number_format:2}
            {/foreach}

            {$capacity = 0}
            {foreach $ArrayCapacity as $key => $value}
                {$capacity = $capacity + $value*$Arrayquantity[$key]/1000000}
            {/foreach}

1 个答案:

答案 0 :(得分:0)

哦,伙计,你真的不知道它是如何运作的。您需要检查控制器如何将变量分配给模板,如何{assign}在Smarty中工作......整个代码应该在控制器或模块中,并且您需要使用$ this-> context->为视图分配值。 smarty->分配

我强烈建议您查看一些默认模块,看看它是如何工作的。