Ersetzen Sie Bild-URLs (absolut statt relativ), indem Sie den Filter auf einer einzelnen Seite verwenden

Ich benutze ein Plugin namens Foliopress WYSIWYG . Bei Verwendung dieses Plug-Ins werden Bilder in der _content-Schleife mit einem relativen Bildpfad anstelle von absoluten Pfaden gefunden. Alle Feed-Bilder sind also kaputt.

Dieses Plugin speichert Bilder im http://mysite.com/images Ordner statt im Ordner wp-content/uploads . Also würde ich gerne Filter verwenden, um den relativen Pfad zu ersetzen.

Ich meine, wenn eine img src-Datei wie /images/2010/03/example.jpg aussieht, sollte sie gefiltert und durch http://mysite.com/images/2010/03/example.jpg

Kann mir jemand das Schnipsel geben? Vielen Dank

Solutions Collecting From Web of "Ersetzen Sie Bild-URLs (absolut statt relativ), indem Sie den Filter auf einer einzelnen Seite verwenden"

Etwas wie dies sollte es tun, müssen Sie möglicherweise mit der preg_replace() , um es so zu arbeiten, wie Sie brauchen, aber das Konzept (und, was noch wichtiger ist, imo, die Regex, ist da).

 if( is_single() ) { add_filter( 'the_content', 'wpse44503_filter_content' ); } function wpse44503_filter_content( $content ) { $regex = '#src=("|\')'. '(/images/(19|20)(0-9){2}/(0|1)(0-9)/[^.]+\.(jpg|png|gif|bmp|jpeg))'. '("|\')#'; $replace = 'src="'.get_site_url( $2 ).'"'; $output = preg_replace( $regex, $replace, $content ); return $output; } 

Das ist ungeprüft, und ich habe es direkt in die Lösungsbox geschrieben, also stellen Sie sicher, dass Sie gründlich debuggen und so.