@mytechtoday/augment-extensions 0.5.0 → 1.2.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 (523) hide show
  1. package/AGENTS.md +265 -232
  2. package/README.md +956 -771
  3. package/augment-extensions/coding-standards/bash/README.md +196 -196
  4. package/augment-extensions/coding-standards/bash/module.json +163 -163
  5. package/augment-extensions/coding-standards/bash/rules/naming-conventions.md +336 -336
  6. package/augment-extensions/coding-standards/bash/rules/universal-standards.md +289 -289
  7. package/augment-extensions/coding-standards/css/README.md +40 -40
  8. package/augment-extensions/coding-standards/css/examples/css-examples.css +550 -550
  9. package/augment-extensions/coding-standards/css/module.json +44 -44
  10. package/augment-extensions/coding-standards/css/rules/css-modern-features.md +448 -448
  11. package/augment-extensions/coding-standards/css/rules/css-standards.md +492 -492
  12. package/augment-extensions/coding-standards/html/README.md +40 -40
  13. package/augment-extensions/coding-standards/html/examples/html-examples.html +267 -267
  14. package/augment-extensions/coding-standards/html/examples/responsive-layout.html +505 -505
  15. package/augment-extensions/coding-standards/html/module.json +44 -44
  16. package/augment-extensions/coding-standards/html/rules/html-standards.md +349 -349
  17. package/augment-extensions/coding-standards/html-css-js/README.md +194 -194
  18. package/augment-extensions/coding-standards/html-css-js/examples/async-examples.js +487 -487
  19. package/augment-extensions/coding-standards/html-css-js/examples/css-examples.css +550 -550
  20. package/augment-extensions/coding-standards/html-css-js/examples/dom-examples.js +667 -667
  21. package/augment-extensions/coding-standards/html-css-js/examples/html-examples.html +267 -267
  22. package/augment-extensions/coding-standards/html-css-js/examples/javascript-examples.js +612 -612
  23. package/augment-extensions/coding-standards/html-css-js/examples/responsive-layout.html +505 -505
  24. package/augment-extensions/coding-standards/html-css-js/module.json +48 -48
  25. package/augment-extensions/coding-standards/html-css-js/rules/async-patterns.md +515 -515
  26. package/augment-extensions/coding-standards/html-css-js/rules/css-modern-features.md +448 -448
  27. package/augment-extensions/coding-standards/html-css-js/rules/css-standards.md +492 -492
  28. package/augment-extensions/coding-standards/html-css-js/rules/dom-manipulation.md +439 -439
  29. package/augment-extensions/coding-standards/html-css-js/rules/html-standards.md +349 -349
  30. package/augment-extensions/coding-standards/html-css-js/rules/javascript-standards.md +486 -486
  31. package/augment-extensions/coding-standards/html-css-js/rules/performance.md +463 -463
  32. package/augment-extensions/coding-standards/html-css-js/rules/tooling.md +543 -543
  33. package/augment-extensions/coding-standards/js/README.md +46 -46
  34. package/augment-extensions/coding-standards/js/examples/async-examples.js +487 -487
  35. package/augment-extensions/coding-standards/js/examples/dom-examples.js +667 -667
  36. package/augment-extensions/coding-standards/js/examples/javascript-examples.js +612 -612
  37. package/augment-extensions/coding-standards/js/module.json +49 -49
  38. package/augment-extensions/coding-standards/js/rules/async-patterns.md +515 -515
  39. package/augment-extensions/coding-standards/js/rules/dom-manipulation.md +439 -439
  40. package/augment-extensions/coding-standards/js/rules/javascript-standards.md +486 -486
  41. package/augment-extensions/coding-standards/js/rules/performance.md +463 -463
  42. package/augment-extensions/coding-standards/js/rules/tooling.md +543 -543
  43. package/augment-extensions/coding-standards/php/README.md +248 -248
  44. package/augment-extensions/coding-standards/php/examples/api-endpoint-example.php +204 -204
  45. package/augment-extensions/coding-standards/php/examples/cli-command-example.php +206 -206
  46. package/augment-extensions/coding-standards/php/examples/legacy-refactoring-example.php +234 -234
  47. package/augment-extensions/coding-standards/php/examples/web-application-example.php +211 -211
  48. package/augment-extensions/coding-standards/php/examples/woocommerce-extension-example.php +215 -215
  49. package/augment-extensions/coding-standards/php/examples/wordpress-plugin-example.php +189 -189
  50. package/augment-extensions/coding-standards/php/module.json +166 -166
  51. package/augment-extensions/coding-standards/php/rules/api-development.md +480 -480
  52. package/augment-extensions/coding-standards/php/rules/category-configuration.md +332 -332
  53. package/augment-extensions/coding-standards/php/rules/cli-tools.md +472 -472
  54. package/augment-extensions/coding-standards/php/rules/cms-integration.md +561 -561
  55. package/augment-extensions/coding-standards/php/rules/code-quality.md +402 -402
  56. package/augment-extensions/coding-standards/php/rules/documentation.md +425 -425
  57. package/augment-extensions/coding-standards/php/rules/ecommerce.md +627 -627
  58. package/augment-extensions/coding-standards/php/rules/error-handling.md +336 -336
  59. package/augment-extensions/coding-standards/php/rules/legacy-migration.md +677 -677
  60. package/augment-extensions/coding-standards/php/rules/naming-conventions.md +279 -279
  61. package/augment-extensions/coding-standards/php/rules/performance.md +392 -392
  62. package/augment-extensions/coding-standards/php/rules/psr-standards.md +186 -186
  63. package/augment-extensions/coding-standards/php/rules/security.md +358 -358
  64. package/augment-extensions/coding-standards/php/rules/testing.md +403 -403
  65. package/augment-extensions/coding-standards/php/rules/type-declarations.md +331 -331
  66. package/augment-extensions/coding-standards/php/rules/web-applications.md +426 -426
  67. package/augment-extensions/coding-standards/powershell/README.md +154 -154
  68. package/augment-extensions/coding-standards/powershell/examples/admin-example.ps1 +272 -272
  69. package/augment-extensions/coding-standards/powershell/examples/automation-example.ps1 +173 -173
  70. package/augment-extensions/coding-standards/powershell/examples/cloud-example.ps1 +243 -243
  71. package/augment-extensions/coding-standards/powershell/examples/cross-platform-example.ps1 +297 -297
  72. package/augment-extensions/coding-standards/powershell/examples/dsc-example.ps1 +224 -224
  73. package/augment-extensions/coding-standards/powershell/examples/legacy-migration-example.ps1 +340 -340
  74. package/augment-extensions/coding-standards/powershell/examples/module-example.psm1 +255 -255
  75. package/augment-extensions/coding-standards/powershell/module.json +165 -165
  76. package/augment-extensions/coding-standards/powershell/rules/administrative-tools.md +439 -439
  77. package/augment-extensions/coding-standards/powershell/rules/automation-scripts.md +240 -240
  78. package/augment-extensions/coding-standards/powershell/rules/cloud-orchestration.md +384 -384
  79. package/augment-extensions/coding-standards/powershell/rules/configuration-schema.md +383 -383
  80. package/augment-extensions/coding-standards/powershell/rules/cross-platform-scripts.md +482 -482
  81. package/augment-extensions/coding-standards/powershell/rules/dsc-configurations.md +296 -296
  82. package/augment-extensions/coding-standards/powershell/rules/error-handling.md +314 -314
  83. package/augment-extensions/coding-standards/powershell/rules/legacy-migrations.md +466 -466
  84. package/augment-extensions/coding-standards/powershell/rules/modules-functions.md +244 -244
  85. package/augment-extensions/coding-standards/powershell/rules/naming-conventions.md +266 -266
  86. package/augment-extensions/coding-standards/powershell/rules/performance-optimization.md +209 -209
  87. package/augment-extensions/coding-standards/powershell/rules/security-practices.md +314 -314
  88. package/augment-extensions/coding-standards/powershell/rules/testing-guidelines.md +268 -268
  89. package/augment-extensions/coding-standards/powershell/rules/universal-standards.md +197 -197
  90. package/augment-extensions/coding-standards/python/README.md +48 -48
  91. package/augment-extensions/coding-standards/python/examples/best-practices.py +373 -373
  92. package/augment-extensions/coding-standards/python/module.json +30 -30
  93. package/augment-extensions/coding-standards/python/rules/async-patterns.md +884 -884
  94. package/augment-extensions/coding-standards/python/rules/best-practices.md +232 -232
  95. package/augment-extensions/coding-standards/python/rules/code-organization.md +220 -220
  96. package/augment-extensions/coding-standards/python/rules/documentation.md +831 -831
  97. package/augment-extensions/coding-standards/python/rules/error-handling.md +1008 -1008
  98. package/augment-extensions/coding-standards/python/rules/naming-conventions.md +172 -172
  99. package/augment-extensions/coding-standards/python/rules/testing.md +409 -409
  100. package/augment-extensions/coding-standards/python/rules/tooling.md +446 -446
  101. package/augment-extensions/coding-standards/python/rules/type-hints.md +253 -253
  102. package/augment-extensions/coding-standards/react/README.md +45 -45
  103. package/augment-extensions/coding-standards/react/module.json +27 -27
  104. package/augment-extensions/coding-standards/react/rules/component-patterns.md +214 -214
  105. package/augment-extensions/coding-standards/react/rules/hooks-best-practices.md +235 -235
  106. package/augment-extensions/coding-standards/react/rules/performance.md +300 -300
  107. package/augment-extensions/coding-standards/react/rules/state-management.md +265 -265
  108. package/augment-extensions/coding-standards/react/rules/typescript-react.md +271 -271
  109. package/augment-extensions/coding-standards/typescript/README.md +45 -45
  110. package/augment-extensions/coding-standards/typescript/module.json +27 -27
  111. package/augment-extensions/coding-standards/typescript/rules/naming-conventions.md +225 -225
  112. package/augment-extensions/collections/html-css-js/README.md +82 -82
  113. package/augment-extensions/collections/html-css-js/collection.json +41 -41
  114. package/augment-extensions/domain-rules/api-design/README.md +41 -41
  115. package/augment-extensions/domain-rules/api-design/module.json +27 -27
  116. package/augment-extensions/domain-rules/api-design/rules/authentication.md +263 -263
  117. package/augment-extensions/domain-rules/api-design/rules/documentation.md +395 -395
  118. package/augment-extensions/domain-rules/api-design/rules/error-handling.md +290 -290
  119. package/augment-extensions/domain-rules/api-design/rules/graphql-api.md +313 -313
  120. package/augment-extensions/domain-rules/api-design/rules/rest-api.md +214 -214
  121. package/augment-extensions/domain-rules/api-design/rules/versioning.md +268 -268
  122. package/augment-extensions/domain-rules/database/README.md +161 -161
  123. package/augment-extensions/domain-rules/database/examples/flat-database-example.md +793 -793
  124. package/augment-extensions/domain-rules/database/examples/hybrid-database-example.md +1132 -1132
  125. package/augment-extensions/domain-rules/database/examples/nosql-document-example.md +868 -868
  126. package/augment-extensions/domain-rules/database/examples/nosql-graph-example.md +805 -805
  127. package/augment-extensions/domain-rules/database/examples/relational-schema-example.md +621 -621
  128. package/augment-extensions/domain-rules/database/examples/vector-database-example.md +965 -965
  129. package/augment-extensions/domain-rules/database/module.json +28 -28
  130. package/augment-extensions/domain-rules/database/rules/flat-databases.md +624 -624
  131. package/augment-extensions/domain-rules/database/rules/nosql-databases.md +588 -588
  132. package/augment-extensions/domain-rules/database/rules/nosql-document-stores.md +856 -856
  133. package/augment-extensions/domain-rules/database/rules/nosql-graph-databases.md +778 -778
  134. package/augment-extensions/domain-rules/database/rules/nosql-key-value-stores.md +963 -963
  135. package/augment-extensions/domain-rules/database/rules/performance-optimization.md +1076 -1076
  136. package/augment-extensions/domain-rules/database/rules/relational-databases.md +697 -697
  137. package/augment-extensions/domain-rules/database/rules/relational-indexing.md +671 -671
  138. package/augment-extensions/domain-rules/database/rules/relational-query-optimization.md +607 -607
  139. package/augment-extensions/domain-rules/database/rules/relational-schema-design.md +907 -907
  140. package/augment-extensions/domain-rules/database/rules/relational-transactions.md +783 -783
  141. package/augment-extensions/domain-rules/database/rules/security-standards.md +980 -980
  142. package/augment-extensions/domain-rules/database/rules/universal-best-practices.md +485 -485
  143. package/augment-extensions/domain-rules/database/rules/vector-databases.md +521 -521
  144. package/augment-extensions/domain-rules/database/rules/vector-embeddings.md +858 -858
  145. package/augment-extensions/domain-rules/database/rules/vector-indexing.md +934 -934
  146. package/augment-extensions/domain-rules/design/color/themes/catppuccin-latte/README.md +23 -23
  147. package/augment-extensions/domain-rules/design/color/themes/catppuccin-latte/module.json +26 -26
  148. package/augment-extensions/domain-rules/design/color/themes/catppuccin-mocha/README.md +23 -23
  149. package/augment-extensions/domain-rules/design/color/themes/catppuccin-mocha/module.json +26 -26
  150. package/augment-extensions/domain-rules/design/color/themes/dracula/README.md +23 -23
  151. package/augment-extensions/domain-rules/design/color/themes/dracula/module.json +26 -26
  152. package/augment-extensions/domain-rules/design/color/themes/gruvbox-dark/README.md +23 -23
  153. package/augment-extensions/domain-rules/design/color/themes/gruvbox-dark/module.json +26 -26
  154. package/augment-extensions/domain-rules/design/color/themes/gruvbox-light/README.md +23 -23
  155. package/augment-extensions/domain-rules/design/color/themes/gruvbox-light/module.json +26 -26
  156. package/augment-extensions/domain-rules/design/color/themes/high-contrast/README.md +27 -27
  157. package/augment-extensions/domain-rules/design/color/themes/high-contrast/module.json +26 -26
  158. package/augment-extensions/domain-rules/design/color/themes/monokai/README.md +23 -23
  159. package/augment-extensions/domain-rules/design/color/themes/monokai/module.json +26 -26
  160. package/augment-extensions/domain-rules/design/color/themes/nord/README.md +23 -23
  161. package/augment-extensions/domain-rules/design/color/themes/nord/module.json +26 -26
  162. package/augment-extensions/domain-rules/design/color/themes/one-dark/README.md +23 -23
  163. package/augment-extensions/domain-rules/design/color/themes/one-dark/module.json +26 -26
  164. package/augment-extensions/domain-rules/design/color/themes/one-light/README.md +23 -23
  165. package/augment-extensions/domain-rules/design/color/themes/one-light/module.json +26 -26
  166. package/augment-extensions/domain-rules/design/color/themes/solarized-dark/README.md +23 -23
  167. package/augment-extensions/domain-rules/design/color/themes/solarized-dark/module.json +26 -26
  168. package/augment-extensions/domain-rules/design/color/themes/solarized-light/README.md +23 -23
  169. package/augment-extensions/domain-rules/design/color/themes/solarized-light/module.json +26 -26
  170. package/augment-extensions/domain-rules/design/color/themes/tokyo-night/README.md +23 -23
  171. package/augment-extensions/domain-rules/design/color/themes/tokyo-night/module.json +26 -26
  172. package/augment-extensions/domain-rules/mcp/README.md +150 -150
  173. package/augment-extensions/domain-rules/mcp/examples/compressed-example.md +522 -522
  174. package/augment-extensions/domain-rules/mcp/examples/graph-augmented-example.md +520 -520
  175. package/augment-extensions/domain-rules/mcp/examples/hybrid-example.md +570 -570
  176. package/augment-extensions/domain-rules/mcp/examples/state-based-example.md +427 -427
  177. package/augment-extensions/domain-rules/mcp/examples/token-based-example.md +435 -435
  178. package/augment-extensions/domain-rules/mcp/examples/vector-based-example.md +502 -502
  179. package/augment-extensions/domain-rules/mcp/module.json +49 -49
  180. package/augment-extensions/domain-rules/mcp/rules/compressed-mcp.md +595 -595
  181. package/augment-extensions/domain-rules/mcp/rules/configuration.md +345 -345
  182. package/augment-extensions/domain-rules/mcp/rules/graph-augmented-mcp.md +687 -687
  183. package/augment-extensions/domain-rules/mcp/rules/hybrid-mcp.md +636 -636
  184. package/augment-extensions/domain-rules/mcp/rules/state-based-mcp.md +484 -484
  185. package/augment-extensions/domain-rules/mcp/rules/testing-validation.md +360 -360
  186. package/augment-extensions/domain-rules/mcp/rules/token-based-mcp.md +393 -393
  187. package/augment-extensions/domain-rules/mcp/rules/universal-rules.md +194 -194
  188. package/augment-extensions/domain-rules/mcp/rules/vector-based-mcp.md +625 -625
  189. package/augment-extensions/domain-rules/security/README.md +41 -41
  190. package/augment-extensions/domain-rules/security/module.json +28 -28
  191. package/augment-extensions/domain-rules/security/rules/authentication-security.md +361 -361
  192. package/augment-extensions/domain-rules/security/rules/encryption.md +208 -208
  193. package/augment-extensions/domain-rules/security/rules/input-validation.md +294 -294
  194. package/augment-extensions/domain-rules/security/rules/owasp-top-10.md +339 -339
  195. package/augment-extensions/domain-rules/security/rules/secure-coding.md +293 -293
  196. package/augment-extensions/domain-rules/security/rules/web-security.md +268 -268
  197. package/augment-extensions/domain-rules/seo-sales-marketing/ANNOUNCEMENT.md +143 -0
  198. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/README.md +140 -136
  199. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/SCHEMA-VALIDATION-REPORT.md +216 -216
  200. package/augment-extensions/domain-rules/seo-sales-marketing/TEST-VALIDATION.md +129 -0
  201. package/augment-extensions/domain-rules/seo-sales-marketing/USAGE-GUIDES.md +254 -0
  202. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/examples/brand-kit-example.yaml +292 -292
  203. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/examples/campaign-brief-example.yaml +389 -389
  204. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/examples/content-calendar-example.yaml +643 -643
  205. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/examples/email-newsletter-example.md +376 -376
  206. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/examples/landing-page-example.md +934 -934
  207. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/examples/ppc-ad-copy-example.md +301 -301
  208. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/examples/seo-blog-post-example.md +347 -347
  209. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/examples/social-media-campaign-example.md +606 -606
  210. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/module.json +50 -50
  211. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/rules/affiliate-influencer-marketing.md +593 -593
  212. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/rules/asset-management.md +418 -418
  213. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/rules/brand-consistency.md +210 -210
  214. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/rules/content-marketing.md +337 -337
  215. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/rules/conversion-optimization.md +455 -455
  216. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/rules/direct-sales.md +499 -499
  217. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/rules/email-marketing.md +439 -439
  218. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/rules/legal-compliance.md +227 -227
  219. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/rules/ppc-advertising.md +569 -569
  220. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/rules/seo-optimization.md +470 -470
  221. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/rules/social-media-marketing.md +414 -414
  222. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/rules/universal-marketing.md +177 -177
  223. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/schemas/asset-inventory.schema.json +247 -247
  224. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/schemas/brand-kit.schema.json +326 -326
  225. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/schemas/campaign-brief.schema.json +342 -342
  226. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/schemas/color-palette.schema.json +223 -223
  227. package/augment-extensions/domain-rules/{marketing-standards/seo-sales-marketing → seo-sales-marketing}/schemas/content-template.schema.json +383 -383
  228. package/augment-extensions/domain-rules/wordpress/README.md +163 -163
  229. package/augment-extensions/domain-rules/wordpress/module.json +32 -32
  230. package/augment-extensions/domain-rules/wordpress/rules/coding-standards.md +617 -617
  231. package/augment-extensions/domain-rules/wordpress/rules/directory-structure.md +270 -270
  232. package/augment-extensions/domain-rules/wordpress/rules/file-patterns.md +423 -423
  233. package/augment-extensions/domain-rules/wordpress/rules/gutenberg-blocks.md +493 -493
  234. package/augment-extensions/domain-rules/wordpress/rules/performance.md +568 -568
  235. package/augment-extensions/domain-rules/wordpress/rules/plugin-development.md +510 -510
  236. package/augment-extensions/domain-rules/wordpress/rules/project-detection.md +251 -251
  237. package/augment-extensions/domain-rules/wordpress/rules/rest-api.md +501 -501
  238. package/augment-extensions/domain-rules/wordpress/rules/security.md +564 -564
  239. package/augment-extensions/domain-rules/wordpress/rules/theme-development.md +388 -388
  240. package/augment-extensions/domain-rules/wordpress/rules/woocommerce.md +441 -441
  241. package/augment-extensions/domain-rules/wordpress-plugin/README.md +139 -139
  242. package/augment-extensions/domain-rules/wordpress-plugin/examples/ajax-plugin.md +1599 -1599
  243. package/augment-extensions/domain-rules/wordpress-plugin/examples/custom-post-type-plugin.md +1727 -1727
  244. package/augment-extensions/domain-rules/wordpress-plugin/examples/gutenberg-block-plugin.md +428 -428
  245. package/augment-extensions/domain-rules/wordpress-plugin/examples/gutenberg-block.md +422 -422
  246. package/augment-extensions/domain-rules/wordpress-plugin/examples/mvc-plugin.md +1623 -1623
  247. package/augment-extensions/domain-rules/wordpress-plugin/examples/object-oriented-plugin.md +1343 -1343
  248. package/augment-extensions/domain-rules/wordpress-plugin/examples/rest-endpoint.md +734 -734
  249. package/augment-extensions/domain-rules/wordpress-plugin/examples/settings-page-plugin.md +1350 -1350
  250. package/augment-extensions/domain-rules/wordpress-plugin/examples/simple-procedural-plugin.md +503 -503
  251. package/augment-extensions/domain-rules/wordpress-plugin/examples/singleton-plugin.md +971 -971
  252. package/augment-extensions/domain-rules/wordpress-plugin/module.json +53 -53
  253. package/augment-extensions/domain-rules/wordpress-plugin/rules/activation-hooks.md +770 -770
  254. package/augment-extensions/domain-rules/wordpress-plugin/rules/admin-interface.md +874 -874
  255. package/augment-extensions/domain-rules/wordpress-plugin/rules/ajax-handlers.md +629 -629
  256. package/augment-extensions/domain-rules/wordpress-plugin/rules/asset-management.md +559 -559
  257. package/augment-extensions/domain-rules/wordpress-plugin/rules/context-providers.md +709 -709
  258. package/augment-extensions/domain-rules/wordpress-plugin/rules/cron-jobs.md +736 -736
  259. package/augment-extensions/domain-rules/wordpress-plugin/rules/database-management.md +1057 -1057
  260. package/augment-extensions/domain-rules/wordpress-plugin/rules/documentation-standards.md +463 -463
  261. package/augment-extensions/domain-rules/wordpress-plugin/rules/frontend-functionality.md +478 -478
  262. package/augment-extensions/domain-rules/wordpress-plugin/rules/gutenberg-blocks.md +818 -818
  263. package/augment-extensions/domain-rules/wordpress-plugin/rules/internationalization.md +416 -416
  264. package/augment-extensions/domain-rules/wordpress-plugin/rules/migration.md +667 -667
  265. package/augment-extensions/domain-rules/wordpress-plugin/rules/performance-optimization.md +878 -878
  266. package/augment-extensions/domain-rules/wordpress-plugin/rules/plugin-architecture.md +693 -693
  267. package/augment-extensions/domain-rules/wordpress-plugin/rules/plugin-structure.md +352 -352
  268. package/augment-extensions/domain-rules/wordpress-plugin/rules/rest-api.md +818 -818
  269. package/augment-extensions/domain-rules/wordpress-plugin/rules/scaffolding-workflow.md +624 -624
  270. package/augment-extensions/domain-rules/wordpress-plugin/rules/security-best-practices.md +866 -866
  271. package/augment-extensions/domain-rules/wordpress-plugin/rules/testing-patterns.md +1165 -1165
  272. package/augment-extensions/domain-rules/wordpress-plugin/rules/testing.md +414 -414
  273. package/augment-extensions/domain-rules/wordpress-plugin/rules/vscode-integration.md +751 -751
  274. package/augment-extensions/domain-rules/wordpress-plugin/rules/woocommerce-integration.md +949 -949
  275. package/augment-extensions/domain-rules/wordpress-plugin/rules/wordpress-org-submission.md +458 -458
  276. package/augment-extensions/examples/design-patterns/README.md +37 -37
  277. package/augment-extensions/examples/design-patterns/examples/behavioral-patterns.md +370 -370
  278. package/augment-extensions/examples/design-patterns/examples/creational-patterns.md +250 -250
  279. package/augment-extensions/examples/design-patterns/examples/structural-patterns.md +264 -264
  280. package/augment-extensions/examples/design-patterns/module.json +27 -27
  281. package/augment-extensions/examples/gutenberg-block-plugin/README.md +101 -101
  282. package/augment-extensions/examples/gutenberg-block-plugin/examples/testimonial-block.md +428 -428
  283. package/augment-extensions/examples/gutenberg-block-plugin/module.json +40 -40
  284. package/augment-extensions/examples/rest-api-plugin/README.md +98 -98
  285. package/augment-extensions/examples/rest-api-plugin/examples/task-manager-api.md +1299 -1299
  286. package/augment-extensions/examples/rest-api-plugin/module.json +40 -40
  287. package/augment-extensions/examples/woocommerce-extension/README.md +98 -98
  288. package/augment-extensions/examples/woocommerce-extension/examples/product-customizer.md +763 -763
  289. package/augment-extensions/examples/woocommerce-extension/module.json +40 -40
  290. package/augment-extensions/workflows/beads/README.md +135 -135
  291. package/augment-extensions/workflows/beads/examples/complete-workflow-example.md +278 -278
  292. package/augment-extensions/workflows/beads/module.json +55 -55
  293. package/augment-extensions/workflows/beads/rules/best-practices.md +398 -398
  294. package/augment-extensions/workflows/beads/rules/file-format.md +327 -327
  295. package/augment-extensions/workflows/beads/rules/manual-setup.md +315 -315
  296. package/augment-extensions/workflows/beads/rules/workflow.md +326 -326
  297. package/augment-extensions/workflows/beads-integration/IMPLEMENTATION-STATUS.md +145 -145
  298. package/augment-extensions/workflows/beads-integration/README.md +143 -143
  299. package/augment-extensions/workflows/beads-integration/config/defaults.json +32 -32
  300. package/augment-extensions/workflows/beads-integration/config/schema.json +140 -140
  301. package/augment-extensions/workflows/beads-integration/examples/basic-task-generation.md +293 -293
  302. package/augment-extensions/workflows/beads-integration/module.json +75 -75
  303. package/augment-extensions/workflows/beads-integration/rules/core-rules.md +219 -219
  304. package/augment-extensions/workflows/beads-integration/rules/effectiveness-standards.md +256 -256
  305. package/augment-extensions/workflows/beads-integration/rules/task-generation.md +607 -607
  306. package/augment-extensions/workflows/database/README.md +195 -195
  307. package/augment-extensions/workflows/database/ai-prompt-testing.md +295 -295
  308. package/augment-extensions/workflows/database/examples/migration-example.md +498 -498
  309. package/augment-extensions/workflows/database/examples/optimization-example.md +496 -496
  310. package/augment-extensions/workflows/database/examples/schema-design-example.md +444 -444
  311. package/augment-extensions/workflows/database/module.json +42 -42
  312. package/augment-extensions/workflows/database/rules/data-migration.md +249 -249
  313. package/augment-extensions/workflows/database/rules/documentation-standards.md +339 -339
  314. package/augment-extensions/workflows/database/rules/migration-workflow.md +352 -352
  315. package/augment-extensions/workflows/database/rules/optimization-workflow.md +435 -435
  316. package/augment-extensions/workflows/database/rules/schema-design-workflow.md +535 -535
  317. package/augment-extensions/workflows/database/rules/testing-patterns.md +305 -305
  318. package/augment-extensions/workflows/database/rules/workflow.md +458 -458
  319. package/augment-extensions/workflows/wordpress-plugin/README.md +232 -232
  320. package/augment-extensions/workflows/wordpress-plugin/ai-prompts.md +839 -839
  321. package/augment-extensions/workflows/wordpress-plugin/bead-decomposition-patterns.md +854 -854
  322. package/augment-extensions/workflows/wordpress-plugin/examples/complete-plugin-example.md +540 -540
  323. package/augment-extensions/workflows/wordpress-plugin/examples/custom-post-type-example.md +1083 -1083
  324. package/augment-extensions/workflows/wordpress-plugin/examples/feature-addition-workflow.md +669 -669
  325. package/augment-extensions/workflows/wordpress-plugin/examples/plugin-creation-workflow.md +597 -597
  326. package/augment-extensions/workflows/wordpress-plugin/examples/secure-form-handler-example.md +925 -925
  327. package/augment-extensions/workflows/wordpress-plugin/examples/security-audit-workflow.md +752 -752
  328. package/augment-extensions/workflows/wordpress-plugin/examples/wordpress-org-submission-workflow.md +773 -773
  329. package/augment-extensions/workflows/wordpress-plugin/module.json +49 -49
  330. package/augment-extensions/workflows/wordpress-plugin/rules/best-practices.md +942 -942
  331. package/augment-extensions/workflows/wordpress-plugin/rules/development-workflow.md +702 -702
  332. package/augment-extensions/workflows/wordpress-plugin/rules/submission-workflow.md +728 -728
  333. package/augment-extensions/workflows/wordpress-plugin/rules/testing-workflow.md +775 -775
  334. package/augment-extensions/writing-standards/screenplay/README.md +339 -300
  335. package/augment-extensions/writing-standards/screenplay/_templates/README.md +121 -121
  336. package/augment-extensions/writing-standards/screenplay/_templates/genre-template.md +153 -153
  337. package/augment-extensions/writing-standards/screenplay/_templates/style-template.md +243 -243
  338. package/augment-extensions/writing-standards/screenplay/_templates/theme-template.md +213 -213
  339. package/augment-extensions/writing-standards/screenplay/examples/aaa-hollywood-scene.fountain +164 -164
  340. package/augment-extensions/writing-standards/screenplay/examples/beat-sheet-example.yaml +95 -95
  341. package/augment-extensions/writing-standards/screenplay/examples/character-profile-example.yaml +116 -116
  342. package/augment-extensions/writing-standards/screenplay/examples/commercial-30sec.fountain +151 -151
  343. package/augment-extensions/writing-standards/screenplay/examples/independent-monologue.fountain +67 -67
  344. package/augment-extensions/writing-standards/screenplay/examples/news-segment.fountain +142 -142
  345. package/augment-extensions/writing-standards/screenplay/examples/plot-outline-example.yaml +184 -184
  346. package/augment-extensions/writing-standards/screenplay/examples/tv-episode-teaser.fountain +204 -204
  347. package/augment-extensions/writing-standards/screenplay/genres/README.md +181 -181
  348. package/augment-extensions/writing-standards/screenplay/genres/examples/.gitkeep +2 -2
  349. package/augment-extensions/writing-standards/screenplay/genres/module.json +70 -70
  350. package/augment-extensions/writing-standards/screenplay/genres/rules/.gitkeep +2 -2
  351. package/augment-extensions/writing-standards/screenplay/genres/rules/action.md +399 -399
  352. package/augment-extensions/writing-standards/screenplay/genres/rules/adventure.md +407 -407
  353. package/augment-extensions/writing-standards/screenplay/genres/rules/animation.md +293 -293
  354. package/augment-extensions/writing-standards/screenplay/genres/rules/biographical.md +293 -293
  355. package/augment-extensions/writing-standards/screenplay/genres/rules/comedy.md +401 -401
  356. package/augment-extensions/writing-standards/screenplay/genres/rules/documentary.md +293 -293
  357. package/augment-extensions/writing-standards/screenplay/genres/rules/drama.md +409 -409
  358. package/augment-extensions/writing-standards/screenplay/genres/rules/fantasy.md +293 -293
  359. package/augment-extensions/writing-standards/screenplay/genres/rules/historical.md +293 -293
  360. package/augment-extensions/writing-standards/screenplay/genres/rules/horror.md +268 -268
  361. package/augment-extensions/writing-standards/screenplay/genres/rules/musical.md +294 -294
  362. package/augment-extensions/writing-standards/screenplay/genres/rules/mystery.md +293 -293
  363. package/augment-extensions/writing-standards/screenplay/genres/rules/noir.md +294 -294
  364. package/augment-extensions/writing-standards/screenplay/genres/rules/romance.md +293 -293
  365. package/augment-extensions/writing-standards/screenplay/genres/rules/sci-fi.md +289 -289
  366. package/augment-extensions/writing-standards/screenplay/genres/rules/superhero.md +293 -293
  367. package/augment-extensions/writing-standards/screenplay/genres/rules/thriller.md +294 -294
  368. package/augment-extensions/writing-standards/screenplay/genres/rules/western.md +293 -293
  369. package/augment-extensions/writing-standards/screenplay/module.json +124 -124
  370. package/augment-extensions/writing-standards/screenplay/rules/aaa-hollywood-films.md +339 -339
  371. package/augment-extensions/writing-standards/screenplay/rules/ai-integration-testing.md +329 -329
  372. package/augment-extensions/writing-standards/screenplay/rules/character-development.md +169 -169
  373. package/augment-extensions/writing-standards/screenplay/rules/commercials.md +437 -437
  374. package/augment-extensions/writing-standards/screenplay/rules/dialogue-writing.md +263 -263
  375. package/augment-extensions/writing-standards/screenplay/rules/diversity-inclusion.md +261 -261
  376. package/augment-extensions/writing-standards/screenplay/rules/examples-guide.md +315 -315
  377. package/augment-extensions/writing-standards/screenplay/rules/file-organization.md +213 -0
  378. package/augment-extensions/writing-standards/screenplay/rules/formatting-validation.md +413 -413
  379. package/augment-extensions/writing-standards/screenplay/rules/fountain-format.md +372 -372
  380. package/augment-extensions/writing-standards/screenplay/rules/independent-films.md +374 -374
  381. package/augment-extensions/writing-standards/screenplay/rules/live-tv-productions.md +443 -443
  382. package/augment-extensions/writing-standards/screenplay/rules/narrative-structures.md +207 -207
  383. package/augment-extensions/writing-standards/screenplay/rules/news-broadcasts.md +444 -444
  384. package/augment-extensions/writing-standards/screenplay/rules/pacing-timing.md +331 -331
  385. package/augment-extensions/writing-standards/screenplay/rules/quality-review-checklist.md +334 -334
  386. package/augment-extensions/writing-standards/screenplay/rules/quick-reference.md +299 -299
  387. package/augment-extensions/writing-standards/screenplay/rules/screen-continuity.md +263 -263
  388. package/augment-extensions/writing-standards/screenplay/rules/streaming-content.md +412 -412
  389. package/augment-extensions/writing-standards/screenplay/rules/trope-management.md +370 -370
  390. package/augment-extensions/writing-standards/screenplay/rules/tv-series.md +374 -374
  391. package/augment-extensions/writing-standards/screenplay/rules/universal-formatting.md +339 -339
  392. package/augment-extensions/writing-standards/screenplay/rules/vscode-integration.md +277 -277
  393. package/augment-extensions/writing-standards/screenplay/rules/web-content.md +393 -393
  394. package/augment-extensions/writing-standards/screenplay/schemas/beat-sheet.json +332 -332
  395. package/augment-extensions/writing-standards/screenplay/schemas/character-profile.json +247 -247
  396. package/augment-extensions/writing-standards/screenplay/schemas/feature-selection.json +200 -200
  397. package/augment-extensions/writing-standards/screenplay/schemas/plot-outline.json +233 -233
  398. package/augment-extensions/writing-standards/screenplay/schemas/screenplay-config.json +245 -245
  399. package/augment-extensions/writing-standards/screenplay/schemas/trope-inventory.json +221 -221
  400. package/augment-extensions/writing-standards/screenplay/styles/README.md +159 -159
  401. package/augment-extensions/writing-standards/screenplay/styles/examples/.gitkeep +2 -2
  402. package/augment-extensions/writing-standards/screenplay/styles/examples/style-applications.md +1449 -1449
  403. package/augment-extensions/writing-standards/screenplay/styles/module.json +64 -64
  404. package/augment-extensions/writing-standards/screenplay/styles/rules/.gitkeep +2 -2
  405. package/augment-extensions/writing-standards/screenplay/styles/rules/dialogue-centric.md +520 -520
  406. package/augment-extensions/writing-standards/screenplay/styles/rules/ensemble.md +499 -499
  407. package/augment-extensions/writing-standards/screenplay/styles/rules/epic.md +497 -497
  408. package/augment-extensions/writing-standards/screenplay/styles/rules/experimental.md +492 -492
  409. package/augment-extensions/writing-standards/screenplay/styles/rules/flashback.md +509 -509
  410. package/augment-extensions/writing-standards/screenplay/styles/rules/linear.md +490 -490
  411. package/augment-extensions/writing-standards/screenplay/styles/rules/minimalist.md +499 -499
  412. package/augment-extensions/writing-standards/screenplay/styles/rules/non-linear.md +501 -501
  413. package/augment-extensions/writing-standards/screenplay/styles/rules/poetic.md +499 -499
  414. package/augment-extensions/writing-standards/screenplay/styles/rules/realistic.md +498 -498
  415. package/augment-extensions/writing-standards/screenplay/styles/rules/satirical.md +499 -499
  416. package/augment-extensions/writing-standards/screenplay/styles/rules/surreal.md +508 -508
  417. package/augment-extensions/writing-standards/screenplay/styles/rules/voice-over.md +500 -500
  418. package/augment-extensions/writing-standards/screenplay/themes/README.md +158 -158
  419. package/augment-extensions/writing-standards/screenplay/themes/examples/.gitkeep +2 -2
  420. package/augment-extensions/writing-standards/screenplay/themes/examples/common-mistakes-and-fixes.md +643 -643
  421. package/augment-extensions/writing-standards/screenplay/themes/examples/complete-scene-example.md +311 -311
  422. package/augment-extensions/writing-standards/screenplay/themes/examples/individual-theme-examples.md +562 -562
  423. package/augment-extensions/writing-standards/screenplay/themes/examples/multi-theme-weaving.md +538 -538
  424. package/augment-extensions/writing-standards/screenplay/themes/examples/theme-application-guide.md +432 -432
  425. package/augment-extensions/writing-standards/screenplay/themes/examples/theme-integration-across-acts.md +637 -637
  426. package/augment-extensions/writing-standards/screenplay/themes/module.json +66 -66
  427. package/augment-extensions/writing-standards/screenplay/themes/rules/.gitkeep +2 -2
  428. package/augment-extensions/writing-standards/screenplay/themes/rules/ambition.md +458 -458
  429. package/augment-extensions/writing-standards/screenplay/themes/rules/betrayal.md +490 -490
  430. package/augment-extensions/writing-standards/screenplay/themes/rules/environment.md +458 -458
  431. package/augment-extensions/writing-standards/screenplay/themes/rules/fate.md +459 -459
  432. package/augment-extensions/writing-standards/screenplay/themes/rules/friendship.md +491 -491
  433. package/augment-extensions/writing-standards/screenplay/themes/rules/growth.md +491 -491
  434. package/augment-extensions/writing-standards/screenplay/themes/rules/identity.md +490 -490
  435. package/augment-extensions/writing-standards/screenplay/themes/rules/isolation.md +464 -464
  436. package/augment-extensions/writing-standards/screenplay/themes/rules/justice.md +461 -461
  437. package/augment-extensions/writing-standards/screenplay/themes/rules/love.md +489 -489
  438. package/augment-extensions/writing-standards/screenplay/themes/rules/power.md +494 -494
  439. package/augment-extensions/writing-standards/screenplay/themes/rules/redemption.md +483 -483
  440. package/augment-extensions/writing-standards/screenplay/themes/rules/revenge.md +489 -489
  441. package/augment-extensions/writing-standards/screenplay/themes/rules/survival.md +496 -496
  442. package/augment-extensions/writing-standards/screenplay/themes/rules/technology.md +463 -463
  443. package/augment-extensions/writing-standards/screenplay/utils/__tests__/file-organization.test.ts +169 -0
  444. package/augment-extensions/writing-standards/screenplay/utils/file-organization.ts +165 -0
  445. package/cli/MODULES.md +302 -302
  446. package/cli/dist/cli.js +113 -22
  447. package/cli/dist/cli.js.map +1 -1
  448. package/cli/dist/commands/gui.d.ts.map +1 -1
  449. package/cli/dist/commands/gui.js +54 -6
  450. package/cli/dist/commands/gui.js.map +1 -1
  451. package/cli/dist/commands/init.d.ts.map +1 -1
  452. package/cli/dist/commands/init.js +76 -23
  453. package/cli/dist/commands/init.js.map +1 -1
  454. package/cli/dist/commands/self-remove.d.ts.map +1 -1
  455. package/cli/dist/commands/self-remove.js +48 -74
  456. package/cli/dist/commands/self-remove.js.map +1 -1
  457. package/cli/dist/commands/show.d.ts +15 -0
  458. package/cli/dist/commands/show.d.ts.map +1 -1
  459. package/cli/dist/commands/show.js +576 -23
  460. package/cli/dist/commands/show.js.map +1 -1
  461. package/cli/dist/commands/showCompleted.d.ts +21 -0
  462. package/cli/dist/commands/showCompleted.d.ts.map +1 -0
  463. package/cli/dist/commands/showCompleted.js +225 -0
  464. package/cli/dist/commands/showCompleted.js.map +1 -0
  465. package/cli/dist/commands/skill.js +88 -88
  466. package/cli/dist/commands/update.d.ts +2 -0
  467. package/cli/dist/commands/update.d.ts.map +1 -1
  468. package/cli/dist/commands/update.js +67 -1
  469. package/cli/dist/commands/update.js.map +1 -1
  470. package/cli/dist/utils/beadsCompletedChecker.d.ts +72 -0
  471. package/cli/dist/utils/beadsCompletedChecker.d.ts.map +1 -0
  472. package/cli/dist/utils/beadsCompletedChecker.js +198 -0
  473. package/cli/dist/utils/beadsCompletedChecker.js.map +1 -0
  474. package/cli/dist/utils/catalog-sync.js +13 -13
  475. package/cli/dist/utils/config-system.d.ts +111 -0
  476. package/cli/dist/utils/config-system.d.ts.map +1 -0
  477. package/cli/dist/utils/config-system.js +239 -0
  478. package/cli/dist/utils/config-system.js.map +1 -0
  479. package/cli/dist/utils/extractCommandHelp.d.ts +51 -0
  480. package/cli/dist/utils/extractCommandHelp.d.ts.map +1 -0
  481. package/cli/dist/utils/extractCommandHelp.js +250 -0
  482. package/cli/dist/utils/extractCommandHelp.js.map +1 -0
  483. package/cli/dist/utils/hook-system.d.ts +84 -0
  484. package/cli/dist/utils/hook-system.d.ts.map +1 -0
  485. package/cli/dist/utils/hook-system.js +151 -0
  486. package/cli/dist/utils/hook-system.js.map +1 -0
  487. package/cli/dist/utils/inspection-cache.d.ts +56 -0
  488. package/cli/dist/utils/inspection-cache.d.ts.map +1 -0
  489. package/cli/dist/utils/inspection-cache.js +166 -0
  490. package/cli/dist/utils/inspection-cache.js.map +1 -0
  491. package/cli/dist/utils/inspection-handlers.d.ts +75 -0
  492. package/cli/dist/utils/inspection-handlers.d.ts.map +1 -0
  493. package/cli/dist/utils/inspection-handlers.js +171 -0
  494. package/cli/dist/utils/inspection-handlers.js.map +1 -0
  495. package/cli/dist/utils/install-rules.js +55 -55
  496. package/cli/dist/utils/mcp-integration.js +44 -44
  497. package/cli/dist/utils/module-system.d.ts +1 -0
  498. package/cli/dist/utils/module-system.d.ts.map +1 -1
  499. package/cli/dist/utils/module-system.js +8 -3
  500. package/cli/dist/utils/module-system.js.map +1 -1
  501. package/cli/dist/utils/plugin-system.d.ts +133 -0
  502. package/cli/dist/utils/plugin-system.d.ts.map +1 -0
  503. package/cli/dist/utils/plugin-system.js +210 -0
  504. package/cli/dist/utils/plugin-system.js.map +1 -0
  505. package/cli/dist/utils/progress.d.ts +67 -0
  506. package/cli/dist/utils/progress.d.ts.map +1 -0
  507. package/cli/dist/utils/progress.js +146 -0
  508. package/cli/dist/utils/progress.js.map +1 -0
  509. package/cli/dist/utils/rule-install-hooks.js +8 -8
  510. package/cli/dist/utils/stream-reader.d.ts +34 -0
  511. package/cli/dist/utils/stream-reader.d.ts.map +1 -0
  512. package/cli/dist/utils/stream-reader.js +147 -0
  513. package/cli/dist/utils/stream-reader.js.map +1 -0
  514. package/cli/dist/utils/vscode-editor.d.ts +45 -0
  515. package/cli/dist/utils/vscode-editor.d.ts.map +1 -0
  516. package/cli/dist/utils/vscode-editor.js +171 -0
  517. package/cli/dist/utils/vscode-editor.js.map +1 -0
  518. package/cli/dist/utils/vscode-links.d.ts +49 -0
  519. package/cli/dist/utils/vscode-links.d.ts.map +1 -0
  520. package/cli/dist/utils/vscode-links.js +167 -0
  521. package/cli/dist/utils/vscode-links.js.map +1 -0
  522. package/modules.md +667 -630
  523. package/package.json +85 -85
