이것은 가능하지만 단순한 눈에 거슬리는 해결책은 없습니다.
이 작업을 수행하는 간단한 방법이 하나 있습니다.는 코어를 해킹 wp_set_wpdb_vars()
이 추가 wp-includes/load.php
에서 오른쪽 $prefix = $wpdb->set_prefix($table_prefix);
후 찾기 :
if($_SERVER['SERVER_NAME'] == 'm.domain.tld'){
$wpdb->options = "mobile_{$wpdb->options}";
$wpdb->postmeta = "mobile_{$wpdb->postmeta}";
$wpdb->commentmeta = "mobile_{$wpdb->commentmeta}";
}else{
$wpdb->options = "mobiless_{$wpdb->options}";
$wpdb->postmeta = "mobiless_{$wpdb->postmeta}";
$wpdb->commentmeta = "mobiless_{$wpdb->commentmeta}";
}
이 트릭은 테이블의 두 가지 세트로 options and metas
샌드 박스 것이다. 이렇게하면 설치 한 플러그인에 다른 설정을 사용하더라도 덮어 쓰지 않습니다. 플러그인을 제어하고 설정 충돌을 방지하면 그냥 options table
샌드 박스를 만들 수 있습니다. 에서
당신의 wp-config.php
이 작업을 수행해야합니다
if($_SERVER['SERVER_NAME'] == 'm.domain.tld'){
require_once(dirname(__FILE__).'/wp-config-mobile.php');
}else{
require_once(dirname(__FILE__).'/wp-config-mobiless.php');
}
이 모두
WP_SITEURL
및
WP_HOME
제외을 동일한 설정
(DBNAME, 접두사)가 있어야합니다. wp-config.php
에 WP_HOME
과 WP_SITEURL
을 정의하지 않으면 하나의 파일을 사용할 수 있습니다.
감사합니다. 감사합니다. 정말 감사드립니다. 나는 그것을 오늘 시도 할 것이다. –