web-dev-qa-db-fra.com

ACF - for the videos

J'essaie d'ajouter des vignettes à mes vidéos à l'aide d'un champ ACF. Par conséquent, je recherche des PHP qui ajoutent/mettent à jour l’image sélectionnée sur les vidéos (sur l’écran Détails de la pièce jointe). J'ai testé ce code sur le forum d'ACF mais cela ne semble pas fonctionner

// Set the first sock image uploaded as the featured image
function acf_set_featured_image( $value, $post_id, $field  ){

if($value != ''){
  delete_post_thumbnail( $post_id);
  //Add the value which is the image ID to the _thumbnail_id meta data for the current post
  add_post_meta($post_id, '_thumbnail_id', $value);
}

return $value;
}

// acf/update_value/name={$field_name} - filter for a specific field based on it's name
add_filter('acf/update_value/name=video_thumbnail', 'acf_set_featured_image', 10, 3);

//field name: video_thumbnail

Mise à jour: Je suis tellement idiot ... - J'ai modifié le mauvais function.php, le code ci-dessus convient donc. : |

Remarque: j'ai ajouté cette ligne pour éditer des images existantes.

delete_post_thumbnail( $post_id);
1
Game Unity

Ce code se produira lorsque vous mettrez à jour la clé name.

File: wp-content/plugins/advanced-custom-fields/core/fields/_functions.php
193:        foreach( array('key', 'name', 'type') as $key )
194:        {
195:            // run filters
196:            $value = apply_filters('acf/update_value/' . $key . '=' . $field[ $key ], $value, $post_id, $field); // new filter
197:        }

Essayez de: imprimer $ valeur, $ post_id, champ $ pour comprendre ce que vous avez ... Vous avez probablement une mauvaise étiquette ...

function acf_set_featured_image( $value, $post_id, $field  ){
// print $value, $post_id, $field to understand what you have...
print_r(...);

wp_die();

if($value != ''){
    //Add the value which is the image ID to the _thumbnail_id meta data for the current post
    add_post_meta($post_id, '_thumbnail_id', $value);
}

return $value;
}

// acf/update_value/name={$field_name} - filter for a specific field based on it's name
add_filter('acf/update_value/name=video_thumbnail', 'acf_set_featured_image', 10, 3);
0
prosti