WordPress Post ID: Der vollständige Entwickler-Referenzleitfaden
Eine WordPress Post ID ist eine eindeutige, automatisch inkrementierende Ganzzahl, die in der wp_posts-Datenbanktabelle gespeichert ist und jeden Inhalt in einer WordPress-Installation dauerhaft identifiziert — einschließlich Beiträge, Seiten, benutzerdefinierte Beitragstypen, Anhänge, Revisionen und Navigationsmenüelemente. Sie ist der Primärschlüssel, den WordPress intern verwendet, um Inhalte in seiner Datenbank, seinem Plugin-Ökosystem und seiner Template-Hierarchie zu referenzieren.
Im Gegensatz zu Slugs oder Titeln ändert sich eine Post ID nach der Zuweisung nie, was sie zum zuverlässigsten Referenzpunkt für programmgesteuerte Inhaltsmanipulation, benutzerdefinierte Abfragen und Drittanbieter-Integrationen macht.
Warum Post IDs über das grundlegende Content-Management hinaus wichtig sind
Die meiste Dokumentation behandelt Post IDs als praktisches Nachschlagewerk. In der Praxis sind sie das Rückgrat des gesamten relationalen Datenmodells von WordPress. Jeder Kommentar, jeder Postmeta-Eintrag, jede Term-Beziehung und jeder Anhang ist über Fremdschlüsselreferenzen im Datenbankschema mit einer Post ID verknüpft. Dies hat direkte Auswirkungen auf Leistung, Datenintegrität und Plugin-Architektur.
Kritische architektonische Fakten, die Entwickler oft übersehen:
- Post IDs sind global eindeutig pro Installation, nicht pro Beitragstyp. Eine Seite mit ID 42 und ein Eintrag eines benutzerdefinierten Beitragstyps können diese Ganzzahl nicht teilen.
- IDs werden aus einer Auto-Inkrement-Sequenz in MySQL/MariaDB vergeben. Gelöschte Beiträge hinterlassen dauerhafte Lücken — ID 45 existiert möglicherweise nie, wenn Beitrag 45 in den Papierkorb verschoben und gelöscht wurde.
- WordPress-Revisionen verbrauchen Post IDs. Ein 20-mal bearbeiteter Beitrag erzeugt 20 Revisionszeilen in
wp_posts, jede mit ihrer eigenen ID. Auf stark frequentierten redaktionellen Websites erhöht dies den Auto-Inkrement-Zähler erheblich. - Anhänge (Mediathek-Elemente) werden als Beiträge mit
post_type = 'attachment'gespeichert. Ihre Post IDs werden inwp_postmetaverwendet, um_wp_attachment_metadatazu speichern, wodurch Medienabfragen ID-abhängig werden. - In WordPress Multisite werden Post IDs pro Unterseite zurückgesetzt, da jede Website ihren eigenen präfixierten Tabellensatz erhält (z. B.
wp_2_posts). Gehen Sie niemals von ID-Eindeutigkeit über ein Netzwerk hinweg aus.
So finden Sie eine Post ID: Alle Methoden erklärt
Methode 1: Die Admin-URL-Inspektionstechnik
Dies ist die schnellste Methode, die weder Plugins noch Datenbankzugriff erfordert.
- Navigieren Sie zu Beiträge > Alle Beiträge (oder Seiten > Alle Seiten oder eine beliebige Liste benutzerdefinierter Beitragstypen).
- Bewegen Sie den Cursor über den Beitragstitel — klicken Sie nicht.
- Beachten Sie die URL, die in der Statusleiste Ihres Browsers angezeigt wird. Sie folgt diesem Muster:
https://yoursite.com/wp-admin/post.php?post=123&action=editDie Ganzzahl nach post= ist die Post ID. Wenn Sie auf Bearbeiten klicken und die Adressleiste des Browsers untersuchen, erhalten Sie dasselbe Ergebnis.
Sonderfall: Wenn Ihre Permalink-Struktur eine benutzerdefinierte Basis verwendet und der Beitrag den Entwurfsstatus hat, kann die URL in der Statusleiste von der veröffentlichten URL abweichen. Verwenden Sie immer den post=-Parameter in der Admin-URL, nicht den Front-End-Slug.
Methode 2: Der Schnellbearbeitung-Spalten-Trick (kein Plugin erforderlich)
- Gehen Sie zu Beiträge > Alle Beiträge.
- Klicken Sie unter einem beliebigen Beitragstitel auf Schnellbearbeitung.
- Die Post ID erscheint nicht in der Schnellbearbeitung selbst, aber der umgebende HTML-Code enthält ein
data-id-Attribut in der Tabellenzeile. Klicken Sie mit der rechten Maustaste auf die Zeile und untersuchen Sie das Element — Sie sehen<tr id="post-123">, wobei123die Post ID ist.
Dies ist nützlich, wenn Sie die ID benötigen, ohne etwas zu installieren, und die Statusleisten-URL verdeckt ist.
Methode 3: Verwendung der get_the_ID()-Funktion in Templates
Innerhalb der WordPress-Schleife können Sie die ID des aktuellen Beitrags programmgesteuert abrufen:
<?php
if ( have_posts() ) :
while ( have_posts() ) : the_post();
$current_post_id = get_the_ID();
echo 'Post ID: ' . esc_html( $current_post_id );
endwhile;
endif;
?>Außerhalb der Schleife übergeben Sie explizit ein Beitragsobjekt:
<?php
$post_object = get_post( get_queried_object_id() );
$post_id = $post_object->ID;
?>Methode 4: Direkte Datenbankabfrage über phpMyAdmin oder CLI
Für Massenabfragen oder serverseitige Automatisierung können Sie die wp_posts-Tabelle direkt abfragen. In einer VPS Hosting-Umgebung mit Root-Zugriff können Sie die MySQL CLI verwenden:
mysql -u wordpress_user -p wordpress_db -e
"SELECT ID, post_title, post_type, post_status
FROM wp_posts
WHERE post_status = 'publish'
ORDER BY ID ASC;"So finden Sie die ID eines bestimmten Beitrags anhand seines Slugs:
mysql -u wordpress_user -p wordpress_db -e
"SELECT ID, post_title FROM wp_posts
WHERE post_name = 'your-post-slug'
AND post_type = 'post';"Fallstrick: Die wp_posts-Tabelle speichert Revisionen, Auto-Entwürfe und Navigationsmenüelemente zusammen mit veröffentlichten Inhalten. Filtern Sie immer nach post_status und post_type, um zu vermeiden, dass interne WordPress-Datensätze zurückgegeben werden, die dieselbe Tabelle verwenden.
Methode 5: WP-CLI für skriptgesteuerte Abfragen
Auf jedem Server mit installiertem WP-CLI — Standardpraxis in ordnungsgemäß konfigurierten VPS mit cPanel– oder Bare-Metal-Umgebungen — verwenden Sie:
wp post list --post_type=post --fields=ID,post_title,post_status --format=tableSo rufen Sie die ID eines einzelnen Beitrags anhand des Titels ab:
wp post list --post_type=any --search="Exact Post Title" --fields=ID,post_titleWP-CLI ist für Massenoperationen deutlich schneller als phpMyAdmin und für Automatisierungspipelines skriptfähig.
Methode 6: Admin-Plugins für nicht-technische Benutzer
Das Plugin Show IDs by 99robots fügt allen Listentabellen im WordPress-Admin (Beiträge, Seiten, Medien, Benutzer, Taxonomien) eine „ID”-Spalte hinzu. Es erfordert keine Konfiguration und verursacht vernachlässigbaren Mehraufwand. Für Teams, bei denen Redakteure Post IDs ohne Datenbankzugriff benötigen, ist dies die geeignete Lösung.
Praktische Anwendungsfälle: Post IDs in der realen WordPress-Entwicklung
Beiträge aus Abfragen ausschließen
Einer der häufigsten Anwendungsfälle ist das Ausschließen bestimmter Beiträge aus Archiv- oder Schleifenabfragen mit post__not_in:
<?php
$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => 10,
'post__not_in' => array( 123, 456, 789 ), // Exclude by Post ID
);
$custom_query = new WP_Query( $args );
if ( $custom_query->have_posts() ) :
while ( $custom_query->have_posts() ) : $custom_query->the_post();
the_title( '<h2>', '</h2>' );
endwhile;
wp_reset_postdata();
endif;
?>Leistungshinweis: post__not_in wird in eine NOT IN (...)-SQL-Klausel übersetzt. Bei Tabellen mit Hunderttausenden von Zeilen kann dies zu vollständigen Tabellenscans führen, wenn die ID-Spalte nicht ordnungsgemäß indiziert ist. In einer Standard-WordPress-Installation ist ID der Primärschlüssel und immer indiziert — überprüfen Sie dies jedoch bei migrierten oder älteren Datenbanken.
Einen bestimmten Beitrag anhand der ID abrufen
<?php
$post_data = get_post( 123 );
if ( ! is_null( $post_data ) ) {
echo esc_html( $post_data->post_title );
echo wp_kses_post( $post_data->post_content );
}
?>get_post() gibt ein WP_Post-Objekt oder null zurück, wenn die ID nicht existiert. Führen Sie immer eine Null-Prüfung durch, bevor Sie auf Eigenschaften zugreifen, um fatale Fehler in der Produktion zu vermeiden.
Beitrags-Meta anhand der ID abrufen
<?php
$meta_value = get_post_meta( 123, '_custom_field_key', true );
echo esc_html( $meta_value );
?>Der dritte Parameter true gibt einen einzelnen Wert als Zeichenkette zurück. Die Übergabe von false gibt ein Array aller Werte für diesen Schlüssel zurück — ein entscheidender Unterschied bei der Arbeit mit serialisierten oder wiederholten Meta-Einträgen.
Einen Permalink aus einer Post ID generieren
<?php
$url = get_permalink( 123 );
echo esc_url( $url );
?>Dies berücksichtigt Ihre Permalink-Struktur und ist die korrekte Methode zur Generierung von Front-End-URLs aus Post IDs. Verketten Sie niemals manuell die Website-URL mit einem Slug — Permalink-Strukturen variieren, und dieser Ansatz ist fehleranfällig.
Post IDs in Shortcodes verwenden
Viele Page-Builder-Shortcodes und Plugin-Shortcodes akzeptieren einen Post-ID-Parameter zum Einbetten oder Referenzieren von Inhalten:
[display_post id="123"]
Error: Contact form not found.
Das Contact Form 7-Beispiel ist besonders relevant — sein id-Attribut ist die Post ID des Eintrags des benutzerdefinierten Beitragstyps des Formulars, keine beliebige fortlaufende Nummer. Das Hardcoding in Templates erfordert die Kenntnis der genauen ID, weshalb Staging-zu-Produktions-Migrationen, die Datenbank-Suchen-und-Ersetzen verwenden, Shortcode-Referenzen beschädigen können, wenn sich IDs verschieben.
Bedingte Logik basierend auf Post ID
<?php
if ( is_single( 123 ) ) {
// Load special sidebar only on this post
get_sidebar( 'special' );
} elseif ( is_page( array( 45, 67 ) ) ) {
// Apply custom template logic to these pages
get_template_part( 'template-parts/custom-layout' );
}
?>is_single(), is_page() und is_singular() akzeptieren alle Post IDs, Slugs oder Titel als Argumente. Die Verwendung von IDs ist der zuverlässigste Ansatz — Slugs können von Redakteuren geändert werden, Titel sind nicht eindeutig.
Post-ID-Verhalten in fortgeschrittenen Szenarien
Multisite-Netzwerke
In einer WordPress-Multisite-Installation pflegt jede Unterseite ihre eigene wp_{blog_id}_posts-Tabelle. Post ID 123 auf Website 1 (wp_posts) ist vollständig unabhängig von Post ID 123 auf Website 2 (wp_2_posts). Websiteübergreifende Abfragen erfordern das Wechseln des Blog-Kontexts:
<?php
switch_to_blog( 2 );
$post_data = get_post( 123 ); // Retrieves post 123 from site 2
restore_current_blog();
?>Das Versäumnis, den Blog-Kontext nach switch_to_blog() wiederherzustellen, ist eine häufige Quelle subtiler, schwer zu debuggender Fehler in Multisite-Plugins.
Post-ID-Lücken und Auto-Inkrement-Verhalten
Wenn Beiträge dauerhaft gelöscht werden (nicht nur in den Papierkorb verschoben), werden ihre IDs eingestellt. Der AUTO_INCREMENT-Zähler von MySQL setzt diese Werte nicht zurück und verwendet sie nicht erneut. Auf Websites mit intensiven redaktionellen Arbeitsabläufen — häufige Entwurfserstellung und -löschung — kann der Post-ID-Zähler unerwartet hohe Werte erreichen. Dies ist normales Verhalten und hat keine funktionalen Auswirkungen, kann aber Entwickler überraschen, die sequenzielle IDs erwarten.
So überprüfen Sie den aktuellen Auto-Inkrement-Wert in Ihrer Datenbank:
mysql -u wordpress_user -p wordpress_db -e
"SELECT AUTO_INCREMENT FROM information_schema.TABLES
WHERE TABLE_SCHEMA = 'wordpress_db'
AND TABLE_NAME = 'wp_posts';"REST API und Post IDs
Die WordPress REST API stellt Post IDs in jedem Antwortobjekt bereit. Eine GET-Anfrage an /wp-json/wp/v2/posts/123 ruft den Beitrag mit ID 123 ab. Dies macht Post IDs zur kanonischen Referenz für Headless-WordPress-Architekturen, bei denen das Front-End ausschließlich über REST oder GraphQL mit dem Backend kommuniziert.
curl -s https://yoursite.com/wp-json/wp/v2/posts/123 | python3 -m json.toolDie Antwort enthält das id-Feld, link, slug und alle Beitragsdaten — was bestätigt, dass die REST API in ihrem Design ID-zentriert ist.
Post ID vs. andere WordPress-Bezeichner
Das Verständnis, wann eine Post ID gegenüber alternativen Bezeichnern zu verwenden ist, verhindert architektonische Fehler.
| Bezeichner | Eindeutigkeit | Veränderlich | Anwendungsfall |
|---|---|---|---|
| Post ID | Global eindeutig pro Website | Niemals | Programmgesteuerte Referenzen, Datenbankabfragen, API-Aufrufe |
Post Slug (post_name) | Eindeutig pro Beitragstyp | Ja (Redakteure können ändern) | SEO-freundliche URLs, menschenlesbare Referenzen |
| Beitragstitel | Nicht eindeutig | Ja | Nur zur Anzeige, niemals für Logik |
| GUID | Global eindeutig | Bei Erstellung gesetzt, ändert sich selten | RSS-Feeds, internes WordPress-Tracking |
| Benutzerdefinierter Feldwert | Abhängig von der Implementierung | Ja | Anwendungsspezifische Abfragen |
Wichtige Erkenntnis aus dieser Tabelle: Verwenden Sie Post IDs in allem Code. Verwenden Sie Slugs nur in Inhalten, die Menschen lesen oder eingeben. Verwenden Sie niemals Titel als Bezeichner in der Logik.
Leistungsüberlegungen für Post-ID-Abfragen
Bei stark frequentierten WordPress-Installationen, die auf Dedicated Servers oder optimierter VPS-Infrastruktur laufen, ist die Abfrageleistung von Post IDs selten ein Engpass, da ID der Primärschlüssel von wp_posts ist. Einige Muster können jedoch die Leistung beeinträchtigen:
post__not_in mit großen Arrays: Die Übergabe von Hunderten von IDs an post__not_in erzeugt eine große NOT IN (...)-Klausel. Erwägen Sie, das Ergebnisset zu cachen oder die Abfrage mithilfe von Taxonomieausschlüssen umzustrukturieren.
get_post() innerhalb von Schleifen ohne Caching: Das wiederholte Aufrufen von get_post() in einer Schleife ohne Nutzung des Objekt-Caches erzeugt redundante Datenbankzugriffe. Der interne Objekt-Cache von WordPress (wp_cache_get) behandelt dies automatisch, wenn der persistente Objekt-Cache (Redis, Memcached) konfiguriert ist — jedoch nur für die Dauer einer einzelnen Anfrage ohne persistentes Cache-Backend.
Revisionsakkumulation: Wie bereits erwähnt, verbrauchen Revisionen Post IDs und blähen die wp_posts-Tabelle auf. Begrenzen Sie Revisionen in wp-config.php:
define( 'WP_POST_REVISIONS', 5 ); // Keep only the last 5 revisionsOder deaktivieren Sie sie vollständig für Beitragstypen, die keine Versionshistorie benötigen:
define( 'WP_POST_REVISIONS', false );Anhangsabfragen: Mediathek-Abfragen nach Post ID sind in Galerie-Plugins üblich. Stellen Sie sicher, dass die post_parent-Spalte indiziert ist, wenn Sie häufig post_parent-basierte Abfragen ausführen, da sie im WordPress-Schema standardmäßig nicht indiziert ist.
Post-ID-Referenzen in benutzerdefiniertem Code absichern
Das Offenlegen von Post IDs in Front-End-URLs oder Formularfeldern ohne Validierung schafft einen potenziellen Informationsoffenlegungs- oder unbefugten Zugriffsvektor. Validieren und bereinigen Sie immer:
<?php
// Sanitize a Post ID received from user input
$post_id = isset( $_GET['post_id'] ) ? absint( $_GET['post_id'] ) : 0;
if ( $post_id > 0 && get_post_status( $post_id ) === 'publish' ) {
// Safe to use
$post_data = get_post( $post_id );
} else {
wp_die( 'Invalid post reference.', 403 );
}
?>absint() konvertiert die Eingabe in eine nicht-negative Ganzzahl und eliminiert das SQL-Injection-Risiko. get_post_status() bestätigt, dass der Beitrag existiert und öffentlich zugänglich ist, bevor er verarbeitet wird.
Für Websites, die sensible Inhalte mit eingeschränkten Beitragstypen verwalten, kombinieren Sie dies mit current_user_can()-Prüfungen, um fähigkeitsbasierte Zugriffssteuerung durchzusetzen.
Deployment-Überlegungen: Post IDs in verschiedenen Umgebungen
Eines der häufigsten Produktionsprobleme in der WordPress-Entwicklung betrifft die Post-ID-Abweichung zwischen Umgebungen. Wenn Sie lokal entwickeln, Beiträge erstellen und dann zu Staging oder Produktion migrieren, stimmen die Post IDs in Ihrer lokalen Datenbank nicht mit denen in der Produktionsdatenbank überein — insbesondere wenn die Produktionswebsite bereits Inhalte hat.
Praktische Minderungsstrategien:
- Speichern Sie Post IDs in einem dedizierten Options-Tabelleneintrag mit
get_option()/update_option(), sodass sie pro Umgebung ohne Codeänderungen aktualisiert werden können. - Verwenden Sie Post-Slugs als Lookup-Schlüssel in Ihrem Code und lösen Sie diese zur Laufzeit mithilfe von
get_page_by_path()oder einer benutzerdefinierten Abfrage in IDs auf — und akzeptieren Sie dabei den marginalen Leistungsaufwand für die gewonnene Flexibilität. - Implementieren Sie eine Post-ID-Zuordnungstabelle in
wp_options, die semantische Namen (z. B.'homepage_hero_post') den tatsächlichen IDs zuordnet, konfigurierbar pro Umgebung.
Für Teams, die WordPress auf VPS Hosting mit automatisierten CI/CD-Pipelines bereitstellen, lässt sich dieser Zuordnungsansatz sauber in umgebungsspezifisches Konfigurationsmanagement integrieren.
Technische Entscheidungsmatrix: Die richtige Lookup-Methode wählen
| Szenario | Empfohlene Methode | Grund |
|---|---|---|
| Einmaliger ID-Lookup, Admin-Zugriff | URL-Inspektion in wp-admin | Kein Aufwand, sofort |
| Massen-ID-Lookup, Entwickler | WP-CLI wp post list | Skriptfähig, schnell, keine UI-Abhängigkeit |
| Nicht-technischer Redakteur benötigt IDs | Show IDs Plugin | Sicher, kein Code erforderlich |
| Automatisiertes serverseitiges Skript | Direkte MySQL-Abfrage | Umgeht den WordPress-Bootstrap-Overhead |
| Template-/Plugin-Entwicklung | get_the_ID() oder get_post() | Korrekte WordPress-API-Nutzung |
| REST API / Headless Front-End | /wp-json/wp/v2/posts/{id} | Native REST-Ressourcenadressierung |
| Umgebungsübergreifende Portabilität | Slug-zu-ID-Auflösung zur Laufzeit | Vermeidet ID-Abweichungen zwischen Umgebungen |
Wichtige technische Erkenntnisse: Aktionscheckliste
- Verwenden Sie immer
absint(), um extern bereitgestellte Post IDs vor jeder Datenbankinteraktion zu bereinigen. - Hardcoden Sie niemals Post IDs in Theme-Templates, die zur Verteilung gedacht sind — verwenden Sie stattdessen slug-basierte Lookups oder Options-Tabellen-Zuordnungen.
- Setzen Sie
WP_POST_REVISIONSauf eine feste Ganzzahl inwp-config.phpauf redaktionellen Websites, um das Tabellenwachstum zu kontrollieren. - Rufen Sie in Multisite immer
restore_current_blog()nachswitch_to_blog()auf, um Kontextvermischung zu verhindern. - Überprüfen Sie
post_statusundpost_typein allen direkten Datenbankabfragen — diewp_posts-Tabelle enthält interne WordPress-Datensätze, die keine benutzersichtbaren Inhalte sind. - Verwenden Sie WP-CLI für Massen-Post-ID-Operationen in automatisierten Deployment-Skripten anstelle von phpMyAdmin, das sitzungsgebunden und nicht skriptfähig ist.
- Konfigurieren Sie einen persistenten Objekt-Cache (Redis oder Memcached) auf Produktionsservern, um redundante
get_post()-Datenbankzugriffe in komplexen Templates zu verhindern. - Behandeln Sie bei Headless-WordPress-Deployments das
id-Feld der REST API als kanonische Post-ID-Referenz — es ist identisch mit dem Datenbankprimärschlüssel.
Wenn Ihre WordPress-Installation auf einer Infrastruktur läuft, die den Datenbankzugriff, den Shell-Zugriff oder die WP-CLI-Verfügbarkeit einschränkt, beseitigt die Migration zu einer ordnungsgemäß bereitgestellten Umgebung — wie Dedicated Servers mit vollem Root-Zugriff — diese Einschränkungen vollständig und ermöglicht die gesamte Bandbreite der in diesem Leitfaden beschriebenen Post-ID-Verwaltungstechniken. Websites mit komplexen benutzerdefinierten Beitragstyp-Architekturen profitieren auch davon, WordPress mit ordnungsgemäß konfigurierten SSL Certificates zu kombinieren, um REST-API-Endpunkte zu sichern, die Post-ID-basierte Ressourcen offenlegen.
FAQ
Was passiert mit einer Post ID, wenn ein Beitrag in WordPress gelöscht wird?
Die ID wird dauerhaft eingestellt. Der AUTO_INCREMENT-Zähler von MySQL verwendet gelöschte IDs nicht erneut, sodass Lücken in der ID-Sequenz normal und zu erwarten sind. Die ID wird niemals neuem Inhalt zugewiesen.
Können zwei Beiträge auf derselben WordPress-Website dieselbe Post ID teilen?
Nein. Die Post ID ist der Primärschlüssel der wp_posts-Tabelle und erzwingt absolute Eindeutigkeit über alle Beitragstypen, Status und Inhaltstypen innerhalb einer einzelnen WordPress-Installation. In Multisite ist die Eindeutigkeit auf die Unterseiten-Tabelle beschränkt.
Warum springen meine Post IDs zwischen Beiträgen um große Zahlen?
Jede Revision, jeder Auto-Entwurf und jedes Navigationsmenüelement verbraucht eine ID aus derselben Auto-Inkrement-Sequenz. Ein Beitrag mit 15 Revisionen hat insgesamt 16 IDs verbraucht. Hohe redaktionelle Aktivität, häufige Entwurfserstellung und automatische Speicherungen von Page Buildern beschleunigen diesen Zähler erheblich.
Ist es sicher, Post IDs in Front-End-URLs oder AJAX-Anfragen offenzulegen?
Post IDs selbst sind keine sensiblen Daten — sie sind sequenzielle Ganzzahlen ohne kryptografischen Wert. Das Risiko besteht darin, sie ohne serverseitige Validierung zu verwenden, was unbefugten Zugriff auf nicht-öffentliche Inhalte ermöglichen könnte. Validieren Sie immer, dass die ID existiert, prüfen Sie post_status und erzwingen Sie Fähigkeitsprüfungen, bevor Sie Daten zurückgeben.
Wie finde ich die Post ID eines WordPress-Anhangs (Mediendatei)?
Navigieren Sie zu Medien > Mediathek, wechseln Sie zur Listenansicht, bewegen Sie den Mauszeiger über den Anhangstitel und lesen Sie den post=-Parameter aus der URL in der Browser-Statusleiste — identisch mit der Methode für Beiträge und Seiten. Alternativ führen Sie den folgenden WP-CLI-Befehl aus:
wp post list --post_type=attachment --fields=ID,post_title,post_mime_type --format=table