prestashopcorp/ps_facebook

PrestaShop 社交与 Facebook & Instagram 允许您轻松在 Facebook 和 Instagram 上展示您的产品,让人们可以发现并购买。

安装: 0

依赖: 0

建议: 0

安全: 0

星标: 9

关注者: 13

分支: 17

类型:prestashop-module

v1.38.1 2024-09-13 08:27 UTC

This package is auto-updated.

Last update: 2024-09-13 14:09:22 UTC


README

PrestaShop Social with Facebook & Instagram logo

PrestaShop 社交与 Facebook & Instagram (ps_facebook)

PHP tests JS tests

安装

使用 make build 安装依赖项(或使用 make docker-build 在 Docker 中运行)。

使用 make help 检查其他命令。

要求

此模块符合 PrestaShop 1.7+。PHP 兼容性可以在 composer.json 中找到。

您需要一个 Facebook 开发者账号,并将其添加到 PrestaShop 社交媒体应用(ID:726899634800479)中,以管理其设置。

CDN 使用

如果您想使用本地 vue 应用,请将 .env 中的 USE_LOCAL_VUE_APP 设置为 1。

USE_LOCAL_VUE_APP=1

使用

安装模块并在模块 BO 中连接到 FBE

交付

自动

此包应通过 CI/CD 自动交付,请参阅 github 工作流程。每个 发布 都应有压缩包。

手动

  1. 填写 .env.inte.env.prod 文件
  2. 使用 make bundle 为集成和生产目的构建可交付的压缩包。
  3. ./dist 目录中找到压缩包

关于

PrestaShop 1.6 兼容性

此模块与 PS 1.6 不兼容,因为一些像素事件无法在此版本中正确实现(例如 CustomizeProduct)。这避免了关于模块与不同 PrestaShop 版本不匹配行为的潜在误解。

Facebook 像素

  • 像素 & GDPR

根据Facebook 关于 GDPR 的文档,用户可以撤销其使用像素的同意。这可以通过调用 fbq('consent', 'revoke'); 通知 Facebook。PrestaShop 市场上有可用的 Cookie 管理模块,允许为每个用户管理 Facebook 功能。

对于第三方模块开发者,如果在此模块初始化之前在页面内容中设置了正确的 JS 变量,则此模块将撤销使用像素的同意。

window.doNotConsentToPixel = true;
  • 在其他模块中使用像素事件

您可以通过使用钩子:actionFacebookCallPixel 调用自定义像素事件

您还需要在钩子调用中添加一些参数

必需

  • eventName
  • module

可选

  • id_product
  • id_product_attribute

示例

Hook::exec('actionFacebookCallPixel' ,['eventName' => 'AddToWishlist', 'module' => 'wishlist', 'id_product' => $productId, 'id_product_attribute' => $idProductAttribute]);
  • 文档

开发

接收所有类型贡献(错误修复、改进和新功能)的主要分支是 master 分支。

将来我们可能会同时维护多个分支,例如,在准备下一个版本的新的功能的同时,修复生产中的当前版本。这些分支将被定义为 [1-9]*.[1-9]*.x(例如 1.4.x)。

  • 使用开发依赖项运行
composer install --dev
  • 与 VueJS 应用一起工作

为了在开发模式下设置 VueJS 应用的构建并监视您的更改

cd _dev
npm run dev
  • 替换项目的配置值

某些 Config 类的值可以通过拥有您自己的环境变量来覆盖。

例如,您可以在本项目的根目录下创建自己的 .env 文件,以替换 Facebook App ID 或切换 API URL 到其他域名。

测试

此模块遵循 PrestaShop 开发文档的建议,并在每次发布前通过 PHP-CS-Fixer、PHPStan 和 PHPUnit 进行检查。

在此模块中实现了两套测试

  • 单元测试
vendor/bin/phpunit tests/unit/
  • 集成测试

这些测试会调用 Facebook API,以确保模块依赖的数据仍然有效。它需要预先配置,通过在一个 JSON 配置文件中设置您的 FBE 配置来实现。

cp tests/integration/config.json.dist tests/integration/config.json
# Edit your config.json, then
vendor/bin/phpunit tests/integration/ -v

Storybook

以下是现有环境下的 storybooks URL
集成 Storybook
预生产 Storybook
生产 Storybook