Repository navigation
Timeline System
Alee Javed edited this page Mar 1, 2026
·
1 revision
The timeline system displays your portfolio items chronologically or by impressiveness, with customizable sorting, filtering, and interactive features.
- Dynamic Sorting: Chronological or by impressiveness
- Category Filtering: Filter by category tags
- Interactive Cards: Hover effects and animations
- Responsive Design: Adapts to all screen sizes
- Custom Metadata: Impressiveness ratings and categories
Each timeline item includes:
- Title - Project or achievement name
- Date - When it occurred
- Category - Type of work (e.g., "Web Design", "Development")
- Impressiveness - 1-10 rating for importance
- Description - Detailed description
- Link - Optional link to project
Go to Appearance β Customize β Timeline
| Option | Description | Default |
|---|---|---|
| Default timeline sort | Initial sorting method | "Chronological" |
| Chronological | Sort by date (newest first) | β |
| Impressiveness | Sort by importance | β |
Access timeline management at Timeline β Timeline Order in WordPress admin.
- Posts β Add New
- Set title - Project name
- Add content - Description and details
- Set category - Choose from dropdown
- Set impressiveness - Rate 1-10
- Set featured image - Optional
- Publish post
- Web Design - Design projects
- Development - Code projects
- Writing - Articles and content
- Photography - Visual projects
- Other - Miscellaneous work
- 1-3: Minor projects
- 4-6: Moderate importance
- 7-8: Significant work
- 9-10: Major achievements
<div class="timeline-filters">
<div class="timeline-sort">
<button class="timeline-sort-btn" data-sort="date">Date</button>
<button class="timeline-sort-btn" data-sort="impressiveness">Impressiveness</button>
</div>
</div><div class="timeline-filter">
<input type="checkbox" value="web-design" id="web-design">
<label for="web-design">Web Design</label>
</div><div class="timeline-card">
<div class="timeline-header">
<h3>Project Title</h3>
<span class="timeline-date">2024-01-15</span>
</div>
<div class="timeline-content">
<p>Project description</p>
</div>
<div class="timeline-footer">
<span class="timeline-category">Web Design</span>
<span class="timeline-impressiveness">ββββββββββ</span>
</div>
</div>:root {
--timeline-bg: var(--bg);
--timeline-card-bg: var(--bg);
--timeline-border: var(--border);
--timeline-accent: var(--accent);
}- Sort buttons - Toggle between date/impressiveness
- Filter checkboxes - Category filtering
- Hover effects - Card animations
- Smooth scrolling - Animated transitions
function sortByImpressiveness(a, b) {
const aRating = getImpressiveness(a);
const bRating = getImpressiveness(b);
return bRating - aRating;
}
function sortByDate(a, b) {
return new Date(b.date) - new Date(a.date);
}- Grid layout - 2-3 columns
- Large cards - Full details visible
- Side-by-side - Image and content
- 2 columns - Optimized layout
- Medium cards - Slightly reduced
- Stacked elements - Better mobile preview
- Single column - Full-width cards
- Compact cards - Optimized for touch
- Vertical stacking - Better readability
/* Change card background */
.timeline-card {
background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
}
/* Custom impressiveness stars */
.timeline-impressiveness {
color: #ffc107;
font-size: 14px;
}
/* Custom category badges */
.timeline-category {
background: var(--accent);
color: white;
border-radius: 12px;
}// Add custom animations
document.addEventListener('DOMContentLoaded', function() {
const cards = document.querySelectorAll('.timeline-card');
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('timeline-card-visible');
}
});
});
cards.forEach(card => observer.observe(card));
});- Check posts - Ensure posts have "timeline" category
- Verify settings - Check Timeline β Timeline Order
- Clear cache - Browser and WordPress cache
- Check PHP errors - Look for function conflicts
- Check JavaScript - Ensure timeline.js is loading
- Verify HTML - Check button data attributes
- Test filters - Ensure category filtering works
- Check AJAX - Verify admin interface
- Check CSS - Ensure timeline styles are loading
- Test responsive - Check different screen sizes
- Verify variables - Ensure CSS variables are set
- Check conflicts - Plugin or theme conflicts
- Customization Guide - General customization
- Installation Guide - Setup instructions
- Troubleshooting - Common issues and solutions
- Birthday Cards - Related card system