strapi-plugin-copy-any-component
v1.1.1
Published
A powerful Strapi plugin that allows you to copy and reorder components (sections) between pages using an intuitive drag-and-drop interface. Works with any content type and dynamic zone - no code required!
Maintainers
Readme
Copy Any Component Plugin for Strapi 5
🌐 Visit Website | 📦 NPM | 📚 GitHub
A powerful Strapi plugin that allows you to copy and reorder components between pages using an intuitive drag-and-drop interface. No code required!
✨ Features
- 🎯 Drag & Drop Interface
- 🔍 Auto-Detects all content types and dynamic zones
- ⚙️ Zero-Code Configuration via admin panel
- 📸 Media Support
- 💾 Draft/Publish System
📦 Installation
npm install strapi-plugin-copy-any-componentRegister Plugin
Add to config/plugins.ts:
export default () => ({
'copy-any-component': {
enabled: true,
config: {
contentType: 'api::page.page', // Optional: default content type
dynamicZoneField: 'sections', // Optional: default dynamic zone
},
},
});Note: The
configsection is optional. You can also configure content type via admin panel.
Set Permissions
Go to Settings > Users & Permissions > Roles, select your role, and enable all permissions for Copy Any Component.
Restart Strapi:
npm run develop🚀 Usage
- Go to Plugins > Copy Any Component in Strapi admin
- Configure content type via ⚙️ Content Type Settings (optional)
- Select Source Page and Target Page
- Drag components from Source to Target
- Click Publish to save
Requirements
- Strapi 5.0.0+
- Node.js 18.x+
- React 18.2.0+ (for flushSync support)
⚠️ Troubleshooting
flushSync Error
Update React version in package.json:
{
"dependencies": {
"react": "^18.2.0",
"react-dom": "^18.2.0"
}
}Then:
rm -rf node_modules package-lock.json
npm install
npm run developLicense
MIT
