✅ Notizie, temi, plugin WEB e WordPress. Qui condividiamo suggerimenti e le migliori soluzioni per siti web.

Aggiunta di link plug-in WordPress personalizzati

22

Se hai mai creato un plug-in personalizzato per te o per qualcun altro, probabilmente hai fatto qualcosa con i collegamenti del plug-in di WordPress anche se fornisce solo informazioni sull’autore un URL alla home page del plug-in.

E sai di cosa parlo: questi sono i link che compaiono sotto il nome del plugin.

Secondo il codice di riferimento, queste informazioni sono:

I metadati del plug-in, inclusi versione, autore, URI dell’autore e URI del plug-in.

Occasionalmente, tuttavia, potresti scoprire di voler aggiungere o modificare i collegamenti. Cioè, puoi aggiungere i tuoi collegamenti personalizzati da visualizzare nell’elenco seguente.

Collegamenti plug-in WordPress

In sostanza, i collegamenti ai plug-in di WordPress sono indicati come meta riga del plug-in (o forse la riga dei metadati del plug-in sarebbe più appropriata).

Indipendentemente da ciò, è una serie di informazioni che vengono assemblate e renderizzate sul front-end ogni volta che WordPress vuole mostrare qualcosa. Puoi aggiungere rapidamente informazioni personalizzate facendo qualcosa del genere :

<?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;
}

Ma questo lascia un paio di cose a desiderare. Vale a dire:

  • non c’è sicurezza intorno al markup (e forse potresti fare un caso che non c’è bisogno di esserlo se sei tu quello responsabile),
  • non c’è accessibilità intorno all’ancora,

Per mitigare questo, il codice può essere aggiornato a questo :

<?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;
}

E se vuoi davvero essere creativo, puoi usare il metodo array_splice di PHP per posizionare l’HTML dove vuoi. Inoltre, potresti voler aggiungere una clausola di guardia per un plug-in specifico usando qualcosa come:

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

E controllando il valore del risultato. Restituisci semplicemente l’array in arrivo se non è uguale al nome del tuo plugin.

Questo è al di fuori dello scopo di ciò che miriamo a fare, però. Quanto sopra dovrebbe essere sufficiente per iniziare.

Fonte di registrazione: 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