Obtener imágenes de una publicación y crear un ZIP

3 feb 2011, 00:08:23
Vistas: 1.35K
Votos: 4

Esto es lo que tengo hasta ahora.


  function zip_gallery()
  {
      global $post;
      $images = get_children(array('post_parent' => get_the_ID(), 'post_type' => 'attachment', 'numberposts' => -1, 'post_status' => null, 'post_mime_type' => 'image', ));

      if ($images) {
          $save = $post->post_title;

          $zip = new ZipArchive;
          if ($zip->open($save . '.zip', ZIPARCHIVE::CREATE) === true) {
              foreach ($images as $image) {
                  $file = wp_get_attachment_url($image->ID, 'full', false, false);
                  $filename = pathinfo($file);
                  $zip->addFile($file, $filename);
              }

              $zip->close();
          }
      }
  }

¿Alguien puede explicarme qué estoy haciendo mal?

1
Comentarios

¿Lograste hacer esto?

user3047 user3047
20 sept 2011 00:43:45
Todas las respuestas a la pregunta 1
4

El método ZipArchive->addFile() espera la ruta local del archivo, mientras que wp_get_attachment_url() devuelve una URL. Necesitas construir la ruta local del archivo a partir de la URL o de otra manera.

3 feb 2011 09:09:21
Comentarios

¿Existe algún plugin que haga esto?

user3047 user3047
20 sept 2011 00:55:36

@user3047 no que yo sepa, pero no había buscado...

Rarst Rarst
20 sept 2011 11:10:32

¿Lograste que funcione? ¿De esta manera?

user3047 user3047
20 sept 2011 19:01:10

@user3047 Solo señalé un error obvio en el código en ese momento, no había intentado implementarlo y probarlo.

Rarst Rarst
20 sept 2011 20:59:37