@loopress/cli 0.28.0 → 0.30.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (190) hide show
  1. package/README.md +1460 -337
  2. package/bin/dev.js +0 -0
  3. package/dist/commands/acf/pull.d.ts +9 -1
  4. package/dist/commands/acf/pull.js +2 -0
  5. package/dist/commands/acf/push.d.ts +9 -1
  6. package/dist/commands/acf/push.js +3 -1
  7. package/dist/commands/api/publish.js +1 -1
  8. package/dist/commands/app/push.js +1 -1
  9. package/dist/commands/composer/push.js +3 -3
  10. package/dist/commands/cpt/diff.js +5 -0
  11. package/dist/commands/cpt/list.d.ts +2 -0
  12. package/dist/commands/cpt/list.js +4 -0
  13. package/dist/commands/cpt/pull.d.ts +2 -0
  14. package/dist/commands/cpt/pull.js +4 -0
  15. package/dist/commands/cpt/push.d.ts +2 -0
  16. package/dist/commands/cpt/push.js +4 -0
  17. package/dist/commands/cpt/rm.d.ts +2 -0
  18. package/dist/commands/cpt/rm.js +3 -0
  19. package/dist/commands/cpt/rollback.js +5 -0
  20. package/dist/commands/dev.js +14 -4
  21. package/dist/commands/diff.js +1 -1
  22. package/dist/commands/doctor.d.ts +1 -0
  23. package/dist/commands/doctor.js +30 -2
  24. package/dist/commands/form/pull.d.ts +9 -1
  25. package/dist/commands/form/pull.js +3 -1
  26. package/dist/commands/form/push.d.ts +7 -1
  27. package/dist/commands/form/push.js +3 -1
  28. package/dist/commands/init.js +6 -38
  29. package/dist/commands/menu/pull.d.ts +7 -1
  30. package/dist/commands/menu/pull.js +2 -0
  31. package/dist/commands/menu/push.d.ts +7 -1
  32. package/dist/commands/menu/push.js +3 -1
  33. package/dist/commands/meta/diff.d.ts +2 -0
  34. package/dist/commands/meta/diff.js +5 -0
  35. package/dist/commands/meta/list.d.ts +19 -0
  36. package/dist/commands/meta/list.js +21 -0
  37. package/dist/commands/meta/pull.d.ts +2 -0
  38. package/dist/commands/meta/pull.js +4 -0
  39. package/dist/commands/meta/push.d.ts +2 -0
  40. package/dist/commands/meta/push.js +4 -0
  41. package/dist/commands/meta/rm.d.ts +2 -0
  42. package/dist/commands/meta/rm.js +3 -0
  43. package/dist/commands/meta/rollback.d.ts +2 -0
  44. package/dist/commands/meta/rollback.js +5 -0
  45. package/dist/commands/option/list.js +2 -8
  46. package/dist/commands/option/pull.js +4 -4
  47. package/dist/commands/option/push.js +2 -0
  48. package/dist/commands/page/push.js +3 -0
  49. package/dist/commands/pattern/diff.d.ts +2 -0
  50. package/dist/commands/pattern/diff.js +5 -0
  51. package/dist/commands/pattern/list.d.ts +2 -0
  52. package/dist/commands/pattern/list.js +3 -0
  53. package/dist/commands/pattern/pull.d.ts +2 -0
  54. package/dist/commands/pattern/pull.js +4 -0
  55. package/dist/commands/pattern/push.d.ts +2 -0
  56. package/dist/commands/pattern/push.js +4 -0
  57. package/dist/commands/pattern/rm.d.ts +2 -0
  58. package/dist/commands/pattern/rm.js +3 -0
  59. package/dist/commands/pattern/rollback.d.ts +2 -0
  60. package/dist/commands/pattern/rollback.js +5 -0
  61. package/dist/commands/plugin/audit.js +2 -1
  62. package/dist/commands/plugin/pull.d.ts +4 -0
  63. package/dist/commands/plugin/pull.js +56 -10
  64. package/dist/commands/plugin/push.js +5 -4
  65. package/dist/commands/project/config.d.ts +1 -0
  66. package/dist/commands/project/config.js +20 -1
  67. package/dist/commands/project/list.d.ts +1 -1
  68. package/dist/commands/project/list.js +6 -6
  69. package/dist/commands/project/pull.js +11 -8
  70. package/dist/commands/project/push.js +23 -18
  71. package/dist/commands/project/remove.js +1 -1
  72. package/dist/commands/project/switch.d.ts +0 -1
  73. package/dist/commands/project/switch.js +16 -36
  74. package/dist/commands/pull.js +7 -2
  75. package/dist/commands/push.js +14 -6
  76. package/dist/commands/role/diff.d.ts +2 -0
  77. package/dist/commands/role/diff.js +5 -0
  78. package/dist/commands/role/list.d.ts +2 -0
  79. package/dist/commands/role/list.js +4 -0
  80. package/dist/commands/role/pull.d.ts +2 -0
  81. package/dist/commands/role/pull.js +4 -0
  82. package/dist/commands/role/push.d.ts +2 -0
  83. package/dist/commands/role/push.js +4 -0
  84. package/dist/commands/role/rm.d.ts +2 -0
  85. package/dist/commands/role/rm.js +3 -0
  86. package/dist/commands/role/rollback.d.ts +2 -0
  87. package/dist/commands/role/rollback.js +5 -0
  88. package/dist/commands/snippet/publish.js +1 -1
  89. package/dist/commands/snippet/pull.js +1 -1
  90. package/dist/commands/snippet/push.js +1 -1
  91. package/dist/commands/status.d.ts +3 -3
  92. package/dist/commands/status.js +21 -53
  93. package/dist/commands/taxonomy/diff.d.ts +2 -0
  94. package/dist/commands/taxonomy/diff.js +5 -0
  95. package/dist/commands/taxonomy/list.d.ts +2 -0
  96. package/dist/commands/taxonomy/list.js +5 -0
  97. package/dist/commands/taxonomy/pull.d.ts +2 -0
  98. package/dist/commands/taxonomy/pull.js +4 -0
  99. package/dist/commands/taxonomy/push.d.ts +2 -0
  100. package/dist/commands/taxonomy/push.js +4 -0
  101. package/dist/commands/taxonomy/rm.d.ts +2 -0
  102. package/dist/commands/taxonomy/rm.js +3 -0
  103. package/dist/commands/taxonomy/rollback.d.ts +2 -0
  104. package/dist/commands/taxonomy/rollback.js +5 -0
  105. package/dist/commands/theme/pull.d.ts +6 -10
  106. package/dist/commands/theme/pull.js +30 -32
  107. package/dist/commands/theme/push.d.ts +8 -9
  108. package/dist/commands/theme/push.js +54 -111
  109. package/dist/commands/theme/style/pull.d.ts +7 -1
  110. package/dist/commands/theme/style/pull.js +3 -1
  111. package/dist/commands/theme/style/push.d.ts +8 -1
  112. package/dist/commands/theme/style/push.js +4 -1
  113. package/dist/commands/{template → theme/template}/diff.d.ts +1 -1
  114. package/dist/commands/{template → theme/template}/diff.js +3 -3
  115. package/dist/commands/{template → theme/template}/list.d.ts +2 -2
  116. package/dist/commands/{template → theme/template}/list.js +5 -5
  117. package/dist/commands/{template → theme/template}/push.d.ts +3 -1
  118. package/dist/commands/theme/template/push.js +65 -0
  119. package/dist/commands/theme/version/pull.d.ts +23 -0
  120. package/dist/commands/theme/version/pull.js +43 -0
  121. package/dist/commands/theme/version/push.d.ts +22 -0
  122. package/dist/commands/theme/version/push.js +123 -0
  123. package/dist/config/project-config.manager.d.ts +3 -3
  124. package/dist/config/project-config.manager.js +22 -31
  125. package/dist/hooks/finally.d.ts +2 -1
  126. package/dist/hooks/finally.js +38 -7
  127. package/dist/lib/api-client.js +2 -1
  128. package/dist/lib/app-build.js +3 -1
  129. package/dist/lib/app-manifest.js +2 -2
  130. package/dist/lib/base.d.ts +2 -2
  131. package/dist/lib/base.js +33 -38
  132. package/dist/lib/declared-type-command.d.ts +35 -0
  133. package/dist/lib/declared-type-command.js +192 -0
  134. package/dist/lib/dev-watch.d.ts +1 -1
  135. package/dist/lib/dev-watch.js +7 -3
  136. package/dist/lib/diff-state.js +1 -0
  137. package/dist/lib/github-release.js +4 -1
  138. package/dist/lib/local-callback-server.d.ts +12 -6
  139. package/dist/lib/local-callback-server.js +24 -23
  140. package/dist/lib/php-files-command.js +3 -1
  141. package/dist/lib/push-command.d.ts +6 -0
  142. package/dist/lib/push-command.js +61 -18
  143. package/dist/lib/put-or-create.js +3 -4
  144. package/dist/lib/resource-state.js +40 -86
  145. package/dist/lib/rollback-materialize.js +13 -24
  146. package/dist/lib/snapshot-store.js +2 -2
  147. package/dist/lib/spinner.d.ts +2 -0
  148. package/dist/lib/spinner.js +72 -0
  149. package/dist/lib/temp-admin.d.ts +10 -1
  150. package/dist/lib/temp-admin.js +27 -2
  151. package/dist/lib/validate-local.js +31 -9
  152. package/dist/lib/wp-authorize-flow.d.ts +10 -17
  153. package/dist/lib/wp-authorize-flow.js +24 -28
  154. package/dist/lib/wp-client.d.ts +1 -0
  155. package/dist/lib/wp-client.js +7 -1
  156. package/dist/lib/wp-site-diagnostic.js +39 -1
  157. package/dist/types/global-config.generated.d.ts +1 -5
  158. package/dist/types/project-config.generated.d.ts +28 -4
  159. package/dist/utils/composer.d.ts +3 -1
  160. package/dist/utils/composer.js +16 -7
  161. package/dist/utils/declared-type-format.d.ts +52 -0
  162. package/dist/utils/declared-type-format.js +233 -0
  163. package/dist/utils/option-format.d.ts +3 -1
  164. package/dist/utils/option-format.js +14 -3
  165. package/dist/utils/page-format.d.ts +5 -1
  166. package/dist/utils/page-format.js +7 -3
  167. package/dist/utils/plugin-sync.js +1 -1
  168. package/dist/utils/resource-dirs.d.ts +9 -3
  169. package/dist/utils/resource-dirs.js +18 -6
  170. package/dist/utils/template-format.d.ts +3 -1
  171. package/dist/utils/template-format.js +10 -3
  172. package/dist/utils/theme-css.d.ts +19 -0
  173. package/dist/utils/theme-css.js +100 -0
  174. package/oclif.manifest.json +3542 -1087
  175. package/package.json +40 -21
  176. package/schemas/global-config.schema.json +2 -6
  177. package/schemas/project-config.schema.json +37 -7
  178. package/dist/commands/seo/diff.js +0 -5
  179. package/dist/commands/seo/list.d.ts +0 -18
  180. package/dist/commands/seo/list.js +0 -58
  181. package/dist/commands/seo/pull.d.ts +0 -17
  182. package/dist/commands/seo/pull.js +0 -87
  183. package/dist/commands/seo/push.d.ts +0 -23
  184. package/dist/commands/seo/push.js +0 -176
  185. package/dist/commands/seo/rollback.js +0 -5
  186. package/dist/commands/template/push.js +0 -42
  187. package/dist/utils/seo-format.d.ts +0 -29
  188. package/dist/utils/seo-format.js +0 -18
  189. /package/dist/commands/{seo → cpt}/diff.d.ts +0 -0
  190. /package/dist/commands/{seo → cpt}/rollback.d.ts +0 -0
package/README.md CHANGED
@@ -21,7 +21,7 @@ $ npm install -g @loopress/cli
21
21
  $ lps COMMAND
22
22
  running command...
23
23
  $ lps (--version)
24
- @loopress/cli/0.28.0 linux-x64 node-v24.21.0
24
+ @loopress/cli/0.30.0 linux-x64 node-v24.21.0
25
25
  $ lps --help [COMMAND]
26
26
  USAGE
27
27
  $ lps COMMAND
