- Stato
- In attesa dell’autore
- Plugin/tema correlato
- WP Offload Media
- Tag dell’argomento
- Compatibility
Panoramica del problema
Quando usi WP Offload Media insieme a WPML Media Translation, la sostituzione di un’immagine tradotta potrebbe generare un percorso del file S3 errato. Questo problema si verifica quando un’immagine tradotta viene sostituita dopo che la traduzione originale è stata caricata in un mese o anno diverso.
Soluzione alternativa
Assicurati di avere un backup completo del tuo sito prima di procedere.
Opzione 1
Vai alla Libreria Media, usa l’opzione “Remove from Bucket” e sostituiscila manualmente con una nuova immagine.
Opzione 2
In alternativa, puoi provare quanto segue, ma potresti ritrovarti con oggetti orfani nel bucket:
- Apri …/amazon-s3-and-cloudfront-pro/classes/pro/integrations/wpml.php
- Sostituisci:
public function setup() { add_action( 'wpml_media_create_duplicate_attachment', array( $this, 'duplicate_offloaded_item' ), 10, 2 ); } - Con:
public function setup() { add_action( 'wpml_media_create_duplicate_attachment', array( $this, 'duplicate_offloaded_item' ), 10, 2 ); add_action( 'wpml_updated_attached_file', array( $this, 'delete_offloaded_item_on_media_replace' ), 10, 3 ); } public function delete_offloaded_item_on_media_replace( $attachment_id, $file, $language ) { $as3cf_item = Media_Library_Item::get_by_source_id( $attachment_id ); if ( $as3cf_item ) { $as3cf_item->delete(); } }