News Section with Decap CMS - Setup Complete! 🎉
News Section with Decap CMS - Setup Complete! 🎉
All implementation is complete! Here’s what was added and what you need to do next.
✅ What Was Implemented
1. Decap CMS Admin Interface
- Created:
admin/index.html- The CMS admin interface - Created:
admin/config.yml- CMS configuration with news article content model - Access URL:
https://www.volunteersonwheels.org.uk/admin
2. Authentication Setup
- Modified:
_layouts/default.html- Added Netlify Identity widget scripts - Ready for GitHub-based authentication via Netlify Identity
3. Site Configuration
- Modified:
_config.yml- Updated with VoW trustee authors (Peter, Marcus, Mary, Gary) - Removed demo authors (Sal, John)
4. News Section Pages
- Created:
pages/news.html- Dedicated news archive page - Modified:
_data/menus.yml- Added “News” link to navigation menu
5. Sample Content
- Created:
_posts/2026-01-09-welcome-to-our-news-section.md- Sample news article demonstrating structure - Shows all required fields and proper formatting
6. Media Management
- Created:
assets/images/news/- Folder for news article images - Configured in CMS to auto-upload images here
7. Documentation
- Created:
README-CMS.md- Complete guide for content editors - Includes how to create, edit, and publish articles
- Markdown formatting guide
- Image guidelines and best practices
🚀 Next Steps (Required)
You need to complete these steps to activate the CMS:
Step 1: Set Up GitHub Authentication via Netlify
Important: The CMS is now configured to use GitHub authentication directly. Users will log in with their GitHub accounts. Anyone with write access to the GitHub repository can access the CMS.
- Create Netlify Account (free - needed only for OAuth proxy)
- Go to https://www.netlify.com
- Sign up with your GitHub account
-
Set Up GitHub OAuth Provider in Netlify
Option A: With a Netlify site (easier)
- Import your repository to Netlify (just for OAuth, still deploys to GitHub Pages)
- Go to Site Settings → Access control → OAuth
- Under “Authentication providers”, click “Install provider”
- Select “GitHub” and click “Install”
Option B: Without deploying to Netlify
- You can use Netlify’s OAuth service without deploying your site
- Follow Netlify’s authentication provider setup: https://docs.netlify.com/visitor-access/oauth-provider-tokens/
- Note: This requires some additional configuration
- Grant Repository Access
- Ensure users who need CMS access have write access to the GitHub repository
- Go to your GitHub repository → Settings → Collaborators
- Add team members who should be able to create/edit news articles
Step 2: Test the CMS
- Commit and push all changes to GitHub
git add . git commit -m "Add news section with Decap CMS" git push origin main -
Wait for GitHub Pages to deploy (2-3 minutes)
- Access the CMS
- Go to
https://www.volunteersonwheels.org.uk/admin - Click “Login with GitHub”
- Authorize the application when prompted
- You’ll be redirected back to the CMS
- Go to
- Create a test article
- Click “News Articles” → “New News Articles”
- Fill in all required fields
- Upload a test image
- Click “Publish” → “Publish now”
- Verify the article appears
- Check homepage (if marked as featured)
- Check
/newspage - Verify image displays correctly
Step 3: Share Access with Team
- Add team members to GitHub repository
- Go to your GitHub repository → Settings → Collaborators
- Add users who need CMS access
- They need “Write” permission minimum
- Share the guide
- Send
README-CMS.mdto content editors - They can access CMS at
/adminand login with their GitHub accounts
- Send
- Important: Users must have:
- A GitHub account
- Write access to the repository
- No additional invitations needed!
📋 Content Model
News articles include these fields:
- Title (required) - Article headline
- Excerpt (required, max 160 chars) - Brief summary
- Featured Image (required) - Main article image (recommended: 1200x630px)
- Publish Date (required) - Publication date/time
- Author (required) - Peter, Marcus, Mary, or Gary
- Categories (optional) - Tags like “News”, “Community”, “Events”
- Featured (optional) - Display prominently on homepage
- Body (required) - Article content (markdown)
🎨 How It Works
Content Editor → /admin → Decap CMS
↓
Commits to GitHub
↓
GitHub Pages Builds
↓
Live on Website
🔍 File Structure
vow-website/
├── admin/
│ ├── index.html # CMS interface
│ └── config.yml # CMS configuration
├── _posts/
│ └── 2026-01-09-welcome-to-our-news-section.md # Sample article
├── pages/
│ └── news.html # News archive page
├── assets/
│ └── images/
│ └── news/ # News images folder
├── _layouts/
│ └── default.html # (Modified with auth scripts)
├── _config.yml # (Modified with authors)
├── _data/
│ └── menus.yml # (Modified with News link)
├── README-CMS.md # Editor guide
└── SETUP-INSTRUCTIONS.md # This file
🎯 Editorial Workflow
The CMS has three stages:
- Draft - Work in progress, not visible on site
- In Review - Ready for review by another team member
- Ready - Approved and ready to publish
Drag articles between columns to change status, then click “Publish” when ready.
🔒 Security Notes
- Only invited users can access the CMS
- All changes are tracked via Git commits
- Each edit shows who made it and when
- Can revert any change via Git history
⚙️ How Authentication Works
The CMS uses GitHub backend with Netlify’s OAuth proxy:
User → /admin → Login with GitHub
↓
Netlify OAuth Proxy (api.netlify.com)
↓
GitHub Authorization
↓
CMS Access (commits as GitHub user)
Benefits:
- Users log in with their GitHub accounts
- All commits show the actual GitHub user who made them
- No separate user management needed
- Simpler than Netlify Identity
Requirements:
- Users need GitHub accounts
- Users need write access to repository
- Netlify provides the OAuth proxy (free)
🆘 Troubleshooting
CMS won’t load
- Ensure changes are pushed to GitHub
- Clear browser cache
- Check browser console for errors
Can’t log in
- Verify you have write access to the GitHub repository
- Check that GitHub OAuth is enabled in Netlify (Site Settings → OAuth)
- Try logging out and back in
- Ensure you’re authorizing the correct GitHub organization
Images won’t upload
- Check file size (under 10MB)
- Ensure format is JPG, PNG, or GIF
- Try compressing the image
Article not appearing on site
- Wait 2-3 minutes for GitHub Pages to rebuild
- Verify article is published (not in draft)
- Check the article date isn’t in the future
📞 Support
- CMS Guide: See
README-CMS.md - Decap CMS Docs: https://decapcms.org/docs/
- Netlify Identity Docs: https://docs.netlify.com/visitor-access/identity/
🎉 You’re All Set!
Once you complete the Netlify Identity setup (Steps 1-3 above), your CMS will be fully functional and your team can start creating news articles immediately!
Implementation Date: January 9, 2026 CMS: Decap CMS 3.0 Authentication: GitHub (via Netlify OAuth proxy) Backend: GitHub repository direct commits