Werk alle WordPress-berichten bij

Ik moet al mijn berichten bijwerken. Ik gebruik bulkupload voor winkel, maar in webpagina-berichten/producten wordt niet weergegeven, wanneer ik op update raak, worden berichten/producten weergegeven.

Ik denk dat de standaard update-functie wordpress gebruikt:

// Update post 37
  $my_post = array();
  $my_post['ID'] = 37;
  $my_post['post_content'] = 'This is the updated content.';

 //Update the post into the database
  wp_update_post( $my_post );

Maar hoe krijg je in arrays alle berichten id?

4
Ik heb hetzelfde probleem als jij beschrijft. Ik begrijp niet wat het verschil is tussen het doen van een foreach en wp_update_post en het klikken op de updateknop.
toegevoegd de auteur weaveoftheride, de bron

2 antwoord

Alsjeblieft, je loopt gewoon door de berichten met een foreach.

/*
Plugin Name: Example
Description: This is not just a plugin, it's CODE..
Author: 
*/
add_action('init','example_hide');

function example_hide(){

    $my_posts = get_posts( array('post_type' => 'post', 'numberposts' => 10 ) );

    foreach ( $my_posts as $my_post ):

    $my_post['post_content'] = 'This is the updated content.';

    wp_update_post( $my_post );

    endforeach;
}
10
toegevoegd
dit leek niet te werken voor mij, maar ik zal het proberen op de init hook als je laat zien zoals op dit moment, ik doe het in een admin menu pagina callback.
toegevoegd de auteur weaveoftheride, de bron
Ik heb dit gebruikt om al mijn CPT's opnieuw in te stellen (wat nodig was om een ​​kaart te bouwen op basis van gegevens in een aangepaste tabel) - ik gebruikte dit en het werkte perfect, maar ik verwijderde de $ mijn_post ['post_content'] dus geen postinformatie zou worden bijgewerkt. Dit werkte voor mij. Zorg ervoor dat u een pagina vernieuwt om deze te laten werken.
toegevoegd de auteur rockmandew, de bron
Bedankt rockmandew, als een notitie gooi ik dit soort code meestal in een plug-in. Dat is waar de header voor is. Activeren, wachten, deactiveren, en je bent klaar ~! Met deze methode wordt de code 'een keer' uit de sjablonen of het thema verwijderd.
toegevoegd de auteur DigitalDesignDj, de bron

U zou de WordPress ' get_posts functie moeten kunnen gebruiken. Proberen:

$all_posts = get_posts('numberposts=');
1
toegevoegd