superSin título
¡Hola! Estoy buscando una manera de enumerar todos los archivos de imagen en la biblioteca de medios de una publicación.
Lo que quiero decir con esto es si un archivo se cargó mientras se creaba o editaba una publicación, es el archivo asociado con la publicación de alguna manera y puedo crear una lista a partir de estos datos.
Creo que next_image_link() / previous_image_link(); la etiqueta de la plantilla es lo más cercana que he encontrado.
Creo que esto debería estar cerca:
$query = 'SELECT * FROM `wp_posts`
WHERE `post_parent` = \''.$_GET['post_id'].'\'
AND `post_mime_type` = \'image/jpeg\'
ORDER BY `menu_order` ASC';
Gracias.
ariefbayu
En la terminología de wordpress, cada imagen que subiste a una publicación en particular se llama archivo adjunto. Para enumerar todos los archivos adjuntos, puede usar obtener_niños() función:
$images =& get_children( 'post_type=attachment&post_mime_type=image&post_parent=10' );
$counter=0;
foreach( (array) $images as $attachment_id => $attachment )
{
$counter++;
echo "<a href="".wp_get_attachment_link( $attachment_id ) . "">image $counter</a><br />";
}
El algoritmo es algo así.
Si está buscando un complemento para administrar la galería de imágenes, puede usar attachments
enchufar,
http://wordpress.org/plugins/archivos adjuntos/
Mantiene la galería separada y no coloca los códigos abreviados de la galería de imágenes en el contenido de la publicación, lo que le brinda control total sobre la visualización de imágenes en su publicación / página / publicación personalizada. También puede cambiar el orden de sus imágenes simplemente arrastrando y soltando
aquí hay un código de muestra de cómo recuperar las imágenes de su galería,
<?php $attachments = new Attachments( 'attachments' ); /* pass the instance name */ ?>
<?php if( $attachments->exist() ) : ?>
<h3>Attachments</h3>
<p>Total Attachments: <?php echo $attachments->total(); ?></p>
<ul>
<?php while( $attachments->get() ) : ?>
<li>
ID: <?php echo $attachments->id(); ?><br />
Type: <?php echo $attachments->type(); ?><br />
Subtype: <?php echo $attachments->subtype(); ?><br />
URL: <?php echo $attachments->url(); ?><br />
Image: <?php echo $attachments->image( 'thumbnail' ); ?><br />
Source: <?php echo $attachments->src( 'full' ); ?><br />
Size: <?php echo $attachments->filesize(); ?><br />
Title Field: <?php echo $attachments->field( 'title' ); ?><br />
Caption Field: <?php echo $attachments->field( 'caption' ); ?>
</li>
<?php endwhile; ?>
</ul>
<?php endif; ?>
NUNCA HAGAS ESTO – se está configurando para que su base de datos y/o aplicación se vea comprometida a través de inyecciones SQL. Cada vez que crea una cadena de consulta de base de datos directamente a partir de los datos que obtiene del cliente, lo estas haciendo mal. Utilice siempre consultas parametrizadas.
– BryanH
10 de julio de 2012 a las 19:26