it-swarm.com.de

Lassen Sie WordPress eine benutzerdefinierte XML-Datei (keine Sitemap) erstellen, die nur aktualisiert wird, wenn neue Inhalte veröffentlicht werden.

Ich suche keine Sitemap, ich möchte eine XML-Datei erstellen, auf die ich über ein Flash-Menü zugreifen kann, aber ich möchte die XML-Datei nicht jedes Mal generieren, wenn jemand eine Seite besucht statisches XML, auf das sich die Geschwindigkeit bezieht. Und ich möchte, dass WordPress die Datei aktualisiert, wenn neue Inhalte veröffentlicht werden (keine Kommentare).

Gibt es irgendetwas in WordPress, das es mir erlauben würde, dies zu tun? Irgendwelche Plugins? Auch hier möchte ich keine Sitemap. Ich möchte eine bestimmte Liste von Artikeln. Im Moment habe ich Seitenvorlagen mit benutzerdefinierten Schleifen verwendet, aber das Generieren dauert jedes Mal zu lange.

1
Ghost9

Hmm ... nicht sicher, ob es irgendwelche WordPress-spezifischen Funktionen zum Erstellen von Dateien gibt. Es gibt wp_handle_upload, aber ich bin nicht sicher, wie Sie es in diesem Kontext verwenden würden.

Abhängig von Ihrer Serverkonfiguration können Sie dazu wahrscheinlich einfach fopen und fwrite verwenden.

Behalten Sie den Code bei, den Sie gerade verwenden (mit Ihren benutzerdefinierten Schleifen ... Ich gehe davon aus, dass sie das gewünschte XML-Markup enthalten), lassen Sie die Ausgabe jedoch als Zeichenfolge erstellen. Speichern Sie dann diesen String in einer Datei. So etwas wie:

// Build your file contents as a string
$file_contents = '<?xml version="1.0" ?><yourroot><item>some content</item></yourroot></xml>';

// Open or create a file (this does it in the same dir as the script)
$my_file = fopen("myfile.xml", "w");

// Write the string's contents into that file
fwrite($my_file, $file_contents);

// Close 'er up
fclose($my_file);

Dies hängt natürlich alles von Ihrer Serverkonfiguration und Ihren Berechtigungen ab. Vielleicht hat jemand eine bessere Lösung, die nur native WP Funktionen benötigt.

0
MathSmath

Es ist nichts eingebaut, aber Sie sollten in die verschiedenen Sitemaps-Plugins schauen. Diese zeigen dir a) wo du dich einklinken und b) wie du die Datei generierst, wenn du nicht mit der Manipulation von PHP-Dateien vertraut bist.

1

Schauen Sie sich die Funktion export_wp an.

Machen Sie ein Duplikat davon und behalten Sie nur das, was Sie exportieren möchten. Führen Sie diese Funktion dann jedes Mal aus, wenn ein Beitrag gespeichert wird: add_action('save_post', 'my_export_wp');

(Stellen Sie sicher, dass die Funktion ihre Ausgabe an eine XML-Datei sendet.)

1
onetrickpony