prestashopcorp / ps_facebook
PrestaShop 社交与 Facebook & Instagram 允许您轻松在 Facebook 和 Instagram 上展示您的产品,让人们可以发现并购买。
Requires
- php: >=7.2.5
- facebook/php-business-sdk: dev-guzzle-adapter
- prestashop/module-lib-cache-directory-provider: ^1.0
- prestashop/module-lib-faq: ^2.2
- prestashop/module-lib-service-container: ^2.0
- prestashop/prestashop-accounts-installer: ^1.0
- prestashopcorp/module-lib-billing: ^3.2
- segmentio/analytics-php: ^1.5
- sentry/sentry: ^1.11.0
- vlucas/phpdotenv: ^3.4
Requires (Dev)
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^8.5
- prestashop/php-dev-tools: ^4.2
- dev-master
- v1.38.1
- v1.38.1-beta.11
- v1.38.1-beta.10
- v1.38.1-beta.9
- v1.38.1-beta.8
- v1.38.1-beta.7
- v1.38.1-beta.6
- v1.38.1-beta.5
- v1.38.1-beta.4
- v1.38.1-beta.3
- v1.38.1-beta.2
- v1.38.1-beta.1
- v1.37.1-beta.1
- v1.37.0
- v1.37.0-beta.1
- v1.36.0
- v1.36.0-beta.2
- v1.36.0-beta.1
- v1.35.0
- v1.35.0-beta.2
- v1.35.0-beta.1
- v1.34.0
- v1.34.0-beta.3
- v1.34.0-beta.2
- v1.34.0-beta.1
- v1.33.2
- v1.33.2-beta.1
- v1.33.1
- v1.33.1-beta.1
- v1.33.0
- v1.33.0-beta.8
- v1.33.0-beta.7
- v1.33.0-beta.6
- v1.33.0-beta.5
- v1.33.0-beta.4
- v1.33.0-beta.3
- v1.33.0-beta.2
- v1.33.0-beta.1
- v1.32.x-dev
- v1.32.1
- v1.32.0
- v1.32.0-beta.2
- v1.32.0-beta.1
- v1.31.1
- v1.31.1-beta.2
- v1.31.1-beta.1
- v1.31.0
- v1.31.0-beta.1
- v1.30.0
- v1.30.0-beta.2
- v1.30.0-beta.1
- v1.29.0
- v1.29.0-beta.2
- v1.29.0-beta.1
- v1.28.0
- v1.28.0-beta.1
- v1.27.1-beta.1
- v1.27.0
- v1.27.0-beta.4
- v1.27.0-beta.3
- v1.27.0-beta.2
- v1.27.0-beta.1
- v1.26.0
- v1.26.0-beta.4
- v1.26.0-beta.3
- v1.26.0-beta.2
- v1.26.0-beta.1
- v1.25.0
- v1.25.0-beta.1
- v1.24.0
- v1.24.0-beta.1
- v1.23.0
- v1.23.0-beta.1
- v1.22.0
- v1.22.0-beta.1
- v1.21.0
- v1.21.0-beta.1
- v1.20.0
- v1.20.0-beta.1
- v1.19.0
- v1.19.0-beta.1
- v1.18.6
- v1.18.5
- v1.18.4
- v1.18.3
- v1.18.2
- v1.18.1
- v1.18.0
- v1.18.0-beta.2
- v1.18.0-beta.1
- v1.17.0
- v1.16.0
- v1.16.0-beta.5
- v1.16.0-beta.4
- v1.16.0-beta.3
- v1.16.0-beta.2
- v1.16.0-beta.1
- v1.15.0
- v1.14.1
- v1.14.0
- v1.13.0
- v1.12.0
- v1.11.0
- v1.10.0
- v1.9.2
- v1.9.1
- v1.9.0
- v1.8.0
- v1.7.1
- v1.7.0
- v1.6.0
- v1.5.1
- v1.5.0
- v1.4.5
- v1.4.4
- v1.4.2
- 1.4.0
- v1.2.0-beta.1
- v1.0.0-alpha.4
- v1.0.0-alpha.3
- v1.0.0-alpha.2
- v1.0.0-alpha.1
- dev-emktg-3265-fix-subscription-billing
- dev-test
- dev-fix-actions
- dev-version-artifact
- dev-l10n_master
- dev-revert-471-announcement-of-next-version
This package is auto-updated.
Last update: 2024-09-13 14:09:22 UTC
README
PrestaShop 社交与 Facebook & Instagram (ps_facebook)
安装
使用 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 工作流程。每个 发布 都应有压缩包。
手动
- 填写
.env.inte
和.env.prod
文件 - 使用
make bundle
为集成和生产目的构建可交付的压缩包。 - 在
./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