OpenCart 3.0xx Module Development and VPS Redis Integration

Job ID: 40212103

Budget: $750 – $1,500 USD

OpenCart 3.0.4.1 Module
- I want to customize the Dependent Options module to make it more flexible, both in the admin panel and on product pages, according to the details in the shared .zip file.
- Ensure that the developed module is compatible with OpenCart version 3.0.4.1, the default theme, and the Journal theme.
- Database Mapping: You can store these relationships in a new table to keep them clean and manageable.
- On the front end, optimize the Ajax request when sending this data.
- Do not modify core files; OCMOD (preferably) or VQMOD should be used.
- The code should be written in accordance with OpenCart's MVC-L structure, preserving multi-language support.
- Upon completion of the work, the packaged installation file, source code, installation guide, and change log should be shared.

Redis
- VPS = 12vCores - 48GB RAM - 300 GB SSD NVMe
- The server has Cyberpanel 2.4, Redis, Memcached, and Watchdog installed.
- PHP 8.1
memory_limit = 4096M, max_execution_time = 600, max_input_time = 120, post_max_size = 512M, max_input_vars = 40000, max_multipart_body_parts = 4500, opcache.enable = 1, opcache.memory_consumption = 512
- SQL
max_connections = 2000, innodb_buffer_pool_size = 24G, innodb_log_file_size = 2G
- OpenCart 3.0.4.1 and Journal Theme 3.2.8 are installed
- Redis Status: Redis and the PHP-Redis plugin are installed and active on the server (redis-cli ping -> PONG)
- To prevent delays, when installing the module, can you ensure that database queries are cached via Redis (Object Cache)?
- In my OpenCart version, the system/library/cache/redis.php file exists, but it cannot correctly process the settings (cache_engine, cache_hostname, cache_prefix, etc.) in array format via config.php and throws a 500 error. Please stabilize this library (driver).
- The PHP-Redis extension is installed on the server. You can choose the most performant method for the server from the pconnect or connect methods.
- Please ensure that the Journal 3 theme does not conflict with its own caching mechanism.
- Ensure that data is separated using the `oc_` prefix on Redis.
- Complete the implementation of the developed module so that when a price/stock changes, the relevant keys in Redis are automatically cleared using the `del()` command.