Skip to content

MaxencePerrinPrestashop/psxmarketingwithgoogle

 
 

Repository files navigation

Marketing With Google logo

Marketing With Google (psxmarketingwithgoogle)

JS tests Storybook CI/CD PHP tests

About

Sync your product catalog with Google

Connect your store to Google Merchant Center and synchroniwe your entire product catalog in a few clicks. Product attributes such as price and availability will be automatically updated everyday.

Enable free listings for your products

Free listings allow to show your product attributes, including image and price in organically-ranked listings on the Shopping tab.

Once your catalog has been synchronised, enable free listings on your dashboard and start showing your products on the Shopping tab for free.

Create and manage Smart Shopping campaigns

Smart Shopping campaigns are ads that use Google’s smart technology for bidding and ad placement to maximize conversion value and strategically display your ads to people searching for products like yours.

Set a daily budget and let Google's smart technology optimize your campaigns across different networks like Google Search, YouTube or Gmail. You only pay when people click.

Download & Installation

Modules archives can be found and downloaded:

Downloaded archives can be uploaded on PrestaShop instances, as detailed in the user documentation.

Building

This part covers the steps to get this project ready locally.

In order to run on a PrestaShop instance, dependencies needs to be downloaded and the JS application built.

PHP

Retrieve dependencies with composer

composer install
# or
make docker-build-composer

Composer has been configured in authoritative mode, which means it won't look in the filesystem when a class is not found in the current autoloader. When a class is added or deleted, it is required to rerun the above command.

VueJS

The following commands need to be run in the _dev/ folder.

To build the application in production mode:

npm install --n
npm run build

# or 

make vuejs

To compiles and watch for new changes (development mode):

npm install --n

npm run dev

Testing

Tests will be run at each commit on this repository or any pull-request. These command reproduce the checks done by the CI.

  • JS checks: Unit tests & coding standards
npm run lint
npm run test:unit

# or

make test-front
  • PHP checks: Unit tests, coding standards...
vendor/bin/php-cs-fixer fix

vendor/bin/phpunit tests/

docker run -tid --rm -v ps-volume:/var/www/html --name temp-ps prestashop/prestashop; docker run --rm --volumes-from temp-ps -v $PWD:/web/module -e _PS_ROOT_DIR_=/var/www/html --workdir=/web/module phpstan/phpstan analyse --configuration=/web/module/tests/phpstan/phpstan.neon;

php vendor/bin/header-stamp --license=vendor/prestashop/header-stamp/assets/afl.txt --exclude=vendor,tests,_dev

# or

make test-back

Environment customization

By default, PHP & JS will define data to the application that are related to the production.

In case you need to modify these variables while maintaining this project, you may overwrite them in a freshly .env file created in the root directory of this module, by using the keys that can be found in classes/config/Config.php.

If you want to use local vue app, set on your .env USE_LOCAL_VUE_APP at 1. For instance to modify the base URL of the services for a local one:

PSX_MKTG_WITH_GOOGLE_API_URL=https://localhost:8080
PSX_MKTG_WITH_GOOGLE_API_KEY=API_KEY
USE_LOCAL_VUE_APP=1

Some values are managed by the Vue.js application and are provided in the _dev/.env file.

Releasing

To publish a new version on the marketplace:

  • Update the version in the main class of this module, and in config.xml ifit exists,
  • Create a new release on the releases page with a tag that matches the version provided in the main class.

Documentation

User help

Documentation is hosted online, and is available in several languages. Translated documentation in your language can be found in the module configuration page, in the "Help" tab.

Storybook

All components and pages of this module are available on a dedicated website running Storybook. It is updated on each push to the master branch.

Contributing

PrestaShop modules are open source extensions to the PrestaShop e-commerce platform. Everyone is welcome and even encouraged to contribute with their own improvements!

Just make sure to follow our contribution guidelines.

Reporting issues

You can report issues with this module by using the link available in the module configuration page, in the "Help" tab.

License

This module is released under the Academic Free License 3.0

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Vue 35.2%
  • TypeScript 35.0%
  • PHP 14.6%
  • JavaScript 10.5%
  • SCSS 3.6%
  • HCL 0.4%
  • Other 0.7%