A Magento 2 module that automatically creates store views for each Swissup theme and applies the corresponding theme to them, including running theme-specific installers.
This module streamlines the process of setting up multiple Swissup themes by:
- Creating store views for each available Swissup theme
- Applying themes automatically to their corresponding store views
- Running theme installers to install CMS content, blocks, sliders, and configurations
- Performing maintenance tasks like setup upgrade and reindexing
- Magento 2.4+ (tested on 2.4.x)
- Swissup themes installed via Composer
- PHP 7.4+ or 8.x
- Swissup Marketplace module
# Install via Composer
composer require swissup/module-theme-store-views
# Enable the module
php bin/magento module:enable Swissup_ThemeStoreViews
# Run setup upgrade
php bin/magento setup:upgrade
# Clear cache and compile
php bin/magento cache:flush
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy- Download or clone this repository
- Copy the module to
app/code/Swissup/ThemeStoreViews/ - Run the following commands:
# Enable the module
php bin/magento module:enable Swissup_ThemeStoreViews
# Run setup upgrade
php bin/magento setup:upgrade
# Clear cache
php bin/magento cache:flushCreate store views for all Swissup themes:
php bin/magento swissup:theme:create-storeviews| Option | Short | Description |
|---|---|---|
--reinstall |
-r |
Run theme installers even for existing store views |
--help |
-h |
Display help information |
# Create store views (skips existing ones)
php bin/magento swissup:theme:create-storeviews
# Force reinstall themes for all store views
php bin/magento swissup:theme:create-storeviews --reinstall
# Show help
php bin/magento swissup:theme:create-storeviews --helpThe module automatically detects and processes these Swissup themes:
| Theme | Store View Code | Store View Name |
|---|---|---|
| Swissup/absolute | absolute |
Absolute |
| Swissup/argento-blank | argento_blank |
Argento Blank |
| Swissup/argento-essence | argento_essence |
Argento Essence |
| Swissup/argento-flat | argento_flat |
Argento Flat |
| Swissup/argento-force | argento_force |
Argento Force |
| Swissup/argento-home | argento_home |
Argento Home |
| Swissup/argento-luxury | argento_luxury |
Argento Luxury |
| Swissup/argento-mall | argento_mall |
Argento Mall |
| Swissup/argento-marketplace | argento_marketplace |
Argento Marketplace |
| Swissup/argento-pure2 | argento_pure2 |
Argento Pure2 |
| Swissup/argento-stripes | argento_stripes |
Argento Stripes |
| Swissup/argentobreeze-blank | argentobreeze_blank |
Argento Breeze Blank |
| Swissup/argentobreeze-business | argentobreeze_business |
Argento Breeze Business |
| Swissup/argentobreeze-chic | argentobreeze_chic |
Argento Breeze Chic |
| Swissup/argentobreeze-force | argentobreeze_force |
Argento Breeze Force |
| Swissup/argentobreeze-stripes | argentobreeze_stripes |
Argento Breeze Stripes |
| Swissup/breeze-blank | breeze_blank |
Breeze Blank |
| Swissup/breeze-evolution | breeze_evolution |
Breeze Evolution |
- Automatically generates valid store view codes
- Uses theme titles as store view names
- Assigns to default website and store group
- Sets appropriate sort order and status
- Applies the correct theme to each store view
- Updates design configuration automatically
- Maintains theme-store view relationships
- Detects
etc/marketplace/installer.xmlfiles - Runs Swissup Marketplace installers automatically
- Installs theme-specific content:
- CMS Pages
- CMS Blocks
- Sliders (EasySlider)
- Product Attributes
- Configuration Settings
- Media Files
- Product Collections
- Runs
setup:upgrade --safe-mode=1 - Executes
indexer:reindex - Clears all cache types
- Provides progress feedback
- Skips existing store views by default
- Non-interactive execution
- Error handling and validation
- Progress bars and status updates
- Professional Output: Colorful, styled headers with box borders
- Real-time Progress: Live progress bar showing current theme and statistics
- Color-coded Status: Green for success, yellow for warnings, red for errors
- Live Statistics: Current counts of created and skipped stores
- Professional Summary: Detailed completion report with statistics
- Step-by-step Feedback: Clear indicators for each post-processing step
- Enhanced Error Messages: Clear, colorful error reporting
- Emoji Indicators: Visual cues for different types of operations
- Discovery: Scans for installed Swissup themes
- Validation: Checks if themes exist and are properly installed
- Store Creation: Creates store views with proper codes and names
- Theme Application: Assigns themes to their respective store views
- Content Installation: Runs marketplace installers for theme content
- Maintenance: Performs setup upgrade, reindexing, and cache clearing
app/code/Swissup/ThemeStoreViews/
βββ Console/
β βββ Command/
β βββ CreateThemeStoreViews.php # Main command class
βββ etc/
β βββ di.xml # Dependency injection
β βββ module.xml # Module configuration
βββ registration.php # Module registration
βββ README.md # This documentation
Issue: Store view with the same code already exists
Solution: Use --reinstall flag to run installers on existing store views
php bin/magento swissup:theme:create-storeviews --reinstallIssue: Theme not detected by the module Solution: Ensure the theme is properly installed and appears in:
php bin/magento theme:infoIssue: No installer.xml found for a theme
Solution: This is normal - not all themes have installers. The module will skip installation for themes without etc/marketplace/installer.xml
Issue: File permission errors during installation Solution: Ensure proper file permissions:
chmod -R 755 var/
chmod -R 755 pub/static/
chmod -R 755 pub/media/Issue: PHP memory limit exceeded Solution: The module automatically uses unlimited memory for heavy operations
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β π¨ Swissup Theme Store Views Creator β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
π Starting theme store views creation process...
π Website: Main Website (ID: 1)
πͺ Store Group: Main Website Store (ID: 1)
π Processing 18 themes...
10/18 [===============>------------] 55% Processing: Swissup/argento-pure2 (10/18) | Created: 8 | Skipped: 2
π§ Found installer for theme: Argento Pure2
π¦ Installing package: swissup/theme-frontend-argento-pure2
π» Executing: php bin/magento marketplace:package:install swissup/theme-frontend-argento-pure2 --store=27 --no-interaction
[notice] Processing swissup/theme-frontend-argento-pure2
[info] Config: Update store parameters
[info] Cms Pages: Backup existing pages
[info] CMS PAGES: Create new pages
[info] Cms Blocks: Backup existing and create new blocks
β
Command completed!
β
Created store view: Argento Pure2 (argento_pure2)
18/18 [============================] 100% Complete (18/18) | Created: 16 | Skipped: 2
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β π SUMMARY REPORT β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ£
β β
Created: 16 store views β
β βοΈ Skipped: 2 existing ones β
β π Total: 18 themes processed β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
π§ Post-processing steps: Running required maintenance tasks...
π Step 1/3: Running setup:upgrade...
π Step 2/3: Running reindex...
π§Ή Step 3/3: Clearing cache...
β
Cache cleared successfully!
π SUCCESS! Theme store views setup completed successfully!
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β π PROCESS COMPLETE π β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
# List all store views
php bin/magento store:list
# Check theme installation
php bin/magento theme:info
# Manual marketplace installation
php bin/magento marketplace:package:install swissup/theme-frontend-[theme-name] --store=[store-id]
# Manual setup and maintenance
php bin/magento setup:upgrade --safe-mode=1
php bin/magento indexer:reindex
php bin/magento cache:flushThis module follows the same license as your Magento installation and Swissup modules.
For issues related to:
- This module: Contact your development team
- Swissup themes: Visit Swissup Documentation
- Magento core: Check Magento DevDocs
Version: 1.0.2
Compatible: Magento 2.4.x
Created: 2025