Standard icon-based social media navigation component that integrates with Drupal's new Icon API.
With Dripyard's recipes, a "Social media links" block is created. You can modify the content of that block within the theme settings at /admin/appearance/settings/neonbyte.
Usage
{{ include('dripyard_base:social-media-nav', {
size: 'medium',
align_x: 'start',
items: [
{
title: 'Facebook',
icon: 'facebook',
url: 'https://www.facebook.com',
},
{
title: 'Instagram',
icon: 'instagram',
url: 'https://www.instagram.com',
}
]
}, with_context = false) }}
CSS Custom Properties
--gap- Spacing between social media icons (calculated as icon_size * 0.75)--spacing-s- Vertical margin around the component
Accessibility Considerations
- Component uses semantic
<nav>element with proper ARIA labeling - Each social media link includes a visually hidden title for screen readers
- Links open in new tab/window using
target="_blank" - Proper heading structure with hidden h2 element for navigation landmark
- Icons are properly sized and have sufficient spacing for touch targets
Media/Container Queries
No specific media or container queries defined. Component uses flexbox for responsive layout that adapts to available space.
Slots and Props
Props
align_x(string) - Horizontal alignment: 'start', 'center', or 'end' (default: 'start')size(string) - Icon size: 'small' (16px), 'medium' (32px), or 'large' (48px) (default: 'medium')items(array) - Array of social media items, each containing:icon(string, required) - FontAwesome icon name from supported listtitle(string, required) - Accessible name for the social media platformurl(string, required) - URL to the social media profile/page
Slots
No named slots available - content is generated from the items array.