基于旧版Understrap的WordPress主题npm install失败求助
解决旧版Understrap Child主题npm install失败的问题
核心报错原因
- 旧版
node-gyp@3.8.0仅支持Python 2.x,你当前使用的Python 3.10语法不兼容(报错里的Missing parentheses in call to 'print'就是Python 3和Python 2的语法差异导致)。 - 当前Node.js 16.17.0和旧版
node-sass版本不匹配,旧版node-sass对Node.js版本有严格限制。
方案一:用Node版本管理器匹配兼容环境(推荐)
旧版Understrap Child 0.5.2依赖的Gulp、node-sass都是旧生态,和高版本Node.js冲突,用版本管理器切换到兼容环境:
- 安装nvm-windows(Windows系统)或nvm(Mac/Linux)
- 切换到Node.js 10.x版本(和旧版依赖完全兼容):
nvm install 10.24.1 nvm use 10.24.1 - 安装Python 2.7,安装时勾选「Add Python to PATH」选项,验证命令行输入
python --version显示Python 2.7.x即可 - 重新执行
npm install
方案二:手动指定Python版本(临时解决)
如果不想切换Node版本,可强制node-gyp使用Python 2.7:
- 确保Python 2.7已安装并加入系统PATH
- 执行以下命令后再安装:
npm config set python python2.7 npm install
注意:这种方法仅解决Python兼容问题,Node.js 16和旧版node-sass仍可能出现其他冲突,优先选方案一
额外提示
Understrap Child 0.5.2使用Gulp 3.x,安装完成后常用命令:
gulp watch:监听文件变化自动编译样式gulp build:生成生产环境打包文件
内容的提问来源于stack exchange,提问作者Georgia O'Brien
相关产品推荐
相关产品推荐

