C'è un po 'di filosofia personale che si inserisce in un flusso di lavoro di distribuzione. Non è una domanda facile rispondere senza conoscere la tua esperienza con i server e il controllo della versione, il tuo sistema operativo, l'hosting, l'esperienza del cliente e la cultura tecnologica, ecc ...
- Ecco una domanda simile che ha molte spiegazioni.
- Per la distribuzione dei contenuti, puoi consultare il plug-in RAMP di Crowd Favorite .
- WP Hackers è un ottimo thread per trovare buone informazioni sulle distribuzioni.
Personalmente, mi assicuro di non codificare mai gli URL assoluti nei miei temi. Usa bloginfo () o codice URL relativi. Uso molti condizionali nel mio file wp-config.php. Ecco una versione vaniglia delle mie modifiche di 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']));
Lavoro su molti siti che seguono il
- local (hacking personale :) sul mio server web laptop)>
- dev (test sul server client)>
- stage (fonte stabile per QA - editing dei contenuti)>
- produzione (sito live)
Infine, suggerirei di utilizzare uno strumento di controllo delle versioni per facilitare le implementazioni come GIT o SVN. Facilita significativamente il processo e mantiene l'integrità della fonte tra gli ambienti. L'impegno per il tuo locale è facilmente aggiornabile tramite riga di comando sul palco e produzione. È meglio durante la scoperta definire quale versione controlla che tu e il client utilizzerete fin dall'inizio se gli sviluppatori lavorano sul progetto. Personalmente uso GIT per il controllo della mia versione. Tuttavia, se un client utilizza SVN, faccio un mix dei due sul mio locale, quindi mantengo un repository per me stesso impegnandomi anche nel loro repository.
Raramente abbiamo problemi di migrazione da un ambiente all'altro. Effettuiamo una ricerca / sostituzione nel DB per modificare l'URL di conseguenza per i media incorporati, ecc ...