@@ -57,6 +57,7 @@ report.
57
57
  * [`lps api publish [PATH]`](#lps-api-publish-path)
58
58
  * [`lps api pull [PATH]`](#lps-api-pull-path)
59
59
  * [`lps api push [PATH]`](#lps-api-push-path)
60
+ * [`lps api remove FILENAME`](#lps-api-remove-filename)
60
61
  * [`lps api rm FILENAME`](#lps-api-rm-filename)
61
62
  * [`lps api rollback [PATH]`](#lps-api-rollback-path)
62
63
  * [`lps app list`](#lps-app-list)
@@ -66,6 +67,13 @@ report.
66
67
  * [`lps composer init`](#lps-composer-init)
67
68
  * [`lps composer pull`](#lps-composer-pull)
68
69
  * [`lps composer push`](#lps-composer-push)
70
+ * [`lps cpt diff [PATH]`](#lps-cpt-diff-path)
71
+ * [`lps cpt list`](#lps-cpt-list)
72
+ * [`lps cpt pull [PATH]`](#lps-cpt-pull-path)
73
+ * [`lps cpt push [PATH]`](#lps-cpt-push-path)
74
+ * [`lps cpt remove SLUG`](#lps-cpt-remove-slug)
75
+ * [`lps cpt rm SLUG`](#lps-cpt-rm-slug)
76
+ * [`lps cpt rollback [PATH]`](#lps-cpt-rollback-path)
69
77
  * [`lps dev`](#lps-dev)
70
78
  * [`lps diff`](#lps-diff)
71
79
  * [`lps doctor`](#lps-doctor)
@@ -79,6 +87,7 @@ report.
79
87
  * [`lps hook list`](#lps-hook-list)
80
88
  * [`lps hook pull [PATH]`](#lps-hook-pull-path)
81
89
  * [`lps hook push [PATH]`](#lps-hook-push-path)
90
+ * [`lps hook remove FILENAME`](#lps-hook-remove-filename)
82
91
  * [`lps hook rm FILENAME`](#lps-hook-rm-filename)
83
92
  * [`lps hook rollback [PATH]`](#lps-hook-rollback-path)
84
93
  * [`lps init`](#lps-init)
@@ -89,6 +98,13 @@ report.
89
98
  * [`lps menu pull [PATH]`](#lps-menu-pull-path)
90
99
  * [`lps menu push [PATH]`](#lps-menu-push-path)
91
100
  * [`lps menu rollback [PATH]`](#lps-menu-rollback-path)
101
+ * [`lps meta diff [PATH]`](#lps-meta-diff-path)
102
+ * [`lps meta list`](#lps-meta-list)
103
+ * [`lps meta pull [PATH]`](#lps-meta-pull-path)
104
+ * [`lps meta push [PATH]`](#lps-meta-push-path)
105
+ * [`lps meta remove SLUG`](#lps-meta-remove-slug)
106
+ * [`lps meta rm SLUG`](#lps-meta-rm-slug)
107
+ * [`lps meta rollback [PATH]`](#lps-meta-rollback-path)
92
108
  * [`lps option add NAME`](#lps-option-add-name)
93
109
  * [`lps option diff [PATH]`](#lps-option-diff-path)
94
110
  * [`lps option list`](#lps-option-list)
@@ -99,6 +115,13 @@ report.
99
115
  * [`lps page diff [PATH]`](#lps-page-diff-path)
100
116
  * [`lps page list`](#lps-page-list)
101
117
  * [`lps page push [SLUG]`](#lps-page-push-slug)
118
+ * [`lps pattern diff [PATH]`](#lps-pattern-diff-path)
119
+ * [`lps pattern list`](#lps-pattern-list)
120
+ * [`lps pattern pull [PATH]`](#lps-pattern-pull-path)
121
+ * [`lps pattern push [PATH]`](#lps-pattern-push-path)
122
+ * [`lps pattern remove SLUG`](#lps-pattern-remove-slug)
123
+ * [`lps pattern rm SLUG`](#lps-pattern-rm-slug)
124
+ * [`lps pattern rollback [PATH]`](#lps-pattern-rollback-path)
102
125
  * [`lps plugin add SLUG`](#lps-plugin-add-slug)
103
126
  * [`lps plugin audit`](#lps-plugin-audit)
104
127
  * [`lps plugin pull`](#lps-plugin-pull)
@@ -114,11 +137,13 @@ report.
114
137
  * [`lps promote FROM TO`](#lps-promote-from-to)
115
138
  * [`lps pull`](#lps-pull)
116
139
  * [`lps push`](#lps-push)
117
- * [`lps seo diff [PATH]`](#lps-seo-diff-path)
118
- * [`lps seo list`](#lps-seo-list)
119
- * [`lps seo pull [PATH]`](#lps-seo-pull-path)
120
- * [`lps seo push [PATH]`](#lps-seo-push-path)
121
- * [`lps seo rollback [PATH]`](#lps-seo-rollback-path)
140
+ * [`lps role diff [PATH]`](#lps-role-diff-path)
141
+ * [`lps role list`](#lps-role-list)
142
+ * [`lps role pull [PATH]`](#lps-role-pull-path)
143
+ * [`lps role push [PATH]`](#lps-role-push-path)
144
+ * [`lps role remove SLUG`](#lps-role-remove-slug)
145
+ * [`lps role rm SLUG`](#lps-role-rm-slug)
146
+ * [`lps role rollback [PATH]`](#lps-role-rollback-path)
122
147
  * [`lps snippet diff [PATH]`](#lps-snippet-diff-path)
123
148
  * [`lps snippet list`](#lps-snippet-list)
124
149
  * [`lps snippet publish [PATH]`](#lps-snippet-publish-path)
@@ -126,11 +151,15 @@ report.
126
151
  * [`lps snippet push [PATH]`](#lps-snippet-push-path)
127
152
  * [`lps snippet rollback [PATH]`](#lps-snippet-rollback-path)
128
153
  * [`lps status`](#lps-status)
154
+ * [`lps taxonomy diff [PATH]`](#lps-taxonomy-diff-path)
155
+ * [`lps taxonomy list`](#lps-taxonomy-list)
156
+ * [`lps taxonomy pull [PATH]`](#lps-taxonomy-pull-path)
157
+ * [`lps taxonomy push [PATH]`](#lps-taxonomy-push-path)
158
+ * [`lps taxonomy remove SLUG`](#lps-taxonomy-remove-slug)
159
+ * [`lps taxonomy rm SLUG`](#lps-taxonomy-rm-slug)
160
+ * [`lps taxonomy rollback [PATH]`](#lps-taxonomy-rollback-path)
129
161
  * [`lps telemetry disable`](#lps-telemetry-disable)
130
162
  * [`lps telemetry enable`](#lps-telemetry-enable)
131
- * [`lps template diff`](#lps-template-diff)
132
- * [`lps template list`](#lps-template-list)
133
- * [`lps template push`](#lps-template-push)
134
163
  * [`lps theme add SLUG`](#lps-theme-add-slug)
135
164
  * [`lps theme pull`](#lps-theme-pull)
136
165
  * [`lps theme push`](#lps-theme-push)
@@ -139,6 +168,11 @@ report.
139
168
  * [`lps theme style pull [PATH]`](#lps-theme-style-pull-path)
140
169
  * [`lps theme style push [PATH]`](#lps-theme-style-push-path)
141
170
  * [`lps theme style rollback [PATH]`](#lps-theme-style-rollback-path)
171
+ * [`lps theme template diff`](#lps-theme-template-diff)
172
+ * [`lps theme template list`](#lps-theme-template-list)
173
+ * [`lps theme template push`](#lps-theme-template-push)
174
+ * [`lps theme version pull`](#lps-theme-version-pull)
175
+ * [`lps theme version push`](#lps-theme-version-push)
142
176
  * [`lps validate`](#lps-validate)
143
177
 
144
178
  ## `lps acf diff [PATH]`
@@ -154,7 +188,7 @@ ARGUMENTS
154
188
 
155
189
  FLAGS
156
190
  --against=<value> Compare the primary environment against this second environment instead of against local files
157
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
191
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
158
192
 
159
193
  GLOBAL FLAGS
160
194
  --json Format output as json.
@@ -171,7 +205,7 @@ EXAMPLES
171
205
  $ lps acf diff --env staging --against production
172
206
  ```
173
207
 
174
- _See code: [src/commands/acf/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/acf/diff.ts)_
208
+ _See code: [src/commands/acf/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/acf/diff.ts)_
175
209
 
176
210
  ## `lps acf list`
177
211
 
@@ -182,7 +216,7 @@ USAGE
182
216
  $ lps acf list [--json] [--env <value>] [--type field-groups|post-types|taxonomies|options-pages...]
183
217
 
184
218
  FLAGS
185
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
219
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
186
220
  --type=<option>... Limit to specific ACF object types
187
221
  <options: field-groups|post-types|taxonomies|options-pages>
188
222
 
@@ -198,7 +232,7 @@ EXAMPLES
198
232
  $ lps acf list --type field-groups
199
233
  ```
200
234
 
201
- _See code: [src/commands/acf/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/acf/list.ts)_
235
+ _See code: [src/commands/acf/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/acf/list.ts)_
202
236
 
203
237
  ## `lps acf pull [PATH]`
204
238
 
@@ -206,7 +240,8 @@ Pull ACF field groups, post types, taxonomies, and options pages from WordPress
206
240
 
207
241
  ```
208
242
  USAGE
209
- $ lps acf pull [PATH] [--env <value>] [-d] [-y] [--type field-groups|post-types|taxonomies|options-pages...]
243
+ $ lps acf pull [PATH] [--json] [--env <value>] [-d] [-y] [--type
244
+ field-groups|post-types|taxonomies|options-pages...]
210
245
 
211
246
  ARGUMENTS
212
247
  [PATH] Path to ACF directory (overrides project config)
@@ -214,10 +249,13 @@ ARGUMENTS
214
249
  FLAGS
215
250
  -d, --dry-run Show what would change without making changes
216
251
  -y, --yes Answer yes to confirmation prompts
217
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
252
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
218
253
  --type=<option>... Limit to specific ACF object types
219
254
  <options: field-groups|post-types|taxonomies|options-pages>
220
255
 
256
+ GLOBAL FLAGS
257
+ --json Format output as json.
258
+
221
259
  DESCRIPTION
222
260
  Pull ACF field groups, post types, taxonomies, and options pages from WordPress
223
261
 
@@ -227,7 +265,7 @@ EXAMPLES
227
265
  $ lps acf pull --type field-groups
228
266
  ```
229
267
 
230
- _See code: [src/commands/acf/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/acf/pull.ts)_
268
+ _See code: [src/commands/acf/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/acf/pull.ts)_
231
269
 
232
270
  ## `lps acf push [PATH]`
233
271
 
@@ -235,7 +273,8 @@ Push ACF field groups, post types, taxonomies, and options pages to WordPress
235
273
 
236
274
  ```
237
275
  USAGE
238
- $ lps acf push [PATH] [--env <value>] [-d] [-y] [--type field-groups|post-types|taxonomies|options-pages...]
276
+ $ lps acf push [PATH] [--json] [--env <value>] [-d] [-y] [--type
277
+ field-groups|post-types|taxonomies|options-pages...]
239
278
 
240
279
  ARGUMENTS
241
280
  [PATH] Path to ACF directory (overrides project config)
@@ -243,10 +282,13 @@ ARGUMENTS
243
282
  FLAGS
244
283
  -d, --dry-run Show what would change without making changes
245
284
  -y, --yes Answer yes to confirmation prompts
246
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
285
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
247
286
  --type=<option>... Limit to specific ACF object types
248
287
  <options: field-groups|post-types|taxonomies|options-pages>
249
288
 
289
+ GLOBAL FLAGS
290
+ --json Format output as json.
291
+
250
292
  DESCRIPTION
251
293
  Push ACF field groups, post types, taxonomies, and options pages to WordPress
252
294
 
@@ -256,7 +298,7 @@ EXAMPLES
256
298
  $ lps acf push --type field-groups
257
299
  ```
258
300
 
259
- _See code: [src/commands/acf/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/acf/push.ts)_
301
+ _See code: [src/commands/acf/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/acf/push.ts)_
260
302
 
261
303
  ## `lps acf rollback [PATH]`
262
304
 
@@ -272,7 +314,7 @@ ARGUMENTS
272
314
  FLAGS
273
315
  -d, --dry-run Show what would change without making changes
274
316
  -y, --yes Answer yes to confirmation prompts
275
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
317
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
276
318
  --list List available snapshots instead of rolling back
277
319
  --to=<value> Roll back to this snapshot id instead of the most recent one
278
320
 
@@ -293,7 +335,7 @@ EXAMPLES
293
335
  $ lps acf rollback --dry-run
294
336
  ```
295
337
 
296
- _See code: [src/commands/acf/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/acf/rollback.ts)_
338
+ _See code: [src/commands/acf/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/acf/rollback.ts)_
297
339
 
298
340
  ## `lps api diff [PATH]`
299
341
 
@@ -308,7 +350,7 @@ ARGUMENTS
308
350
 
309
351
  FLAGS
310
352
  --against=<value> Compare the primary environment against this second environment instead of against local files
311
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
353
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
312
354
 
313
355
  GLOBAL FLAGS
314
356
  --json Format output as json.
@@ -325,7 +367,7 @@ EXAMPLES
325
367
  $ lps api diff --env staging --against production
326
368
  ```
327
369
 
328
- _See code: [src/commands/api/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/api/diff.ts)_
370
+ _See code: [src/commands/api/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/api/diff.ts)_
329
371
 
330
372
  ## `lps api list`
331
373
 
@@ -336,7 +378,7 @@ USAGE
336
378
  $ lps api list [--json] [--env <value>]
337
379
 
338
380
  FLAGS
339
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
381
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
340
382
 
341
383
  GLOBAL FLAGS
342
384
  --json Format output as json.
@@ -348,7 +390,7 @@ EXAMPLES
348
390
  $ lps api list
349
391
  ```
350
392
 
351
- _See code: [src/commands/api/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/api/list.ts)_
393
+ _See code: [src/commands/api/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/api/list.ts)_
352
394
 
353
395
  ## `lps api publish [PATH]`
354
396
 
@@ -368,10 +410,10 @@ DESCRIPTION
368
410
  EXAMPLES
369
411
  $ lps api publish
370
412
 
371
- $ lps api publish --path ./api
413
+ $ lps api publish ./api
372
414
  ```
373
415
 
374
- _See code: [src/commands/api/publish.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/api/publish.ts)_
416
+ _See code: [src/commands/api/publish.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/api/publish.ts)_
375
417
 
376
418
  ## `lps api pull [PATH]`
377
419
 
@@ -387,7 +429,7 @@ ARGUMENTS
387
429
  FLAGS
388
430
  -d, --dry-run Show what would change without making changes
389
431
  -y, --yes Answer yes to confirmation prompts
390
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
432
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
391
433
 
392
434
  GLOBAL FLAGS
393
435
  --json Format output as json.
@@ -401,7 +443,7 @@ EXAMPLES
401
443
  $ lps api pull --path ./api
402
444
  ```
403
445
 
404
- _See code: [src/commands/api/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/api/pull.ts)_
446
+ _See code: [src/commands/api/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/api/pull.ts)_
405
447
 
406
448
  ## `lps api push [PATH]`
407
449
 
@@ -417,7 +459,7 @@ ARGUMENTS
417
459
  FLAGS
418
460
  -d, --dry-run Show what would change without making changes
419
461
  -y, --yes Answer yes to confirmation prompts
420
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
462
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
421
463
  --prune Delete server-side route files not present locally after pushing
422
464
 
423
465
  GLOBAL FLAGS
@@ -434,7 +476,38 @@ EXAMPLES
434
476
  $ lps api push --prune
435
477
  ```
436
478
 
437
- _See code: [src/commands/api/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/api/push.ts)_
479
+ _See code: [src/commands/api/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/api/push.ts)_
480
+
481
+ ## `lps api remove FILENAME`
482
+
483
+ Remove a custom API route file from WordPress
484
+
485
+ ```
486
+ USAGE
487
+ $ lps api remove FILENAME [--json] [--env <value>] [-d] [-y]
488
+
489
+ ARGUMENTS
490
+ FILENAME The route file to remove, its slug without the .php extension (e.g. "hello" or "invoice-pdf/[order_id]")
491
+
492
+ FLAGS
493
+ -d, --dry-run Show what would change without making changes
494
+ -y, --yes Answer yes to confirmation prompts
495
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
496
+
497
+ GLOBAL FLAGS
498
+ --json Format output as json.
499
+
500
+ DESCRIPTION
501
+ Remove a custom API route file from WordPress
502
+
503
+ ALIASES
504
+ $ lps api remove
505
+
506
+ EXAMPLES
507
+ $ lps api rm hello
508
+
509
+ $ lps api remove hello --yes
510
+ ```
438
511
 
439
512
  ## `lps api rm FILENAME`
440
513
 
@@ -450,7 +523,7 @@ ARGUMENTS
450
523
  FLAGS
451
524
  -d, --dry-run Show what would change without making changes
452
525
  -y, --yes Answer yes to confirmation prompts
453
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
526
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
454
527
 
455
528
  GLOBAL FLAGS
456
529
  --json Format output as json.
@@ -458,13 +531,16 @@ GLOBAL FLAGS
458
531
  DESCRIPTION
459
532
  Remove a custom API route file from WordPress
460
533
 
534
+ ALIASES
535
+ $ lps api remove
536
+
461
537
  EXAMPLES
462
538
  $ lps api rm hello
463
539
 
464
- $ lps api rm hello --yes
540
+ $ lps api remove hello --yes
465
541
  ```
466
542
 
467
- _See code: [src/commands/api/rm.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/api/rm.ts)_
543
+ _See code: [src/commands/api/rm.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/api/rm.ts)_
468
544
 
469
545
  ## `lps api rollback [PATH]`
470
546
 
@@ -480,7 +556,7 @@ ARGUMENTS
480
556
  FLAGS
481
557
  -d, --dry-run Show what would change without making changes
482
558
  -y, --yes Answer yes to confirmation prompts
483
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
559
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
484
560
  --list List available snapshots instead of rolling back
485
561
  --to=<value> Roll back to this snapshot id instead of the most recent one
486
562
 
@@ -500,7 +576,7 @@ EXAMPLES
500
576
  $ lps api rollback --dry-run
501
577
  ```
502
578
 
503
- _See code: [src/commands/api/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/api/rollback.ts)_
579
+ _See code: [src/commands/api/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/api/rollback.ts)_
504
580
 
505
581
  ## `lps app list`
506
582
 
@@ -511,7 +587,7 @@ USAGE
511
587
  $ lps app list [--json] [--env <value>]
512
588
 
513
589
  FLAGS
514
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
590
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
515
591
 
516
592
  GLOBAL FLAGS
517
593
  --json Format output as json.
@@ -523,7 +599,7 @@ EXAMPLES
523
599
  $ lps app list
524
600
  ```
525
601
 
526
- _See code: [src/commands/app/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/app/list.ts)_
602
+ _See code: [src/commands/app/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/app/list.ts)_
527
603
 
528
604
  ## `lps app pull [PATH]`
529
605
 
@@ -539,7 +615,7 @@ ARGUMENTS
539
615
  FLAGS
540
616
  -d, --dry-run Show what would change without making changes
541
617
  -y, --yes Answer yes to confirmation prompts
542
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
618
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
543
619
 
544
620
  GLOBAL FLAGS
545
621
  --json Format output as json.
@@ -551,7 +627,7 @@ EXAMPLES
551
627
  $ lps app pull
552
628
  ```
553
629
 
554
- _See code: [src/commands/app/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/app/pull.ts)_
630
+ _See code: [src/commands/app/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/app/pull.ts)_
555
631
 
556
632
  ## `lps app push [NAME]`
557
633
 
@@ -568,7 +644,7 @@ FLAGS
568
644
  -d, --dry-run Show what would change without making changes
569
645
  -y, --yes Answer yes to confirmation prompts
570
646
  --[no-]build Run the app's package.json build script before pushing
571
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
647
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
572
648
 
573
649
  GLOBAL FLAGS
574
650
  --json Format output as json.
@@ -586,7 +662,7 @@ EXAMPLES
586
662
  $ lps app push --no-build
587
663
  ```
588
664
 
589
- _See code: [src/commands/app/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/app/push.ts)_
665
+ _See code: [src/commands/app/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/app/push.ts)_
590
666
 
591
667
  ## `lps app remove NAME`
592
668
 
@@ -602,7 +678,7 @@ ARGUMENTS
602
678
  FLAGS
603
679
  -d, --dry-run Show what would change without making changes
604
680
  -y, --yes Answer yes to confirmation prompts
605
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
681
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
606
682
 
607
683
  GLOBAL FLAGS
608
684
  --json Format output as json.
@@ -615,7 +691,7 @@ EXAMPLES
615
691
  $ lps app remove search
616
692
  ```
617
693
 
618
- _See code: [src/commands/app/remove.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/app/remove.ts)_
694
+ _See code: [src/commands/app/remove.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/app/remove.ts)_
619
695
 
620
696
  ## `lps composer init`
621
697
 
@@ -627,7 +703,7 @@ USAGE
627
703
 
628
704
  FLAGS
629
705
  -d, --dry-run Show what would change without making changes
630
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
706
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
631
707
 
632
708
  DESCRIPTION
633
709
  Create a composer.json wired to WPackagist for installing WordPress.org plugins and themes
@@ -638,7 +714,7 @@ EXAMPLES
638
714
  $ lps composer init --dry-run
639
715
  ```
640
716
 
641
- _See code: [src/commands/composer/init.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/composer/init.ts)_
717
+ _See code: [src/commands/composer/init.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/composer/init.ts)_
642
718
 
643
719
  ## `lps composer pull`
644
720
 
@@ -650,7 +726,7 @@ USAGE
650
726
 
651
727
  FLAGS
652
728
  -d, --dry-run Show what would change without making changes
653
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
729
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
654
730
 
655
731
  GLOBAL FLAGS
656
732
  --json Format output as json.
@@ -664,7 +740,7 @@ EXAMPLES
664
740
  $ lps composer pull --dry-run
665
741
  ```
666
742
 
667
- _See code: [src/commands/composer/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/composer/pull.ts)_
743
+ _See code: [src/commands/composer/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/composer/pull.ts)_
668
744
 
669
745
  ## `lps composer push`
670
746
 
@@ -677,7 +753,7 @@ USAGE
677
753
  FLAGS
678
754
  -d, --dry-run Show what would change without making changes
679
755
  -y, --yes Answer yes to confirmation prompts
680
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
756
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
681
757
  --force Allow downgrades and take over plugins/themes installed outside Loopress
682
758
 
683
759
  GLOBAL FLAGS
@@ -692,7 +768,223 @@ EXAMPLES
692
768
  $ lps composer push --dry-run
693
769
  ```
694
770
 
695
- _See code: [src/commands/composer/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/composer/push.ts)_
771
+ _See code: [src/commands/composer/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/composer/push.ts)_
772
+
773
+ ## `lps cpt diff [PATH]`
774
+
775
+ Show what differs in custom post types between your local cpt/ files and a WordPress environment, or between two environments
776
+
777
+ ```
778
+ USAGE
779
+ $ lps cpt diff [PATH] [--json] [--env <value>] [--against <value>]
780
+
781
+ ARGUMENTS
782
+ [PATH] Path to cpt directory (overrides project config)
783
+
784
+ FLAGS
785
+ --against=<value> Compare the primary environment against this second environment instead of against local files
786
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
787
+
788
+ GLOBAL FLAGS
789
+ --json Format output as json.
790
+
791
+ DESCRIPTION
792
+ Show what differs in custom post types between your local cpt/ files and a WordPress environment, or between two
793
+ environments
794
+
795
+ EXAMPLES
796
+ $ lps cpt diff
797
+
798
+ $ lps cpt diff --env staging
799
+
800
+ $ lps cpt diff --env staging --against production
801
+ ```
802
+
803
+ _See code: [src/commands/cpt/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/cpt/diff.ts)_
804
+
805
+ ## `lps cpt list`
806
+
807
+ List the post types registered on WordPress and where each comes from (Loopress, WordPress, ACF, CPT UI, a theme or plugin). Only Loopress ones are pulled and pushed.
808
+
809
+ ```
810
+ USAGE
811
+ $ lps cpt list [--json] [--env <value>]
812
+
813
+ FLAGS
814
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
815
+
816
+ GLOBAL FLAGS
817
+ --json Format output as json.
818
+
819
+ DESCRIPTION
820
+ List the post types registered on WordPress and where each comes from (Loopress, WordPress, ACF, CPT UI, a theme or
821
+ plugin). Only Loopress ones are pulled and pushed.
822
+
823
+ EXAMPLES
824
+ $ lps cpt list
825
+ ```
826
+
827
+ _See code: [src/commands/cpt/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/cpt/list.ts)_
828
+
829
+ ## `lps cpt pull [PATH]`
830
+
831
+ Pull the custom post types Loopress manages on WordPress into cpt/<slug>.json files. Post types registered by a theme or another plugin are never pulled, see `lps cpt list`.
832
+
833
+ ```
834
+ USAGE
835
+ $ lps cpt pull [PATH] [--json] [--env <value>] [-d] [-y]
836
+
837
+ ARGUMENTS
838
+ [PATH] Path to the cpt directory (overrides project config)
839
+
840
+ FLAGS
841
+ -d, --dry-run Show what would change without making changes
842
+ -y, --yes Answer yes to confirmation prompts
843
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
844
+
845
+ GLOBAL FLAGS
846
+ --json Format output as json.
847
+
848
+ DESCRIPTION
849
+ Pull the custom post types Loopress manages on WordPress into cpt/<slug>.json files. Post types registered by a theme
850
+ or another plugin are never pulled, see `lps cpt list`.
851
+
852
+ EXAMPLES
853
+ $ lps cpt pull
854
+ ```
855
+
856
+ _See code: [src/commands/cpt/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/cpt/pull.ts)_
857
+
858
+ ## `lps cpt push [PATH]`
859
+
860
+ Push local custom post types (cpt/<slug>.json, register_post_type() arguments) to WordPress. Create or update only, never deletes a post type: use `lps cpt rm` for that.
861
+
862
+ ```
863
+ USAGE
864
+ $ lps cpt push [PATH] [--json] [--env <value>] [-d] [-y]
865
+
866
+ ARGUMENTS
867
+ [PATH] Path to the cpt directory (overrides project config)
868
+
869
+ FLAGS
870
+ -d, --dry-run Show what would change without making changes
871
+ -y, --yes Answer yes to confirmation prompts
872
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
873
+
874
+ GLOBAL FLAGS
875
+ --json Format output as json.
876
+
877
+ DESCRIPTION
878
+ Push local custom post types (cpt/<slug>.json, register_post_type() arguments) to WordPress. Create or update only,
879
+ never deletes a post type: use `lps cpt rm` for that.
880
+
881
+ EXAMPLES
882
+ $ lps cpt push
883
+ ```
884
+
885
+ _See code: [src/commands/cpt/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/cpt/push.ts)_
886
+
887
+ ## `lps cpt remove SLUG`
888
+
889
+ Stop registering a Loopress custom post type on WordPress. Its posts are kept in the database, hidden until the post type is pushed again.
890
+
891
+ ```
892
+ USAGE
893
+ $ lps cpt remove SLUG [--json] [--env <value>] [-d] [-y]
894
+
895
+ ARGUMENTS
896
+ SLUG The post type slug, its cpt/ file name without .json
897
+
898
+ FLAGS
899
+ -d, --dry-run Show what would change without making changes
900
+ -y, --yes Answer yes to confirmation prompts
901
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
902
+
903
+ GLOBAL FLAGS
904
+ --json Format output as json.
905
+
906
+ DESCRIPTION
907
+ Stop registering a Loopress custom post type on WordPress. Its posts are kept in the database, hidden until the post
908
+ type is pushed again.
909
+
910
+ ALIASES
911
+ $ lps cpt remove
912
+
913
+ EXAMPLES
914
+ $ lps cpt rm <slug>
915
+
916
+ $ lps cpt remove <slug> --yes
917
+ ```
918
+
919
+ ## `lps cpt rm SLUG`
920
+
921
+ Stop registering a Loopress custom post type on WordPress. Its posts are kept in the database, hidden until the post type is pushed again.
922
+
923
+ ```
924
+ USAGE
925
+ $ lps cpt rm SLUG [--json] [--env <value>] [-d] [-y]
926
+
927
+ ARGUMENTS
928
+ SLUG The post type slug, its cpt/ file name without .json
929
+
930
+ FLAGS
931
+ -d, --dry-run Show what would change without making changes
932
+ -y, --yes Answer yes to confirmation prompts
933
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
934
+
935
+ GLOBAL FLAGS
936
+ --json Format output as json.
937
+
938
+ DESCRIPTION
939
+ Stop registering a Loopress custom post type on WordPress. Its posts are kept in the database, hidden until the post
940
+ type is pushed again.
941
+
942
+ ALIASES
943
+ $ lps cpt remove
944
+
945
+ EXAMPLES
946
+ $ lps cpt rm <slug>
947
+
948
+ $ lps cpt remove <slug> --yes
949
+ ```
950
+
951
+ _See code: [src/commands/cpt/rm.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/cpt/rm.ts)_
952
+
953
+ ## `lps cpt rollback [PATH]`
954
+
955
+ Restore custom post types to a snapshot taken automatically before an earlier `lps cpt push`
956
+
957
+ ```
958
+ USAGE
959
+ $ lps cpt rollback [PATH] [--json] [--env <value>] [-d] [-y] [--list] [--to <value>]
960
+
961
+ ARGUMENTS
962
+ [PATH] Path to cpt directory (overrides project config)
963
+
964
+ FLAGS
965
+ -d, --dry-run Show what would change without making changes
966
+ -y, --yes Answer yes to confirmation prompts
967
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
968
+ --list List available snapshots instead of rolling back
969
+ --to=<value> Roll back to this snapshot id instead of the most recent one
970
+
971
+ GLOBAL FLAGS
972
+ --json Format output as json.
973
+
974
+ DESCRIPTION
975
+ Restore custom post types to a snapshot taken automatically before an earlier `lps cpt push`
976
+
977
+ EXAMPLES
978
+ $ lps cpt rollback
979
+
980
+ $ lps cpt rollback --list
981
+
982
+ $ lps cpt rollback --to 1732000000000
983
+
984
+ $ lps cpt rollback --dry-run
985
+ ```
986
+
987
+ _See code: [src/commands/cpt/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/cpt/rollback.ts)_
696
988
 
697
989
  ## `lps dev`
698
990
 
@@ -703,9 +995,10 @@ USAGE
703
995
  $ lps dev [--only <value>] [--skip <value>]
704
996
 
705
997
  FLAGS
706
- --only=<value> Only watch these resource types (comma-separated): snippets, templates, parts, pages, api, hooks,
707
- plugins
708
- --skip=<value> Skip these resource types (comma-separated): snippets, templates, parts, pages, api, hooks, plugins
998
+ --only=<value> Only watch these resource types (comma-separated): snippets, templates, parts, css, blocks, pages,
999
+ api, hooks, plugins
1000
+ --skip=<value> Skip these resource types (comma-separated): snippets, templates, parts, css, blocks, pages, api,
1001
+ hooks, plugins
709
1002
 
710
1003
  DESCRIPTION
711
1004
  Watch project files and push changes to the local WordPress instance as they happen. Always targets the "local"
@@ -719,34 +1012,37 @@ EXAMPLES
719
1012
  $ lps dev --skip=plugins
720
1013
  ```
721
1014
 
722
- _See code: [src/commands/dev.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/dev.ts)_
1015
+ _See code: [src/commands/dev.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/dev.ts)_
723
1016
 
724
1017
  ## `lps diff`
725
1018
 
726
- Show what differs between your local tracked files and a WordPress environment, or between two environments. Covers snippets, forms, ACF, API routes, Hooks, templates, template parts, pages, SEO, Options, Menus, Theme styles, and Composer. Plugins and themes have their own `lps plugin status` / `lps theme status`. Exit code: 0 in sync, 1 on drift, 2 when a resource could not be compared, so it doubles as a CI drift gate.
1019
+ Show what differs between your local tracked files and a WordPress environment, or between two environments. Covers snippets, forms, ACF, API routes, Hooks, templates, template parts, pages, Options, Menus, Theme styles, and Composer. Plugins and themes have their own `lps plugin status` / `lps theme status`. Exit code: 0 in sync, 1 on drift, 2 when a resource could not be compared, so it doubles as a CI drift gate.
727
1020
 
728
1021
  ```
729
1022
  USAGE
730
1023
  $ lps diff [--json] [--env <value>] [--against <value>] [--only
731
- snippet|form|acf|api|hook|template|part|page|seo|menu|option|theme-styles|composer...] [--skip
732
- snippet|form|acf|api|hook|template|part|page|seo|menu|option|theme-styles|composer...]
1024
+ snippet|form|acf|api|hook|template|part|page|menu|cpt|taxonomy|meta|role|pattern|option|theme-styles|composer...]
1025
+ [--skip
1026
+ snippet|form|acf|api|hook|template|part|page|menu|cpt|taxonomy|meta|role|pattern|option|theme-styles|composer...]
733
1027
 
734
1028
  FLAGS
735
1029
  --against=<value> Compare the primary environment against this second environment instead of against local files
736
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1030
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
737
1031
  --only=<option>... Only compare these resources
738
- <options: snippet|form|acf|api|hook|template|part|page|seo|menu|option|theme-styles|composer>
1032
+ <options: snippet|form|acf|api|hook|template|part|page|menu|cpt|taxonomy|meta|role|pattern|option|
1033
+ theme-styles|composer>
739
1034
  --skip=<option>... Compare every resource except these
740
- <options: snippet|form|acf|api|hook|template|part|page|seo|menu|option|theme-styles|composer>
1035
+ <options: snippet|form|acf|api|hook|template|part|page|menu|cpt|taxonomy|meta|role|pattern|option|
1036
+ theme-styles|composer>
741
1037
 
742
1038
  GLOBAL FLAGS
743
1039
  --json Format output as json.
744
1040
 
745
1041
  DESCRIPTION
746
1042
  Show what differs between your local tracked files and a WordPress environment, or between two environments. Covers
747
- snippets, forms, ACF, API routes, Hooks, templates, template parts, pages, SEO, Options, Menus, Theme styles, and
748
- Composer. Plugins and themes have their own `lps plugin status` / `lps theme status`. Exit code: 0 in sync, 1 on
749
- drift, 2 when a resource could not be compared, so it doubles as a CI drift gate.
1043
+ snippets, forms, ACF, API routes, Hooks, templates, template parts, pages, Options, Menus, Theme styles, and Composer.
1044
+ Plugins and themes have their own `lps plugin status` / `lps theme status`. Exit code: 0 in sync, 1 on drift, 2 when a
1045
+ resource could not be compared, so it doubles as a CI drift gate.
750
1046
 
751
1047
  EXAMPLES
752
1048
  $ lps diff
@@ -760,7 +1056,7 @@ EXAMPLES
760
1056
  $ lps diff --skip composer
761
1057
  ```
762
1058
 
763
- _See code: [src/commands/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/diff.ts)_
1059
+ _See code: [src/commands/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/diff.ts)_
764
1060
 
765
1061
  ## `lps doctor`
766
1062
 
@@ -771,7 +1067,7 @@ USAGE
771
1067
  $ lps doctor [--json] [--env <value>]
772
1068
 
773
1069
  FLAGS
774
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1070
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
775
1071
 
776
1072
  GLOBAL FLAGS
777
1073
  --json Format output as json.
@@ -785,7 +1081,7 @@ EXAMPLES
785
1081
  $ lps doctor --env production
786
1082
  ```
787
1083
 
788
- _See code: [src/commands/doctor.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/doctor.ts)_
1084
+ _See code: [src/commands/doctor.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/doctor.ts)_
789
1085
 
790
1086
  ## `lps form diff [PATH]`
791
1087
 
@@ -800,7 +1096,7 @@ ARGUMENTS
800
1096
 
801
1097
  FLAGS
802
1098
  --against=<value> Compare the primary environment against this second environment instead of against local files
803
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1099
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
804
1100
 
805
1101
  GLOBAL FLAGS
806
1102
  --json Format output as json.
@@ -816,7 +1112,7 @@ EXAMPLES
816
1112
  $ lps form diff --env staging --against production
817
1113
  ```
818
1114
 
819
- _See code: [src/commands/form/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/form/diff.ts)_
1115
+ _See code: [src/commands/form/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/form/diff.ts)_
820
1116
 
821
1117
  ## `lps form list`
822
1118
 
@@ -827,7 +1123,7 @@ USAGE
827
1123
  $ lps form list [--json] [--env <value>]
828
1124
 
829
1125
  FLAGS
830
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1126
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
831
1127
 
832
1128
  GLOBAL FLAGS
833
1129
  --json Format output as json.
@@ -839,7 +1135,7 @@ EXAMPLES
839
1135
  $ lps form list
840
1136
  ```
841
1137
 
842
- _See code: [src/commands/form/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/form/list.ts)_
1138
+ _See code: [src/commands/form/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/form/list.ts)_
843
1139
 
844
1140
  ## `lps form pull [PATH]`
845
1141
 
@@ -847,7 +1143,7 @@ Pull forms from WordPress
847
1143
 
848
1144
  ```
849
1145
  USAGE
850
- $ lps form pull [PATH] [--env <value>] [-d] [-y]
1146
+ $ lps form pull [PATH] [--json] [--env <value>] [-d] [-y]
851
1147
 
852
1148
  ARGUMENTS
853
1149
  [PATH] Path to forms directory (overrides project config)
@@ -855,7 +1151,10 @@ ARGUMENTS
855
1151
  FLAGS
856
1152
  -d, --dry-run Show what would change without making changes
857
1153
  -y, --yes Answer yes to confirmation prompts
858
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1154
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1155
+
1156
+ GLOBAL FLAGS
1157
+ --json Format output as json.
859
1158
 
860
1159
  DESCRIPTION
861
1160
  Pull forms from WordPress
@@ -864,7 +1163,7 @@ EXAMPLES
864
1163
  $ lps form pull
865
1164
  ```
866
1165
 
867
- _See code: [src/commands/form/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/form/pull.ts)_
1166
+ _See code: [src/commands/form/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/form/pull.ts)_
868
1167
 
869
1168
  ## `lps form push [PATH]`
870
1169
 
@@ -872,7 +1171,7 @@ Push forms to WordPress. Local files created or updated remotely are renamed on
872
1171
 
873
1172
  ```
874
1173
  USAGE
875
- $ lps form push [PATH] [--env <value>] [-d] [-y] [--allow-notifications]
1174
+ $ lps form push [PATH] [--json] [--env <value>] [-d] [-y] [--allow-notifications]
876
1175
 
877
1176
  ARGUMENTS
878
1177
  [PATH] Path to forms directory (overrides project config)
@@ -883,7 +1182,10 @@ FLAGS
883
1182
  --allow-notifications Also push each form's notification and confirmation settings (recipients, sender,
884
1183
  messages). Off by default: the server keeps its own so a stray push can't redirect
885
1184
  submissions.
886
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1185
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1186
+
1187
+ GLOBAL FLAGS
1188
+ --json Format output as json.
887
1189
 
888
1190
  DESCRIPTION
889
1191
  Push forms to WordPress. Local files created or updated remotely are renamed on disk to the `<id>-<slug>.json`
@@ -895,7 +1197,7 @@ EXAMPLES
895
1197
  $ lps form push --allow-notifications
896
1198
  ```
897
1199
 
898
- _See code: [src/commands/form/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/form/push.ts)_
1200
+ _See code: [src/commands/form/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/form/push.ts)_
899
1201
 
900
1202
  ## `lps form rollback [PATH]`
901
1203
 
@@ -911,7 +1213,7 @@ ARGUMENTS
911
1213
  FLAGS
912
1214
  -d, --dry-run Show what would change without making changes
913
1215
  -y, --yes Answer yes to confirmation prompts
914
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1216
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
915
1217
  --list List available snapshots instead of rolling back
916
1218
  --to=<value> Roll back to this snapshot id instead of the most recent one
917
1219
 
@@ -931,7 +1233,7 @@ EXAMPLES
931
1233
  $ lps form rollback --dry-run
932
1234
  ```
933
1235
 
934
- _See code: [src/commands/form/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/form/rollback.ts)_
1236
+ _See code: [src/commands/form/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/form/rollback.ts)_
935
1237
 
936
1238
  ## `lps help [COMMAND]`
937
1239
 
@@ -951,7 +1253,7 @@ DESCRIPTION
951
1253
  Display help for lps.
952
1254
  ```
953
1255
 
954
- _See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/7.0.0/src/commands/help.ts)_
1256
+ _See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/7.0.4/src/commands/help.ts)_
955
1257
 
956
1258
  ## `lps hook diff [PATH]`
957
1259
 
@@ -966,7 +1268,7 @@ ARGUMENTS
966
1268
 
967
1269
  FLAGS
968
1270
  --against=<value> Compare the primary environment against this second environment instead of against local files
969
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1271
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
970
1272
 
971
1273
  GLOBAL FLAGS
972
1274
  --json Format output as json.
@@ -982,7 +1284,7 @@ EXAMPLES
982
1284
  $ lps hook diff --env staging --against production
983
1285
  ```
984
1286
 
985
- _See code: [src/commands/hook/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/hook/diff.ts)_
1287
+ _See code: [src/commands/hook/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/hook/diff.ts)_
986
1288
 
987
1289
  ## `lps hook list`
988
1290
 
@@ -993,7 +1295,7 @@ USAGE
993
1295
  $ lps hook list [--json] [--env <value>]
994
1296
 
995
1297
  FLAGS
996
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1298
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
997
1299
 
998
1300
  GLOBAL FLAGS
999
1301
  --json Format output as json.
@@ -1005,7 +1307,7 @@ EXAMPLES
1005
1307
  $ lps hook list
1006
1308
  ```
1007
1309
 
1008
- _See code: [src/commands/hook/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/hook/list.ts)_
1310
+ _See code: [src/commands/hook/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/hook/list.ts)_
1009
1311
 
1010
1312
  ## `lps hook pull [PATH]`
1011
1313
 
@@ -1021,7 +1323,7 @@ ARGUMENTS
1021
1323
  FLAGS
1022
1324
  -d, --dry-run Show what would change without making changes
1023
1325
  -y, --yes Answer yes to confirmation prompts
1024
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1326
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1025
1327
 
1026
1328
  GLOBAL FLAGS
1027
1329
  --json Format output as json.
@@ -1035,7 +1337,7 @@ EXAMPLES
1035
1337
  $ lps hook pull --path ./hooks
1036
1338
  ```
1037
1339
 
1038
- _See code: [src/commands/hook/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/hook/pull.ts)_
1340
+ _See code: [src/commands/hook/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/hook/pull.ts)_
1039
1341
 
1040
1342
  ## `lps hook push [PATH]`
1041
1343
 
@@ -1051,7 +1353,7 @@ ARGUMENTS
1051
1353
  FLAGS
1052
1354
  -d, --dry-run Show what would change without making changes
1053
1355
  -y, --yes Answer yes to confirmation prompts
1054
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1356
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1055
1357
  --prune Delete server-side hook files not present locally after pushing
1056
1358
 
1057
1359
  GLOBAL FLAGS
@@ -1068,7 +1370,38 @@ EXAMPLES
1068
1370
  $ lps hook push --prune
1069
1371
  ```
1070
1372
 
1071
- _See code: [src/commands/hook/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/hook/push.ts)_
1373
+ _See code: [src/commands/hook/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/hook/push.ts)_
1374
+
1375
+ ## `lps hook remove FILENAME`
1376
+
1377
+ Remove a hook file (action, filter, cron) from WordPress
1378
+
1379
+ ```
1380
+ USAGE
1381
+ $ lps hook remove FILENAME [--json] [--env <value>] [-d] [-y]
1382
+
1383
+ ARGUMENTS
1384
+ FILENAME The hook file to remove, its slug without the .php extension (e.g. "hello" or "invoice-pdf/[order_id]")
1385
+
1386
+ FLAGS
1387
+ -d, --dry-run Show what would change without making changes
1388
+ -y, --yes Answer yes to confirmation prompts
1389
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1390
+
1391
+ GLOBAL FLAGS
1392
+ --json Format output as json.
1393
+
1394
+ DESCRIPTION
1395
+ Remove a hook file (action, filter, cron) from WordPress
1396
+
1397
+ ALIASES
1398
+ $ lps hook remove
1399
+
1400
+ EXAMPLES
1401
+ $ lps hook rm hello
1402
+
1403
+ $ lps hook remove hello --yes
1404
+ ```
1072
1405
 
1073
1406
  ## `lps hook rm FILENAME`
1074
1407
 
@@ -1084,7 +1417,7 @@ ARGUMENTS
1084
1417
  FLAGS
1085
1418
  -d, --dry-run Show what would change without making changes
1086
1419
  -y, --yes Answer yes to confirmation prompts
1087
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1420
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1088
1421
 
1089
1422
  GLOBAL FLAGS
1090
1423
  --json Format output as json.
@@ -1092,13 +1425,16 @@ GLOBAL FLAGS
1092
1425
  DESCRIPTION
1093
1426
  Remove a hook file (action, filter, cron) from WordPress
1094
1427
 
1428
+ ALIASES
1429
+ $ lps hook remove
1430
+
1095
1431
  EXAMPLES
1096
1432
  $ lps hook rm hello
1097
1433
 
1098
- $ lps hook rm hello --yes
1434
+ $ lps hook remove hello --yes
1099
1435
  ```
1100
1436
 
1101
- _See code: [src/commands/hook/rm.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/hook/rm.ts)_
1437
+ _See code: [src/commands/hook/rm.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/hook/rm.ts)_
1102
1438
 
1103
1439
  ## `lps hook rollback [PATH]`
1104
1440
 
@@ -1114,7 +1450,7 @@ ARGUMENTS
1114
1450
  FLAGS
1115
1451
  -d, --dry-run Show what would change without making changes
1116
1452
  -y, --yes Answer yes to confirmation prompts
1117
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1453
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1118
1454
  --list List available snapshots instead of rolling back
1119
1455
  --to=<value> Roll back to this snapshot id instead of the most recent one
1120
1456
 
@@ -1134,7 +1470,7 @@ EXAMPLES
1134
1470
  $ lps hook rollback --dry-run
1135
1471
  ```
1136
1472
 
1137
- _See code: [src/commands/hook/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/hook/rollback.ts)_
1473
+ _See code: [src/commands/hook/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/hook/rollback.ts)_
1138
1474
 
1139
1475
  ## `lps init`
1140
1476
 
@@ -1151,7 +1487,7 @@ EXAMPLES
1151
1487
  $ lps init
1152
1488
  ```
1153
1489
 
1154
- _See code: [src/commands/init.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/init.ts)_
1490
+ _See code: [src/commands/init.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/init.ts)_
1155
1491
 
1156
1492
  ## `lps login`
1157
1493
 
@@ -1168,7 +1504,7 @@ EXAMPLES
1168
1504
  $ lps login
1169
1505
  ```
1170
1506
 
1171
- _See code: [src/commands/login.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/login.ts)_
1507
+ _See code: [src/commands/login.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/login.ts)_
1172
1508
 
1173
1509
  ## `lps logout`
1174
1510
 
@@ -1185,7 +1521,7 @@ EXAMPLES
1185
1521
  $ lps logout
1186
1522
  ```
1187
1523
 
1188
- _See code: [src/commands/logout.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/logout.ts)_
1524
+ _See code: [src/commands/logout.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/logout.ts)_
1189
1525
 
1190
1526
  ## `lps menu diff [PATH]`
1191
1527
 
@@ -1200,7 +1536,7 @@ ARGUMENTS
1200
1536
 
1201
1537
  FLAGS
1202
1538
  --against=<value> Compare the primary environment against this second environment instead of against local files
1203
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1539
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1204
1540
 
1205
1541
  GLOBAL FLAGS
1206
1542
  --json Format output as json.
@@ -1217,7 +1553,7 @@ EXAMPLES
1217
1553
  $ lps menu diff --env staging --against production
1218
1554
  ```
1219
1555
 
1220
- _See code: [src/commands/menu/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/menu/diff.ts)_
1556
+ _See code: [src/commands/menu/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/menu/diff.ts)_
1221
1557
 
1222
1558
  ## `lps menu list`
1223
1559
 
@@ -1228,7 +1564,7 @@ USAGE
1228
1564
  $ lps menu list [--json] [--env <value>]
1229
1565
 
1230
1566
  FLAGS
1231
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1567
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1232
1568
 
1233
1569
  GLOBAL FLAGS
1234
1570
  --json Format output as json.
@@ -1240,7 +1576,7 @@ EXAMPLES
1240
1576
  $ lps menu list
1241
1577
  ```
1242
1578
 
1243
- _See code: [src/commands/menu/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/menu/list.ts)_
1579
+ _See code: [src/commands/menu/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/menu/list.ts)_
1244
1580
 
1245
1581
  ## `lps menu pull [PATH]`
1246
1582
 
@@ -1248,7 +1584,7 @@ Pull nav menus and the active theme menu locations from WordPress
1248
1584
 
1249
1585
  ```
1250
1586
  USAGE
1251
- $ lps menu pull [PATH] [--env <value>] [-d] [-y]
1587
+ $ lps menu pull [PATH] [--json] [--env <value>] [-d] [-y]
1252
1588
 
1253
1589
  ARGUMENTS
1254
1590
  [PATH] Path to menus directory (overrides project config)
@@ -1256,7 +1592,10 @@ ARGUMENTS
1256
1592
  FLAGS
1257
1593
  -d, --dry-run Show what would change without making changes
1258
1594
  -y, --yes Answer yes to confirmation prompts
1259
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1595
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1596
+
1597
+ GLOBAL FLAGS
1598
+ --json Format output as json.
1260
1599
 
1261
1600
  DESCRIPTION
1262
1601
  Pull nav menus and the active theme menu locations from WordPress
@@ -1265,7 +1604,7 @@ EXAMPLES
1265
1604
  $ lps menu pull
1266
1605
  ```
1267
1606
 
1268
- _See code: [src/commands/menu/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/menu/pull.ts)_
1607
+ _See code: [src/commands/menu/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/menu/pull.ts)_
1269
1608
 
1270
1609
  ## `lps menu push [PATH]`
1271
1610
 
@@ -1273,7 +1612,7 @@ Push local nav menus and the active theme menu locations to WordPress. Each menu
1273
1612
 
1274
1613
  ```
1275
1614
  USAGE
1276
- $ lps menu push [PATH] [--env <value>] [-d] [-y]
1615
+ $ lps menu push [PATH] [--json] [--env <value>] [-d] [-y]
1277
1616
 
1278
1617
  ARGUMENTS
1279
1618
  [PATH] Path to menus directory (overrides project config)
@@ -1281,7 +1620,10 @@ ARGUMENTS
1281
1620
  FLAGS
1282
1621
  -d, --dry-run Show what would change without making changes
1283
1622
  -y, --yes Answer yes to confirmation prompts
1284
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1623
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1624
+
1625
+ GLOBAL FLAGS
1626
+ --json Format output as json.
1285
1627
 
1286
1628
  DESCRIPTION
1287
1629
  Push local nav menus and the active theme menu locations to WordPress. Each menu's post_type/taxonomy items are
@@ -1292,7 +1634,7 @@ EXAMPLES
1292
1634
  $ lps menu push
1293
1635
  ```
1294
1636
 
1295
- _See code: [src/commands/menu/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/menu/push.ts)_
1637
+ _See code: [src/commands/menu/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/menu/push.ts)_
1296
1638
 
1297
1639
  ## `lps menu rollback [PATH]`
1298
1640
 
@@ -1308,7 +1650,7 @@ ARGUMENTS
1308
1650
  FLAGS
1309
1651
  -d, --dry-run Show what would change without making changes
1310
1652
  -y, --yes Answer yes to confirmation prompts
1311
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1653
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1312
1654
  --list List available snapshots instead of rolling back
1313
1655
  --to=<value> Roll back to this snapshot id instead of the most recent one
1314
1656
 
@@ -1328,92 +1670,308 @@ EXAMPLES
1328
1670
  $ lps menu rollback --dry-run
1329
1671
  ```
1330
1672
 
1331
- _See code: [src/commands/menu/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/menu/rollback.ts)_
1673
+ _See code: [src/commands/menu/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/menu/rollback.ts)_
1332
1674
 
1333
- ## `lps option add NAME`
1675
+ ## `lps meta diff [PATH]`
1334
1676
 
1335
- Fetch a WordPress option by name and start tracking it locally. Run `lps option list` first to find the name: this copies a raw value across environments, verify it does not embed post/user IDs before pushing it elsewhere.
1677
+ Show what differs in post meta keys between your local meta/ files and a WordPress environment, or between two environments
1336
1678
 
1337
1679
  ```
1338
1680
  USAGE
1339
- $ lps option add NAME [--json] [--env <value>] [-d] [--path <value>]
1681
+ $ lps meta diff [PATH] [--json] [--env <value>] [--against <value>]
1340
1682
 
1341
1683
  ARGUMENTS
1342
- NAME Option name to start tracking (see `lps option list`)
1684
+ [PATH] Path to meta directory (overrides project config)
1343
1685
 
1344
1686
  FLAGS
1345
- -d, --dry-run Show what would change without making changes
1346
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1347
- --path=<value> Path to options directory (overrides project config)
1687
+ --against=<value> Compare the primary environment against this second environment instead of against local files
1688
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1348
1689
 
1349
1690
  GLOBAL FLAGS
1350
1691
  --json Format output as json.
1351
1692
 
1352
1693
  DESCRIPTION
1353
- Fetch a WordPress option by name and start tracking it locally. Run `lps option list` first to find the name: this
1354
- copies a raw value across environments, verify it does not embed post/user IDs before pushing it elsewhere.
1694
+ Show what differs in post meta keys between your local meta/ files and a WordPress environment, or between two
1695
+ environments
1355
1696
 
1356
1697
  EXAMPLES
1357
- $ lps option add wpseo_titles
1698
+ $ lps meta diff
1358
1699
 
1359
- $ lps option add siteurl
1700
+ $ lps meta diff --env staging
1701
+
1702
+ $ lps meta diff --env staging --against production
1360
1703
  ```
1361
1704
 
1362
- _See code: [src/commands/option/add.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/option/add.ts)_
1705
+ _See code: [src/commands/meta/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/meta/diff.ts)_
1363
1706
 
1364
- ## `lps option diff [PATH]`
1707
+ ## `lps meta list`
1365
1708
 
1366
- Show what differs, for locally tracked options, between your local files and a WordPress environment, or between two environments
1709
+ List the meta keys registered for each post type on WordPress (with register_post_meta()), and whether Loopress declares them. Only Loopress ones are pulled and pushed.
1367
1710
 
1368
1711
  ```
1369
1712
  USAGE
1370
- $ lps option diff [PATH] [--json] [--env <value>] [--against <value>]
1371
-
1372
- ARGUMENTS
1373
- [PATH] Path to options directory (overrides project config)
1713
+ $ lps meta list [--json] [--env <value>]
1374
1714
 
1375
1715
  FLAGS
1376
- --against=<value> Compare the primary environment against this second environment instead of against local files
1377
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1716
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1378
1717
 
1379
1718
  GLOBAL FLAGS
1380
1719
  --json Format output as json.
1381
1720
 
1382
1721
  DESCRIPTION
1383
- Show what differs, for locally tracked options, between your local files and a WordPress environment, or between two
1384
- environments
1722
+ List the meta keys registered for each post type on WordPress (with register_post_meta()), and whether Loopress
1723
+ declares them. Only Loopress ones are pulled and pushed.
1385
1724
 
1386
1725
  EXAMPLES
1387
- $ lps option diff
1388
-
1389
- $ lps option diff --env staging
1390
-
1391
- $ lps option diff --env staging --against production
1726
+ $ lps meta list
1392
1727
  ```
1393
1728
 
1394
- _See code: [src/commands/option/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/option/diff.ts)_
1729
+ _See code: [src/commands/meta/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/meta/list.ts)_
1395
1730
 
1396
- ## `lps option list`
1731
+ ## `lps meta pull [PATH]`
1397
1732
 
1398
- List WordPress option names currently on the site (names and autoload only, never values). CORE flags a WordPress-native default (certain); SOURCE? is a best-effort guessed plugin slug, found by name or by scanning active plugins' own PHP source (uncertain unless confirmed, occasionally wrong or blank, never trust it over CORE); PLUGIN is that slug's own declared display name, a label only, no confidence of its own. Use this to find the name of the option you want, then `lps option add <name>` to track it.
1733
+ Pull the post meta keys Loopress manages on WordPress into meta/<post-type>.json files, never their values. Keys registered by a theme or another plugin are never pulled, see `lps meta list`.
1399
1734
 
1400
1735
  ```
1401
1736
  USAGE
1402
- $ lps option list [--json] [--env <value>] [--no-core]
1737
+ $ lps meta pull [PATH] [--json] [--env <value>] [-d] [-y]
1738
+
1739
+ ARGUMENTS
1740
+ [PATH] Path to the meta directory (overrides project config)
1403
1741
 
1404
1742
  FLAGS
1405
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1406
- --no-core Exclude WordPress-native default options and the CORE column from the output, including --json
1743
+ -d, --dry-run Show what would change without making changes
1744
+ -y, --yes Answer yes to confirmation prompts
1745
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1407
1746
 
1408
1747
  GLOBAL FLAGS
1409
1748
  --json Format output as json.
1410
1749
 
1411
1750
  DESCRIPTION
1412
- List WordPress option names currently on the site (names and autoload only, never values). CORE flags a
1413
- WordPress-native default (certain); SOURCE? is a best-effort guessed plugin slug, found by name or by scanning active
1414
- plugins' own PHP source (uncertain unless confirmed, occasionally wrong or blank, never trust it over CORE); PLUGIN is
1415
- that slug's own declared display name, a label only, no confidence of its own. Use this to find the name of the option
1416
- you want, then `lps option add <name>` to track it.
1751
+ Pull the post meta keys Loopress manages on WordPress into meta/<post-type>.json files, never their values. Keys
1752
+ registered by a theme or another plugin are never pulled, see `lps meta list`.
1753
+
1754
+ EXAMPLES
1755
+ $ lps meta pull
1756
+ ```
1757
+
1758
+ _See code: [src/commands/meta/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/meta/pull.ts)_
1759
+
1760
+ ## `lps meta push [PATH]`
1761
+
1762
+ Push local post meta keys (meta/<post-type>.json, each key mapped to its register_post_meta() arguments) to WordPress. Create or update only, never deletes (use `lps meta rm`), never touches meta values.
1763
+
1764
+ ```
1765
+ USAGE
1766
+ $ lps meta push [PATH] [--json] [--env <value>] [-d] [-y]
1767
+
1768
+ ARGUMENTS
1769
+ [PATH] Path to the meta directory (overrides project config)
1770
+
1771
+ FLAGS
1772
+ -d, --dry-run Show what would change without making changes
1773
+ -y, --yes Answer yes to confirmation prompts
1774
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1775
+
1776
+ GLOBAL FLAGS
1777
+ --json Format output as json.
1778
+
1779
+ DESCRIPTION
1780
+ Push local post meta keys (meta/<post-type>.json, each key mapped to its register_post_meta() arguments) to WordPress.
1781
+ Create or update only, never deletes (use `lps meta rm`), never touches meta values.
1782
+
1783
+ EXAMPLES
1784
+ $ lps meta push
1785
+ ```
1786
+
1787
+ _See code: [src/commands/meta/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/meta/push.ts)_
1788
+
1789
+ ## `lps meta remove SLUG`
1790
+
1791
+ Stop registering the Loopress meta keys of one post type (its meta/<post-type>.json file) on WordPress. Their values are kept in the database.
1792
+
1793
+ ```
1794
+ USAGE
1795
+ $ lps meta remove SLUG [--json] [--env <value>] [-d] [-y]
1796
+
1797
+ ARGUMENTS
1798
+ SLUG The post meta slug, its meta/ file name without .json
1799
+
1800
+ FLAGS
1801
+ -d, --dry-run Show what would change without making changes
1802
+ -y, --yes Answer yes to confirmation prompts
1803
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1804
+
1805
+ GLOBAL FLAGS
1806
+ --json Format output as json.
1807
+
1808
+ DESCRIPTION
1809
+ Stop registering the Loopress meta keys of one post type (its meta/<post-type>.json file) on WordPress. Their values
1810
+ are kept in the database.
1811
+
1812
+ ALIASES
1813
+ $ lps meta remove
1814
+
1815
+ EXAMPLES
1816
+ $ lps meta rm <slug>
1817
+
1818
+ $ lps meta remove <slug> --yes
1819
+ ```
1820
+
1821
+ ## `lps meta rm SLUG`
1822
+
1823
+ Stop registering the Loopress meta keys of one post type (its meta/<post-type>.json file) on WordPress. Their values are kept in the database.
1824
+
1825
+ ```
1826
+ USAGE
1827
+ $ lps meta rm SLUG [--json] [--env <value>] [-d] [-y]
1828
+
1829
+ ARGUMENTS
1830
+ SLUG The post meta slug, its meta/ file name without .json
1831
+
1832
+ FLAGS
1833
+ -d, --dry-run Show what would change without making changes
1834
+ -y, --yes Answer yes to confirmation prompts
1835
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1836
+
1837
+ GLOBAL FLAGS
1838
+ --json Format output as json.
1839
+
1840
+ DESCRIPTION
1841
+ Stop registering the Loopress meta keys of one post type (its meta/<post-type>.json file) on WordPress. Their values
1842
+ are kept in the database.
1843
+
1844
+ ALIASES
1845
+ $ lps meta remove
1846
+
1847
+ EXAMPLES
1848
+ $ lps meta rm <slug>
1849
+
1850
+ $ lps meta remove <slug> --yes
1851
+ ```
1852
+
1853
+ _See code: [src/commands/meta/rm.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/meta/rm.ts)_
1854
+
1855
+ ## `lps meta rollback [PATH]`
1856
+
1857
+ Restore post meta keys to a snapshot taken automatically before an earlier `lps meta push`
1858
+
1859
+ ```
1860
+ USAGE
1861
+ $ lps meta rollback [PATH] [--json] [--env <value>] [-d] [-y] [--list] [--to <value>]
1862
+
1863
+ ARGUMENTS
1864
+ [PATH] Path to meta directory (overrides project config)
1865
+
1866
+ FLAGS
1867
+ -d, --dry-run Show what would change without making changes
1868
+ -y, --yes Answer yes to confirmation prompts
1869
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1870
+ --list List available snapshots instead of rolling back
1871
+ --to=<value> Roll back to this snapshot id instead of the most recent one
1872
+
1873
+ GLOBAL FLAGS
1874
+ --json Format output as json.
1875
+
1876
+ DESCRIPTION
1877
+ Restore post meta keys to a snapshot taken automatically before an earlier `lps meta push`
1878
+
1879
+ EXAMPLES
1880
+ $ lps meta rollback
1881
+
1882
+ $ lps meta rollback --list
1883
+
1884
+ $ lps meta rollback --to 1732000000000
1885
+
1886
+ $ lps meta rollback --dry-run
1887
+ ```
1888
+
1889
+ _See code: [src/commands/meta/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/meta/rollback.ts)_
1890
+
1891
+ ## `lps option add NAME`
1892
+
1893
+ Fetch a WordPress option by name and start tracking it locally. Run `lps option list` first to find the name: this copies a raw value across environments, verify it does not embed post/user IDs before pushing it elsewhere.
1894
+
1895
+ ```
1896
+ USAGE
1897
+ $ lps option add NAME [--json] [--env <value>] [-d] [--path <value>]
1898
+
1899
+ ARGUMENTS
1900
+ NAME Option name to start tracking (see `lps option list`)
1901
+
1902
+ FLAGS
1903
+ -d, --dry-run Show what would change without making changes
1904
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1905
+ --path=<value> Path to options directory (overrides project config)
1906
+
1907
+ GLOBAL FLAGS
1908
+ --json Format output as json.
1909
+
1910
+ DESCRIPTION
1911
+ Fetch a WordPress option by name and start tracking it locally. Run `lps option list` first to find the name: this
1912
+ copies a raw value across environments, verify it does not embed post/user IDs before pushing it elsewhere.
1913
+
1914
+ EXAMPLES
1915
+ $ lps option add wpseo_titles
1916
+
1917
+ $ lps option add siteurl
1918
+ ```
1919
+
1920
+ _See code: [src/commands/option/add.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/option/add.ts)_
1921
+
1922
+ ## `lps option diff [PATH]`
1923
+
1924
+ Show what differs, for locally tracked options, between your local files and a WordPress environment, or between two environments
1925
+
1926
+ ```
1927
+ USAGE
1928
+ $ lps option diff [PATH] [--json] [--env <value>] [--against <value>]
1929
+
1930
+ ARGUMENTS
1931
+ [PATH] Path to options directory (overrides project config)
1932
+
1933
+ FLAGS
1934
+ --against=<value> Compare the primary environment against this second environment instead of against local files
1935
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1936
+
1937
+ GLOBAL FLAGS
1938
+ --json Format output as json.
1939
+
1940
+ DESCRIPTION
1941
+ Show what differs, for locally tracked options, between your local files and a WordPress environment, or between two
1942
+ environments
1943
+
1944
+ EXAMPLES
1945
+ $ lps option diff
1946
+
1947
+ $ lps option diff --env staging
1948
+
1949
+ $ lps option diff --env staging --against production
1950
+ ```
1951
+
1952
+ _See code: [src/commands/option/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/option/diff.ts)_
1953
+
1954
+ ## `lps option list`
1955
+
1956
+ List WordPress option names currently on the site (names and autoload only, never values). CORE flags a WordPress-native default (certain); SOURCE? is a best-effort guessed plugin slug, found by name or by scanning active plugins' own PHP source (uncertain unless confirmed, occasionally wrong or blank, never trust it over CORE); PLUGIN is that slug's own declared display name, a label only, no confidence of its own. Use this to find the name of the option you want, then `lps option add <name>` to track it.
1957
+
1958
+ ```
1959
+ USAGE
1960
+ $ lps option list [--json] [--env <value>] [--no-core]
1961
+
1962
+ FLAGS
1963
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1964
+ --no-core Exclude WordPress-native default options and the CORE column from the output, including --json
1965
+
1966
+ GLOBAL FLAGS
1967
+ --json Format output as json.
1968
+
1969
+ DESCRIPTION
1970
+ List WordPress option names currently on the site (names and autoload only, never values). CORE flags a
1971
+ WordPress-native default (certain); SOURCE? is a best-effort guessed plugin slug, found by name or by scanning active
1972
+ plugins' own PHP source (uncertain unless confirmed, occasionally wrong or blank, never trust it over CORE); PLUGIN is
1973
+ that slug's own declared display name, a label only, no confidence of its own. Use this to find the name of the option
1974
+ you want, then `lps option add <name>` to track it.
1417
1975
 
1418
1976
  EXAMPLES
1419
1977
  $ lps option list
@@ -1421,7 +1979,7 @@ EXAMPLES
1421
1979
  $ lps option list --no-core
1422
1980
  ```
1423
1981
 
1424
- _See code: [src/commands/option/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/option/list.ts)_
1982
+ _See code: [src/commands/option/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/option/list.ts)_
1425
1983
 
1426
1984
  ## `lps option pull [PATH]`
1427
1985
 
@@ -1437,7 +1995,7 @@ ARGUMENTS
1437
1995
  FLAGS
1438
1996
  -d, --dry-run Show what would change without making changes
1439
1997
  -y, --yes Answer yes to confirmation prompts
1440
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
1998
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1441
1999
 
1442
2000
  GLOBAL FLAGS
1443
2001
  --json Format output as json.
@@ -1450,7 +2008,7 @@ EXAMPLES
1450
2008
  $ lps option pull
1451
2009
  ```
1452
2010
 
1453
- _See code: [src/commands/option/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/option/pull.ts)_
2011
+ _See code: [src/commands/option/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/option/pull.ts)_
1454
2012
 
1455
2013
  ## `lps option push [PATH]`
1456
2014
 
@@ -1466,7 +2024,7 @@ ARGUMENTS
1466
2024
  FLAGS
1467
2025
  -d, --dry-run Show what would change without making changes
1468
2026
  -y, --yes Answer yes to confirmation prompts
1469
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2027
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1470
2028
 
1471
2029
  GLOBAL FLAGS
1472
2030
  --json Format output as json.
@@ -1479,7 +2037,7 @@ EXAMPLES
1479
2037
  $ lps option push
1480
2038
  ```
1481
2039
 
1482
- _See code: [src/commands/option/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/option/push.ts)_
2040
+ _See code: [src/commands/option/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/option/push.ts)_
1483
2041
 
1484
2042
  ## `lps option remove NAME`
1485
2043
 
@@ -1495,7 +2053,7 @@ ARGUMENTS
1495
2053
  FLAGS
1496
2054
  -d, --dry-run Show what would change without making changes
1497
2055
  -y, --yes Answer yes to confirmation prompts
1498
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2056
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1499
2057
  --local-only Untrack locally without deleting the option on WordPress
1500
2058
  --path=<value> Path to options directory (overrides project config)
1501
2059
 
@@ -1512,7 +2070,7 @@ EXAMPLES
1512
2070
  $ lps option remove wpseo_titles --local-only
1513
2071
  ```
1514
2072
 
1515
- _See code: [src/commands/option/remove.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/option/remove.ts)_
2073
+ _See code: [src/commands/option/remove.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/option/remove.ts)_
1516
2074
 
1517
2075
  ## `lps option rollback [PATH]`
1518
2076
 
@@ -1528,7 +2086,7 @@ ARGUMENTS
1528
2086
  FLAGS
1529
2087
  -d, --dry-run Show what would change without making changes
1530
2088
  -y, --yes Answer yes to confirmation prompts
1531
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2089
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1532
2090
  --list List available snapshots instead of rolling back
1533
2091
  --to=<value> Roll back to this snapshot id instead of the most recent one
1534
2092
 
@@ -1548,7 +2106,7 @@ EXAMPLES
1548
2106
  $ lps option rollback --dry-run
1549
2107
  ```
1550
2108
 
1551
- _See code: [src/commands/option/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/option/rollback.ts)_
2109
+ _See code: [src/commands/option/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/option/rollback.ts)_
1552
2110
 
1553
2111
  ## `lps page diff [PATH]`
1554
2112
 
@@ -1563,7 +2121,7 @@ ARGUMENTS
1563
2121
 
1564
2122
  FLAGS
1565
2123
  --against=<value> Compare the primary environment against this second environment instead of against local files
1566
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2124
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1567
2125
 
1568
2126
  GLOBAL FLAGS
1569
2127
  --json Format output as json.
@@ -1579,7 +2137,7 @@ EXAMPLES
1579
2137
  $ lps page diff --env staging --against production
1580
2138
  ```
1581
2139
 
1582
- _See code: [src/commands/page/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/page/diff.ts)_
2140
+ _See code: [src/commands/page/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/page/diff.ts)_
1583
2141
 
1584
2142
  ## `lps page list`
1585
2143
 
@@ -1590,7 +2148,7 @@ USAGE
1590
2148
  $ lps page list [--json] [--env <value>]
1591
2149
 
1592
2150
  FLAGS
1593
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2151
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1594
2152
 
1595
2153
  GLOBAL FLAGS
1596
2154
  --json Format output as json.
@@ -1602,7 +2160,7 @@ EXAMPLES
1602
2160
  $ lps page list
1603
2161
  ```
1604
2162
 
1605
- _See code: [src/commands/page/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/page/list.ts)_
2163
+ _See code: [src/commands/page/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/page/list.ts)_
1606
2164
 
1607
2165
  ## `lps page push [SLUG]`
1608
2166
 
@@ -1618,7 +2176,7 @@ ARGUMENTS
1618
2176
  FLAGS
1619
2177
  -d, --dry-run Show what would change without making changes
1620
2178
  -y, --yes Answer yes to confirmation prompts
1621
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2179
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1622
2180
 
1623
2181
  GLOBAL FLAGS
1624
2182
  --json Format output as json.
@@ -1635,7 +2193,223 @@ EXAMPLES
1635
2193
  $ lps page push --dry-run
1636
2194
  ```
1637
2195
 
1638
- _See code: [src/commands/page/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/page/push.ts)_
2196
+ _See code: [src/commands/page/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/page/push.ts)_
2197
+
2198
+ ## `lps pattern diff [PATH]`
2199
+
2200
+ Show what differs in block patterns between your local patterns/ files and a WordPress environment, or between two environments
2201
+
2202
+ ```
2203
+ USAGE
2204
+ $ lps pattern diff [PATH] [--json] [--env <value>] [--against <value>]
2205
+
2206
+ ARGUMENTS
2207
+ [PATH] Path to patterns directory (overrides project config)
2208
+
2209
+ FLAGS
2210
+ --against=<value> Compare the primary environment against this second environment instead of against local files
2211
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2212
+
2213
+ GLOBAL FLAGS
2214
+ --json Format output as json.
2215
+
2216
+ DESCRIPTION
2217
+ Show what differs in block patterns between your local patterns/ files and a WordPress environment, or between two
2218
+ environments
2219
+
2220
+ EXAMPLES
2221
+ $ lps pattern diff
2222
+
2223
+ $ lps pattern diff --env staging
2224
+
2225
+ $ lps pattern diff --env staging --against production
2226
+ ```
2227
+
2228
+ _See code: [src/commands/pattern/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/pattern/diff.ts)_
2229
+
2230
+ ## `lps pattern list`
2231
+
2232
+ List the block patterns registered on WordPress by Loopress, the theme and plugins (not WordPress core). Only Loopress ones are pulled and pushed.
2233
+
2234
+ ```
2235
+ USAGE
2236
+ $ lps pattern list [--json] [--env <value>]
2237
+
2238
+ FLAGS
2239
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2240
+
2241
+ GLOBAL FLAGS
2242
+ --json Format output as json.
2243
+
2244
+ DESCRIPTION
2245
+ List the block patterns registered on WordPress by Loopress, the theme and plugins (not WordPress core). Only Loopress
2246
+ ones are pulled and pushed.
2247
+
2248
+ EXAMPLES
2249
+ $ lps pattern list
2250
+ ```
2251
+
2252
+ _See code: [src/commands/pattern/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/pattern/list.ts)_
2253
+
2254
+ ## `lps pattern pull [PATH]`
2255
+
2256
+ Pull the block patterns Loopress manages on WordPress into patterns/<slug>.html files. Patterns registered by the theme or a plugin are never pulled, see `lps pattern list`.
2257
+
2258
+ ```
2259
+ USAGE
2260
+ $ lps pattern pull [PATH] [--json] [--env <value>] [-d] [-y]
2261
+
2262
+ ARGUMENTS
2263
+ [PATH] Path to the patterns directory (overrides project config)
2264
+
2265
+ FLAGS
2266
+ -d, --dry-run Show what would change without making changes
2267
+ -y, --yes Answer yes to confirmation prompts
2268
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2269
+
2270
+ GLOBAL FLAGS
2271
+ --json Format output as json.
2272
+
2273
+ DESCRIPTION
2274
+ Pull the block patterns Loopress manages on WordPress into patterns/<slug>.html files. Patterns registered by the
2275
+ theme or a plugin are never pulled, see `lps pattern list`.
2276
+
2277
+ EXAMPLES
2278
+ $ lps pattern pull
2279
+ ```
2280
+
2281
+ _See code: [src/commands/pattern/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/pattern/pull.ts)_
2282
+
2283
+ ## `lps pattern push [PATH]`
2284
+
2285
+ Push local block patterns (patterns/<slug>.html, block markup under a title/categories header) to WordPress, registered as loopress/<slug>. Create or update only, never deletes a pattern (use `lps pattern rm`).
2286
+
2287
+ ```
2288
+ USAGE
2289
+ $ lps pattern push [PATH] [--json] [--env <value>] [-d] [-y]
2290
+
2291
+ ARGUMENTS
2292
+ [PATH] Path to the patterns directory (overrides project config)
2293
+
2294
+ FLAGS
2295
+ -d, --dry-run Show what would change without making changes
2296
+ -y, --yes Answer yes to confirmation prompts
2297
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2298
+
2299
+ GLOBAL FLAGS
2300
+ --json Format output as json.
2301
+
2302
+ DESCRIPTION
2303
+ Push local block patterns (patterns/<slug>.html, block markup under a title/categories header) to WordPress,
2304
+ registered as loopress/<slug>. Create or update only, never deletes a pattern (use `lps pattern rm`).
2305
+
2306
+ EXAMPLES
2307
+ $ lps pattern push
2308
+ ```
2309
+
2310
+ _See code: [src/commands/pattern/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/pattern/push.ts)_
2311
+
2312
+ ## `lps pattern remove SLUG`
2313
+
2314
+ Stop registering a Loopress block pattern on WordPress. A wp:pattern reference to it renders nothing, copies already inserted in posts stay.
2315
+
2316
+ ```
2317
+ USAGE
2318
+ $ lps pattern remove SLUG [--json] [--env <value>] [-d] [-y]
2319
+
2320
+ ARGUMENTS
2321
+ SLUG The pattern slug, its patterns/ file name without .html
2322
+
2323
+ FLAGS
2324
+ -d, --dry-run Show what would change without making changes
2325
+ -y, --yes Answer yes to confirmation prompts
2326
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2327
+
2328
+ GLOBAL FLAGS
2329
+ --json Format output as json.
2330
+
2331
+ DESCRIPTION
2332
+ Stop registering a Loopress block pattern on WordPress. A wp:pattern reference to it renders nothing, copies already
2333
+ inserted in posts stay.
2334
+
2335
+ ALIASES
2336
+ $ lps pattern remove
2337
+
2338
+ EXAMPLES
2339
+ $ lps pattern rm <slug>
2340
+
2341
+ $ lps pattern remove <slug> --yes
2342
+ ```
2343
+
2344
+ ## `lps pattern rm SLUG`
2345
+
2346
+ Stop registering a Loopress block pattern on WordPress. A wp:pattern reference to it renders nothing, copies already inserted in posts stay.
2347
+
2348
+ ```
2349
+ USAGE
2350
+ $ lps pattern rm SLUG [--json] [--env <value>] [-d] [-y]
2351
+
2352
+ ARGUMENTS
2353
+ SLUG The pattern slug, its patterns/ file name without .html
2354
+
2355
+ FLAGS
2356
+ -d, --dry-run Show what would change without making changes
2357
+ -y, --yes Answer yes to confirmation prompts
2358
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2359
+
2360
+ GLOBAL FLAGS
2361
+ --json Format output as json.
2362
+
2363
+ DESCRIPTION
2364
+ Stop registering a Loopress block pattern on WordPress. A wp:pattern reference to it renders nothing, copies already
2365
+ inserted in posts stay.
2366
+
2367
+ ALIASES
2368
+ $ lps pattern remove
2369
+
2370
+ EXAMPLES
2371
+ $ lps pattern rm <slug>
2372
+
2373
+ $ lps pattern remove <slug> --yes
2374
+ ```
2375
+
2376
+ _See code: [src/commands/pattern/rm.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/pattern/rm.ts)_
2377
+
2378
+ ## `lps pattern rollback [PATH]`
2379
+
2380
+ Restore block patterns to a snapshot taken automatically before an earlier `lps pattern push`
2381
+
2382
+ ```
2383
+ USAGE
2384
+ $ lps pattern rollback [PATH] [--json] [--env <value>] [-d] [-y] [--list] [--to <value>]
2385
+
2386
+ ARGUMENTS
2387
+ [PATH] Path to patterns directory (overrides project config)
2388
+
2389
+ FLAGS
2390
+ -d, --dry-run Show what would change without making changes
2391
+ -y, --yes Answer yes to confirmation prompts
2392
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2393
+ --list List available snapshots instead of rolling back
2394
+ --to=<value> Roll back to this snapshot id instead of the most recent one
2395
+
2396
+ GLOBAL FLAGS
2397
+ --json Format output as json.
2398
+
2399
+ DESCRIPTION
2400
+ Restore block patterns to a snapshot taken automatically before an earlier `lps pattern push`
2401
+
2402
+ EXAMPLES
2403
+ $ lps pattern rollback
2404
+
2405
+ $ lps pattern rollback --list
2406
+
2407
+ $ lps pattern rollback --to 1732000000000
2408
+
2409
+ $ lps pattern rollback --dry-run
2410
+ ```
2411
+
2412
+ _See code: [src/commands/pattern/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/pattern/rollback.ts)_
1639
2413
 
1640
2414
  ## `lps plugin add SLUG`
1641
2415
 
@@ -1650,7 +2424,7 @@ ARGUMENTS
1650
2424
 
1651
2425
  FLAGS
1652
2426
  -d, --dry-run Show what would change without making changes
1653
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2427
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1654
2428
  --version=<value> Exact version to pin (default: "latest", tracked on every push)
1655
2429
 
1656
2430
  GLOBAL FLAGS
@@ -1667,7 +2441,7 @@ EXAMPLES
1667
2441
  $ lps plugin add contact-form-7 --dry-run
1668
2442
  ```
1669
2443
 
1670
- _See code: [src/commands/plugin/add.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/plugin/add.ts)_
2444
+ _See code: [src/commands/plugin/add.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/plugin/add.ts)_
1671
2445
 
1672
2446
  ## `lps plugin audit`
1673
2447
 
@@ -1678,7 +2452,7 @@ USAGE
1678
2452
  $ lps plugin audit [--json] [--env <value>]
1679
2453
 
1680
2454
  FLAGS
1681
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2455
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1682
2456
 
1683
2457
  GLOBAL FLAGS
1684
2458
  --json Format output as json.
@@ -1690,33 +2464,37 @@ EXAMPLES
1690
2464
  $ lps plugin audit
1691
2465
  ```
1692
2466
 
1693
- _See code: [src/commands/plugin/audit.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/plugin/audit.ts)_
2467
+ _See code: [src/commands/plugin/audit.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/plugin/audit.ts)_
1694
2468
 
1695
2469
  ## `lps plugin pull`
1696
2470
 
1697
- Pull installed plugins from WordPress into loopress.json, pinned to their live versions
2471
+ Pull installed plugins from WordPress into loopress.json (or composer.json), pinned to their live versions. Plugins already tracked are refreshed; new ones are offered as a list to tick, so plugins that only belong on this environment (cache, security, backups) stay out of the project.
1698
2472
 
1699
2473
  ```
1700
2474
  USAGE
1701
- $ lps plugin pull [--json] [--env <value>] [-d]
2475
+ $ lps plugin pull [--json] [--env <value>] [-d] [-y] [--plugin <value>...]
1702
2476
 
1703
2477
  FLAGS
1704
- -d, --dry-run Show what would change without making changes
1705
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2478
+ -d, --dry-run Show what would change without making changes
2479
+ -y, --yes Answer yes to confirmation prompts
2480
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2481
+ --plugin=<value>... Start tracking this installed plugin too, without asking (repeatable)
1706
2482
 
1707
2483
  GLOBAL FLAGS
1708
2484
  --json Format output as json.
1709
2485
 
1710
2486
  DESCRIPTION
1711
- Pull installed plugins from WordPress into loopress.json, pinned to their live versions
2487
+ Pull installed plugins from WordPress into loopress.json (or composer.json), pinned to their live versions. Plugins
2488
+ already tracked are refreshed; new ones are offered as a list to tick, so plugins that only belong on this environment
2489
+ (cache, security, backups) stay out of the project.
1712
2490
 
1713
2491
  EXAMPLES
1714
2492
  $ lps plugin pull
1715
2493
 
1716
- $ lps plugin pull --dry-run
2494
+ $ lps plugin pull --env production --plugin query-monitor
1717
2495
  ```
1718
2496
 
1719
- _See code: [src/commands/plugin/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/plugin/pull.ts)_
2497
+ _See code: [src/commands/plugin/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/plugin/pull.ts)_
1720
2498
 
1721
2499
  ## `lps plugin push`
1722
2500
 
@@ -1731,7 +2509,7 @@ FLAGS
1731
2509
  -y, --yes Answer yes to confirmation prompts
1732
2510
  --activate composer.json projects only: activate every plugin it declares. Without it, plugins keep their
1733
2511
  current state and new ones stay inactive
1734
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2512
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1735
2513
  --force Allow downgrades and let Loopress take over plugins installed outside it (replaces their files)
1736
2514
  --prune Deactivate plugins that are active on the site but absent from loopress.json (or composer.json)
1737
2515
 
@@ -1749,7 +2527,7 @@ EXAMPLES
1749
2527
  $ lps plugin push --force --prune
1750
2528
  ```
1751
2529
 
1752
- _See code: [src/commands/plugin/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/plugin/push.ts)_
2530
+ _See code: [src/commands/plugin/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/plugin/push.ts)_
1753
2531
 
1754
2532
  ## `lps plugin status`
1755
2533
 
@@ -1760,7 +2538,7 @@ USAGE
1760
2538
  $ lps plugin status [--json] [--env <value>]
1761
2539
 
1762
2540
  FLAGS
1763
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2541
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1764
2542
 
1765
2543
  GLOBAL FLAGS
1766
2544
  --json Format output as json.
@@ -1772,7 +2550,7 @@ EXAMPLES
1772
2550
  $ lps plugin status
1773
2551
  ```
1774
2552
 
1775
- _See code: [src/commands/plugin/status.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/plugin/status.ts)_
2553
+ _See code: [src/commands/plugin/status.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/plugin/status.ts)_
1776
2554
 
1777
2555
  ## `lps project config`
1778
2556
 
@@ -1790,7 +2568,7 @@ EXAMPLES
1790
2568
  $ lps project config
1791
2569
  ```
1792
2570
 
1793
- _See code: [src/commands/project/config.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/project/config.ts)_
2571
+ _See code: [src/commands/project/config.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/project/config.ts)_
1794
2572
 
1795
2573
  ## `lps project list`
1796
2574
 
@@ -1810,7 +2588,7 @@ EXAMPLES
1810
2588
  $ lps project list
1811
2589
  ```
1812
2590
 
1813
- _See code: [src/commands/project/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/project/list.ts)_
2591
+ _See code: [src/commands/project/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/project/list.ts)_
1814
2592
 
1815
2593
  ## `lps project pull`
1816
2594
 
@@ -1827,7 +2605,7 @@ EXAMPLES
1827
2605
  $ lps project pull
1828
2606
  ```
1829
2607
 
1830
- _See code: [src/commands/project/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/project/pull.ts)_
2608
+ _See code: [src/commands/project/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/project/pull.ts)_
1831
2609
 
1832
2610
  ## `lps project push`
1833
2611
 
@@ -1847,7 +2625,7 @@ EXAMPLES
1847
2625
  $ lps project push
1848
2626
  ```
1849
2627
 
1850
- _See code: [src/commands/project/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/project/push.ts)_
2628
+ _See code: [src/commands/project/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/project/push.ts)_
1851
2629
 
1852
2630
  ## `lps project remove`
1853
2631
 
@@ -1864,7 +2642,7 @@ EXAMPLES
1864
2642
  $ lps project remove
1865
2643
  ```
1866
2644
 
1867
- _See code: [src/commands/project/remove.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/project/remove.ts)_
2645
+ _See code: [src/commands/project/remove.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/project/remove.ts)_
1868
2646
 
1869
2647
  ## `lps project rotate`
1870
2648
 
@@ -1875,7 +2653,7 @@ USAGE
1875
2653
  $ lps project rotate [--env <value>]
1876
2654
 
1877
2655
  FLAGS
1878
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2656
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1879
2657
 
1880
2658
  DESCRIPTION
1881
2659
  Rotate the WordPress application password for the current (or --env) environment
@@ -1886,24 +2664,24 @@ EXAMPLES
1886
2664
  $ lps project rotate --env staging
1887
2665
  ```
1888
2666
 
1889
- _See code: [src/commands/project/rotate.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/project/rotate.ts)_
2667
+ _See code: [src/commands/project/rotate.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/project/rotate.ts)_
1890
2668
 
1891
2669
  ## `lps project switch`
1892
2670
 
1893
- Switch the active project and environment
2671
+ Switch the active project (pass --env to target a non-local environment)
1894
2672
 
1895
2673
  ```
1896
2674
  USAGE
1897
2675
  $ lps project switch
1898
2676
 
1899
2677
  DESCRIPTION
1900
- Switch the active project and environment
2678
+ Switch the active project (pass --env to target a non-local environment)
1901
2679
 
1902
2680
  EXAMPLES
1903
2681
  $ lps project switch
1904
2682
  ```
1905
2683
 
1906
- _See code: [src/commands/project/switch.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/project/switch.ts)_
2684
+ _See code: [src/commands/project/switch.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/project/switch.ts)_
1907
2685
 
1908
2686
  ## `lps promote FROM TO`
1909
2687
 
@@ -1935,11 +2713,11 @@ EXAMPLES
1935
2713
  $ lps promote production staging --dry-run
1936
2714
  ```
1937
2715
 
1938
- _See code: [src/commands/promote.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/promote.ts)_
2716
+ _See code: [src/commands/promote.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/promote.ts)_
1939
2717
 
1940
2718
  ## `lps pull`
1941
2719
 
1942
- Pull all content, plugins, composer dependencies, ACF, API routes, hooks, forms, SEO, menus, options, and snippets, from WordPress
2720
+ Pull all content, plugins, composer dependencies, post types, taxonomies, post meta, roles, ACF, API routes, hooks, forms, patterns, menus, options, and snippets, from WordPress
1943
2721
 
1944
2722
  ```
1945
2723
  USAGE
@@ -1948,14 +2726,14 @@ USAGE
1948
2726
  FLAGS
1949
2727
  -d, --dry-run Show what would change without making changes
1950
2728
  -y, --yes Answer yes to confirmation prompts
1951
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2729
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1952
2730
 
1953
2731
  GLOBAL FLAGS
1954
2732
  --json Format output as json.
1955
2733
 
1956
2734
  DESCRIPTION
1957
- Pull all content, plugins, composer dependencies, ACF, API routes, hooks, forms, SEO, menus, options, and snippets,
1958
- from WordPress
2735
+ Pull all content, plugins, composer dependencies, post types, taxonomies, post meta, roles, ACF, API routes, hooks,
2736
+ forms, patterns, menus, options, and snippets, from WordPress
1959
2737
 
1960
2738
  EXAMPLES
1961
2739
  $ lps pull
@@ -1965,11 +2743,11 @@ EXAMPLES
1965
2743
  $ lps pull --dry-run
1966
2744
  ```
1967
2745
 
1968
- _See code: [src/commands/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/pull.ts)_
2746
+ _See code: [src/commands/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/pull.ts)_
1969
2747
 
1970
2748
  ## `lps push`
1971
2749
 
1972
- Push all local content, plugins, composer dependencies, ACF, API routes, hooks, forms, templates, pages, SEO, menus, options, and snippets, to WordPress
2750
+ Push all local content, plugins, composer dependencies, post types, taxonomies, post meta, roles, ACF, API routes, hooks, forms, patterns, templates, pages, menus, options, and snippets, to WordPress
1973
2751
 
1974
2752
  ```
1975
2753
  USAGE
@@ -1978,14 +2756,14 @@ USAGE
1978
2756
  FLAGS
1979
2757
  -d, --dry-run Show what would change without making changes
1980
2758
  -y, --yes Answer yes to confirmation prompts
1981
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2759
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
1982
2760
 
1983
2761
  GLOBAL FLAGS
1984
2762
  --json Format output as json.
1985
2763
 
1986
2764
  DESCRIPTION
1987
- Push all local content, plugins, composer dependencies, ACF, API routes, hooks, forms, templates, pages, SEO, menus,
1988
- options, and snippets, to WordPress
2765
+ Push all local content, plugins, composer dependencies, post types, taxonomies, post meta, roles, ACF, API routes,
2766
+ hooks, forms, patterns, templates, pages, menus, options, and snippets, to WordPress
1989
2767
 
1990
2768
  EXAMPLES
1991
2769
  $ lps push
@@ -1995,139 +2773,202 @@ EXAMPLES
1995
2773
  $ lps push --dry-run
1996
2774
  ```
1997
2775
 
1998
- _See code: [src/commands/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/push.ts)_
2776
+ _See code: [src/commands/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/push.ts)_
1999
2777
 
2000
- ## `lps seo diff [PATH]`
2778
+ ## `lps role diff [PATH]`
2001
2779
 
2002
- Show what differs in SEO settings, post meta, and redirects between your local files and a WordPress environment, or between two environments
2780
+ Show what differs in roles between your local roles/ files and a WordPress environment, or between two environments
2003
2781
 
2004
2782
  ```
2005
2783
  USAGE
2006
- $ lps seo diff [PATH] [--json] [--env <value>] [--against <value>]
2784
+ $ lps role diff [PATH] [--json] [--env <value>] [--against <value>]
2007
2785
 
2008
2786
  ARGUMENTS
2009
- [PATH] Path to SEO directory (overrides project config)
2787
+ [PATH] Path to roles directory (overrides project config)
2010
2788
 
2011
2789
  FLAGS
2012
2790
  --against=<value> Compare the primary environment against this second environment instead of against local files
2013
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2791
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2792
+
2793
+ GLOBAL FLAGS
2794
+ --json Format output as json.
2795
+
2796
+ DESCRIPTION
2797
+ Show what differs in roles between your local roles/ files and a WordPress environment, or between two environments
2798
+
2799
+ EXAMPLES
2800
+ $ lps role diff
2801
+
2802
+ $ lps role diff --env staging
2803
+
2804
+ $ lps role diff --env staging --against production
2805
+ ```
2806
+
2807
+ _See code: [src/commands/role/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/role/diff.ts)_
2808
+
2809
+ ## `lps role list`
2810
+
2811
+ List the user roles on WordPress, where each comes from (Loopress, WordPress, a plugin) and how many users have it. Only Loopress ones are pulled and pushed.
2812
+
2813
+ ```
2814
+ USAGE
2815
+ $ lps role list [--json] [--env <value>]
2816
+
2817
+ FLAGS
2818
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2819
+
2820
+ GLOBAL FLAGS
2821
+ --json Format output as json.
2822
+
2823
+ DESCRIPTION
2824
+ List the user roles on WordPress, where each comes from (Loopress, WordPress, a plugin) and how many users have it.
2825
+ Only Loopress ones are pulled and pushed.
2826
+
2827
+ EXAMPLES
2828
+ $ lps role list
2829
+ ```
2830
+
2831
+ _See code: [src/commands/role/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/role/list.ts)_
2832
+
2833
+ ## `lps role pull [PATH]`
2834
+
2835
+ Pull the roles Loopress manages on WordPress into roles/<slug>.json files. Built-in roles and roles created by a plugin are never pulled, see `lps role list`.
2836
+
2837
+ ```
2838
+ USAGE
2839
+ $ lps role pull [PATH] [--json] [--env <value>] [-d] [-y]
2840
+
2841
+ ARGUMENTS
2842
+ [PATH] Path to the roles directory (overrides project config)
2843
+
2844
+ FLAGS
2845
+ -d, --dry-run Show what would change without making changes
2846
+ -y, --yes Answer yes to confirmation prompts
2847
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2014
2848
 
2015
2849
  GLOBAL FLAGS
2016
2850
  --json Format output as json.
2017
2851
 
2018
2852
  DESCRIPTION
2019
- Show what differs in SEO settings, post meta, and redirects between your local files and a WordPress environment, or
2020
- between two environments
2853
+ Pull the roles Loopress manages on WordPress into roles/<slug>.json files. Built-in roles and roles created by a
2854
+ plugin are never pulled, see `lps role list`.
2021
2855
 
2022
2856
  EXAMPLES
2023
- $ lps seo diff
2024
-
2025
- $ lps seo diff --env staging
2026
-
2027
- $ lps seo diff --env staging --against production
2857
+ $ lps role pull
2028
2858
  ```
2029
2859
 
2030
- _See code: [src/commands/seo/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/seo/diff.ts)_
2860
+ _See code: [src/commands/role/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/role/pull.ts)_
2031
2861
 
2032
- ## `lps seo list`
2862
+ ## `lps role push [PATH]`
2033
2863
 
2034
- List posts with SEO meta, and redirects if supported by the active SEO plugin, on WordPress
2864
+ Push local roles (roles/<slug>.json, a "name" and its "capabilities") to WordPress. Create or update only, never deletes a role (use `lps role rm`), never changes which users have it.
2035
2865
 
2036
2866
  ```
2037
2867
  USAGE
2038
- $ lps seo list [--json] [--env <value>] [--post-type <value>...]
2868
+ $ lps role push [PATH] [--json] [--env <value>] [-d] [-y]
2869
+
2870
+ ARGUMENTS
2871
+ [PATH] Path to the roles directory (overrides project config)
2039
2872
 
2040
2873
  FLAGS
2041
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2042
- --post-type=<value>... Limit to specific post types
2874
+ -d, --dry-run Show what would change without making changes
2875
+ -y, --yes Answer yes to confirmation prompts
2876
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2043
2877
 
2044
2878
  GLOBAL FLAGS
2045
2879
  --json Format output as json.
2046
2880
 
2047
2881
  DESCRIPTION
2048
- List posts with SEO meta, and redirects if supported by the active SEO plugin, on WordPress
2882
+ Push local roles (roles/<slug>.json, a "name" and its "capabilities") to WordPress. Create or update only, never
2883
+ deletes a role (use `lps role rm`), never changes which users have it.
2049
2884
 
2050
2885
  EXAMPLES
2051
- $ lps seo list
2052
-
2053
- $ lps seo list --post-type post
2886
+ $ lps role push
2054
2887
  ```
2055
2888
 
2056
- _See code: [src/commands/seo/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/seo/list.ts)_
2889
+ _See code: [src/commands/role/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/role/push.ts)_
2057
2890
 
2058
- ## `lps seo pull [PATH]`
2891
+ ## `lps role remove SLUG`
2059
2892
 
2060
- Pull SEO settings, post meta, and (if supported) redirects from WordPress
2893
+ Stop registering a Loopress role on WordPress. Its users keep it in their profile, with no capability until the role is pushed again.
2061
2894
 
2062
2895
  ```
2063
2896
  USAGE
2064
- $ lps seo pull [PATH] [--env <value>] [-d] [-y] [--post-type <value>...]
2897
+ $ lps role remove SLUG [--json] [--env <value>] [-d] [-y]
2065
2898
 
2066
2899
  ARGUMENTS
2067
- [PATH] Path to SEO directory (overrides project config)
2900
+ SLUG The role slug, its roles/ file name without .json
2068
2901
 
2069
2902
  FLAGS
2070
- -d, --dry-run Show what would change without making changes
2071
- -y, --yes Answer yes to confirmation prompts
2072
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2073
- --post-type=<value>... Limit post meta to specific post types
2903
+ -d, --dry-run Show what would change without making changes
2904
+ -y, --yes Answer yes to confirmation prompts
2905
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2906
+
2907
+ GLOBAL FLAGS
2908
+ --json Format output as json.
2074
2909
 
2075
2910
  DESCRIPTION
2076
- Pull SEO settings, post meta, and (if supported) redirects from WordPress
2911
+ Stop registering a Loopress role on WordPress. Its users keep it in their profile, with no capability until the role
2912
+ is pushed again.
2913
+
2914
+ ALIASES
2915
+ $ lps role remove
2077
2916
 
2078
2917
  EXAMPLES
2079
- $ lps seo pull
2918
+ $ lps role rm <slug>
2080
2919
 
2081
- $ lps seo pull --post-type post --post-type page
2920
+ $ lps role remove <slug> --yes
2082
2921
  ```
2083
2922
 
2084
- _See code: [src/commands/seo/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/seo/pull.ts)_
2085
-
2086
- ## `lps seo push [PATH]`
2923
+ ## `lps role rm SLUG`
2087
2924
 
2088
- Push SEO settings, post meta, and redirects to WordPress. Local redirect files created remotely are renamed on disk to the `<id>-<slug>` convention. Fails clearly per file if the active SEO plugin does not support redirects.
2925
+ Stop registering a Loopress role on WordPress. Its users keep it in their profile, with no capability until the role is pushed again.
2089
2926
 
2090
2927
  ```
2091
2928
  USAGE
2092
- $ lps seo push [PATH] [--env <value>] [-d] [-y] [--allow-external-redirects]
2929
+ $ lps role rm SLUG [--json] [--env <value>] [-d] [-y]
2093
2930
 
2094
2931
  ARGUMENTS
2095
- [PATH] Path to SEO directory (overrides project config)
2932
+ SLUG The role slug, its roles/ file name without .json
2096
2933
 
2097
2934
  FLAGS
2098
- -d, --dry-run Show what would change without making changes
2099
- -y, --yes Answer yes to confirmation prompts
2100
- --allow-external-redirects Allow pushing a redirect whose target points off this site. Off by default: the server
2101
- rejects an off-site `urlTo` so a stray push can't 301 traffic away.
2102
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2935
+ -d, --dry-run Show what would change without making changes
2936
+ -y, --yes Answer yes to confirmation prompts
2937
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2938
+
2939
+ GLOBAL FLAGS
2940
+ --json Format output as json.
2103
2941
 
2104
2942
  DESCRIPTION
2105
- Push SEO settings, post meta, and redirects to WordPress. Local redirect files created remotely are renamed on disk to
2106
- the `<id>-<slug>` convention. Fails clearly per file if the active SEO plugin does not support redirects.
2943
+ Stop registering a Loopress role on WordPress. Its users keep it in their profile, with no capability until the role
2944
+ is pushed again.
2945
+
2946
+ ALIASES
2947
+ $ lps role remove
2107
2948
 
2108
2949
  EXAMPLES
2109
- $ lps seo push
2950
+ $ lps role rm <slug>
2110
2951
 
2111
- $ lps seo push --allow-external-redirects
2952
+ $ lps role remove <slug> --yes
2112
2953
  ```
2113
2954
 
2114
- _See code: [src/commands/seo/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/seo/push.ts)_
2955
+ _See code: [src/commands/role/rm.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/role/rm.ts)_
2115
2956
 
2116
- ## `lps seo rollback [PATH]`
2957
+ ## `lps role rollback [PATH]`
2117
2958
 
2118
- Restore SEO settings, post meta, and redirects to a snapshot taken automatically before an earlier `lps seo push`
2959
+ Restore roles to a snapshot taken automatically before an earlier `lps role push`
2119
2960
 
2120
2961
  ```
2121
2962
  USAGE
2122
- $ lps seo rollback [PATH] [--json] [--env <value>] [-d] [-y] [--list] [--to <value>]
2963
+ $ lps role rollback [PATH] [--json] [--env <value>] [-d] [-y] [--list] [--to <value>]
2123
2964
 
2124
2965
  ARGUMENTS
2125
- [PATH] Path to SEO directory (overrides project config)
2966
+ [PATH] Path to roles directory (overrides project config)
2126
2967
 
2127
2968
  FLAGS
2128
2969
  -d, --dry-run Show what would change without making changes
2129
2970
  -y, --yes Answer yes to confirmation prompts
2130
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2971
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2131
2972
  --list List available snapshots instead of rolling back
2132
2973
  --to=<value> Roll back to this snapshot id instead of the most recent one
2133
2974
 
@@ -2135,19 +2976,19 @@ GLOBAL FLAGS
2135
2976
  --json Format output as json.
2136
2977
 
2137
2978
  DESCRIPTION
2138
- Restore SEO settings, post meta, and redirects to a snapshot taken automatically before an earlier `lps seo push`
2979
+ Restore roles to a snapshot taken automatically before an earlier `lps role push`
2139
2980
 
2140
2981
  EXAMPLES
2141
- $ lps seo rollback
2982
+ $ lps role rollback
2142
2983
 
2143
- $ lps seo rollback --list
2984
+ $ lps role rollback --list
2144
2985
 
2145
- $ lps seo rollback --to 1732000000000
2986
+ $ lps role rollback --to 1732000000000
2146
2987
 
2147
- $ lps seo rollback --dry-run
2988
+ $ lps role rollback --dry-run
2148
2989
  ```
2149
2990
 
2150
- _See code: [src/commands/seo/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/seo/rollback.ts)_
2991
+ _See code: [src/commands/role/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/role/rollback.ts)_
2151
2992
 
2152
2993
  ## `lps snippet diff [PATH]`
2153
2994
 
@@ -2162,7 +3003,7 @@ ARGUMENTS
2162
3003
 
2163
3004
  FLAGS
2164
3005
  --against=<value> Compare the primary environment against this second environment instead of against local files
2165
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
3006
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2166
3007
 
2167
3008
  GLOBAL FLAGS
2168
3009
  --json Format output as json.
@@ -2178,7 +3019,7 @@ EXAMPLES
2178
3019
  $ lps snippet diff --env staging --against production
2179
3020
  ```
2180
3021
 
2181
- _See code: [src/commands/snippet/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/snippet/diff.ts)_
3022
+ _See code: [src/commands/snippet/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/snippet/diff.ts)_
2182
3023
 
2183
3024
  ## `lps snippet list`
2184
3025
 
@@ -2189,7 +3030,7 @@ USAGE
2189
3030
  $ lps snippet list [--json] [--env <value>]
2190
3031
 
2191
3032
  FLAGS
2192
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
3033
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2193
3034
 
2194
3035
  GLOBAL FLAGS
2195
3036
  --json Format output as json.
@@ -2201,7 +3042,7 @@ EXAMPLES
2201
3042
  $ lps snippet list
2202
3043
  ```
2203
3044
 
2204
- _See code: [src/commands/snippet/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/snippet/list.ts)_
3045
+ _See code: [src/commands/snippet/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/snippet/list.ts)_
2205
3046
 
2206
3047
  ## `lps snippet publish [PATH]`
2207
3048
 
@@ -2221,10 +3062,10 @@ DESCRIPTION
2221
3062
  EXAMPLES
2222
3063
  $ lps snippet publish
2223
3064
 
2224
- $ lps snippet publish --path ./snippets
3065
+ $ lps snippet publish ./snippets
2225
3066
  ```
2226
3067
 
2227
- _See code: [src/commands/snippet/publish.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/snippet/publish.ts)_
3068
+ _See code: [src/commands/snippet/publish.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/snippet/publish.ts)_
2228
3069
 
2229
3070
  ## `lps snippet pull [PATH]`
2230
3071
 
@@ -2240,7 +3081,7 @@ ARGUMENTS
2240
3081
  FLAGS
2241
3082
  -d, --dry-run Show what would change without making changes
2242
3083
  -y, --yes Answer yes to confirmation prompts
2243
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
3084
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2244
3085
 
2245
3086
  GLOBAL FLAGS
2246
3087
  --json Format output as json.
@@ -2251,10 +3092,10 @@ DESCRIPTION
2251
3092
  EXAMPLES
2252
3093
  $ lps snippet pull
2253
3094
 
2254
- $ lps snippet pull --path ./snippets
3095
+ $ lps snippet pull ./snippets
2255
3096
  ```
2256
3097
 
2257
- _See code: [src/commands/snippet/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/snippet/pull.ts)_
3098
+ _See code: [src/commands/snippet/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/snippet/pull.ts)_
2258
3099
 
2259
3100
  ## `lps snippet push [PATH]`
2260
3101
 
@@ -2270,7 +3111,7 @@ ARGUMENTS
2270
3111
  FLAGS
2271
3112
  -d, --dry-run Show what would change without making changes
2272
3113
  -y, --yes Answer yes to confirmation prompts
2273
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
3114
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2274
3115
 
2275
3116
  GLOBAL FLAGS
2276
3117
  --json Format output as json.
@@ -2282,10 +3123,10 @@ DESCRIPTION
2282
3123
  EXAMPLES
2283
3124
  $ lps snippet push
2284
3125
 
2285
- $ lps snippet push --path ./snippets
3126
+ $ lps snippet push ./snippets
2286
3127
  ```
2287
3128
 
2288
- _See code: [src/commands/snippet/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/snippet/push.ts)_
3129
+ _See code: [src/commands/snippet/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/snippet/push.ts)_
2289
3130
 
2290
3131
  ## `lps snippet rollback [PATH]`
2291
3132
 
@@ -2301,7 +3142,7 @@ ARGUMENTS
2301
3142
  FLAGS
2302
3143
  -d, --dry-run Show what would change without making changes
2303
3144
  -y, --yes Answer yes to confirmation prompts
2304
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
3145
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2305
3146
  --list List available snapshots instead of rolling back
2306
3147
  --to=<value> Roll back to this snapshot id instead of the most recent one
2307
3148
 
@@ -2321,7 +3162,7 @@ EXAMPLES
2321
3162
  $ lps snippet rollback --dry-run
2322
3163
  ```
2323
3164
 
2324
- _See code: [src/commands/snippet/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/snippet/rollback.ts)_
3165
+ _See code: [src/commands/snippet/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/snippet/rollback.ts)_
2325
3166
 
2326
3167
  ## `lps status`
2327
3168
 
@@ -2346,122 +3187,257 @@ EXAMPLES
2346
3187
  $ lps status --env staging
2347
3188
  ```
2348
3189
 
2349
- _See code: [src/commands/status.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/status.ts)_
3190
+ _See code: [src/commands/status.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/status.ts)_
2350
3191
 
2351
- ## `lps telemetry disable`
3192
+ ## `lps taxonomy diff [PATH]`
2352
3193
 
2353
- Disable error reporting to Sentry
3194
+ Show what differs in taxonomies between your local taxonomies/ files and a WordPress environment, or between two environments
2354
3195
 
2355
3196
  ```
2356
3197
  USAGE
2357
- $ lps telemetry disable
3198
+ $ lps taxonomy diff [PATH] [--json] [--env <value>] [--against <value>]
3199
+
3200
+ ARGUMENTS
3201
+ [PATH] Path to taxonomies directory (overrides project config)
3202
+
3203
+ FLAGS
3204
+ --against=<value> Compare the primary environment against this second environment instead of against local files
3205
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
3206
+
3207
+ GLOBAL FLAGS
3208
+ --json Format output as json.
2358
3209
 
2359
3210
  DESCRIPTION
2360
- Disable error reporting to Sentry
3211
+ Show what differs in taxonomies between your local taxonomies/ files and a WordPress environment, or between two
3212
+ environments
2361
3213
 
2362
3214
  EXAMPLES
2363
- $ lps telemetry disable
3215
+ $ lps taxonomy diff
3216
+
3217
+ $ lps taxonomy diff --env staging
3218
+
3219
+ $ lps taxonomy diff --env staging --against production
2364
3220
  ```
2365
3221
 
2366
- _See code: [src/commands/telemetry/disable.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/telemetry/disable.ts)_
3222
+ _See code: [src/commands/taxonomy/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/taxonomy/diff.ts)_
2367
3223
 
2368
- ## `lps telemetry enable`
3224
+ ## `lps taxonomy list`
2369
3225
 
2370
- Enable error reporting to Sentry
3226
+ List the taxonomies registered on WordPress, where each comes from (Loopress, WordPress, ACF, CPT UI, a theme or plugin) and the post types it attaches to. Only Loopress ones are pulled and pushed.
2371
3227
 
2372
3228
  ```
2373
3229
  USAGE
2374
- $ lps telemetry enable
3230
+ $ lps taxonomy list [--json] [--env <value>]
3231
+
3232
+ FLAGS
3233
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
3234
+
3235
+ GLOBAL FLAGS
3236
+ --json Format output as json.
2375
3237
 
2376
3238
  DESCRIPTION
2377
- Enable error reporting to Sentry
3239
+ List the taxonomies registered on WordPress, where each comes from (Loopress, WordPress, ACF, CPT UI, a theme or
3240
+ plugin) and the post types it attaches to. Only Loopress ones are pulled and pushed.
2378
3241
 
2379
3242
  EXAMPLES
2380
- $ lps telemetry enable
3243
+ $ lps taxonomy list
2381
3244
  ```
2382
3245
 
2383
- _See code: [src/commands/telemetry/enable.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/telemetry/enable.ts)_
3246
+ _See code: [src/commands/taxonomy/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/taxonomy/list.ts)_
2384
3247
 
2385
- ## `lps template diff`
3248
+ ## `lps taxonomy pull [PATH]`
2386
3249
 
2387
- Show what differs in block templates and parts between your local files and a WordPress environment, or between two environments. Templates and parts edited in the Site Editor show up too.
3250
+ Pull the taxonomies Loopress manages on WordPress into taxonomies/<slug>.json files, never their terms. Taxonomies registered by a theme or another plugin are never pulled, see `lps taxonomy list`.
2388
3251
 
2389
3252
  ```
2390
3253
  USAGE
2391
- $ lps template diff [--json] [--env <value>] [--against <value>]
3254
+ $ lps taxonomy pull [PATH] [--json] [--env <value>] [-d] [-y]
3255
+
3256
+ ARGUMENTS
3257
+ [PATH] Path to the taxonomies directory (overrides project config)
2392
3258
 
2393
3259
  FLAGS
2394
- --against=<value> Compare the primary environment against this second environment instead of against local files
2395
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
3260
+ -d, --dry-run Show what would change without making changes
3261
+ -y, --yes Answer yes to confirmation prompts
3262
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2396
3263
 
2397
3264
  GLOBAL FLAGS
2398
3265
  --json Format output as json.
2399
3266
 
2400
3267
  DESCRIPTION
2401
- Show what differs in block templates and parts between your local files and a WordPress environment, or between two
2402
- environments. Templates and parts edited in the Site Editor show up too.
3268
+ Pull the taxonomies Loopress manages on WordPress into taxonomies/<slug>.json files, never their terms. Taxonomies
3269
+ registered by a theme or another plugin are never pulled, see `lps taxonomy list`.
3270
+
3271
+ EXAMPLES
3272
+ $ lps taxonomy pull
3273
+ ```
3274
+
3275
+ _See code: [src/commands/taxonomy/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/taxonomy/pull.ts)_
3276
+
3277
+ ## `lps taxonomy push [PATH]`
3278
+
3279
+ Push local taxonomies (taxonomies/<slug>.json, register_taxonomy() arguments plus "object_type") to WordPress. Create or update only, never deletes a taxonomy (use `lps taxonomy rm`), never touches its terms.
3280
+
3281
+ ```
3282
+ USAGE
3283
+ $ lps taxonomy push [PATH] [--json] [--env <value>] [-d] [-y]
3284
+
3285
+ ARGUMENTS
3286
+ [PATH] Path to the taxonomies directory (overrides project config)
3287
+
3288
+ FLAGS
3289
+ -d, --dry-run Show what would change without making changes
3290
+ -y, --yes Answer yes to confirmation prompts
3291
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
3292
+
3293
+ GLOBAL FLAGS
3294
+ --json Format output as json.
3295
+
3296
+ DESCRIPTION
3297
+ Push local taxonomies (taxonomies/<slug>.json, register_taxonomy() arguments plus "object_type") to WordPress. Create
3298
+ or update only, never deletes a taxonomy (use `lps taxonomy rm`), never touches its terms.
2403
3299
 
2404
3300
  EXAMPLES
2405
- $ lps template diff
3301
+ $ lps taxonomy push
3302
+ ```
3303
+
3304
+ _See code: [src/commands/taxonomy/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/taxonomy/push.ts)_
2406
3305
 
2407
- $ lps template diff --env staging
3306
+ ## `lps taxonomy remove SLUG`
3307
+
3308
+ Stop registering a Loopress taxonomy on WordPress. Its terms are kept in the database, hidden until the taxonomy is pushed again.
2408
3309
 
2409
- $ lps template diff --env staging --against production
2410
3310
  ```
3311
+ USAGE
3312
+ $ lps taxonomy remove SLUG [--json] [--env <value>] [-d] [-y]
2411
3313
 
2412
- _See code: [src/commands/template/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/template/diff.ts)_
3314
+ ARGUMENTS
3315
+ SLUG The taxonomy slug, its taxonomies/ file name without .json
3316
+
3317
+ FLAGS
3318
+ -d, --dry-run Show what would change without making changes
3319
+ -y, --yes Answer yes to confirmation prompts
3320
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2413
3321
 
2414
- ## `lps template list`
3322
+ GLOBAL FLAGS
3323
+ --json Format output as json.
2415
3324
 
2416
- Show the Loopress child theme of the active block theme: its templates, parts, and those edited in the Site Editor
3325
+ DESCRIPTION
3326
+ Stop registering a Loopress taxonomy on WordPress. Its terms are kept in the database, hidden until the taxonomy is
3327
+ pushed again.
3328
+
3329
+ ALIASES
3330
+ $ lps taxonomy remove
3331
+
3332
+ EXAMPLES
3333
+ $ lps taxonomy rm <slug>
3334
+
3335
+ $ lps taxonomy remove <slug> --yes
3336
+ ```
3337
+
3338
+ ## `lps taxonomy rm SLUG`
3339
+
3340
+ Stop registering a Loopress taxonomy on WordPress. Its terms are kept in the database, hidden until the taxonomy is pushed again.
2417
3341
 
2418
3342
  ```
2419
3343
  USAGE
2420
- $ lps template list [--json] [--env <value>]
3344
+ $ lps taxonomy rm SLUG [--json] [--env <value>] [-d] [-y]
3345
+
3346
+ ARGUMENTS
3347
+ SLUG The taxonomy slug, its taxonomies/ file name without .json
2421
3348
 
2422
3349
  FLAGS
2423
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
3350
+ -d, --dry-run Show what would change without making changes
3351
+ -y, --yes Answer yes to confirmation prompts
3352
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2424
3353
 
2425
3354
  GLOBAL FLAGS
2426
3355
  --json Format output as json.
2427
3356
 
2428
3357
  DESCRIPTION
2429
- Show the Loopress child theme of the active block theme: its templates, parts, and those edited in the Site Editor
3358
+ Stop registering a Loopress taxonomy on WordPress. Its terms are kept in the database, hidden until the taxonomy is
3359
+ pushed again.
3360
+
3361
+ ALIASES
3362
+ $ lps taxonomy remove
2430
3363
 
2431
3364
  EXAMPLES
2432
- $ lps template list
3365
+ $ lps taxonomy rm <slug>
3366
+
3367
+ $ lps taxonomy remove <slug> --yes
2433
3368
  ```
2434
3369
 
2435
- _See code: [src/commands/template/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/template/list.ts)_
3370
+ _See code: [src/commands/taxonomy/rm.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/taxonomy/rm.ts)_
2436
3371
 
2437
- ## `lps template push`
3372
+ ## `lps taxonomy rollback [PATH]`
2438
3373
 
2439
- Push block templates (templates/<slug>.html) and template parts (parts/<slug>.html) as the files of a child theme of the active block theme, <parent>-loopress. The child mirrors the project: files removed locally are removed from it. It is never activated for you.
3374
+ Restore taxonomies to a snapshot taken automatically before an earlier `lps taxonomy push`
2440
3375
 
2441
3376
  ```
2442
3377
  USAGE
2443
- $ lps template push [--json] [--env <value>] [-d] [-y]
3378
+ $ lps taxonomy rollback [PATH] [--json] [--env <value>] [-d] [-y] [--list] [--to <value>]
3379
+
3380
+ ARGUMENTS
3381
+ [PATH] Path to taxonomies directory (overrides project config)
2444
3382
 
2445
3383
  FLAGS
2446
3384
  -d, --dry-run Show what would change without making changes
2447
3385
  -y, --yes Answer yes to confirmation prompts
2448
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
3386
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
3387
+ --list List available snapshots instead of rolling back
3388
+ --to=<value> Roll back to this snapshot id instead of the most recent one
2449
3389
 
2450
3390
  GLOBAL FLAGS
2451
3391
  --json Format output as json.
2452
3392
 
2453
3393
  DESCRIPTION
2454
- Push block templates (templates/<slug>.html) and template parts (parts/<slug>.html) as the files of a child theme of
2455
- the active block theme, <parent>-loopress. The child mirrors the project: files removed locally are removed from it.
2456
- It is never activated for you.
3394
+ Restore taxonomies to a snapshot taken automatically before an earlier `lps taxonomy push`
3395
+
3396
+ EXAMPLES
3397
+ $ lps taxonomy rollback
3398
+
3399
+ $ lps taxonomy rollback --list
3400
+
3401
+ $ lps taxonomy rollback --to 1732000000000
3402
+
3403
+ $ lps taxonomy rollback --dry-run
3404
+ ```
3405
+
3406
+ _See code: [src/commands/taxonomy/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/taxonomy/rollback.ts)_
3407
+
3408
+ ## `lps telemetry disable`
3409
+
3410
+ Disable error reporting to Sentry
3411
+
3412
+ ```
3413
+ USAGE
3414
+ $ lps telemetry disable
3415
+
3416
+ DESCRIPTION
3417
+ Disable error reporting to Sentry
2457
3418
 
2458
3419
  EXAMPLES
2459
- $ lps template push
3420
+ $ lps telemetry disable
3421
+ ```
3422
+
3423
+ _See code: [src/commands/telemetry/disable.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/telemetry/disable.ts)_
2460
3424
 
2461
- $ lps template push --dry-run
3425
+ ## `lps telemetry enable`
3426
+
3427
+ Enable error reporting to Sentry
3428
+
3429
+ ```
3430
+ USAGE
3431
+ $ lps telemetry enable
3432
+
3433
+ DESCRIPTION
3434
+ Enable error reporting to Sentry
3435
+
3436
+ EXAMPLES
3437
+ $ lps telemetry enable
2462
3438
  ```
2463
3439
 
2464
- _See code: [src/commands/template/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/template/push.ts)_
3440
+ _See code: [src/commands/telemetry/enable.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/telemetry/enable.ts)_
2465
3441
 
2466
3442
  ## `lps theme add SLUG`
2467
3443
 
@@ -2476,7 +3452,7 @@ ARGUMENTS
2476
3452
 
2477
3453
  FLAGS
2478
3454
  -d, --dry-run Show what would change without making changes
2479
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
3455
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2480
3456
  --version=<value> Exact version to pin (default: "latest")
2481
3457
 
2482
3458
  GLOBAL FLAGS
@@ -2491,11 +3467,11 @@ EXAMPLES
2491
3467
  $ lps theme add generatepress --version 3.4.0
2492
3468
  ```
2493
3469
 
2494
- _See code: [src/commands/theme/add.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/theme/add.ts)_
3470
+ _See code: [src/commands/theme/add.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/theme/add.ts)_
2495
3471
 
2496
3472
  ## `lps theme pull`
2497
3473
 
2498
- Pull installed themes from WordPress into loopress.json, pinned to their live versions
3474
+ Pull everything theme related from WordPress: theme versions and Global Styles
2499
3475
 
2500
3476
  ```
2501
3477
  USAGE
@@ -2503,23 +3479,27 @@ USAGE
2503
3479
 
2504
3480
  FLAGS
2505
3481
  -d, --dry-run Show what would change without making changes
2506
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
3482
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2507
3483
 
2508
3484
  GLOBAL FLAGS
2509
3485
  --json Format output as json.
2510
3486
 
2511
3487
  DESCRIPTION
2512
- Pull installed themes from WordPress into loopress.json, pinned to their live versions
3488
+ Pull everything theme related from WordPress: theme versions and Global Styles
2513
3489
 
2514
3490
  EXAMPLES
2515
3491
  $ lps theme pull
3492
+
3493
+ $ lps theme pull --env staging
3494
+
3495
+ $ lps theme pull --dry-run
2516
3496
  ```
2517
3497
 
2518
- _See code: [src/commands/theme/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/theme/pull.ts)_
3498
+ _See code: [src/commands/theme/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/theme/pull.ts)_
2519
3499
 
2520
3500
  ## `lps theme push`
2521
3501
 
2522
- Install themes on WordPress to match loopress.json (versions only, never switches the active theme)
3502
+ Push everything theme related to WordPress: theme versions, templates and parts, then Global Styles
2523
3503
 
2524
3504
  ```
2525
3505
  USAGE
@@ -2528,22 +3508,24 @@ USAGE
2528
3508
  FLAGS
2529
3509
  -d, --dry-run Show what would change without making changes
2530
3510
  -y, --yes Answer yes to confirmation prompts
2531
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
2532
- --force Allow downgrades and take over themes installed outside Loopress
3511
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
3512
+ --force Passed to `lps theme version push`
2533
3513
 
2534
3514
  GLOBAL FLAGS
2535
3515
  --json Format output as json.
2536
3516
 
2537
3517
  DESCRIPTION
2538
- Install themes on WordPress to match loopress.json (versions only, never switches the active theme)
3518
+ Push everything theme related to WordPress: theme versions, templates and parts, then Global Styles
2539
3519
 
2540
3520
  EXAMPLES
2541
3521
  $ lps theme push
2542
3522
 
2543
- $ lps theme push --force
3523
+ $ lps theme push --env staging
3524
+
3525
+ $ lps theme push --dry-run
2544
3526
  ```
2545
3527
 
2546
- _See code: [src/commands/theme/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/theme/push.ts)_
3528
+ _See code: [src/commands/theme/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/theme/push.ts)_
2547
3529
 
2548
3530
  ## `lps theme status`
2549
3531
 
@@ -2554,7 +3536,7 @@ USAGE
2554
3536
  $ lps theme status [--json] [--env <value>]
2555
3537
 
2556
3538
  FLAGS
2557
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
3539
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2558
3540
 
2559
3541
  GLOBAL FLAGS
2560
3542
  --json Format output as json.
@@ -2566,7 +3548,7 @@ EXAMPLES
2566
3548
  $ lps theme status
2567
3549
  ```
2568
3550
 
2569
- _See code: [src/commands/theme/status.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/theme/status.ts)_
3551
+ _See code: [src/commands/theme/status.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/theme/status.ts)_
2570
3552
 
2571
3553
  ## `lps theme style diff [PATH]`
2572
3554
 
@@ -2581,7 +3563,7 @@ ARGUMENTS
2581
3563
 
2582
3564
  FLAGS
2583
3565
  --against=<value> Compare the primary environment against this second environment instead of against local files
2584
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
3566
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2585
3567
 
2586
3568
  GLOBAL FLAGS
2587
3569
  --json Format output as json.
@@ -2598,7 +3580,7 @@ EXAMPLES
2598
3580
  $ lps theme style diff --env staging --against production
2599
3581
  ```
2600
3582
 
2601
- _See code: [src/commands/theme/style/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/theme/style/diff.ts)_
3583
+ _See code: [src/commands/theme/style/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/theme/style/diff.ts)_
2602
3584
 
2603
3585
  ## `lps theme style pull [PATH]`
2604
3586
 
@@ -2606,14 +3588,17 @@ Pull the active block theme's Global Styles customizations (Site Editor > Styles
2606
3588
 
2607
3589
  ```
2608
3590
  USAGE
2609
- $ lps theme style pull [PATH] [--env <value>] [-d]
3591
+ $ lps theme style pull [PATH] [--json] [--env <value>] [-d]
2610
3592
 
2611
3593
  ARGUMENTS
2612
3594
  [PATH] Path to theme styles directory (overrides project config)
2613
3595
 
2614
3596
  FLAGS
2615
3597
  -d, --dry-run Show what would change without making changes
2616
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
3598
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
3599
+
3600
+ GLOBAL FLAGS
3601
+ --json Format output as json.
2617
3602
 
2618
3603
  DESCRIPTION
2619
3604
  Pull the active block theme's Global Styles customizations (Site Editor > Styles) from WordPress into a local file
@@ -2622,7 +3607,7 @@ EXAMPLES
2622
3607
  $ lps theme style pull
2623
3608
  ```
2624
3609
 
2625
- _See code: [src/commands/theme/style/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/theme/style/pull.ts)_
3610
+ _See code: [src/commands/theme/style/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/theme/style/pull.ts)_
2626
3611
 
2627
3612
  ## `lps theme style push [PATH]`
2628
3613
 
@@ -2630,14 +3615,18 @@ Push the local Global Styles file to the active block theme's Site Editor > Styl
2630
3615
 
2631
3616
  ```
2632
3617
  USAGE
2633
- $ lps theme style push [PATH] [--env <value>] [-d]
3618
+ $ lps theme style push [PATH] [--json] [--env <value>] [-d] [-y]
2634
3619
 
2635
3620
  ARGUMENTS
2636
3621
  [PATH] Path to theme styles directory (overrides project config)
2637
3622
 
2638
3623
  FLAGS
2639
3624
  -d, --dry-run Show what would change without making changes
2640
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
3625
+ -y, --yes Answer yes to confirmation prompts
3626
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
3627
+
3628
+ GLOBAL FLAGS
3629
+ --json Format output as json.
2641
3630
 
2642
3631
  DESCRIPTION
2643
3632
  Push the local Global Styles file to the active block theme's Site Editor > Styles on WordPress
@@ -2646,7 +3635,7 @@ EXAMPLES
2646
3635
  $ lps theme style push
2647
3636
  ```
2648
3637
 
2649
- _See code: [src/commands/theme/style/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/theme/style/push.ts)_
3638
+ _See code: [src/commands/theme/style/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/theme/style/push.ts)_
2650
3639
 
2651
3640
  ## `lps theme style rollback [PATH]`
2652
3641
 
@@ -2662,7 +3651,7 @@ ARGUMENTS
2662
3651
  FLAGS
2663
3652
  -d, --dry-run Show what would change without making changes
2664
3653
  -y, --yes Answer yes to confirmation prompts
2665
- --env=<value> Target environment by name, overriding the globally active one (lps project switch)
3654
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
2666
3655
  --list List available snapshots instead of rolling back
2667
3656
  --to=<value> Roll back to this snapshot id instead of the most recent one
2668
3657
 
@@ -2682,7 +3671,141 @@ EXAMPLES
2682
3671
  $ lps theme style rollback --dry-run
2683
3672
  ```
2684
3673
 
2685
- _See code: [src/commands/theme/style/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/theme/style/rollback.ts)_
3674
+ _See code: [src/commands/theme/style/rollback.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/theme/style/rollback.ts)_
3675
+
3676
+ ## `lps theme template diff`
3677
+
3678
+ Show what differs in block templates and parts between your local files and a WordPress environment, or between two environments. Templates and parts edited in the Site Editor show up too.
3679
+
3680
+ ```
3681
+ USAGE
3682
+ $ lps theme template diff [--json] [--env <value>] [--against <value>]
3683
+
3684
+ FLAGS
3685
+ --against=<value> Compare the primary environment against this second environment instead of against local files
3686
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
3687
+
3688
+ GLOBAL FLAGS
3689
+ --json Format output as json.
3690
+
3691
+ DESCRIPTION
3692
+ Show what differs in block templates and parts between your local files and a WordPress environment, or between two
3693
+ environments. Templates and parts edited in the Site Editor show up too.
3694
+
3695
+ EXAMPLES
3696
+ $ lps theme template diff
3697
+
3698
+ $ lps theme template diff --env staging
3699
+
3700
+ $ lps theme template diff --env staging --against production
3701
+ ```
3702
+
3703
+ _See code: [src/commands/theme/template/diff.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/theme/template/diff.ts)_
3704
+
3705
+ ## `lps theme template list`
3706
+
3707
+ Show the Loopress child theme of the active block theme: its templates, parts, and those edited in the Site Editor
3708
+
3709
+ ```
3710
+ USAGE
3711
+ $ lps theme template list [--json] [--env <value>]
3712
+
3713
+ FLAGS
3714
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
3715
+
3716
+ GLOBAL FLAGS
3717
+ --json Format output as json.
3718
+
3719
+ DESCRIPTION
3720
+ Show the Loopress child theme of the active block theme: its templates, parts, and those edited in the Site Editor
3721
+
3722
+ EXAMPLES
3723
+ $ lps theme template list
3724
+ ```
3725
+
3726
+ _See code: [src/commands/theme/template/list.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/theme/template/list.ts)_
3727
+
3728
+ ## `lps theme template push`
3729
+
3730
+ Push block templates (theme/templates/<slug>.html), template parts (theme/parts/<slug>.html) and the theme CSS (theme/css/style.css, theme/blocks/<namespace>/<block>.css, bundled with esbuild) as the files of a child theme of the active block theme, <parent>-loopress. The child mirrors the project: files removed locally are removed from it. It is never activated for you.
3731
+
3732
+ ```
3733
+ USAGE
3734
+ $ lps theme template push [--json] [--env <value>] [-d] [-y]
3735
+
3736
+ FLAGS
3737
+ -d, --dry-run Show what would change without making changes
3738
+ -y, --yes Answer yes to confirmation prompts
3739
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
3740
+
3741
+ GLOBAL FLAGS
3742
+ --json Format output as json.
3743
+
3744
+ DESCRIPTION
3745
+ Push block templates (theme/templates/<slug>.html), template parts (theme/parts/<slug>.html) and the theme CSS
3746
+ (theme/css/style.css, theme/blocks/<namespace>/<block>.css, bundled with esbuild) as the files of a child theme of the
3747
+ active block theme, <parent>-loopress. The child mirrors the project: files removed locally are removed from it. It is
3748
+ never activated for you.
3749
+
3750
+ EXAMPLES
3751
+ $ lps theme template push
3752
+
3753
+ $ lps theme template push --dry-run
3754
+ ```
3755
+
3756
+ _See code: [src/commands/theme/template/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/theme/template/push.ts)_
3757
+
3758
+ ## `lps theme version pull`
3759
+
3760
+ Pull installed themes from WordPress into loopress.json, pinned to their live versions
3761
+
3762
+ ```
3763
+ USAGE
3764
+ $ lps theme version pull [--json] [--env <value>] [-d]
3765
+
3766
+ FLAGS
3767
+ -d, --dry-run Show what would change without making changes
3768
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
3769
+
3770
+ GLOBAL FLAGS
3771
+ --json Format output as json.
3772
+
3773
+ DESCRIPTION
3774
+ Pull installed themes from WordPress into loopress.json, pinned to their live versions
3775
+
3776
+ EXAMPLES
3777
+ $ lps theme version pull
3778
+ ```
3779
+
3780
+ _See code: [src/commands/theme/version/pull.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/theme/version/pull.ts)_
3781
+
3782
+ ## `lps theme version push`
3783
+
3784
+ Install themes on WordPress to match loopress.json (versions only, never switches the active theme)
3785
+
3786
+ ```
3787
+ USAGE
3788
+ $ lps theme version push [--json] [--env <value>] [-d] [-y] [--force]
3789
+
3790
+ FLAGS
3791
+ -d, --dry-run Show what would change without making changes
3792
+ -y, --yes Answer yes to confirmation prompts
3793
+ --env=<value> Target environment by name (default: "local", or the project's only environment)
3794
+ --force Allow downgrades and take over themes installed outside Loopress
3795
+
3796
+ GLOBAL FLAGS
3797
+ --json Format output as json.
3798
+
3799
+ DESCRIPTION
3800
+ Install themes on WordPress to match loopress.json (versions only, never switches the active theme)
3801
+
3802
+ EXAMPLES
3803
+ $ lps theme version push
3804
+
3805
+ $ lps theme version push --force
3806
+ ```
3807
+
3808
+ _See code: [src/commands/theme/version/push.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/theme/version/push.ts)_
2686
3809
 
2687
3810
  ## `lps validate`
2688
3811
 
@@ -2702,5 +3825,5 @@ EXAMPLES
2702
3825
  $ lps validate
2703
3826
  ```
2704
3827
 
2705
- _See code: [src/commands/validate.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.28.0/cli/src/commands/validate.ts)_
3828
+ _See code: [src/commands/validate.ts](https://github.com/loopress/loopress/blob/%40loopress%2Fcli%400.30.0/cli/src/commands/validate.ts)_
2706
3829
  <!-- commandsstop -->