Post Bulk Update

Gibt es eine Möglichkeit, alle Posts gleichzeitig über eine Abfrage oder über das Admin-Panel zu aktualisieren? Für ein Beispiel habe ich 1000 Beiträge, wie man alle Beiträge gleichzeitig aktualisiert.

Vielen Dank.

Solutions Collecting From Web of "Post Bulk Update"

1) Erstellen Sie eine neue Seite und weisen Sie ihr eine neue Seitenvorlage zu, sagen wir site.com/update und update.php. Innerhalb von update.php schreiben Sie den Bulk-Mechanismus:

< ?php // grab all your posts $parts = get_posts(array('post_type' => 'parts', 'numberposts' => -1,)) // loop through every part foreach ( $parts as $part ) { // get part number $partno = get_post_meta( $part->ID, 'parto', true ); $updated_post = array(); $updated_post['ID'] = $part->ID; $updated_post['post_name'] = $partno; wp_update_post( $updated_post ); // update existing posts } ?> 

Du könntest das irgendwo in deinem Theme platzieren, aber ich mag es, eine Seite dafür zu erstellen, damit ich einfach einen Cron-Job damit ausführen kann.

Weiter die function um den Slug jedes neu erstellten Posts zu ändern:

 < ?php function change_default_slug($id) { // get part number $partno = get_post_meta( $id, 'parto', true ); $post_to_update = get_post( $id ); // prevent empty slug, running at every post_type and infinite loop if ( $partno == '' || $post_to_update['post_type'] != 'parts' || $post_to_update['post_name'] == $partno ) return; $updated_post = array(); $updated_post['ID'] = $id; $updated_post['post_name'] = $partno; wp_update_post( $updated_post ); // update newly created post } add_action('save_post', 'change_default_slug'); ?> 

Der obige Code wird jedes Mal ausgeführt, wenn ein Post gespeichert wird (z. B. wenn er zum ersten Mal veröffentlicht wird) und legt einen neuen post_name auf die Teilenummer fest.