Удалить изображение вложения после публикации продукта - PullRequest
0 голосов
/ 16 января 2019

Я использую Amazon S3 для хранения изображений своих продуктов. Это означает, что нет необходимости хранить их на моем сервере WordPress при публикации продукта. В плагине Media Cloud, который я использую для автоматической загрузки изображений (и для imgix), есть настройка для удаления изображений сразу после загрузки.

Я должен был отключить это, потому что на изображении и метаданных продукта должны быть выполнены некоторые операции отображения. Однако когда сопоставление и публикация завершены, файл изображения может быть удален.

Я пробовал использовать этот код:

$post_id = get_the_ID();
$post_thumbnail_id = get_post_thumbnail_id( $post_id );
wp_delete_file($post_thumbnail_id);

но это не работает. Получил 500 белый экран. Что делать ...?

1 Ответ

0 голосов
/ 26 января 2019

Я получил это с помощью этого кода:

// Delete the file from WordPress server after processing.
      $filename_only = wp_basename( get_attached_file( $post_thumbnail_id ) );
      $upload_dir = wp_upload_dir();
      $dir = $upload_dir['basedir'] .'/'. date('Y') . '/' . date ('m');
      $file = $dir . '/' . $filename_only;


      if ( ! empty ($file)){
       chdir($dir);
       unlink($filename_only);

      }

Сначала я выбрал имя файла и каталог загрузки.Затем я проверил, существует ли файл в каталоге, и если да, то рабочий каталог изменился на локальный каталог загрузки, и удалил файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...