nosto / nosto-prestashop Goto Github PK
View Code? Open in Web Editor NEWNosto plugin for Prestashop
Home Page: http://addons.prestashop.com/en/advertising-marketing-newsletter-modules/18349-nostotagging.html
License: Academic Free License v3.0
Nosto plugin for Prestashop
Home Page: http://addons.prestashop.com/en/advertising-marketing-newsletter-modules/18349-nostotagging.html
License: Academic Free License v3.0
It seems that the module adds the nosto_element DIV tags for the slots even when the specified language doesn't have a Nosto account configured.
While this doesn't break anything, it may lead to confusion.
Change the current module settings page to work completely within an iframe that communicates with post messages.
The only thing managed by the module is the store scope switcher.
These methods were added from 1.5.6.0 onwards but when though the method exists, it sometimes returns null.
15/50px-
Currently we use the method getFormatedName
to get the image and this works fine in most cases but we've seen some issues.
The method used the type passed to it e.g. large
and appends the name of the theme to it e.g. large_default
.
A merchant was using the theme called "Alysum" and this method returned large_Alysum
but this image-type doesn't exist.
Each theme has the right to define custom images in the theme.xml
and in this case the theme had registered large_alysum
but the method returns large_Alysum
.
On a category page and the cart page, we use the JS to auto-load the slots and re-position them. Since the call nostojs.init() has already fired, we move the slots to another position and and re-load the recommendations through the JS API, which causes the events to be fired again.
This can be solved by checking in the header if it is a search/category page. If it is wrap the nostojs.init ins a custom function which is invoked by the auto-slots code. On all other pages, the nostojs.init is fired automatically.
The controller should sort orders by descending order. The order and product controllers should also be able to accept an extra parameter called id
and ids
which when specified only list the order and products pertaining to those identifiers.
A configuration option could be added to the global settings page that allows the merchant to skip the embed script and use the include script directly.
Uninstallation hook.
https://github.com/Nosto/nostotagging/blob/master/nostotagging.php#L455 fails when some backend controller is missing the method.
The merchant encountered a blank page when using the module Blank page when selecting the module "Chronossimo"
Notice: Constant _PS_DEBUG_SQL_ already defined in /home/naturosphere/www/config/config.inc.php on line 9 Fatal error: Call to undefined method AdminChronossimo::addCss() in /home/naturosphere/www/modules/nostotagging/nostotagging.php on line 455
??
to identify products that can be added to cart directly.Add the order_status_code
and the order_status_label
fields to the order-confirmation API call.
Add menu items to all the supported versions.
Prestashop has reported that Italian is one of the most popular languages on Prestashop and we should add support for this.
Deprecate the recrawl API hook and instead invoke /api/v1/products/upsert
every time a product is created or updated, and, invoke /api/v1/products/delete
every time a product is deleted.
This should only fire for products that are visible and saleable.
Always do a redirect after posting to get rid if the form re-submission issues. This will also fix iframe authentication issues when using browser back/forward buttons.
Feature already started in feature/admin-page-redirects branch
<?php
/*
* This is a backwards compatibility script for running module front controllers in Prestashop 1.4.
* The script is meant to run outside of Prestashop, so if _PS_VERSION_ is already defined, we do nothing.
*/
if (!defined('_PS_VERSION_'))
{
if (isset($_SERVER['SCRIPT_FILENAME']))
{
$ps_paths = explode('/', $_SERVER['SCRIPT_FILENAME']);
array_pop($ps_paths);
array_pop($ps_paths);
array_pop($ps_paths);
$ps_dir = implode('/', $ps_paths);
}
if (!isset($ps_dir) || !file_exists($ps_dir.'/config/config.inc.php'))
$ps_dir = dirname(__FILE__).'/../..';
require_once($ps_dir.'/config/config.inc.php');
/*
* The "ModuleFrontController" class won't be defined in prestashop 1.4, so define it.
*/
if (_PS_VERSION_ < '1.5')
require_once($ps_dir.'/modules/nostotagging/backward_compatibility/ModuleFrontController.php');
$controller = strtolower((string)Tools::getValue('controller'));
if (!empty($controller))
{
require_once($ps_dir.'/modules/nostotagging/controllers/front/'.$controller.'.php');
ControllerFactory::getController('NostoTagging'.ucfirst($controller).'ModuleFrontController')->run();
}
}
This issue is the same one as the one shown in Magento that when the price is missing, the price
or listPrice
of the product is sent as false
.
Remove all products from the order-import that are identified as -1
. Also export all orders irrespective of the status instead of only the completed ones.
The tagging on the order-confirmation page should also include the order-status and the payment-gateway so we can collect data about what order statuses are valid orders.
The addons page doesn't list all the languages that we support. We should coordinate with Thomas to understand why this is and resolve it.
This will make it easier it debug. The API calls and the product import will skip products with incomplete or missing data.
Products that can be bought but not visible anywhere e.g. category pages, search pages, should be marked as OutOfStock
both in the product-export and in the PDP tagging. This will guarantee that the product is never recommended and the change will be minimal.
Context, as discussed with Mridang.
http://www.beauxarts.fr/aquarelle-winsor-et-newton-extra-fine/13071-aquarelle-winsor-et-newton-demi-godet.html?nostodebug=true
#1 / One mother product with around 30 child variations with different prices.
#2 / When several child are added to cart, we retarget child products separately in an AC e-mail instead of grouping them.
We could send headers with all API calls to Nosto. X-Plugin-Version
, X-Platform-Version
, and X-Platform-Name
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.