// WordPress başlatılıyor
require_once('wp-load.php');
// Tüm yayındaki yazıları al
$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => -1,
);
$query = new WP_Query($args);
// Her yazı için döngü
while ($query->have_posts()) : $query->the_post();
// Yazının içeriğini al
$post_content = get_the_content();
// A etiketini içeren bağlantıları kaldır
$cleaned_content = preg_replace('/<a(.*?)>(.*?)<\/a>/', '$2', $post_content);
// Eski içeriği güncelle
if ($cleaned_content !== $post_content) {
$post_id = get_the_ID();
wp_update_post(array('ID' => $post_id, 'post_content' => $cleaned_content));
echo 'Yazı güncellendi: ' . get_the_title() . '<br>';
}
endwhile;
// Geri yükleme işlemini sıfırla
wp_reset_query();Yukarıdaki kodu wordpress'in kurulu olduğu ana dizinde bir php dosyası oluşturup içine koyun ve tarayıcıdan çalıştırın. Veritabanı yedeğinizi almayı unutmayın. post_type alanını draft yaparsanız taslaklar için de kullanabilirsiniz.
Ben de tam kod yazacaktım ama sizinki isteği yerine getirir, elinize sağlık. Fakat kullanacak arkadaşa bilgilendirme "post_status" kısmını değiştirmesi gerekebilir çünkü konuda yazıların taslak olduğunu belirtmiş. Burada "publish" postlar için işlem yapıyor.