{"id":25176,"date":"2021-06-01T19:10:00","date_gmt":"2021-06-01T16:10:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=25176"},"modified":"2021-10-18T02:09:52","modified_gmt":"2021-10-17T23:09:52","slug":"comment-connecter-une-autre-base-de-donnees-dans-wordpress","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/fr\/comment-connecter-une-autre-base-de-donnees-dans-wordpress\/","title":{"rendered":"Comment connecter une autre base de donn\u00e9es dans WordPress"},"content":{"rendered":"<p>R\u00e9cemment, j&rsquo;ai re\u00e7u une question sur la fa\u00e7on de connecter une autre base de donn\u00e9es au site Web WordPress. Tout d&rsquo;abord, je tiens \u00e0 pr\u00e9ciser que WordPress est con\u00e7u de mani\u00e8re \u00e0 ce que vous puissiez ex\u00e9cuter un nombre illimit\u00e9 de sites ou g\u00e9rer n&rsquo;importe quelle fonctionnalit\u00e9 \u00e0 partir d&rsquo;une seule base de donn\u00e9es. Je crois que nous n&rsquo;avons jamais besoin de connecter plus d&rsquo;une base de donn\u00e9es au site Web WordPress.<\/p>\n<p>Mais quand m\u00eame, si quelqu&rsquo;un cherche la solution pour connecter plusieurs bases de donn\u00e9es, il existe un hack pour cela. En utilisant ce hack, vous pouvez utiliser les m\u00e9thodes de la classe <a href=\"https:\/\/developer.wordpress.org\/reference\/classes\/wpdb\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">wpdb<\/a> pour r\u00e9cup\u00e9rer les enregistrements d&rsquo;une autre base de donn\u00e9es. Ce hack ne vous permettra pas d&rsquo;utiliser les m\u00e9thodes de base fournies par WordPress sur votre deuxi\u00e8me base de donn\u00e9es. Les fonctions comme get_option(), update_option(), wp_insert_post(), get_post_meta() ne seront pas accessibles pour votre autre base de donn\u00e9es.<\/p>\n<p>Dans ce cas, l&rsquo;utilisateur peut r\u00e9cup\u00e9rer les donn\u00e9es des options, publier des tables \u00e0 l&rsquo;aide de requ\u00eates SQL avec les m\u00e9thodes de la classe wpdb. Ces m\u00e9thodes sont get_var(), get_row(), get_col(), get_results(), etc.<\/p>\n<h3>Connectez une autre base de donn\u00e9es dans WordPress<\/h3>\n<p>Lorsque vous devez vous connecter \u00e0 une autre base de donn\u00e9es, cr\u00e9ez une instance de la classe wpdb. Ce faisant, vous avez acc\u00e8s \u00e0 toutes les m\u00e9thodes disponibles de la classe wpdb. L&rsquo;utilisateur peut utiliser ces m\u00e9thodes de classe directement pour interagir avec la base de donn\u00e9es externe.<\/p>\n<p>Pour commencer, vous devez disposer des informations d&rsquo;identification d&rsquo;une base de donn\u00e9es externe.<\/p>\n<p>Comme dit, il doit cr\u00e9er une instance de la classe wpdb. Cette instance doit \u00eatre disponible dans l&rsquo;ensemble de l&rsquo;application WordPress. Pour cela, ajoutez le code ci-dessous dans le <code>functions.php<\/code>fichier.<\/p>\n<pre><code>function connect_another_db() {\n\u00a0\u00a0\u00a0\u00a0global $seconddb;\n\u00a0\u00a0\u00a0\u00a0$seconddb = new wpdb(USERNAME, PASSWORD, DATABASE_NAME, HOSTNAME);\n}\nadd_action('init', 'connect_another_db');<\/code><\/pre>\n<p>Assurez-vous de remplacer tous les espaces r\u00e9serv\u00e9s par les valeurs r\u00e9elles. Apr\u00e8s avoir ajout\u00e9 le code ci-dessus, vous \u00eates connect\u00e9 \u00e0 une autre base de donn\u00e9es. Vous pouvez utiliser cette deuxi\u00e8me instance comme ci-dessous\u00a0:<\/p>\n<pre><code>global $seconddb;\n$user_count = $seconddb-&gt;get_var( \"SELECT COUNT(*) FROM $wpdb-&gt;users\" );\necho \"&lt;p&gt;User count is {$user_count}&lt;\/p&gt;\";<\/code><\/pre>\n<p>Notez que le pr\u00e9fixe de table d&rsquo;une autre base de donn\u00e9es doit \u00eatre le m\u00eame que la base de donn\u00e9es d&rsquo;origine. Si votre pr\u00e9fixe de table est diff\u00e9rent, vous devez mentionner le pr\u00e9fixe explicitement comme indiqu\u00e9 ci-dessous\u00a0:<\/p>\n<pre><code>global $seconddb;\n$prefix = 'wp2_'; \/\/ here 'wp2' is the table prefix of second database\n$user_count = $seconddb-&gt;get_var( \"SELECT COUNT(*) FROM $prefix\".\"users\" );\necho \"&lt;p&gt;User count is {$user_count}&lt;\/p&gt;\";<\/code><\/pre>\n<p>En utilisant les hacks ci-dessus, vous pouvez connecter une autre base de donn\u00e9es et en obtenir des enregistrements sur votre site Web WordPress. Mais je recommande de ne pas utiliser plusieurs bases de donn\u00e9es pour votre site WordPress. Essayez d&rsquo;atteindre votre objectif \u00e0 partir de la seule base de donn\u00e9es.<\/p>\n<h4>Articles Li\u00e9s<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/comment-creer-un-widget-elementor-personnalise\/\" title=\"Comment cr\u00e9er un widget Elementor personnalis\u00e9\">Comment cr\u00e9er un widget Elementor personnalis\u00e9<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/comment-ajouter-du-code-apres-la-balise-body-dans-wordpress\/\" title=\"Comment ajouter du code apr\u00e8s la balise Body dans WordPress\">Comment ajouter du code apr\u00e8s la balise Body dans WordPress<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/comment-ajouter-des-points-de-terminaison-personnalises-a-l-api-wordpress\/\" title=\"Comment ajouter des points de terminaison personnalis\u00e9s \u00e0 l&#039;API WordPress\">Comment ajouter des points de terminaison personnalis\u00e9s \u00e0 l&rsquo;API WordPress<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Source d&rsquo;enregistrement:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Vous cherchez \u00e0 connecter une autre base de donn\u00e9es dans WordPress ? Bien qu&rsquo;il ne soit pas n\u00e9cessaire de connecter plusieurs bases de donn\u00e9es dans WordPress, vous voudrez peut-\u00eatre<\/p>\n","protected":false},"author":1,"featured_media":21644,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[608],"tags":[844],"class_list":["post-25176","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized-4","tag-affiai-fr"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/25176","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/comments?post=25176"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/25176\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media\/21644"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media?parent=25176"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/categories?post=25176"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/tags?post=25176"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}