7.3 KiB
Instagram Gallery Sync Pro
Ein leistungsstarkes WordPress-Plugin zur Synchronisierung und Anzeige von Instagram-Fotos ohne offizielle API.
Entwickelt von Keil & Schick
🚀 Features
- Automatische Synchronisierung – Holt regelmäßig neue Bilder von öffentlichen Instagram-Profilen
- Lokale Bildspeicherung – Bilder werden auf deinem Server gespeichert (bessere Performance)
- 5 Layout-Optionen – Grid, Masonry, Justified, Slider, List
- Vollständig responsive – Separate Spalteneinstellungen für Desktop, Tablet & Mobile
- Lightbox-Integration – GLightbox für elegante Bildanzeige
- Gutenberg-Block – Nativer Block-Editor mit Live-Vorschau
- Shortcode-Unterstützung – Flexibel mit zahlreichen Parametern
- 6 Hover-Effekte – Zoom, Fade, Overlay, Grayscale, Lift, None
- Custom CSS – Eigene Styles direkt im Admin-Bereich
- Activity Logs – Detaillierte Protokollierung aller Sync-Aktivitäten
- i18n-ready – Vorbereitet für Übersetzungen (DE/EN)
📋 Anforderungen
- WordPress 5.0 oder höher
- PHP 7.4 oder höher
- Öffentliches Instagram-Profil
📥 Installation
Manuelle Installation
- Lade den
instagram-gallery-sync-proOrdner herunter - Kopiere ihn nach
/wp-content/plugins/ - Aktiviere das Plugin unter Plugins im WordPress-Admin
- Gehe zu Instagram Gallery in der Sidebar
Via WordPress Admin
- Gehe zu Plugins → Installieren
- Klicke auf Plugin hochladen
- Wähle die ZIP-Datei aus
- Klicke auf Jetzt installieren und dann Aktivieren
⚙️ Konfiguration
Grundeinrichtung
- Navigiere zu Instagram Gallery im Admin-Menü
- Gib deinen Instagram-Benutzernamen ein (ohne @)
- Wähle die gewünschte Bildanzahl und Qualität
- Klicke auf Sync Now
Einstellungs-Tabs
| Tab | Beschreibung |
|---|---|
| Username, Sync-Intervall, Bildqualität | |
| Layout | Grid-Typ, Spalten, Abstände, Hover-Effekte |
| Anzeige | Limit, Sortierung, Lightbox, Lazy Loading |
| Styling | Farben, Schriftgrößen, Custom CSS |
| Erweitert | Debug-Modus, Cache, Proxy, Logs |
🔧 Verwendung
Shortcode
Einfachste Verwendung:
[instagram_gallery]
Mit Parametern:
[instagram_gallery layout="masonry" columns="4" limit="12" spacing="15"]
Alle Parameter
| Parameter | Werte | Standard |
|---|---|---|
layout |
grid, masonry, slider, justified, list |
grid |
columns |
1 - 6 |
3 |
spacing |
0 - 50 (px) |
10 |
limit |
1 - 50 |
12 |
order |
newest, oldest, random |
newest |
lightbox |
yes, no |
yes |
captions |
yes, no |
no |
autoplay |
true, false (nur Slider) |
false |
class |
CSS-Klassenname | – |
Gutenberg Block
- Öffne den Block-Editor
- Suche nach "Instagram Gallery"
- Füge den Block hinzu
- Konfiguriere über die Sidebar-Einstellungen
PHP Template
<?php
if (function_exists('display_instagram_gallery')) {
display_instagram_gallery(array(
'layout' => 'grid',
'columns' => 3,
'limit' => 9
));
}
?>
🎨 Styling
CSS-Variablen
Das Plugin verwendet CSS Custom Properties für einfache Anpassung:
:root {
--igsp-primary: #e1306c;
--igsp-hover: #c13584;
--igsp-text: #ffffff;
--igsp-font-size: 14px;
--igsp-radius: 0px;
}
CSS-Klassen
| Klasse | Beschreibung |
|---|---|
.igsp-gallery |
Container |
.igsp-item |
Einzelnes Bild |
.igsp-image |
Bild-Element |
.igsp-overlay |
Caption-Overlay |
.igsp-follow-btn |
Instagram-Button |
🔄 Synchronisierung
Automatisch
Das Plugin synchronisiert automatisch basierend auf dem konfigurierten Intervall:
- Alle 30 Minuten
- Stündlich
- Alle 6 Stunden
- Täglich
- Wöchentlich
Manuell
Klicke auf Sync Now im Instagram-Tab der Einstellungen.
Scraping-Methoden
Das Plugin verwendet mehrere Fallback-Methoden:
- Web Profile Info API – Instagrams interne Web-API
- Embed Page Parsing – Parst die Embed-Seiten
- Profile Page Parsing – HTML-Analyse mit mehreren Strategien
⚠️ Wichtige Hinweise
Hinweis: Instagram blockiert Scraping aktiv. Das Plugin enthält Anti-Blocking-Maßnahmen, aber 100% Zuverlässigkeit kann nicht garantiert werden.
Best Practices
- Verwende lange Sync-Intervalle (6h+)
- Aktiviere lokale Bildspeicherung
- Nutze Caching für bessere Performance
- Halte die Bildanzahl moderat (12-24)
Problembehandlung
| Problem | Lösung |
|---|---|
| Keine Bilder | Prüfe ob Profil öffentlich ist |
| Rate Limiting | Erhöhe Sync-Intervall |
| Timeout | Erhöhe Request-Timeout in Erweitert |
| Parsing-Fehler | Prüfe Logs, warte und versuche erneut |
🗄️ Datenbank
Das Plugin erstellt zwei Tabellen:
wp_instagram_gallery_posts– Gespeicherte Bilderwp_instagram_gallery_log– Aktivitätsprotokolle
Bei Deinstallation werden alle Daten vollständig entfernt.
📁 Dateistruktur
instagram-gallery-sync-pro/
├── instagram-gallery-sync-pro.php # Hauptdatei
├── uninstall.php # Deinstallations-Routine
├── includes/
│ ├── class-admin.php # Admin-Handler
│ ├── class-cron.php # Cron-Jobs
│ ├── class-database.php # Datenbank-Operationen
│ ├── class-gutenberg-block.php # Block-Editor
│ ├── class-image-handler.php # Bild-Download & -Verarbeitung
│ ├── class-logger.php # Logging-System
│ ├── class-scraper.php # Instagram-Scraper
│ └── class-shortcode.php # Shortcode-Handler
├── admin/
│ ├── css/admin-style.css
│ ├── js/admin-script.js
│ ├── js/ajax-sync.js
│ └── views/ # Admin-Templates
├── public/
│ ├── css/ # Frontend-Styles
│ └── js/ # Frontend-Scripts + Libs
└── languages/ # Übersetzungsdateien
🔐 Sicherheit
- Prepared Statements für alle DB-Queries
- Nonce-Verifizierung für AJAX-Requests
- Capability-Checks (
manage_options) - Input-Sanitization für alle Benutzereingaben
- Output-Escaping mit
esc_html(),esc_attr(), etc.
📝 Changelog
1.0.0 (2026-01-22)
- Erste Veröffentlichung
- 5 Layout-Typen (Grid, Masonry, Justified, Slider, List)
- Gutenberg Block mit Live-Vorschau
- Shortcode mit allen Parametern
- Admin-Bereich mit 5 Tabs
- Multi-Methoden Scraping Engine
- Lokale Bildspeicherung mit Thumbnails
- Activity Logging System
📄 Lizenz
GPL-2.0-or-later © Keil & Schick
🆘 Support
Für Fragen und Support besuche: https://keil-schick.de
Entwickelt mit ❤️ in Deutschland