rebelión
Sé que puedo usar el wp_insert_post()
función en WordPress para agregar publicaciones mediante programación, pero quiero agregar publicaciones con una miniatura y, para el caso, también cambiar el tamaño/recortar la foto de la publicación a los tamaños correctos de WordPress.
¿Es todo esto posible mediante programación, o necesito hacer algo de trabajo manualmente (es decir, cambiar el tamaño/recortar)?
juan k
Verificar wp_insert_attachment()
que se encuentra en wp-includes/post.php (artículo del códice).
Entonces creas tu publicación primero usando wp_insert_post()
luego adjunte el archivo, algo así (modificado el Codex):
<?php
$post_id = wp_insert_post( $my_post_data );
$attach_id = wp_insert_attachment( $attachment, $filename, $post_id );
$attach_data = wp_generate_attachment_metadata( $attach_id, $filename );
wp_update_attachment_metadata( $attach_id, $attach_data );
set_post_thumbnail( $post_id, $attach_id );
?>
Con respecto al cambio de tamaño/recorte de imágenes, si accede a la configuración de medios (yoursite.com/wp-admin/options-media.php), puede definir tamaños personalizados para sus imágenes. Probablemente no sea tan robusto como está buscando, pero si integra la salida con algo como el Guión de TimThumbes posible que se acerque a lo que está buscando.
Para ver todas las variables que tiene la función, lee la información comentada en post.php.
Después de insertar la publicación y el archivo adjunto usando las funciones wp_insert_post y wp_insert_attachment de wordpress, puede agregar la miniatura a la publicación usando _thumbnail_id con la identificación del archivo adjunto, siempre que su tema admita miniaturas de publicación.
// $post_id = wp_insert_post(...)
// $attach_id = wp_insert_attachment(...)
add_post_meta($post_id, '_thumbnail_id', $attach_id, true);
De esta manera, podrá usar las funciones predeterminadas de wordpress para cambiar el tamaño de las miniaturas y demás.