Développer, tester et publier

10

Comment développez-vous, testez-vous et déployez-vous pour vivre vos sites Wordpress?

Je trouve toujours cela un peu bizarre, surtout en ce qui concerne les bases de données - principalement en raison du fait qu’avoir un site de test nécessite le déploiement d’une toute nouvelle base de données qui peut parfois être EXACTEMENT identique, à l’exception de tous les liens. changé pour l'URL du site de test, au lieu du site actif.

De même, tous les téléchargements que les utilisateurs ont téléchargés depuis la dernière fois que vous avez eu besoin de corriger un bogue ou de développer quelque chose de nouveau devront être copiés sur le site de test.

Comment font les autres? Tu viens de supporter le faff? Utilisez-vous des systèmes de contrôle de version intelligents qui vous aident?

Merci

    
posée Thomas Clayson 15.12.2011 - 13:33

1 réponse

12

Un flux de travail de déploiement repose sur une philosophie personnelle. Ce n’est pas facile de répondre sans connaître votre expérience des serveurs et du contrôle de version, de votre système d’exploitation, de votre hébergement, de l’expérience client et de la culture technologique, etc.

  1. Voici une question similaire qui a beaucoup d'explication.
  2. Pour le déploiement de contenu, vous pouvez consulter le plug-in RAMP de Crowd Favorite.
  3. WP Hackers est un excellent fil de discussion pour trouver de bonnes informations sur les déploiements.

Personnellement, je m'assure de ne jamais coder en dur les URL absolues dans mes thèmes. Utilisez bloginfo () ou les URL relatives au code. J'utilise beaucoup de conditions dans mon fichier wp-config.php. Voici une version vanille de mes modifications wp-config.

switch($_SERVER['SERVER_NAME']){
    case 'dev.yourdomain.com':
        $db_host = '';
        $db_pass = '';
        //define debugging
        break;
    case 'stage.yourdomain.com':
        $db_host = '';
        $db_pass = '';
        break;
    default: //Live
        $db_host = '';
        $db_pass = '';
}
define('DB_PASSWORD', $db_pass);
define('DB_HOST', $db_host);

//You could also set this as a variable above
define('WP_HOME', 'http://'.$_SERVER['SERVER_NAME']));
define('WP_SITEURL', 'http://'.$_SERVER['SERVER_NAME']));

Je travaille sur beaucoup de sites qui suivent le

  • local (piratage personnel :) sur le serveur Web de mon ordinateur portable) >
  • dev (test sur le serveur client) >
  • stage (source stable pour le contrôle qualité - édition de contenu) >
  • production (site actif)

Enfin, je vous suggérerais d’utiliser un outil de gestion des versions pour vous aider dans vos déploiements tels que GIT ou SVN. Cela facilite considérablement le processus et maintient l'intégrité de la source entre les environnements. L'engagement auprès de votre section locale est facilement mis à jour via une ligne de commande sur scène et en production. Lors de la découverte, il est préférable de définir le contrôle de version que vous et le client allez utiliser dès le début si des développeurs travaillent sur le projet. Personnellement, j'utilise GIT pour mon contrôle de version. Cependant, si un client utilise SVN, je fais un mélange des deux sur mon local, je maintiens donc un dépôt pour moi tout en respectant mes engagements.

Nous avons rarement des problèmes de migration d'un environnement à un autre. Nous faisons une recherche / remplacement dans la base de données pour modifier l’URL en conséquence pour les médias incorporés, etc ...

    
réponse donnée Brian Fegter 15.12.2011 - 14:29

Lire d'autres questions sur les étiquettes