@@ -1,667 +1,667 @@
1
- # Migration Workflows for WordPress Plugins
2
-
3
- ## Overview
4
-
5
- This guide covers migration workflows for WordPress plugins including WordPress core upgrades, PHP version upgrades, theme migration, and plugin migration. Each workflow includes backup procedures and comprehensive testing steps.
6
-
7
- ---
8
-
9
- ## 1. WordPress Core Upgrade Workflow
10
-
11
- ### Pre-Upgrade Checklist
12
-
13
- **Before upgrading WordPress core:**
14
-
15
- 1. **Check compatibility**:
16
- ```bash
17
- # Check plugin compatibility with target WordPress version
18
- # Review plugin's "Tested up to" version in readme.txt
19
- # Check WordPress.org plugin page for compatibility reports
20
- ```
21
-
22
- 2. **Review changelog**:
23
- - Read WordPress release notes
24
- - Identify deprecated functions
25
- - Check for breaking changes
26
- - Review security updates
27
-
28
- 3. **Backup everything**:
29
- ```bash
30
- # Database backup
31
- wp db export backup-$(date +%Y%m%d-%H%M%S).sql
32
-
33
- # Files backup
34
- tar -czf wordpress-backup-$(date +%Y%m%d-%H%M%S).tar.gz /path/to/wordpress
35
- ```
36
-
37
- ### Upgrade Process
38
-
39
- **Step 1: Test in staging environment**
40
-
41
- ```bash
42
- # Clone production to staging
43
- wp db export production.sql
44
- wp db import production.sql --url=staging.example.com
45
-
46
- # Update WordPress core in staging
47
- wp core update
48
- wp core update-db
49
- ```
50
-
51
- **Step 2: Test plugin functionality**
52
-
53
- - ✅ Activate plugin
54
- - ✅ Test all features
55
- - ✅ Check admin interface
56
- - ✅ Test frontend functionality
57
- - ✅ Verify AJAX handlers
58
- - ✅ Test REST API endpoints
59
- - ✅ Check cron jobs
60
- - ✅ Verify database queries
61
-
62
- **Step 3: Fix compatibility issues**
63
-
64
- ```php
65
- // Example: Replace deprecated function
66
- // OLD (deprecated in WP 5.3)
67
- wp_make_link_relative( $url );
68
-
69
- // NEW
70
- wp_parse_url( $url, PHP_URL_PATH );
71
- ```
72
-
73
- **Step 4: Update production**
74
-
75
- ```bash
76
- # Backup production
77
- wp db export pre-upgrade-backup.sql
78
-
79
- # Enable maintenance mode
80
- wp maintenance-mode activate
81
-
82
- # Update WordPress core
83
- wp core update
84
- wp core update-db
85
-
86
- # Test critical functionality
87
- wp plugin list
88
- wp theme list
89
-
90
- # Disable maintenance mode
91
- wp maintenance-mode deactivate
92
- ```
93
-
94
- ### Post-Upgrade Testing
95
-
96
- **Critical tests after upgrade:**
97
-
98
- 1. **Plugin activation**: Verify plugin activates without errors
99
- 2. **Database integrity**: Check custom tables and data
100
- 3. **Admin functionality**: Test all admin pages and settings
101
- 4. **Frontend functionality**: Test shortcodes, widgets, blocks
102
- 5. **Performance**: Check page load times
103
- 6. **Error logs**: Review PHP error logs and debug.log
104
-
105
- ---
106
-
107
- ## 2. PHP Version Upgrade Workflow
108
-
109
- ### Pre-Upgrade Checklist
110
-
111
- **Before upgrading PHP version:**
112
-
113
- 1. **Check current PHP version**:
114
- ```bash
115
- php -v
116
- wp cli info
117
- ```
118
-
119
- 2. **Review PHP compatibility**:
120
- - Check plugin's "Requires PHP" version in readme.txt
121
- - Review PHP changelog for breaking changes
122
- - Identify deprecated PHP features used in plugin
123
-
124
- 3. **Run compatibility checker**:
125
- ```bash
126
- # Install PHP Compatibility Checker plugin
127
- wp plugin install php-compatibility-checker --activate
128
-
129
- # Or use PHPCompatibility CodeSniffer standard
130
- composer require --dev phpcompatibility/php-compatibility
131
- vendor/bin/phpcs -p . --standard=PHPCompatibility --runtime-set testVersion 7.4-
132
- ```
133
-
134
- ### Common PHP Compatibility Issues
135
-
136
- **PHP 7.4 → PHP 8.0+**
137
-
138
- ```php
139
- // Issue 1: Deprecated curly brace array access
140
- // OLD
141
- $char = $string{0};
142
-
143
- // NEW
144
- $char = $string[0];
145
-
146
- // Issue 2: Required parameters after optional parameters
147
- // OLD
148
- function example( $optional = null, $required ) {}
149
-
150
- // NEW
151
- function example( $required, $optional = null ) {}
152
-
153
- // Issue 3: Deprecated create_function()
154
- // OLD
155
- $func = create_function( '$a,$b', 'return $a + $b;' );
156
-
157
- // NEW
158
- $func = function( $a, $b ) {
159
- return $a + $b;
160
- };
161
- ```
162
-
163
- ### Upgrade Process
164
-
165
- **Step 1: Test in staging with target PHP version**
166
-
167
- ```bash
168
- # Switch PHP version in staging (example for Ubuntu)
169
- sudo update-alternatives --set php /usr/bin/php8.1
170
-
171
- # Restart web server
172
- sudo systemctl restart apache2 # or nginx
173
- ```
174
-
175
- **Step 2: Run automated tests**
176
-
177
- ```bash
178
- # Run PHPUnit tests
179
- vendor/bin/phpunit
180
-
181
- # Run PHP CodeSniffer
182
- vendor/bin/phpcs
183
-
184
- # Check for PHP errors
185
- tail -f /var/log/php-errors.log
186
- ```
187
-
188
- **Step 3: Manual testing**
189
-
190
- - ✅ Test all plugin features
191
- - ✅ Check error logs
192
- - ✅ Verify database operations
193
- - ✅ Test file uploads
194
- - ✅ Check email functionality
195
- - ✅ Test third-party integrations
196
-
197
- **Step 4: Update production**
198
-
199
- ```bash
200
- # Backup production
201
- wp db export pre-php-upgrade-backup.sql
202
-
203
- # Enable maintenance mode
204
- wp maintenance-mode activate
205
-
206
- # Switch PHP version
207
- sudo update-alternatives --set php /usr/bin/php8.1
208
- sudo systemctl restart apache2
209
-
210
- # Test
211
- wp cli info # Verify PHP version
212
- wp plugin list # Verify plugins load
213
-
214
- # Disable maintenance mode
215
- wp maintenance-mode deactivate
216
- ```
217
-
218
- ### Post-Upgrade Monitoring
219
-
220
- **Monitor for 24-48 hours:**
221
-
222
- 1. **Error logs**: Check PHP error logs frequently
223
- 2. **Performance**: Monitor page load times
224
- 3. **User reports**: Watch for user-reported issues
225
- 4. **Database**: Check for query errors
226
- 5. **Cron jobs**: Verify scheduled tasks run correctly
227
-
228
- ---
229
-
230
- ## 3. Theme Migration Workflow
231
-
232
- ### Scenario: Migrating Plugin from One Theme to Another
233
-
234
- **Common issues when switching themes:**
235
-
236
- - Custom post type templates
237
- - Widget areas
238
- - Shortcode styling
239
- - Theme-specific hooks
240
- - CSS conflicts
241
-
242
- ### Pre-Migration Checklist
243
-
244
- 1. **Document theme dependencies**:
245
- ```php
246
- // Check if plugin relies on theme features
247
- if ( ! current_theme_supports( 'post-thumbnails' ) ) {
248
- add_theme_support( 'post-thumbnails' );
249
- }
250
- ```
251
-
252
- 2. **Identify theme-specific code**:
253
- - Custom templates in plugin
254
- - Theme hook usage
255
- - Widget area registrations
256
- - Shortcode styling
257
-
258
- 3. **Backup current state**:
259
- ```bash
260
- wp db export pre-theme-migration.sql
261
- wp theme list
262
- ```
263
-
264
- ### Migration Process
265
-
266
- **Step 1: Test in staging**
267
-
268
- ```bash
269
- # Clone production to staging
270
- wp db export production.sql
271
- wp db import production.sql --url=staging.example.com
272
-
273
- # Activate new theme
274
- wp theme activate new-theme
275
- ```
276
-
277
- **Step 2: Update plugin templates**
278
-
279
- ```php
280
- // OLD: Theme-specific template
281
- locate_template( 'my-plugin-template.php' );
282
-
283
- // NEW: Plugin-provided template with theme override support
284
- if ( $theme_file = locate_template( 'my-plugin/template.php' ) ) {
285
- include $theme_file;
286
- } else {
287
- include plugin_dir_path( __FILE__ ) . 'templates/template.php';
288
- }
289
- ```
290
-
291
- **Step 3: Update CSS for new theme**
292
-
293
- ```php
294
- // Enqueue plugin styles with theme compatibility
295
- function myplugin_enqueue_styles() {
296
- wp_enqueue_style(
297
- 'myplugin-styles',
298
- plugins_url( 'css/styles.css', __FILE__ ),
299
- array(), // Dependencies
300
- '1.0.0'
301
- );
302
-
303
- // Add theme-specific overrides
304
- $theme = wp_get_theme();
305
- $theme_slug = $theme->get_stylesheet();
306
-
307
- $theme_override = plugins_url( "css/themes/{$theme_slug}.css", __FILE__ );
308
- if ( file_exists( plugin_dir_path( __FILE__ ) . "css/themes/{$theme_slug}.css" ) ) {
309
- wp_enqueue_style(
310
- 'myplugin-theme-override',
311
- $theme_override,
312
- array( 'myplugin-styles' ),
313
- '1.0.0'
314
- );
315
- }
316
- }
317
- add_action( 'wp_enqueue_scripts', 'myplugin_enqueue_styles' );
318
- ```
319
-
320
- **Step 4: Test all functionality**
321
-
322
- - ✅ Custom post type archives
323
- - ✅ Single post templates
324
- - ✅ Widget areas
325
- - ✅ Shortcodes
326
- - ✅ Gutenberg blocks
327
- - ✅ Frontend forms
328
- - ✅ AJAX functionality
329
-
330
- **Step 5: Update production**
331
-
332
- ```bash
333
- # Backup production
334
- wp db export pre-theme-switch.sql
335
-
336
- # Enable maintenance mode
337
- wp maintenance-mode activate
338
-
339
- # Switch theme
340
- wp theme activate new-theme
341
-
342
- # Clear caches
343
- wp cache flush
344
- wp rewrite flush
345
-
346
- # Disable maintenance mode
347
- wp maintenance-mode deactivate
348
- ```
349
-
350
- ---
351
-
352
- ## 4. Plugin Migration Workflow
353
-
354
- ### Scenario: Migrating Plugin to New Server/Environment
355
-
356
- **Common migration scenarios:**
357
-
358
- - Development → Staging → Production
359
- - Shared hosting → VPS → Cloud
360
- - HTTP → HTTPS
361
- - Domain change
362
-
363
- ### Pre-Migration Checklist
364
-
365
- 1. **Document current environment**:
366
- ```bash
367
- # WordPress version
368
- wp core version
369
-
370
- # PHP version
371
- php -v
372
-
373
- # Database version
374
- wp db query "SELECT VERSION();"
375
-
376
- # Active plugins
377
- wp plugin list --status=active
378
-
379
- # Server configuration
380
- wp cli info
381
- ```
382
-
383
- 2. **Check plugin requirements**:
384
- - PHP version compatibility
385
- - Required PHP extensions
386
- - Database requirements
387
- - File permissions
388
- - Server resources (memory, execution time)
389
-
390
- 3. **Backup everything**:
391
- ```bash
392
- # Full site backup
393
- wp db export full-backup-$(date +%Y%m%d).sql
394
- tar -czf files-backup-$(date +%Y%m%d).tar.gz /path/to/wordpress
395
- ```
396
-
397
- ### Migration Process
398
-
399
- **Step 1: Prepare target environment**
400
-
401
- ```bash
402
- # Install WordPress
403
- wp core download
404
- wp config create --dbname=newdb --dbuser=newuser --dbpass=newpass
405
- wp core install --url=newsite.com --title="New Site" --admin_user=admin
406
-
407
- # Match PHP version
408
- php -v # Verify matches source
409
-
410
- # Install required PHP extensions
411
- sudo apt-get install php-curl php-gd php-mbstring php-xml php-zip
412
- ```
413
-
414
- **Step 2: Migrate database**
415
-
416
- ```bash
417
- # Export from source
418
- wp db export migration.sql
419
-
420
- # Import to target
421
- wp db import migration.sql
422
-
423
- # Update URLs (if domain changed)
424
- wp search-replace 'oldsite.com' 'newsite.com' --all-tables
425
-
426
- # Update file paths (if path changed)
427
- wp search-replace '/old/path' '/new/path' --all-tables
428
- ```
429
-
430
- **Step 3: Migrate files**
431
-
432
- ```bash
433
- # Copy plugin files
434
- rsync -avz /old/wp-content/plugins/my-plugin/ /new/wp-content/plugins/my-plugin/
435
-
436
- # Set correct permissions
437
- find /new/wp-content/plugins/my-plugin -type d -exec chmod 755 {} \;
438
- find /new/wp-content/plugins/my-plugin -type f -exec chmod 644 {} \;
439
- ```
440
-
441
- **Step 4: Update plugin configuration**
442
-
443
- ```php
444
- // Update plugin settings for new environment
445
- function myplugin_migration_update_settings() {
446
- $options = get_option( 'myplugin_options' );
447
-
448
- // Update URLs
449
- if ( isset( $options['api_url'] ) ) {
450
- $options['api_url'] = str_replace(
451
- 'oldsite.com',
452
- 'newsite.com',
453
- $options['api_url']
454
- );
455
- }
456
-
457
- // Update file paths
458
- if ( isset( $options['upload_dir'] ) ) {
459
- $options['upload_dir'] = str_replace(
460
- '/old/path',
461
- '/new/path',
462
- $options['upload_dir']
463
- );
464
- }
465
-
466
- update_option( 'myplugin_options', $options );
467
- }
468
- ```
469
-
470
- **Step 5: Test thoroughly**
471
-
472
- ```bash
473
- # Verify plugin activation
474
- wp plugin activate my-plugin
475
-
476
- # Check for errors
477
- wp plugin status my-plugin
478
-
479
- # Test database connectivity
480
- wp db query "SELECT * FROM {$wpdb->prefix}myplugin_table LIMIT 1;"
481
-
482
- # Verify cron jobs
483
- wp cron event list
484
-
485
- # Test REST API
486
- curl https://newsite.com/wp-json/myplugin/v1/endpoint
487
- ```
488
-
489
- ### Post-Migration Checklist
490
-
491
- - ✅ Plugin activates without errors
492
- - ✅ Database tables exist and contain data
493
- - ✅ Custom post types display correctly
494
- - ✅ Admin settings pages load
495
- - ✅ Frontend functionality works
496
- - ✅ AJAX handlers respond
497
- - ✅ REST API endpoints accessible
498
- - ✅ Cron jobs scheduled
499
- - ✅ File uploads work
500
- - ✅ Email notifications send
501
- - ✅ Third-party integrations connect
502
- - ✅ Performance is acceptable
503
-
504
- ---
505
-
506
- ## 5. Rollback Procedures
507
-
508
- ### Emergency Rollback
509
-
510
- **If migration fails, rollback immediately:**
511
-
512
- ```bash
513
- # 1. Enable maintenance mode
514
- wp maintenance-mode activate
515
-
516
- # 2. Restore database
517
- wp db import pre-migration-backup.sql
518
-
519
- # 3. Restore files
520
- tar -xzf files-backup.tar.gz -C /path/to/wordpress
521
-
522
- # 4. Clear caches
523
- wp cache flush
524
- wp rewrite flush
525
-
526
- # 5. Verify restoration
527
- wp plugin list
528
- wp db query "SELECT COUNT(*) FROM wp_posts;"
529
-
530
- # 6. Disable maintenance mode
531
- wp maintenance-mode deactivate
532
- ```
533
-
534
- ### Partial Rollback
535
-
536
- **If only plugin needs rollback:**
537
-
538
- ```bash
539
- # Deactivate plugin
540
- wp plugin deactivate my-plugin
541
-
542
- # Restore plugin files
543
- rm -rf wp-content/plugins/my-plugin
544
- tar -xzf plugin-backup.tar.gz -C wp-content/plugins/
545
-
546
- # Restore plugin database tables
547
- wp db query < plugin-tables-backup.sql
548
-
549
- # Reactivate plugin
550
- wp plugin activate my-plugin
551
- ```
552
-
553
- ---
554
-
555
- ## 6. Best Practices
556
-
557
- ### Backup Strategy
558
-
559
- **Always maintain multiple backup points:**
560
-
561
- 1. **Before migration**: Full backup
562
- 2. **After testing**: Staging backup
563
- 3. **Before production**: Production backup
564
- 4. **After migration**: Post-migration backup
565
-
566
- ### Testing Strategy
567
-
568
- **Test in this order:**
569
-
570
- 1. **Automated tests**: PHPUnit, CodeSniffer
571
- 2. **Staging environment**: Full functionality test
572
- 3. **Production (limited)**: Soft launch to subset of users
573
- 4. **Production (full)**: Full rollout with monitoring
574
-
575
- ### Communication Strategy
576
-
577
- **Notify stakeholders:**
578
-
579
- 1. **Before migration**: Announce maintenance window
580
- 2. **During migration**: Status updates
581
- 3. **After migration**: Completion notice
582
- 4. **Post-migration**: Monitor and respond to issues
583
-
584
- ### Documentation
585
-
586
- **Document everything:**
587
-
588
- - Migration plan
589
- - Backup locations
590
- - Configuration changes
591
- - Issues encountered
592
- - Rollback procedures
593
- - Lessons learned
594
-
595
- ---
596
-
597
- ## 7. Common Migration Issues
598
-
599
- ### Issue 1: Database Prefix Mismatch
600
-
601
- ```php
602
- // Problem: Hardcoded table prefix
603
- $results = $wpdb->get_results( "SELECT * FROM wp_myplugin_table" );
604
-
605
- // Solution: Use $wpdb->prefix
606
- global $wpdb;
607
- $table_name = $wpdb->prefix . 'myplugin_table';
608
- $results = $wpdb->get_results( "SELECT * FROM {$table_name}" );
609
- ```
610
-
611
- ### Issue 2: Absolute Path Issues
612
-
613
- ```php
614
- // Problem: Hardcoded paths
615
- include '/var/www/html/wp-content/plugins/my-plugin/includes/class.php';
616
-
617
- // Solution: Use WordPress constants
618
- include plugin_dir_path( __FILE__ ) . 'includes/class.php';
619
- ```
620
-
621
- ### Issue 3: URL Hardcoding
622
-
623
- ```php
624
- // Problem: Hardcoded URLs
625
- $api_url = 'https://oldsite.com/wp-json/myplugin/v1/';
626
-
627
- // Solution: Use WordPress functions
628
- $api_url = rest_url( 'myplugin/v1/' );
629
- ```
630
-
631
- ### Issue 4: File Permission Issues
632
-
633
- ```bash
634
- # Problem: Incorrect permissions after migration
635
- # Solution: Set correct permissions
636
- find wp-content/plugins/my-plugin -type d -exec chmod 755 {} \;
637
- find wp-content/plugins/my-plugin -type f -exec chmod 644 {} \;
638
- chown -R www-data:www-data wp-content/plugins/my-plugin
639
- ```
640
-
641
- ---
642
-
643
- ## Summary
644
-
645
- **Key takeaways:**
646
-
647
- 1. **Always backup** before any migration
648
- 2. **Test in staging** before production
649
- 3. **Document everything** for future reference
650
- 4. **Have rollback plan** ready
651
- 5. **Monitor closely** after migration
652
- 6. **Communicate clearly** with stakeholders
653
-
654
- **Migration checklist:**
655
-
656
- - [ ] Backup database and files
657
- - [ ] Test in staging environment
658
- - [ ] Document configuration changes
659
- - [ ] Prepare rollback procedure
660
- - [ ] Schedule maintenance window
661
- - [ ] Notify stakeholders
662
- - [ ] Execute migration
663
- - [ ] Test thoroughly
664
- - [ ] Monitor for issues
665
- - [ ] Document lessons learned
666
-
667
-
1
+ # Migration Workflows for WordPress Plugins
2
+
3
+ ## Overview
4
+
5
+ This guide covers migration workflows for WordPress plugins including WordPress core upgrades, PHP version upgrades, theme migration, and plugin migration. Each workflow includes backup procedures and comprehensive testing steps.
6
+
7
+ ---
8
+
9
+ ## 1. WordPress Core Upgrade Workflow
10
+
11
+ ### Pre-Upgrade Checklist
12
+
13
+ **Before upgrading WordPress core:**
14
+
15
+ 1. **Check compatibility**:
16
+ ```bash
17
+ # Check plugin compatibility with target WordPress version
18
+ # Review plugin's "Tested up to" version in readme.txt
19
+ # Check WordPress.org plugin page for compatibility reports
20
+ ```
21
+
22
+ 2. **Review changelog**:
23
+ - Read WordPress release notes
24
+ - Identify deprecated functions
25
+ - Check for breaking changes
26
+ - Review security updates
27
+
28
+ 3. **Backup everything**:
29
+ ```bash
30
+ # Database backup
31
+ wp db export backup-$(date +%Y%m%d-%H%M%S).sql
32
+
33
+ # Files backup
34
+ tar -czf wordpress-backup-$(date +%Y%m%d-%H%M%S).tar.gz /path/to/wordpress
35
+ ```
36
+
37
+ ### Upgrade Process
38
+
39
+ **Step 1: Test in staging environment**
40
+
41
+ ```bash
42
+ # Clone production to staging
43
+ wp db export production.sql
44
+ wp db import production.sql --url=staging.example.com
45
+
46
+ # Update WordPress core in staging
47
+ wp core update
48
+ wp core update-db
49
+ ```
50
+
51
+ **Step 2: Test plugin functionality**
52
+
53
+ - ✅ Activate plugin
54
+ - ✅ Test all features
55
+ - ✅ Check admin interface
56
+ - ✅ Test frontend functionality
57
+ - ✅ Verify AJAX handlers
58
+ - ✅ Test REST API endpoints
59
+ - ✅ Check cron jobs
60
+ - ✅ Verify database queries
61
+
62
+ **Step 3: Fix compatibility issues**
63
+
64
+ ```php
65
+ // Example: Replace deprecated function
66
+ // OLD (deprecated in WP 5.3)
67
+ wp_make_link_relative( $url );
68
+
69
+ // NEW
70
+ wp_parse_url( $url, PHP_URL_PATH );
71
+ ```
72
+
73
+ **Step 4: Update production**
74
+
75
+ ```bash
76
+ # Backup production
77
+ wp db export pre-upgrade-backup.sql
78
+
79
+ # Enable maintenance mode
80
+ wp maintenance-mode activate
81
+
82
+ # Update WordPress core
83
+ wp core update
84
+ wp core update-db
85
+
86
+ # Test critical functionality
87
+ wp plugin list
88
+ wp theme list
89
+
90
+ # Disable maintenance mode
91
+ wp maintenance-mode deactivate
92
+ ```
93
+
94
+ ### Post-Upgrade Testing
95
+
96
+ **Critical tests after upgrade:**
97
+
98
+ 1. **Plugin activation**: Verify plugin activates without errors
99
+ 2. **Database integrity**: Check custom tables and data
100
+ 3. **Admin functionality**: Test all admin pages and settings
101
+ 4. **Frontend functionality**: Test shortcodes, widgets, blocks
102
+ 5. **Performance**: Check page load times
103
+ 6. **Error logs**: Review PHP error logs and debug.log
104
+
105
+ ---
106
+
107
+ ## 2. PHP Version Upgrade Workflow
108
+
109
+ ### Pre-Upgrade Checklist
110
+
111
+ **Before upgrading PHP version:**
112
+
113
+ 1. **Check current PHP version**:
114
+ ```bash
115
+ php -v
116
+ wp cli info
117
+ ```
118
+
119
+ 2. **Review PHP compatibility**:
120
+ - Check plugin's "Requires PHP" version in readme.txt
121
+ - Review PHP changelog for breaking changes
122
+ - Identify deprecated PHP features used in plugin
123
+
124
+ 3. **Run compatibility checker**:
125
+ ```bash
126
+ # Install PHP Compatibility Checker plugin
127
+ wp plugin install php-compatibility-checker --activate
128
+
129
+ # Or use PHPCompatibility CodeSniffer standard
130
+ composer require --dev phpcompatibility/php-compatibility
131
+ vendor/bin/phpcs -p . --standard=PHPCompatibility --runtime-set testVersion 7.4-
132
+ ```
133
+
134
+ ### Common PHP Compatibility Issues
135
+
136
+ **PHP 7.4 → PHP 8.0+**
137
+
138
+ ```php
139
+ // Issue 1: Deprecated curly brace array access
140
+ // OLD
141
+ $char = $string{0};
142
+
143
+ // NEW
144
+ $char = $string[0];
145
+
146
+ // Issue 2: Required parameters after optional parameters
147
+ // OLD
148
+ function example( $optional = null, $required ) {}
149
+
150
+ // NEW
151
+ function example( $required, $optional = null ) {}
152
+
153
+ // Issue 3: Deprecated create_function()
154
+ // OLD
155
+ $func = create_function( '$a,$b', 'return $a + $b;' );
156
+
157
+ // NEW
158
+ $func = function( $a, $b ) {
159
+ return $a + $b;
160
+ };
161
+ ```
162
+
163
+ ### Upgrade Process
164
+
165
+ **Step 1: Test in staging with target PHP version**
166
+
167
+ ```bash
168
+ # Switch PHP version in staging (example for Ubuntu)
169
+ sudo update-alternatives --set php /usr/bin/php8.1
170
+
171
+ # Restart web server
172
+ sudo systemctl restart apache2 # or nginx
173
+ ```
174
+
175
+ **Step 2: Run automated tests**
176
+
177
+ ```bash
178
+ # Run PHPUnit tests
179
+ vendor/bin/phpunit
180
+
181
+ # Run PHP CodeSniffer
182
+ vendor/bin/phpcs
183
+
184
+ # Check for PHP errors
185
+ tail -f /var/log/php-errors.log
186
+ ```
187
+
188
+ **Step 3: Manual testing**
189
+
190
+ - ✅ Test all plugin features
191
+ - ✅ Check error logs
192
+ - ✅ Verify database operations
193
+ - ✅ Test file uploads
194
+ - ✅ Check email functionality
195
+ - ✅ Test third-party integrations
196
+
197
+ **Step 4: Update production**
198
+
199
+ ```bash
200
+ # Backup production
201
+ wp db export pre-php-upgrade-backup.sql
202
+
203
+ # Enable maintenance mode
204
+ wp maintenance-mode activate
205
+
206
+ # Switch PHP version
207
+ sudo update-alternatives --set php /usr/bin/php8.1
208
+ sudo systemctl restart apache2
209
+
210
+ # Test
211
+ wp cli info # Verify PHP version
212
+ wp plugin list # Verify plugins load
213
+
214
+ # Disable maintenance mode
215
+ wp maintenance-mode deactivate
216
+ ```
217
+
218
+ ### Post-Upgrade Monitoring
219
+
220
+ **Monitor for 24-48 hours:**
221
+
222
+ 1. **Error logs**: Check PHP error logs frequently
223
+ 2. **Performance**: Monitor page load times
224
+ 3. **User reports**: Watch for user-reported issues
225
+ 4. **Database**: Check for query errors
226
+ 5. **Cron jobs**: Verify scheduled tasks run correctly
227
+
228
+ ---
229
+
230
+ ## 3. Theme Migration Workflow
231
+
232
+ ### Scenario: Migrating Plugin from One Theme to Another
233
+
234
+ **Common issues when switching themes:**
235
+
236
+ - Custom post type templates
237
+ - Widget areas
238
+ - Shortcode styling
239
+ - Theme-specific hooks
240
+ - CSS conflicts
241
+
242
+ ### Pre-Migration Checklist
243
+
244
+ 1. **Document theme dependencies**:
245
+ ```php
246
+ // Check if plugin relies on theme features
247
+ if ( ! current_theme_supports( 'post-thumbnails' ) ) {
248
+ add_theme_support( 'post-thumbnails' );
249
+ }
250
+ ```
251
+
252
+ 2. **Identify theme-specific code**:
253
+ - Custom templates in plugin
254
+ - Theme hook usage
255
+ - Widget area registrations
256
+ - Shortcode styling
257
+
258
+ 3. **Backup current state**:
259
+ ```bash
260
+ wp db export pre-theme-migration.sql
261
+ wp theme list
262
+ ```
263
+
264
+ ### Migration Process
265
+
266
+ **Step 1: Test in staging**
267
+
268
+ ```bash
269
+ # Clone production to staging
270
+ wp db export production.sql
271
+ wp db import production.sql --url=staging.example.com
272
+
273
+ # Activate new theme
274
+ wp theme activate new-theme
275
+ ```
276
+
277
+ **Step 2: Update plugin templates**
278
+
279
+ ```php
280
+ // OLD: Theme-specific template
281
+ locate_template( 'my-plugin-template.php' );
282
+
283
+ // NEW: Plugin-provided template with theme override support
284
+ if ( $theme_file = locate_template( 'my-plugin/template.php' ) ) {
285
+ include $theme_file;
286
+ } else {
287
+ include plugin_dir_path( __FILE__ ) . 'templates/template.php';
288
+ }
289
+ ```
290
+
291
+ **Step 3: Update CSS for new theme**
292
+
293
+ ```php
294
+ // Enqueue plugin styles with theme compatibility
295
+ function myplugin_enqueue_styles() {
296
+ wp_enqueue_style(
297
+ 'myplugin-styles',
298
+ plugins_url( 'css/styles.css', __FILE__ ),
299
+ array(), // Dependencies
300
+ '1.0.0'
301
+ );
302
+
303
+ // Add theme-specific overrides
304
+ $theme = wp_get_theme();
305
+ $theme_slug = $theme->get_stylesheet();
306
+
307
+ $theme_override = plugins_url( "css/themes/{$theme_slug}.css", __FILE__ );
308
+ if ( file_exists( plugin_dir_path( __FILE__ ) . "css/themes/{$theme_slug}.css" ) ) {
309
+ wp_enqueue_style(
310
+ 'myplugin-theme-override',
311
+ $theme_override,
312
+ array( 'myplugin-styles' ),
313
+ '1.0.0'
314
+ );
315
+ }
316
+ }
317
+ add_action( 'wp_enqueue_scripts', 'myplugin_enqueue_styles' );
318
+ ```
319
+
320
+ **Step 4: Test all functionality**
321
+
322
+ - ✅ Custom post type archives
323
+ - ✅ Single post templates
324
+ - ✅ Widget areas
325
+ - ✅ Shortcodes
326
+ - ✅ Gutenberg blocks
327
+ - ✅ Frontend forms
328
+ - ✅ AJAX functionality
329
+
330
+ **Step 5: Update production**
331
+
332
+ ```bash
333
+ # Backup production
334
+ wp db export pre-theme-switch.sql
335
+
336
+ # Enable maintenance mode
337
+ wp maintenance-mode activate
338
+
339
+ # Switch theme
340
+ wp theme activate new-theme
341
+
342
+ # Clear caches
343
+ wp cache flush
344
+ wp rewrite flush
345
+
346
+ # Disable maintenance mode
347
+ wp maintenance-mode deactivate
348
+ ```
349
+
350
+ ---
351
+
352
+ ## 4. Plugin Migration Workflow
353
+
354
+ ### Scenario: Migrating Plugin to New Server/Environment
355
+
356
+ **Common migration scenarios:**
357
+
358
+ - Development → Staging → Production
359
+ - Shared hosting → VPS → Cloud
360
+ - HTTP → HTTPS
361
+ - Domain change
362
+
363
+ ### Pre-Migration Checklist
364
+
365
+ 1. **Document current environment**:
366
+ ```bash
367
+ # WordPress version
368
+ wp core version
369
+
370
+ # PHP version
371
+ php -v
372
+
373
+ # Database version
374
+ wp db query "SELECT VERSION();"
375
+
376
+ # Active plugins
377
+ wp plugin list --status=active
378
+
379
+ # Server configuration
380
+ wp cli info
381
+ ```
382
+
383
+ 2. **Check plugin requirements**:
384
+ - PHP version compatibility
385
+ - Required PHP extensions
386
+ - Database requirements
387
+ - File permissions
388
+ - Server resources (memory, execution time)
389
+
390
+ 3. **Backup everything**:
391
+ ```bash
392
+ # Full site backup
393
+ wp db export full-backup-$(date +%Y%m%d).sql
394
+ tar -czf files-backup-$(date +%Y%m%d).tar.gz /path/to/wordpress
395
+ ```
396
+
397
+ ### Migration Process
398
+
399
+ **Step 1: Prepare target environment**
400
+
401
+ ```bash
402
+ # Install WordPress
403
+ wp core download
404
+ wp config create --dbname=newdb --dbuser=newuser --dbpass=newpass
405
+ wp core install --url=newsite.com --title="New Site" --admin_user=admin
406
+
407
+ # Match PHP version
408
+ php -v # Verify matches source
409
+
410
+ # Install required PHP extensions
411
+ sudo apt-get install php-curl php-gd php-mbstring php-xml php-zip
412
+ ```
413
+
414
+ **Step 2: Migrate database**
415
+
416
+ ```bash
417
+ # Export from source
418
+ wp db export migration.sql
419
+
420
+ # Import to target
421
+ wp db import migration.sql
422
+
423
+ # Update URLs (if domain changed)
424
+ wp search-replace 'oldsite.com' 'newsite.com' --all-tables
425
+
426
+ # Update file paths (if path changed)
427
+ wp search-replace '/old/path' '/new/path' --all-tables
428
+ ```
429
+
430
+ **Step 3: Migrate files**
431
+
432
+ ```bash
433
+ # Copy plugin files
434
+ rsync -avz /old/wp-content/plugins/my-plugin/ /new/wp-content/plugins/my-plugin/
435
+
436
+ # Set correct permissions
437
+ find /new/wp-content/plugins/my-plugin -type d -exec chmod 755 {} \;
438
+ find /new/wp-content/plugins/my-plugin -type f -exec chmod 644 {} \;
439
+ ```
440
+
441
+ **Step 4: Update plugin configuration**
442
+
443
+ ```php
444
+ // Update plugin settings for new environment
445
+ function myplugin_migration_update_settings() {
446
+ $options = get_option( 'myplugin_options' );
447
+
448
+ // Update URLs
449
+ if ( isset( $options['api_url'] ) ) {
450
+ $options['api_url'] = str_replace(
451
+ 'oldsite.com',
452
+ 'newsite.com',
453
+ $options['api_url']
454
+ );
455
+ }
456
+
457
+ // Update file paths
458
+ if ( isset( $options['upload_dir'] ) ) {
459
+ $options['upload_dir'] = str_replace(
460
+ '/old/path',
461
+ '/new/path',
462
+ $options['upload_dir']
463
+ );
464
+ }
465
+
466
+ update_option( 'myplugin_options', $options );
467
+ }
468
+ ```
469
+
470
+ **Step 5: Test thoroughly**
471
+
472
+ ```bash
473
+ # Verify plugin activation
474
+ wp plugin activate my-plugin
475
+
476
+ # Check for errors
477
+ wp plugin status my-plugin
478
+
479
+ # Test database connectivity
480
+ wp db query "SELECT * FROM {$wpdb->prefix}myplugin_table LIMIT 1;"
481
+
482
+ # Verify cron jobs
483
+ wp cron event list
484
+
485
+ # Test REST API
486
+ curl https://newsite.com/wp-json/myplugin/v1/endpoint
487
+ ```
488
+
489
+ ### Post-Migration Checklist
490
+
491
+ - ✅ Plugin activates without errors
492
+ - ✅ Database tables exist and contain data
493
+ - ✅ Custom post types display correctly
494
+ - ✅ Admin settings pages load
495
+ - ✅ Frontend functionality works
496
+ - ✅ AJAX handlers respond
497
+ - ✅ REST API endpoints accessible
498
+ - ✅ Cron jobs scheduled
499
+ - ✅ File uploads work
500
+ - ✅ Email notifications send
501
+ - ✅ Third-party integrations connect
502
+ - ✅ Performance is acceptable
503
+
504
+ ---
505
+
506
+ ## 5. Rollback Procedures
507
+
508
+ ### Emergency Rollback
509
+
510
+ **If migration fails, rollback immediately:**
511
+
512
+ ```bash
513
+ # 1. Enable maintenance mode
514
+ wp maintenance-mode activate
515
+
516
+ # 2. Restore database
517
+ wp db import pre-migration-backup.sql
518
+
519
+ # 3. Restore files
520
+ tar -xzf files-backup.tar.gz -C /path/to/wordpress
521
+
522
+ # 4. Clear caches
523
+ wp cache flush
524
+ wp rewrite flush
525
+
526
+ # 5. Verify restoration
527
+ wp plugin list
528
+ wp db query "SELECT COUNT(*) FROM wp_posts;"
529
+
530
+ # 6. Disable maintenance mode
531
+ wp maintenance-mode deactivate
532
+ ```
533
+
534
+ ### Partial Rollback
535
+
536
+ **If only plugin needs rollback:**
537
+
538
+ ```bash
539
+ # Deactivate plugin
540
+ wp plugin deactivate my-plugin
541
+
542
+ # Restore plugin files
543
+ rm -rf wp-content/plugins/my-plugin
544
+ tar -xzf plugin-backup.tar.gz -C wp-content/plugins/
545
+
546
+ # Restore plugin database tables
547
+ wp db query < plugin-tables-backup.sql
548
+
549
+ # Reactivate plugin
550
+ wp plugin activate my-plugin
551
+ ```
552
+
553
+ ---
554
+
555
+ ## 6. Best Practices
556
+
557
+ ### Backup Strategy
558
+
559
+ **Always maintain multiple backup points:**
560
+
561
+ 1. **Before migration**: Full backup
562
+ 2. **After testing**: Staging backup
563
+ 3. **Before production**: Production backup
564
+ 4. **After migration**: Post-migration backup
565
+
566
+ ### Testing Strategy
567
+
568
+ **Test in this order:**
569
+
570
+ 1. **Automated tests**: PHPUnit, CodeSniffer
571
+ 2. **Staging environment**: Full functionality test
572
+ 3. **Production (limited)**: Soft launch to subset of users
573
+ 4. **Production (full)**: Full rollout with monitoring
574
+
575
+ ### Communication Strategy
576
+
577
+ **Notify stakeholders:**
578
+
579
+ 1. **Before migration**: Announce maintenance window
580
+ 2. **During migration**: Status updates
581
+ 3. **After migration**: Completion notice
582
+ 4. **Post-migration**: Monitor and respond to issues
583
+
584
+ ### Documentation
585
+
586
+ **Document everything:**
587
+
588
+ - Migration plan
589
+ - Backup locations
590
+ - Configuration changes
591
+ - Issues encountered
592
+ - Rollback procedures
593
+ - Lessons learned
594
+
595
+ ---
596
+
597
+ ## 7. Common Migration Issues
598
+
599
+ ### Issue 1: Database Prefix Mismatch
600
+
601
+ ```php
602
+ // Problem: Hardcoded table prefix
603
+ $results = $wpdb->get_results( "SELECT * FROM wp_myplugin_table" );
604
+
605
+ // Solution: Use $wpdb->prefix
606
+ global $wpdb;
607
+ $table_name = $wpdb->prefix . 'myplugin_table';
608
+ $results = $wpdb->get_results( "SELECT * FROM {$table_name}" );
609
+ ```
610
+
611
+ ### Issue 2: Absolute Path Issues
612
+
613
+ ```php
614
+ // Problem: Hardcoded paths
615
+ include '/var/www/html/wp-content/plugins/my-plugin/includes/class.php';
616
+
617
+ // Solution: Use WordPress constants
618
+ include plugin_dir_path( __FILE__ ) . 'includes/class.php';
619
+ ```
620
+
621
+ ### Issue 3: URL Hardcoding
622
+
623
+ ```php
624
+ // Problem: Hardcoded URLs
625
+ $api_url = 'https://oldsite.com/wp-json/myplugin/v1/';
626
+
627
+ // Solution: Use WordPress functions
628
+ $api_url = rest_url( 'myplugin/v1/' );
629
+ ```
630
+
631
+ ### Issue 4: File Permission Issues
632
+
633
+ ```bash
634
+ # Problem: Incorrect permissions after migration
635
+ # Solution: Set correct permissions
636
+ find wp-content/plugins/my-plugin -type d -exec chmod 755 {} \;
637
+ find wp-content/plugins/my-plugin -type f -exec chmod 644 {} \;
638
+ chown -R www-data:www-data wp-content/plugins/my-plugin
639
+ ```
640
+
641
+ ---
642
+
643
+ ## Summary
644
+
645
+ **Key takeaways:**
646
+
647
+ 1. **Always backup** before any migration
648
+ 2. **Test in staging** before production
649
+ 3. **Document everything** for future reference
650
+ 4. **Have rollback plan** ready
651
+ 5. **Monitor closely** after migration
652
+ 6. **Communicate clearly** with stakeholders
653
+
654
+ **Migration checklist:**
655
+
656
+ - [ ] Backup database and files
657
+ - [ ] Test in staging environment
658
+ - [ ] Document configuration changes
659
+ - [ ] Prepare rollback procedure
660
+ - [ ] Schedule maintenance window
661
+ - [ ] Notify stakeholders
662
+ - [ ] Execute migration
663
+ - [ ] Test thoroughly
664
+ - [ ] Monitor for issues
665
+ - [ ] Document lessons learned
666
+
667
+