{"id":28647,"date":"2021-05-29T18:11:00","date_gmt":"2021-05-29T15:11:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=28647"},"modified":"2021-10-17T16:36:20","modified_gmt":"2021-10-17T13:36:20","slug":"como-configurar-una-imagen-destacada-mediante-programacion-en-wordpress","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/es\/como-configurar-una-imagen-destacada-mediante-programacion-en-wordpress\/","title":{"rendered":"C\u00f3mo configurar una imagen destacada mediante programaci\u00f3n en WordPress"},"content":{"rendered":"<p>\u00bfEst\u00e1 buscando establecer una imagen destacada usando el c\u00f3digo en WordPress? A veces, se encontr\u00f3 con una tarea en la que necesita escribir un fragmento de c\u00f3digo que deber\u00eda establecer la miniatura de la publicaci\u00f3n para una publicaci\u00f3n, p\u00e1gina o tipos de publicaciones personalizados. En este art\u00edculo, estudiamos c\u00f3mo configurar la imagen destacada mediante programaci\u00f3n en WordPress.<\/p>\n<p>WordPress proporciona muchas funciones \u00fatiles para sitios web. Uno de ellos es Imagen destacada, tambi\u00e9n conocida como Miniatura de publicaci\u00f3n. La imagen destacada es una imagen representativa de la publicaci\u00f3n, la p\u00e1gina o el tipo de publicaci\u00f3n personalizada.<\/p>\n<h3>Forma habitual de configurar la miniatura de la publicaci\u00f3n<\/h3>\n<p>Podemos subir im\u00e1genes destacadas a publicaciones o p\u00e1ginas espec\u00edficas haciendo clic en el enlace &#8216;Establecer imagen destacada&#8217;. Se abrir\u00e1 un cargador de medios de WordPress donde puede elegir una imagen existente o cargar la nueva imagen.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20420-6081eee231f82.png\" data-rel=\"lightbox\" ><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20420-6081eee231f82.png\" alt=\"C\u00f3mo configurar una imagen destacada mediante programaci\u00f3n en WordPress\" ><\/a><\/p>\n<p>Es una forma sencilla de configurar la miniatura de una publicaci\u00f3n en WordPress. Debes seguir los mismos pasos para las p\u00e1ginas y los tipos de publicaciones.<\/p>\n<p>Pero como se mencion\u00f3 al principio, el prop\u00f3sito de este art\u00edculo es escribir un c\u00f3digo que establezca la miniatura de la publicaci\u00f3n sin seguir los pasos anteriores.<\/p>\n<h3>Establecer imagen destacada mediante programaci\u00f3n<\/h3>\n<p>Para este tutorial, estoy creando un formulario donde un usuario puede seleccionar una imagen y esta imagen se establecer\u00e1 como miniatura de la publicaci\u00f3n en la identificaci\u00f3n de la publicaci\u00f3n especificada. Coloque el siguiente c\u00f3digo en su archivo de plantilla.<\/p>\n<pre><code>&lt;form method=\"post\" enctype=\"multipart\/form-data\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;div class=\"form-group\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;label&gt;&lt;?php _e('Select Image:', 'Your text domain here');?&gt;&lt;\/label&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"file\" name=\"image\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;div class=\"form-group\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"submit\" name=\"upload_file\" value=\"Submit\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n&lt;\/form&gt;<\/code><\/pre>\n<p>Este c\u00f3digo mostrar\u00e1 el formulario con la entrada del archivo y el bot\u00f3n de enviar.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20420-6081eee2ac3dd.png\" data-rel=\"lightbox\" ><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20420-6081eee2ac3dd.png\" alt=\"C\u00f3mo configurar una imagen destacada mediante programaci\u00f3n en WordPress\" ><\/a><\/p>\n<p>Ahora, al hacer clic en el bot\u00f3n enviar, necesitamos establecer una imagen destacada. As\u00ed que escribe el c\u00f3digo a continuaci\u00f3n en el <code>functions.php<\/code>archivo de temas activos .<\/p>\n<pre><code>function fn_set_featured_image() {\n\u00a0\u00a0\u00a0\u00a0if (isset($_POST['upload_file'])) {\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$upload = wp_upload_bits($_FILES[\"image\"][\"name\"], null, file_get_contents($_FILES[\"image\"][\"tmp_name\"]));\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0if (! $upload_file['error']) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$post_id = YOUR_POST_ID_HERE; \/\/set post id to which you need to set featured image\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$filename = $upload['file'];\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$wp_filetype = wp_check_filetype($filename, null);\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$attachment = array(\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'post_mime_type' =&gt; $wp_filetype['type'],\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'post_title' =&gt; sanitize_file_name($filename),\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'post_content' =&gt; '',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'post_status' =&gt; 'inherit'\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$attachment_id = wp_insert_attachment( $attachment, $filename, $post_id );\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0if (! is_wp_error( $attachment_id)) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0require_once(ABSPATH. 'wp-admin\/includes\/image.php');\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$attachment_data = wp_generate_attachment_metadata( $attachment_id, $filename );\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0wp_update_attachment_metadata( $attachment_id, $attachment_data );\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0set_post_thumbnail( $post_id, $attachment_id );\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0}\n}\nadd_action('init', 'fn_set_featured_image');<\/code><\/pre>\n<p>Aqu\u00ed, estoy usando el m\u00e9todo <a href=\"https:\/\/codex.wordpress.org\/Function_Reference\/wp_upload_bits\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">wp_upload_bits()<\/a> que carga la imagen y devuelve la ruta absoluta y relativa. Tenemos que tomar una ruta absoluta generada y pasa a la siguiente m\u00e9todos como <code>wp_check_filetype()<\/code>, <code>wp_insert_attachment()<\/code>, y <code>wp_generate_attachment_metadata()<\/code>para el procesamiento adicional.<\/p>\n<p>Despu\u00e9s de esto, si va a la pantalla de edici\u00f3n de una publicaci\u00f3n espec\u00edfica, ver\u00e1 la miniatura de la publicaci\u00f3n en la secci\u00f3n Imagen destacada. Significa que configuramos con \u00e9xito la imagen destacada mediante programaci\u00f3n.<\/p>\n<h4>Art\u00edculos relacionados<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/es\/cargar-imagen-usando-la-biblioteca-bulletproof-en-php\/\" title=\"Cargar imagen usando la biblioteca a prueba de balas en PHP\">Cargar imagen usando la biblioteca a prueba de balas en PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/es\/como-registrar-tamanos-de-imagen-personalizados-y-cambiar-el-tamano-de-imagenes-existentes-en-wordpress\/\" title=\"C\u00f3mo registrar tama\u00f1os de imagen personalizados y cambiar el tama\u00f1o de im\u00e1genes existentes en WordPress\">C\u00f3mo registrar tama\u00f1os de imagen personalizados y cambiar el tama\u00f1o de im\u00e1genes existentes en WordPress<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/es\/como-cargar-y-comprimir-imagenes-en-laravel\/\" title=\"Una gu\u00eda para cargar y comprimir im\u00e1genes en Laravel\">Una gu\u00eda para cargar y comprimir im\u00e1genes en Laravel<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fuente de grabaci\u00f3n:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>En este tutorial, encontrar\u00e1 un script que configura las im\u00e1genes destacadas mediante programaci\u00f3n en WordPress. Puede configurar la imagen destacada para publicar, p\u00e1gina, publicaci\u00f3n personalizada.<\/p>\n","protected":false},"author":1,"featured_media":21673,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[410,606],"tags":[849],"class_list":["post-28647","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-diverso","category-uncategorized-2","tag-affiai-es"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/posts\/28647","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/comments?post=28647"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/posts\/28647\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/media\/21673"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/media?parent=28647"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/categories?post=28647"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/tags?post=28647"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}