PrestaShop是一个基于PHP,Smarty模板引擎和MySQL的免费开源电子商务店面/购物车解决方案。
我想在 PrestaShop 1.7.7.0 的订单表网格中添加一个新列。 目前,我只设法添加一个新列,该列根据 SQL 查询获取其值(代码如下)。 然而,我需要
如何在 Prestashop 1.7 中更改代码中的模块位置?
我实际上在 Prestashop 1.7 中学习了模块编程....辛苦但真的很好。 所以,当我安装第一个模块时, 公共函数 install() { if (Shop::isFeatureActive()) { 店铺::
参考:如何删除 prestashop 1.7 上的送货步骤? 我想完全禁用结帐订单流程中的地址步骤,因为我只销售数字产品,而不是
我希望在 AdminStats 中显示状态订单。我创建了文件 override/controllers/admin/AdminStatsController.php: 我希望在 AdminStats 中显示状态订单。我创建了文件 override/controllers/admin/AdminStatsController.php: <?php // Check order status in Stats Dashboard BO class AdminStatsController extends AdminStatsControllerCore { public function __construct() { parent::__construct(); $this->fields_list['order_statuses'] = array('title' => $this->l('Order Status'); } } 但是当我进入 AdminStats 时,会出现一个空白页面(见下图)。 有什么建议吗? 编辑:这不是所提问题的解决方案。 我也会做同样的事情。我做了类似的事情,但它是AdminOrdersController,但几乎是一样的。在这里, // override/controllers/admin/AdminStatsController.php <?php public function __construct() { parent::__construct(); $this->fields_list = array_merge($this->fields_list, [ 'order_statuses' => [ 'title' => $this->l('Order Status'), 'align' => 'text-center', 'callback' => 'orderStatusFunction', // yes, a callback to get a piece of UI back, a button maybe 'orderby' => false, // or true, anything you'd like 'search' => false, 'remove_onclick' => true, ] ]); } } 现在回调 <?php public function orderStatusFunction($row_number, $row_data) // row_data like date, order, customer, etc { /* do stuff with data and assign to your template */ $view = _PS_MODULE_DIR_ . 'path/to/view/file/view.tpl'; $html = $this->context->smarty->createTemplate($view, $this->context->smarty)->fetch(); return $html; } 如果您有任何困惑,或者如果没有成功,请告诉我。
prestashop - 在 AdminStats 中显示订单状态
我希望在 AdminStats 中显示状态订单。我创建了文件 override/controllers/admin/AdminStatsController.php: 我希望在 AdminStats 中显示状态订单。我创建了文件 override/controllers/admin/AdminStatsController.php: <?php // Check order status in Stats Dashboard BO class AdminStatsController extends AdminStatsControllerCore { public function __construct() { parent::__construct(); $this->fields_list['order_statuses'] = array('title' => $this->l('Order Status'); } } 但是当我进入 AdminStats 时,会出现一个空白页面(见下图)。 有什么建议吗? 编辑:这不是所提问题的解决方案。 我也会做同样的事情。我做了类似的事情,但它是AdminOrdersController,但几乎是一样的。在这里, // override/controllers/admin/AdminStatsController.php <?php public function __construct() { parent::__construct(); $this->fields_list = array_merge($this->fields_list, [ 'order_statuses' => [ 'title' => $this->l('Order Status'), 'align' => 'text-center', 'callback' => 'orderStatusFunction', // yes, a callback to get a piece of UI back, a button maybe 'orderby' => false, // or true, anything you'd like 'search' => false, 'remove_onclick' => true, ] ]); } } 现在回调 <?php public function orderStatusFunction($row_number, $row_data) // row_data like date, order, customer, etc { /* do stuff with data and assign to your template */ $view = _PS_MODULE_DIR_ . 'path/to/view/file/view.tpl'; $html = $this->context->smarty->createTemplate($view, $this->context->smarty)->fetch(); return $html; } 如果您有任何困惑,或者如果没有成功,请告诉我。
在PRESTASHOP 1.6.3中使用HelperForm时添加隐藏值或将值插入到不向用户公开的字段
在PRESTASHOP 1.6.3中使用HelperForm类时,如何添加隐藏值或插入值到不向用户公开的字段,例如date_add和date_upd 我创建了一个新模块...
如何让Prestashop按标签或标题展示特色产品? 我不想手动添加很多产品,我想通过标签或标题来添加。
我需要在 Prestashop 中传递一个带有翻译字符串的变量。在后端可以这样做 sprintf($this->l('数字是%1$d'), $number); 但我需要在前面做这件事...
我在为产品数据创建 XML 导出时遇到问题。 我使用的PrestaShop版本是1.7.3.1 我们的设置: 一个站点 xyz.com,我们为我们的国家/地区提供不同的路线 .com/de 和 .co...
在我的 Prestashop 上,我在某些产品选项卡中使用 YouTube 视频。这是一个例子: 在我的 Prestashop 上,我在某些产品选项卡中使用 YouTube 视频。这是一个例子: <ul id="tabvideos" class="video_cols_6"> <li id="thumb_video_118" class="video_link"> <a id="video_link_1" class="videocenter" href="https://www.youtube-nocookie.com/embed/ehzbdk" title="Vidéo: e" data-video-id="zdsdsdsd" data-video-player="youtube" data-video-title=""><img class="img-responsive" src="https://i.ytimg.com/vi/TLHyVedfdsssdsdnOzs10/hqdefault.jpg" alt="e vidéo" title="e vidéo"> </a> </li> </ul> 我们使用一个模块,并且应该激活自动播放。似乎以前的开发人员已经在某处集成了一些脚本来取消此操作。 如何让网站上所有YT视频自动播放? 首先找到取消自动播放的脚本。它可以位于您的主题文件、自定义模块中或直接嵌入 Pretashop 后端。 找到脚本后,寻找如下所示的代码 src="https://www.youtube-nocookie.com/embed/ehzbdk" 然后将其替换为: src="https://www.youtube-nocookie.com/embed/ehzbdk?autoplay=1" 但是如果您无法找到脚本,我认为最好联系以前的开发人员。
如果送货或帐单地址位于加利福尼亚州,我们希望收取税费。 总而言之,如果出现以下情况,则应征税: 送货地址是加利福尼亚州 帐单地址是加利福尼亚州 如果出现以下情况,请勿征税
我有来自 prestashop 文件的 PPH 语法: 我有来自 prestashop 文件的 PPH 语法: <select name="deadline" id="deadline" onclick="dead_line_all()"> <option value="235959" selected="selected">'.$this->l('NONE').'</option>'; for($hours=0; $hours<24; $hours++) for($mins=0; $mins<60; $mins+=30) $this->_html .= ' <option value="'.str_pad($hours,2,'0',STR_PAD_LEFT).''.str_pad($mins,2,'0',STR_PAD_LEFT).'00"> '.str_pad($hours,2,'0',STR_PAD_LEFT).':'.str_pad($mins,2,'0',STR_PAD_LEFT).' </option>'; $this->_html .= ' </select> 如何在smarty模板(xxx.tpl)中改成smarty语法? 有两种方法可以做到这一点。 首先简单地将这个选择的html分配给php文件中的smarty变量并在xxx.tpl中打印 PHP 文件 $this->_html .= '<select name="deadline" id="deadline" onclick="dead_line_all()">';' $this->_html .= '<option value="235959" selected="selected">'.$this->l('NONE').'</option>'; for($hours=0; $hours<24; $hours++){ for($mins=0; $mins<60; $mins+=30){ $this->_html .= '<option value="'.str_pad($hours,2,'0',STR_PAD_LEFT).''.str_pad($mins,2,'0',STR_PAD_LEFT).'00">'.str_pad($hours,2,'0',STR_PAD_LEFT).':'.str_pad($mins,2,'0',STR_PAD_LEFT).'</option>'; } } $this->_html .= '</select>'; $smarty->assign('select',$this->_html); xxx.tpl 模板文件 {$select} 这将打印模板文件中选择的 html。 2.php 文件中的第二个选项在模板文件中分配所需的变量和其余代码 $smarty->assign('none',$this->l('NONE')); xxx.tpl 文件 <select name="deadline" id="deadline" onclick="dead_line_all()"> <option value="235959" selected="selected">{$none}</option> {for $hour=0 to 24} <option value="{$hour|str_pad:2:0:STR_PAD_LEFT}:30">{$hour|str_pad:2:'0'}:30</option> <option value="{$hour|str_pad:2:0:STR_PAD_LEFT}:60">{$hour|str_pad:2:'0'}:60</option> {/for} </select> 您还需要为 str_pad 函数创建新的 smarty 修饰符插件。 <select name="deadline" id="deadline" onclick="dead_line_all()"> <option value="235959" selected="selected">{$none}</option> {for $hour=0 to 24} <option value="{$hour|str_pad:2:0:STR_PAD_LEFT}:30">{$hour|str_pad:2:'0'}:30</option> <option value="{$hour|str_pad:2:0:STR_PAD_LEFT}:60">{$hour|str_pad:2:'0'}:60</option> {/for} </select> 有关添加修饰符的更多信息 https://smarty-php.github.io/smarty/stable/api/extending/modifiers/
如果用户在 Prestashop 1.7 中选择商店提货,则强制执行某些税收规则
如果用户选择“商店提货”作为运输公司,我想对产品征税。这是我的场景: A 州:税 5% B 州:税 3% 该州其他地区:0%。 现在,如果有人
SQLSTATE[42S02]:未找到基表或视图:1146 表“demostore.ps_bids”不存在
我创建了一个updatebids.php,在这种情况下,如果一定数量的用户共享相同的赌注,则必须更新为额外的1欧元/美元。在图中,即使是同一个用户也可以下注相同的金额:/ ...
如何在prestashop模块的管理控制器中的一列中显示两列数据库?
正如您所知,在 prestashop 控制器中我们可以从数据库获取信息并通过 field_set 在表中显示主题 $this->fields_list = 数组( '职员家庭' => 数组( '
我需要建议!我想在 PS 结账表单中禁用浏览器自动填充功能 我承认我已经尝试过: -autocomplete="off" 在表单和所有输入上不起作用; 我尝试更换
Prestashop 添加名为“产品数量”的自定义列,显示从“ps_order”表订购的数量
我正在尝试找到一种方法在 Prestashop v.1.6.1.9 安装后端的订单页面中显示产品订购数量。 我已经成功通过覆盖添加了 2 个自定义列
为什么我有 /public_html/var/logs is not writable 错误,因为 CHMOD 是正确的?
我刚刚通过 SSH 在新的托管 VPS(带有 Virtualmin 的 AlmaLinux 8)服务器上迁移了 prestashop 1.7,并收到以下错误: 500 服务器错误 哎呀!出事了。 尝试刷新一下...
prestashop 1.7 上的 Prestashop1.6 主题
我有一个大问题。 我已经安装了 prestashop 1.7 并且我喜欢它的管理界面,但是,与
我在使用 dbquery 查询数据库时遇到问题, 当我运行以下代码时: 选择('*'); $sql->from('ps_orders', 'o'); 打印($结果= Db::