{"id":231371,"date":"2022-12-21T12:58:00","date_gmt":"2022-12-21T09:58:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=231371"},"modified":"2022-12-07T10:28:37","modified_gmt":"2022-12-07T07:28:37","slug":"ajout-de-liens-de-plugins-wordpress-personnalises","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/fr\/ajout-de-liens-de-plugins-wordpress-personnalises\/","title":{"rendered":"Ajout de liens de plugins WordPress personnalis\u00e9s"},"content":{"rendered":"\n<p>Si vous avez d\u00e9j\u00e0 cr\u00e9\u00e9 un plugin personnalis\u00e9 pour vous-m\u00eame ou pour quelqu&rsquo;un d&rsquo;autre, vous avez probablement fait quelque chose avec les liens du plugin WordPress, m\u00eame s&rsquo;il ne s&rsquo;agit que de fournir des informations sur l&rsquo;auteur, une URL vers la page d&rsquo;accueil du plugin.<\/p>\n<p>Et vous savez de quoi je parle: ce sont les liens qui apparaissent sous le nom du plugin.<\/p>\n<p>Selon <a href=\"https:\/\/developer.wordpress.org\/reference\/hooks\/plugin_row_meta\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">la r\u00e9f\u00e9rence du code<\/a>, ces informations sont :<\/p>\n<blockquote>\n<p>Les m\u00e9tadonn\u00e9es du plug-in, y compris la version, l&rsquo;auteur, l&rsquo;URI de l&rsquo;auteur et l&rsquo;URI du plug-in.<\/p>\n<\/blockquote>\n<p>Parfois, cependant, vous pouvez souhaiter ajouter ou modifier les liens. Autrement dit, vous pouvez ajouter vos propres liens personnalis\u00e9s pour qu&rsquo;ils apparaissent dans la liste ci-dessous.<\/p>\n<h2>Liens vers les plugins WordPress<\/h2>\n<p>Dans le noyau, les liens du plugin WordPress sont appel\u00e9s la m\u00e9ta-ligne du plugin (ou peut-\u00eatre que la rang\u00e9e de m\u00e9tadonn\u00e9es du plugin serait plus appropri\u00e9e).<\/p>\n<p>Quoi qu&rsquo;il en soit, c&rsquo;est un tableau d&rsquo;informations qui les assemble et les rend sur le front-end chaque fois que WordPress veut pr\u00e9senter quelque chose. Vous pouvez ajouter rapidement des informations personnalis\u00e9es en faisant quelque chose <a href=\"https:\/\/gist.github.com\/tommcfarlin\/14b73af1670ed6500ab82c0fecb1a3a7#file-00-plugin-links-php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">comme ceci<\/a> :<\/p>\n<pre><code>&lt;?php\n\nadd_action('plugin_row_meta', __NAMESPACE__. 'addCustomPluginLinks');\n\/**\n * @param array $metaData the array of metadata that appears in the row of plugin information\n *\n * @return array $metaData the modified array that includes the custom anchor\n *\/\nfunction addCustomPluginLinks(array $metaData): array\n{\n  $metaData[] = '&lt;a href=\"https:\/\/google.com\"&gt;Example Link&lt;\/a&gt;';\n  return $metaData;\n}\n<\/code><\/pre>\n<p>Mais cela laisse quelques choses \u00e0 d\u00e9sirer. \u00c0 savoir:<\/p>\n<ul>\n<li>il n&rsquo;y a pas de s\u00e9curit\u00e9 autour du balisage (et vous pourriez peut-\u00eatre faire valoir qu&rsquo;il n&rsquo;est pas n\u00e9cessaire de l&rsquo;\u00eatre si vous en \u00eates le responsable),<\/li>\n<li>il n&rsquo;y a pas d&rsquo;accessibilit\u00e9 autour de l&rsquo;ancre,<\/li>\n<\/ul>\n<p>Pour att\u00e9nuer cela, le code peut \u00eatre mis \u00e0 jour <a href=\"https:\/\/gist.github.com\/tommcfarlin\/14b73af1670ed6500ab82c0fecb1a3a7#file-01-plugin-links-php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">pour ceci<\/a>\u00a0:<\/p>\n<pre><code>&lt;?php\n\nadd_action('plugin_row_meta', __NAMESPACE__. 'addCustomPluginLinks');\n\/**\n * @param array $metaData the array of metadata that appears in the row of plugin information\n *\n * @return array $metaData the modified array that includes the custom anchor\n *\/\nfunction addCustomPluginLinks(array $metaData): array\n{\n  \/\/ Safely build the markup for the new anchor.\n  $html = wp_kses(\n      '&lt;a href=\"https:\/\/google.com\" target=\"_blank\" data-title=\"Example Link\" aria-label=\"Example Link\"&gt;Example Link&lt;\/a&gt;',\n      [\n          'a' =&gt; [\n              'href' =&gt; [],\n              'target' =&gt; [],\n              'aria-label' =&gt; [],\n              'data-title' =&gt; [],\n          ],\n      ]\n  );\n\n  \/\/ Insert the markup at the end of the array.\n  $metaData[] = $html;  \n\n  return $metaData;\n}\n<\/code><\/pre>\n<p>Et si vous voulez vraiment faire preuve de cr\u00e9ativit\u00e9, vous pouvez utiliser la m\u00e9thode <a href=\"https:\/\/php.net\/manual\/en\/function.array-splice.php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">array_splice<\/a> de PHP pour placer le code HTML o\u00f9 vous le souhaitez. En plus de cela, vous pouvez ajouter une clause de garde pour un plugin sp\u00e9cifique en utilisant quelque chose comme :<\/p>\n<pre><code>basename(plugin_dir_path(dirname(__FILE__, 2)));<\/code><\/pre>\n<p>Et v\u00e9rifier la valeur du r\u00e9sultat. Renvoyez simplement le tableau entrant s&rsquo;il n&rsquo;est pas \u00e9gal au nom de votre plugin.<\/p>\n<p>Cela sort du cadre de ce que nous visons \u00e0 faire, cependant. Ce qui pr\u00e9c\u00e8de devrait \u00eatre suffisant pour vous aider \u00e0 d\u00e9marrer.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Source d&rsquo;enregistrement:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Vous pouvez constater que vous souhaitez ajouter ou modifier les liens du plugin WordPress. Autrement dit, vous pouvez ajouter vos liens personnalis\u00e9s pour qu&rsquo;ils apparaissent dans la liste.<\/p>\n","protected":false},"author":1,"featured_media":235661,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[717,841,862],"tags":[1167],"class_list":["post-231371","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-developpeur","category-tutoriels","category-wordpress-3","tag-affiai-fr"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/posts\/231371","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/comments?post=231371"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/posts\/231371\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/media\/235661"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/media?parent=231371"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/categories?post=231371"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/tags?post=231371"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}