opencart-legacy

Applies OpenCart 1.5.6 legacy conventions for MVC structure, vQmod, and PHP version matching.

Updated Aug 25, 2017
One-click install
npx skills add https://github.com/loki495/dotfiles --skill opencart-legacy-loki495
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: opencart-legacy
Source: https://github.com/loki495/dotfiles/tree/main/ai/skills/opencart-legacy
Command: npx skills add https://github.com/loki495/dotfiles --skill opencart-legacy-loki495

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Working on OpenCart 1.5.6 codebases requires following legacy conventions that differ sharply from modern frameworks like Laravel, and mixing them up leads to broken assumptions about architecture, tooling, and PHP features. ## Core Features & Use Cases - Legacy MVC Guidance: Enforces OpenCart's classic controller/model/view structure under catalog/ and admin/ with registry-based dependency injection and thin controllers. - vQmod Awareness: Directs debugging toward the compiled vqcache files rather than original sources, and preserves existing vqmod XML modifications. - PHP Version Matching: Requires matching the exact production PHP version per project and avoiding modern PHP features unless confirmed available. - Use Case: When adding a customizable label to a multi-site OpenCart store, the Skill ensures the value comes from a theme_settings database field instead of a hardcoded literal that would break other sites sharing the core code. ## Quick Start Apply the opencart-legacy conventions while modifying the product controller in this OpenCart 1.5.6 project.

Frequently Asked Questions about opencart-legacy

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I modify OpenCart 1.5.6 core files safely?▼

Prefer extending core files where reasonable, but direct edits are acceptable since the project is under git version control. Git history serves as the safety net rather than strict non-modification of core files.

How does vQmod work in OpenCart legacy projects?▼

vQmod modifications are defined as XML files under vqmod/xml/, but the code that actually runs is the compiled version under vqmod/vqcache/. When debugging runtime behavior, always check vqcache since the original source may differ from what executes.

What PHP version should I use for OpenCart development?▼

Match the exact PHP version the production machine runs, which varies per project from 7.3 up to 8.x. Do not assume modern features like typed properties, enums, or match expressions are available without confirming the project's actual version.

Why avoid hardcoding values in OpenCart templates?▼

OpenCart sites are often multi-site and multi-theme deployments sharing core code, so a hardcoded value fine for one site silently breaks another. Customizable content should come from the database or module settings like theme_settings instead.

Does OpenCart 1.5.6 support Composer autoloading?▼

Composer autoloading is not wired into the OpenCart core, which uses registry-based dependency injection instead. Composer may exist in sub-paths for specific add-ons, but it is not the norm and should not be assumed.

Can I use PHPStan or Pint on OpenCart legacy projects?▼

No tooling like Pint, PHPStan, Rector, or Pest is enforced automatically on OpenCart projects. If a specific project wants these active, it will be noted in that project's own .claude/project.md file.