Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

New Sniff: wp_get_post_revisions memory issues

Ouverte
#468 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
38/100
Type d'issue
Fonctionnalité
Clarté
Clairement spécifiée
Activité
À l'abandon
Stack technique
php
Domaine
performance, tooling

Piste de recherche

Commencez par les exemples wp_get_post_revisions en infraction et autorisés de l'issue, ainsi que par le ticket WordPress Trac lié. C'est terminé lorsque les appels sans argument fields sont signalés, tandis que les appels demandant ids ou une autre valeur de fields ne le sont pas.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Standard: VIP-Go Type: Enhancement

What problem would the enhancement address for VIP?

wp_get_post_revisions can be problematic because it loads the entire post object for each revision. I've seen this in CLI commands and other places, where you might be looping through a set of posts, and then suddenly have to load the entire post objects for every revision a post has. If those revisions are large and numerous - it quickly fails.

Related trac: https://core.trac.wordpress.org/ticket/34560

Describe the solution you'd like

We should suggest they only get the IDs for the revisions instead of the whole object:

wp_get_post_revisions( $post->ID, array( 'fields' => 'ids' ) );

What code should be reported as a violation?

Anything that doesn't have the fields argument, like:

 wp_get_post_revisions( $post->ID );

What code should not be reported as a violation?

Getting the ids field or other fields instead of the whole object.

wp_get_post_revisions( $post->ID, array( 'fields' => 'ids' ) );
Langage dominant
PHP
Étoiles
261
Forks
44
Merge moyen
3 j 17 h
PR mergées (30 j)
9

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de Automattic/VIP-Coding-Standards

Toutes les issues de Automattic/VIP-Coding-Standards

Issues similaires

Plus d'issues PHP

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.