web-dev-qa-db-fra.com

Connectez-vous dans Wordpress en utilisant des données de base de données externes

J'ai un site WP et une base de données externe (ne signifie pas que WP DB) avec des utilisateurs. Le processus d'insertion à cette table utilise le même algorithme que WP. Ce que je dois faire ici est de vous connecter à WP, mais en utilisant cette base de données externe, qui se trouve d'ailleurs sur le même hôte. Je vérifie ces liens http://www.tyssendesign.com.au/articles/cms/connecting-to-external-database-from-within-wordpress/ et http://wordpress.org/extend/plugins/external-database-authentication/ et pour le premier n’est pas ce que je veux mais pour le second n’est pas compatible avec WP 3+ et j’utilise 3.3.1, aucun suggestion ou docs ou autre chose?

2
ReynierPM

Vous pouvez remplacer la fonction principale wp_authenticate.

Vous devez créer un plugin personnalisé et déclarer une nouvelle version de wp_authenticate. La fonction accepte un nom d'utilisateur et un mot de passe et retourne un objet utilisateur WP $.

wp_authenticate est une fonction 'pluggable' et se trouve dans le fichier wp-includes/pluggable.php.

2
Roscius

Je viens de mettre à jour cet ancien plugin pour mes besoins. Vous pouvez trouver la mise à jour @ http://www.7mediaws.org/extend/plugins/external-db-auth-reloaded

2
Joshua Parker

J'avais besoin de plus de fonctionnalités que je ne pouvais en trouver ailleurs, alors j'ai écrit mon propre plugin - Connexion externe .

Il a ces caractéristiques principales:

  • Mapper une structure de table de base de données différente pour qu'elle soit compatible avec les champs WordPress
  • Gérez différentes méthodes de hachage de votre base de données externe (bcrypt, MD 2 4 et 5, SHA 256 384 et 512, et bien d’autres encore)
  • Permet différentes méthodes de salage
  • Générez une version copiée de l'utilisateur dans la base de données afin de pouvoir continuer à utiliser les fonctionnalités communes de WordPress avec les utilisateurs et les rôles.
  • Mappez les rôles de votre ‘base de données externe’ vers ceux de WordPress, par exemple. un étudiant de la "base de données externe" devient un éditeur de la base de données WordPress.

Faites-moi savoir si vous avez besoin d'une autre fonctionnalité :)

https://en-gb.wordpress.org/plugins/external-login/

1
Tom Benyon

Avez-vous essayé le plugin External Database Authentication? Ce n’est pas parce qu’il n’a pas été mis à jour depuis longtemps que cela ne fonctionnera pas nécessairement. À tout le moins, vous pouvez consulter leur code source pour voir comment ils ont fait ce qu'ils ont fait et l'utiliser comme base pour obtenir ce que vous avez besoin de faire.

Voici le code http://plugins.trac.wordpress.org/browser/external-database-authentication/trunk/ext_db_auth.php

1
kingkool68