私はWindowsユーザー(WAMP)とMacユーザー(通常のApache)の間で開発を同期させようとしています。
Windowsユーザー(私)IISを使用しているので、ポート80が必要です。そのため、WAMPのポートを666に変更しました。
つまりWordpressのURLは http:// localhost:666/projectname / です。
Macユーザー彼はサイトをエイリアスではなく、プロジェクトへのパスだけに持っています
したがって、URLは http:// localhost/foldername/wordpress / です。
Wp-config.phpに私は以下のコードがあります。
if (file_exists('local_settings.php')) {
include('local_settings.php');
} else {
$debug_on = true;
}
そしてlocal_settings.phpの中で
define('WP_HOME', 'http://' . $_SERVER['HTTP_Host'] . '/projectname/');
define('WP_SITEURL', 'http://' . $_SERVER['HTTP_Host'] . '/projectname/');
しかし、このコードは実際には愚かな愚かなデータベースsiteurlをオーバーライドしているようには見えません。なぜなら彼がログインしようとしたとき、まだlocalhost:666(これはデータベース内の値です)に向かうからです。
それとも別の開発者を同期させることは不可能ですか?どうやってやるの?そして私のポートを80 :)に変更するように私に頼まないでください
あなたは2組の設定を持っている必要があります。
if ( file_exists( dirname( __FILE__ ) . '/local-config.php' ) ) {
include( dirname( __FILE__ ) . '/local-config.php' );
define( 'WP_LOCAL_DEV', true );
} else {
define('WP_HOME', 'http://localhost:666/projectname/');
define('WP_SITEURL', 'http://localhost/foldername/wordpress/');
}
私のチームと私は通常、ローカル環境ごとにDB内のドメインを変更します。
手動で行うことも、functions.phpで2つのライナーを実行することもできます。
update_option('siteurl','http://localhost/foldername/wordpress');
update_option('home','http://localhost/foldername/wordpress');
このアップデートはMacユーザーのコンピュータで1回実行するだけで済みます。
編集:この答えを無視してください。
定数はすでに定義されています。 PHPでは定数を再定義することはできません。
次の行の前に(wp-config.phpではなく)local_settings.phpを含めてみてください。
必須(ABSPATH.WPINC。 '/ default-constants.php');