prestashop/autoupgrade

PrestaShop 模块自动升级

安装: 390

依赖者: 0

建议者: 0

安全: 1

星级: 111

关注者: 44

分支: 112

类型:prestashop-module


README

PHP tests Upgrades Latest Stable Version Total Downloads GitHub license

关于

此模块允许将您的商店升级到更新的 PrestaShop 版本。它可以作为 CLI 工具或与网络助手一起使用。该模块的最新版本与所有 PrestaShop 1.7 及更高版本兼容。

重要

此模块有一个特定的 发布流程。如果您发布了新版本,请确保遵循它。

分支

分支 develop 包含未来版本的模块代码,允许从 1.7.x 版本升级到更高版本。

分支 4.14.x 包含 4.14.x 补丁版本的代码,允许从 1.6.x 版本升级到 1.7.x。

如果您希望升级由 PrestaShop 1.6 驱动的商店,请使用最新版本的 4.14.3 升级到 1.7 版本。从 1.6.x 到 8.x 的升级应分两步进行(1.6.x 到 1.7.x,然后 1.7.x 到 8.x)。

请注意,PrestaShop 1.6 及更早版本不再维护。

先决条件

  • PrestaShop 1.7 或 8
  • PHP >= 7.1
  • Node.js >= 20 - 下载 Node.js(推荐 LTS 20.11.0)

安装

所有版本都可以在 发布列表 中找到。

从源代码创建模块

如果您下载了一个包含源代码的 ZIP 存档或您想使用代码的当前状态,您需要从源代码构建模块

  • 克隆 (git clone https://github.com/PrestaShop/autoupgrade.git) 或 下载 源代码。您还可以下载一个发布 源代码 (例如 v4.14.2)。如果您下载了一个源代码存档,您需要提取文件并将提取的文件夹重命名为 autoupgrade
  • 进入文件夹 autoupgrade 并运行命令 composer install (composer)。
  • 进入文件夹 autoupgrade/_dev 并运行命令 npm installnpm run build:vite (npm)。
  • autoupgrade 文件夹创建一个新的 ZIP 存档。
  • 现在您可以在商店中安装它。例如,您可以通过模块管理后台页面上的拖放区域上传它。

在 PrestaShop 上运行升级

可以使用以下方法升级商店

  • 模块的配置页面(浏览模块提供的后台页面)
  • 在命令行中通过调用 bin/console

命令行参数

此模块提供基于 Symfony Console 的强大命令行界面,允许您执行各种命令来管理您的商店。您可以使用此界面执行更新、回滚和检查系统要求。

要使用 Symfony Console,只需从 autoupgrade 模块的根目录运行以下命令

$ php bin/console

例如,要开始升级您的商店,您会使用

$ php bin/console update:start --config-file-path=[/path/to/config.json] --chain <your-admin-dir>

您可以直接从控制台使用 --help 选项查看任何命令的所有可用参数和选项。

有关使用命令的更多信息,请参阅PrestaShop 开发者文档

配置文件

为了通过控制台正确执行更新过程,需要提供一个 JSON 格式的配置文件。

以下是其中可以找到的不同字段的示例

{
  "channel": "archive", // see https://devdocs.prestashop-project.org/8/basics/keeping-up-to-date/upgrade-module/channels/
  "archive_prestashop": "prestashop_8.0.0.zip", // Name of the zip file, specific to the archive channel, to be placed in the [your-admin-dir]/autoupgrade/download folder
  "archive_xml": "prestashop_8.0.0.xml", // Name of the XML file, specific to the archive channel, to be placed in the [your-admin-dir]/autoupgrade/download folder
  "archive_num": "8.0.0", // Release number, specific to the archive channel
  "PS_AUTOUP_CUSTOM_MOD_DESACT": 1, // Disable non-native modules
  "PS_AUTOUP_CHANGE_DEFAULT_THEME": 0, // Keep the current theme
  "PS_AUTOUP_KEEP_MAILS": 0, // Retain customized email templates
  "PS_AUTOUP_BACKUP": 0, // Do not create a store backup
  "PS_AUTOUP_KEEP_IMAGES": 1, // Retain images
  "PS_DISABLE_OVERRIDES": 1 // Disable all overrides
}

回滚商店

如果在升级过程中发生错误,将建议回滚。如果您从后台丢失了页面,请注意可以通过 CLI 触发。

命令行参数

要恢复您的商店,请使用

$ php bin/console backup:restore --backup=[backup-name]  <your-admin-dir>

您可以直接从控制台使用 --help 选项查看任何命令的所有可用参数和选项。

有关使用命令的更多信息,请参阅PrestaShop 开发者文档

文档

使用 Storybook 进行界面概述

Storybook 文件夹包含一个项目,允许您使用 Storybook 在不同版本的 PrestaShop 下查看项目界面。

有关项目的更多信息,请参阅README

代码检查和测试

本节概述了所有用于代码检查和测试的命令。在运行这些命令之前,请确保您已遵循项目设置步骤并安装了所有依赖项。

后端

所有后端命令应从根目录执行。

  • ./tests/phpstan/phpstan.sh [version] ⮕ 运行 PHPStan,一个用于静态代码分析的工具,用于识别 PHP 代码中的潜在错误(需要在 tests 文件夹中运行 composer install)。可用的版本选项

    • 1.7.2.5
    • 1.7.3.4
    • 1.7.4.4
    • 1.7.5.1
    • 1.7.6
    • 1.7.7
    • 1.7.8
    • 8.0.0
    • 最新版本
  • ./vendor/bin/phpunit ./tests/unit/ ⮕ 运行 PHPUnit,一个用于在您的 PHP 代码上运行单元测试的框架。您可以根据需要修改路径以针对特定的测试文件。

  • ./vendor/bin/php-cs-fixer ⮕ 运行 PHP CS Fixer,一个确保您的 PHP 代码遵循正确编码标准的工具。添加 fix 选项以自动解决可修复的风格问题。

前端

所有前端命令应从 _dev 目录执行。

  • npm run lint ⮕ 运行 ESLintPrettier 对您的 JavaScript 代码执行静态代码分析和自动格式化。将 :fix 添加到命令中以自动修复可修复的问题。

  • npm run lint-scss ⮕ 运行 Stylelint 对您的 SCSS 文件进行代码检查和格式化。您可以将 :fix 添加到命令中以自动解决可解决的格式化问题。

贡献

PrestaShop 模块是 PrestaShop 电子商务平台的开源扩展。PrestaShop 欢迎并鼓励每个人贡献他们自己的改进!

只需确保遵循我们的贡献指南

报告问题

您可以在 PrestaShop 主仓库中报告此模块的问题。点击此处报告问题

翻译

文字可以翻译到Crowdin 项目

许可

此模块是根据学术免费许可证 3.0发布的。