it-swarm.com.de

Wie bekomme ich eine Liste von Unter-Blogs ohne get_blog_list ()?

Die Funktion get_blog_list() wurde von Version 3.0 aufgegeben. Wie erhält man eine Liste von Blogs in einem Blog mit mehreren Sites?

4
rsman

Trac hat einige Diskussionen und Code für einen möglichen Ersatz in zukünftigen Versionen, Ticket # 14511 neue Funktion - wp_get_sites ($ args) .

4
Rarst

Sie können Ihre Datenbank direkt abfragen.

global $wpdb;

$blogs = $wpdb->get_results( "SELECT * FROM $wpdb->blogs ORDER BY blog_id" );

Dadurch wird ein Array zurückgegeben, das alle Ihre Sites im Netzwerk enthält. Anschließend können Sie mit einer foreach-Anweisung Ihr eigenes Array erstellen und ausfüllen.

Denken Sie auch daran, die Codex-Seite zur Schnittstelle mit der WP -Datenbank sorgfältig zu lesen, wenn Sie $wpdb verwenden. Beachten Sie insbesondere die $wpdb->prepare -Methode, wenn Sie erweiterte Abfragen durchführen.

3
Rory Rothon

Eine möglicherweise nützliche Alternative ist get_blogs_of_user ($ user_id) .

Es bietet eine perfekte Alternative, aber nur, wenn alle Blogs von demselben (Admin-) Benutzer erstellt wurden - was in meinem Fall funktioniert.

2
ptriek

Es gibt Plugins dafür wie http://wordpress.org/extend/plugins/multisite-recent-posts-widget/ .

Ich habe einen ähnlichen Plugin-Code (Ableitung des obigen Plugins) verwendet (Originalquelle nicht mehr verfügbar, daher kein Link, wurde auch erst vor zwei Wochen gefunden!), Um eine Sitemap-Seitenvorlage für mehrere Standorte zu erstellen, in der die neuesten 300 neuen aufgeführt sind Multisites.

Sie können meine Seitenvorlage unter www.google-adsense-templates.co.uk/seo-plugin/sitemap-multisite herunterladen. Zip funktioniert nur mit dem SEO-Thema Talian 05, Sie können den entsprechenden Code jedoch problemlos in Ihre eigenen Themen kopieren Seitenvorlage.

David

0
David Law