如何无需手动执行lando init,通过Lando.yml快速重建WordPress站点?
无需手动执行
lando init,通过lando.yml直接搭建WordPress站点的方法 完全可以实现这个需求,你只需要手动创建符合Lando规范的lando.yml配置文件,直接执行lando start就能自动完成WordPress站点的搭建,无需提前运行lando init。具体步骤如下:
1. 创建自定义lando.yml配置文件
在空目录下新建lando.yml,填入以下配置(可根据需求调整参数):
name: my-wp-project recipe: wordpress config: # 指定WordPress核心文件存放的目录 webroot: wp # 设置WordPress版本 wp_version: 6.4 # 设置PHP版本 php: 8.2 # 设置数据库类型及版本 database: mysql:8.0 services: appserver: overrides: environment: # 自定义站点URL WP_HOME: "https://my-wp-project.lndo.site" WP_SITEURL: "https://my-wp-project.lndo.site/wp"
关键配置说明:
name:你的项目名称,会作为Lando环境的标识,同时影响默认的站点域名(格式为[name].lndo.site)recipe: wordpress:直接指定使用Lando的WordPress官方模板,Lando会自动处理WP核心下载、数据库配置等流程config.webroot:指定WordPress核心文件的存放目录,默认是wp,你也可以改成public之类的自定义路径services.appserver.environment:通过环境变量直接设置WordPress的站点URL,避免手动修改wp-config.php
2. 启动站点
在当前目录下直接执行:
lando start
第一次运行时,Lando会自动完成以下操作:
- 拉取所需的Docker镜像(PHP、MySQL等)
- 下载指定版本的WordPress核心文件到
webroot目录 - 自动配置数据库连接信息,生成
wp-config.php - 启动所有服务并配置站点域名
3. 可选:添加自定义初始化操作
如果需要自动安装插件、主题或导入数据库,可以在lando.yml中添加events配置,示例:
# 接上面的配置,添加以下内容 events: post-start: # 自动安装并激活Akismet插件 - appserver: wp plugin install akismet --activate # 自动安装并激活TwentyTwentyFour主题 - appserver: wp theme install twentytwentyfour --activate # 导入本地数据库文件(需提前将sql文件放在项目根目录) - appserver: wp db import ./backup.sql
注意事项
- 确保项目目录为空或没有与WordPress核心冲突的文件,避免Lando自动下载时出现文件覆盖问题
- 修改
lando.yml配置后,需要执行lando rebuild才能让新配置生效,lando start仅会启动现有环境 - 若需要重置站点,可执行
lando destroy清除现有环境,再重新运行lando start重建
内容的提问来源于stack exchange,提问作者BlakeyUK
相关产品推荐
相关产品推荐

