A collection of advanced WordPress blocks for creating stunning visual layouts. Multi Block Mayhem provides professional-grade blocks for galleries, collages, and interactive content that go beyond the standard WordPress block library.
- Available Blocks
- Quick Start
- Block Documentation
- Development
- Contributing
- Technical Specifications
- Project Structure
- Mosaic Gallery - Create Pinterest-style masonry layouts with CSS columns
- Image Collage - Build magazine-style grid layouts with column spanning
- Image Collage Image - Advanced image block for collages with focal points and spanning
- Modern CSS Layouts: CSS Grid, Flexbox, and CSS Columns for responsive designs
- Advanced Image Controls: Focal points, zoom, multiple resolutions, and custom uploaders
- Responsive Design: All blocks automatically adapt to different screen sizes
- Performance Optimized: Efficient asset loading and PHP rendering where appropriate
- Developer Friendly: Clean code, WordPress standards, and comprehensive documentation
- Download the plugin and upload it to your WordPress site
- Activate the plugin in your WordPress admin
- Start building - the blocks will appear in the Media category of the block inserter
- Add a block from the Media category in the block editor
- Configure settings using the block's sidebar controls
- Add content by uploading images or adding text as needed
- Customize appearance with spacing, borders, and layout options
Each block includes comprehensive documentation:
- User guides with step-by-step instructions
- Feature explanations with tips and best practices
- Technical documentation for developers
- Example layouts and use cases
Click on any block name above to view its complete documentation.
- WordPress 5.8+ (Block Editor support)
- Node.js 16+ (for development)
- Composer (for PHP dependencies)
# Clone the repository
git clone [repository-url]
cd multi-block-mayhem
# Install dependencies
npm install
composer install
# Start development
npm startnpm run buildnpm start- Start development with hot reloadingnpm run build- Build production assetsnpm run lint:js- Lint JavaScript filesnpm run lint:css- Lint CSS filesnpm run format- Format code to WordPress standards
We welcome contributions! Here's how you can help:
- Check existing issues first
- Provide details about your WordPress version, theme, and steps to reproduce
- Include screenshots when possible
- Open a discussion to propose new features
- Describe the use case and how it would benefit users
- Consider existing blocks and how it might fit
- Fork the repository
- Create a feature branch from
main - Follow WordPress coding standards
- Add tests for new functionality
- Update documentation as needed
- Submit a pull request
- Follow WordPress coding standards (PHP_CodeSniffer, ESLint)
- Write clear commit messages
- Update documentation for any new features
- Test across different themes and WordPress versions
- Ensure accessibility compliance
- Static Blocks: JavaScript-rendered blocks with save functions
- Dynamic Blocks: PHP server-side rendered blocks
- Interactive Blocks: Client-side JavaScript functionality
- Webpack-based build process
- Automatic versioning through WordPress asset system
- Optimized bundles for editor and frontend
- CSS preprocessing with SCSS support
- Conditional asset loading - scripts only load when blocks are used
- PHP rendering for dynamic content to improve performance
- Optimized images with multiple resolution support
- Minimal dependencies for fast loading
multi-block-mayhem/
├── build/ # Compiled assets
├── src/ # Source code
│ ├── blocks/ # Individual block implementations
│ │ ├── mosaic-gallery/ # Masonry gallery block
│ │ ├── image-collage/ # Grid-based collage block
│ │ └── swatch-cards/ # Color swatch display block
│ └── supports/ # Shared components
├── classes/ # PHP classes
├── vendor/ # Composer dependencies
└── node_modules/ # Node dependencies
This plugin is licensed under the GPL v2 or later.
Built with modern WordPress development practices and the WordPress Block Editor APIs.