✅ Noticias, temas, complementos de WEB y WordPress. Aquí compartimos consejos y las mejores soluciones para sitios web.

Agregar enlaces personalizados de complementos de WordPress

23

Si alguna vez creó un complemento personalizado para usted o para otra persona, es probable que haya hecho algo con los enlaces del complemento de WordPress, incluso si solo proporciona información del autor, una URL a la página de inicio del complemento.

Y sabes de lo que hablo: Estos son los enlaces que aparecen debajo del nombre del plugin.

De acuerdo con la referencia del código, esta información es:

Los metadatos del complemento, incluida la versión, el autor, el URI del autor y el URI del complemento.

De vez en cuando, sin embargo, es posible que desee agregar o modificar los enlaces. Es decir, puede agregar sus propios enlaces personalizados para que aparezcan en la lista a continuación.

Enlaces de complementos de WordPress

En el núcleo, los enlaces de los complementos de WordPress se denominan metafila del complemento (o quizás la fila de metadatos del complemento sería más apropiada).

De todos modos, es una variedad de información que se ensambla en el front-end cada vez que WordPress quiere mostrar algo. Puede agregar información personalizada rápidamente haciendo algo como esto :

<?php

add_action('plugin_row_meta', __NAMESPACE__. 'addCustomPluginLinks');
/**
 * @param array $metaData the array of metadata that appears in the row of plugin information
 *
 * @return array $metaData the modified array that includes the custom anchor
 */
function addCustomPluginLinks(array $metaData): array
{
  $metaData[] = '<a href="https://google.com">Example Link</a>';
  return $metaData;
}

Pero esto deja un par de cosas que desear. A saber:

  • no hay seguridad en torno al marcado (y tal vez podrías argumentar que no es necesario que lo haya si eres el que está a cargo),
  • no hay accesibilidad alrededor del ancla,

Para mitigar esto, el código se puede actualizar a esto :

<?php

add_action('plugin_row_meta', __NAMESPACE__. 'addCustomPluginLinks');
/**
 * @param array $metaData the array of metadata that appears in the row of plugin information
 *
 * @return array $metaData the modified array that includes the custom anchor
 */
function addCustomPluginLinks(array $metaData): array
{
  // Safely build the markup for the new anchor.
  $html = wp_kses(
      '<a href="https://google.com" target="_blank" data-title="Example Link" aria-label="Example Link">Example Link</a>',
      [
          'a' => [
              'href' => [],
              'target' => [],
              'aria-label' => [],
              'data-title' => [],
          ],
      ]
  );

  // Insert the markup at the end of the array.
  $metaData[] = $html;  

  return $metaData;
}

Y si realmente quieres ser creativo, puedes usar el método array_splice de PHP para colocar el HTML donde quieras. Además de eso, es posible que desee agregar una cláusula de protección para un complemento específico usando algo como:

basename(plugin_dir_path(dirname(__FILE__, 2)));

Y comprobando el valor del resultado. Simplemente devuelva la matriz entrante si no es igual al nombre de su complemento.

Sin embargo, esto está fuera del alcance de lo que pretendemos hacer. Lo anterior debería ser suficiente para comenzar.

Fuente de grabación: tommcfarlin.com

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More