{"id":2332,"date":"2023-07-03T10:00:00","date_gmt":"2023-07-03T15:00:00","guid":{"rendered":"http:\/\/racmanuel.dev\/?p=2332"},"modified":"2023-06-28T17:42:59","modified_gmt":"2023-06-28T22:42:59","slug":"agregar-vinculos-personalizados-a-las-acciones-de-fila-de-un-custom-post-type-en-wordpress","status":"publish","type":"post","link":"https:\/\/racmanuel.dev\/en\/agregar-vinculos-personalizados-a-las-acciones-de-fila-de-un-custom-post-type-en-wordpress\/","title":{"rendered":"Adding Custom Links to Row Actions of a Custom Post Type in WordPress"},"content":{"rendered":"\n<figure class=\"wp-block-image size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1880\" height=\"1255\" src=\"http:\/\/racmanuel.dev\/wp-content\/uploads\/pexels-photo-89724.jpeg\" alt=\"imac turend on\" class=\"wp-image-2335\" title=\"\" srcset=\"https:\/\/racmanuel.dev\/wp-content\/uploads\/pexels-photo-89724.jpeg 1880w, https:\/\/racmanuel.dev\/wp-content\/uploads\/pexels-photo-89724-600x401.jpeg 600w\" sizes=\"(max-width: 1880px) 100vw, 1880px\" \/><figcaption class=\"wp-element-caption\">Photo by Lee Campbell on <a href=\"https:\/\/www.pexels.com\/photo\/imac-turend-on-89724\/\" rel=\"nofollow noopener\" target=\"_blank\">Pexels.com<\/a><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"introduccion\">Introducci\u00f3n:<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Una de las caracter\u00edsticas \u00fatiles de WordPress es la capacidad de crear &#8216;Custom Post Types&#8217; (Tipos de publicaciones personalizadas), que permiten a los desarrolladores estructurar y organizar contenido de manera m\u00e1s efectiva. Una vez que hayas creado un Custom Post Type, podr\u00edas querer a\u00f1adir acciones de fila personalizadas para realizar tareas espec\u00edficas. En este art\u00edculo, te mostrare c\u00f3mo puedes agregar v\u00ednculos personalizados a las acciones de fila de un Custom Post Type en WordPress.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"resultado-final\">Resultado final:<\/h2>\n\n\n\n<figure class=\"wp-block-jetpack-image-compare\"><div class=\"juxtapose\" data-mode=\"horizontal\"><img decoding=\"async\" id=\"2337\" src=\"https:\/\/i0.wp.com\/racmanuel.dev\/wp-content\/uploads\/Agregar-Vinculos-Personalizados-a-las-Acciones-de-Fila-de-un-Custom-Post-Type-en-WordPress-2.png?ssl=1\" alt=\"\" width=\"683\" height=\"343\" class=\"image-compare__image-before\" title=\"\"><img decoding=\"async\" id=\"2339\" src=\"http:\/\/racmanuel.dev\/wp-content\/uploads\/Agregar-Vinculos-Personalizados-a-las-Acciones-de-Fila-de-un-Custom-Post-Type-en-WordPress-1.png\" alt=\"\" width=\"685\" height=\"349\" class=\"image-compare__image-after\" title=\"\"><\/div><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"agregar-la-funcion-de-accion\">Agregar la funci\u00f3n de acci\u00f3n:<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>El primer paso es agregar una funci\u00f3n de acci\u00f3n para modificar las acciones de fila de tu Custom Post Type. Este c\u00f3digo se agregar\u00e1 en tu archivo functions.php de tu tema o en tu plugin personalizado:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php line-numbers\">add_filter( 'post_row_actions', 'wpdocs_custom_row_actions', 10, 2 );\r\nfunction wpdocs_custom_row_actions( $actions, $post ) {\r\n    \/\/ Comprueba si el post es de tu Custom Post Type\r\n    if ( $post->post_type != 'el_nombre_de_tu_custom_post_type' ) {\r\n        return $actions;\r\n    }\r\n\r\n    \/\/ A\u00f1ade tu v\u00ednculo personalizado\r\n    $actions['custom_link'] = '&lt;a href=\"' . esc_url( 'http:\/\/tulink.com' ) . '\">' . __( 'El Nombre de tu Link', 'textdomain' ) . '&lt;\/a>';\r\n\r\n    return $actions;\r\n}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">En este c\u00f3digo, reemplaza &#8216;el_nombre_de_tu_custom_post_type&#8217; con el nombre de tu Custom Post Type. Cambia &#8216;<a href=\"http:\/\/yourcustomlink.com\/\" rel=\"nofollow noopener\" target=\"_blank\">http:\/\/tulink.com<\/a>&#8216; por la URL que deseas vincular, y cambia &#8216;El Nombre de tu Link&#8217; por el texto que quieres mostrar para el enlace.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A\u00f1adir par\u00e1metros din\u00e1micos:<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>Si deseas hacer que el enlace sea din\u00e1mico y dependa de datos espec\u00edficos de la publicaci\u00f3n, puedes acceder a la informaci\u00f3n del post a trav\u00e9s del objeto <code>$post<\/code>. Aqu\u00ed hay un ejemplo de c\u00f3mo hacerlo:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php\">$actions['custom_link'] = '&lt;a href=\"' . esc_url( admin_url( 'admin.php?page=your_custom_page&amp;post=' . $post->ID ) ) . '\">' . __( 'Your Link Label', 'textdomain' ) . '&lt;\/a>';\r<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Este c\u00f3digo agregar\u00e1 el ID del post actual como un par\u00e1metro de la URL.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"conclusion\">Conclusi\u00f3n:<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Al agregar v\u00ednculos personalizados a las acciones de fila de un Custom Post Type, puedes mejorar la experiencia del usuario y facilitar la administraci\u00f3n de tu contenido en WordPress. Recuerda siempre probar los cambios en un entorno de desarrollo antes de aplicarlos a tu sitio en vivo para asegurarte de que todo funcione correctamente.<\/p>\n\n\n<style><\/style><style><\/style>\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h4 class=\"wp-block-heading has-large-font-size\" id=\"necesitas-ayuda-con-un-proyecto-web\">\u00bfNecesitas ayuda con un proyecto web?<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Si \u00bfNecesitas ayuda con alg\u00fan proyecto web? No dudes en contactarme desarrollo soluciones completas y personalizadas con WordPress y PHP, con herramientas y procesos modernos, utilizando HTML, CSS, SCSS, PHP, JavaScript, Bootstrap y m\u00e1s\u2026 Si \u00bfEst\u00e1s listo? \u00a1Env\u00edame un mensaje y hablemos de tu proyecto web!<\/p>\n\n\n<div class=\"wp-block-groundhogg-forms\">\n\t<div class=\"gh-form-wrapper\"><form method=\"post\" class=\"gh-form gh-form-v2\" target=\"_parent\" enctype=\"multipart\/form-data\" name=\"Formulario de Contacto\" id=\"gh-form-24\" data-id=\"24\"><div class=\"gh-form-fields\"><div class=\"gh-form-column col-1-of-2\"><label for=\"first_name\">Nombre <span class=\"required\">*<\/span><\/label><div class=\"gh-form-input-field\"><input type=\"text\" name=\"first_name\" id=\"first_name\" class=\"gh-input gh-first-name\" value=\"\" required\/><\/div><\/div><div class=\"gh-form-column col-1-of-2\"><label for=\"last_name\">Apellido(s) <span class=\"required\">*<\/span><\/label><div class=\"gh-form-input-field\"><input type=\"text\" name=\"last_name\" id=\"last_name\" class=\"gh-input gh-last-name\" value=\"\" required\/><\/div><\/div><div class=\"gh-form-column col-1-of-1\"><label for=\"email\">Correo electr\u00f3nico <span class=\"required\">*<\/span><\/label><div class=\"gh-form-input-field\"><input type=\"email\" name=\"email\" id=\"email\" class=\"gh-input gh-email\" value=\"\" required\/><\/div><\/div><div class=\"gh-form-column col-1-of-1\"><label for=\"primary_phone\">Tel\u00e9fono o WhatsApp <span class=\"required\">*<\/span><\/label><div class=\"gh-form-input-field\"><input type=\"tel\" name=\"primary_phone\" id=\"primary_phone\" class=\"gh-input\" value=\"\" required\/><\/div><\/div><div class=\"gh-form-column col-1-of-1\"><label for=\"nombre_de_tu_negocio_o_empresa\">Nombre de tu Negocio o Empresa<\/label><div class=\"gh-form-input-field\"><input type=\"text\" name=\"nombre_de_tu_negocio_o_empresa\" id=\"nombre_de_tu_negocio_o_empresa\" class=\"gh-input\" value=\"\"\/><\/div><\/div><div class=\"gh-form-column col-1-of-1\"><label for=\"link_de_tu_pagina_web\">Link de tu pagina web<\/label><div class=\"gh-form-input-field\"><input type=\"url\" name=\"link_de_tu_pagina_web\" id=\"link_de_tu_pagina_web\" class=\"gh-input\" value=\"\" placeholder=\"Si tu negocio o empresa tiene p\u00e1gina web ingresa aqu\u00ed el link.\"\/><\/div><\/div><div class=\"gh-form-column col-1-of-1\"><label for=\"question_type\">\u00bfQu\u00e9 tipo de pregunta tienes? <span class=\"required\">*<\/span><\/label><div class=\"gh-form-input-field\"><select name=\"question_type\" id=\"question_type\" class=\"gh-input\" required><option value=\"Cotizaci\u00f3n\">Cotizaci\u00f3n<\/option><option value=\"General\">General<\/option><option value=\"Soporte\">Soporte<\/option><\/select><\/div><\/div><div class=\"gh-form-column col-1-of-1\"><label for=\"message\">Pregunta <span class=\"required\">*<\/span><\/label><div class=\"gh-form-input-field\"><textarea name=\"message\" id=\"message\" class=\"gh-input\" rows=\"7\" placeholder=\"Tu pregunta o duda...\" type=\"text\" required><\/textarea><\/div><\/div><div class=\"gh-form-column col-1-of-1\"><div class=\"consent gh-gdpr\" id=\"gdpr_consent\"><div ><label class=\"gh-checkbox-label\"><input type=\"checkbox\" name=\"data_processing_consent\" id=\"data-processing-consent\" class=\"\" value=\"yes\" required\/><span class=\"checkbox-label\">I agree to racmanuel.dev&#8217;s storage and processing of my personal data. <span class=\"required\">*<\/span><\/span><\/label><\/div><div ><label class=\"gh-checkbox-label\"><input type=\"checkbox\" name=\"marketing_consent\" id=\"marketing-consent\" class=\"\" value=\"yes\"\/><span class=\"checkbox-label\">I agree to receive marketing offers and updates from racmanuel.dev.<\/span><\/label><\/div><\/div><\/div><div class=\"gh-form-column col-1-of-3\"><button type=\"submit\" class=\"gh-submit gh-button primary\" value=\"\">\u00a1P\u00f3ngase en contacto!<\/button><\/div><\/div><\/form><\/div><\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Una de las caracter\u00edsticas \u00fatiles de WordPress es la capacidad de crear &#8216;Custom Post Types&#8217; (Tipos de publicaciones personalizadas), que permiten a los desarrolladores estructurar y organizar contenido de manera m\u00e1s efectiva. Una vez que hayas creado un Custom Post Type, podr\u00edas querer a\u00f1adir acciones de fila personalizadas para realizar tareas espec\u00edficas. En este art\u00edculo, te mostraremos c\u00f3mo puedes agregar v\u00ednculos personalizados a las acciones de fila de un Custom Post Type en WordPress.<\/p>","protected":false},"author":1,"featured_media":2335,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_gspb_post_css":"","_glsr_average":0,"_glsr_ranking":0,"_glsr_reviews":0,"footnotes":""},"categories":[11],"tags":[42],"niveles":[38],"class_list":["post-2332","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-sin-categorizar","tag-wordpress","niveles-intermedio"],"blocksy_meta":[],"acf":[],"_links":{"self":[{"href":"https:\/\/racmanuel.dev\/en\/wp-json\/wp\/v2\/posts\/2332","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/racmanuel.dev\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/racmanuel.dev\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/racmanuel.dev\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/racmanuel.dev\/en\/wp-json\/wp\/v2\/comments?post=2332"}],"version-history":[{"count":5,"href":"https:\/\/racmanuel.dev\/en\/wp-json\/wp\/v2\/posts\/2332\/revisions"}],"predecessor-version":[{"id":2341,"href":"https:\/\/racmanuel.dev\/en\/wp-json\/wp\/v2\/posts\/2332\/revisions\/2341"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/racmanuel.dev\/en\/wp-json\/wp\/v2\/media\/2335"}],"wp:attachment":[{"href":"https:\/\/racmanuel.dev\/en\/wp-json\/wp\/v2\/media?parent=2332"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/racmanuel.dev\/en\/wp-json\/wp\/v2\/categories?post=2332"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/racmanuel.dev\/en\/wp-json\/wp\/v2\/tags?post=2332"},{"taxonomy":"niveles","embeddable":true,"href":"https:\/\/racmanuel.dev\/en\/wp-json\/wp\/v2\/niveles?post=2332"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}