2017-03-03 74 views
0

所有的舊圖片我想從我的WordPress網站刪除所有從2012年的圖像,以2015年7月,因爲圖片版權問題的。而且我還希望在刪除圖像後保留所有沒有損壞的圖像鏈接的文章或頁面。如果我手動刪除一張圖像(所有縮略圖版本),則會在文章的前端顯示損壞的圖像鏈接。如何刪除WordPress的

有什麼想法嗎?

+0

我想你知道如何從ftp中刪除媒體。現在對於破碎的圖像鏈接,你應該做一些代碼。在文件PHP誰負責顯示文章的類型(例如:默認,圖像,視頻),您可以測試文件的存在,如果它不存在,您可以默認照片或刪除圖像的div。 – bfahmi

回答

0

進入FTP,在主題中查找上傳文件夾,並相應地命名文件。

uploads/date... 

您可以看到按月份順序加載到WordPress中的所有圖像,然後將其深入到日文件中。

0

的WordPress在上傳一個文件夾結構,你可以創建一個腳本來刪除這些文件夾或文件,像這樣

function recursive_remove_directory($directory, $empty=FALSE) 
{ 
    if(substr($directory,-1) == '/') 
    { 
     $directory = substr($directory,0,-1); 
    } 
    if(!file_exists($directory) || !is_dir($directory)) 
    { 
     return FALSE; 
    }elseif(is_readable($directory)) 
    { 
     $handle = opendir($directory); 
     while (FALSE !== ($item = readdir($handle))) 
     { 
      if($item != '.' && $item != '..') 
      { 
       $path = $directory.'/'.$item; 
       if(is_dir($path)) 
       { 
        recursive_remove_directory($path); 
       }else{ 
        unlink($path); 
       } 
      } 
     } 
     closedir($handle); 
     if($empty == FALSE) 
     { 
      if(!rmdir($directory)) 
      { 
       return FALSE; 
      } 
     } 
    } 
    return TRUE; 
} 

您使用本

recursive_remove_directory (WP_CONTENT_DIR.'/uploads/2012'); 
recursive_remove_directory (WP_CONTENT_DIR.'/uploads/2013'); 
recursive_remove_directory (WP_CONTENT_DIR.'/uploads/2014'); 
recursive_remove_directory (WP_CONTENT_DIR.'/uploads/2015/01'); 
recursive_remove_directory (WP_CONTENT_DIR.'/uploads/2015/02'); 
..... 
recursive_remove_directory (WP_CONTENT_DIR.'/uploads/2015/06'); 

到functions.php添加功能文件,然後佔用WP_Query並獲取2012年至2015年7月的所有帖子,刪除內容中的圖片,如下所示:

$content = get_the_content(); 
$content = preg_replace ("/ <img [^>] + \>/i", "", $ content); 
$content = apply_filters ('the_content', $ content); 
$content = str_replace (']>', ']]>', $ content); 

並佔用wp_update_post更新內容,這將從內容中刪除所有圖像