When you use domain mapping and you have plugins in mu-plugins that use plugins_url, the domain in the resulting URLs is broken. It's a fairly simple patch to check if the URL is in PLUGINDIR or MUPLUGINDIR.
Index: wp-content/plugins/wordpress-mu-domain-mapping/domain_mapping.php
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- wp-content/plugins/wordpress-mu-domain-mapping/domain_mapping.php (revision c713883ec020385fe13a9c44c6d1da7b90ab62a9)
+++ wp-content/plugins/wordpress-mu-domain-mapping/domain_mapping.php (revision )
@@ -139,9 +139,6 @@
wp_die( sprintf( __( "<strong>Warning!</strong> This plugin will only work if WordPress is installed in the root directory of your webserver. It is currently installed in ’%s’.", "wordpress-mu-domain-mapping" ), $current_site->path ) );
}
- switch( $_POST[ 'action' ] ) {
- default:
- }
echo '<h2>' . __( 'Domain Mapping: Domains', 'wordpress-mu-domain-mapping' ) . '</h2>';
if ( !empty( $_POST[ 'action' ] ) ) {
check_admin_referer( 'domain_mapping' );
@@ -302,10 +299,10 @@
update_site_option( 'dm_cname', stripslashes( $_POST[ 'cname' ] ) );
else
update_site_option( 'dm_cname', '' );
- update_site_option( 'dm_301_redirect', intval( $_POST[ 'permanent_redirect' ] ) );
- update_site_option( 'dm_redirect_admin', intval( $_POST[ 'always_redirect_admin' ] ) );
- update_site_option( 'dm_user_settings', intval( $_POST[ 'dm_user_settings' ] ) );
- update_site_option( 'dm_no_primary_domain', intval( $_POST[ 'dm_no_primary_domain' ] ) );
+ update_site_option( 'dm_301_redirect', empty($_POST[ 'permanent_redirect' ])?0:intval( $_POST[ 'permanent_redirect' ] ) );
+ update_site_option( 'dm_redirect_admin', empty($_POST[ 'always_redirect_admin' ])?0:intval( $_POST[ 'always_redirect_admin' ] ) );
+ update_site_option( 'dm_user_settings', empty($_POST[ 'dm_user_settings' ])?0:intval( $_POST[ 'dm_user_settings' ] ) );
+ update_site_option( 'dm_no_primary_domain', empty($_POST[ 'dm_no_primary_domain' ])?0:intval( $_POST[ 'dm_no_primary_domain' ] ) );
}
}
@@ -656,7 +653,12 @@
// fixes the plugins_url
function domain_mapping_plugins_uri( $full_url, $path=NULL, $plugin=NULL ) {
+ if ( strpos($full_url, PLUGINDIR) !== FALSE ) {
- return get_option( 'siteurl' ) . substr( $full_url, stripos( $full_url, PLUGINDIR ) - 1 );
+ return get_option( 'siteurl' ) . substr( $full_url, stripos( $full_url, PLUGINDIR ) - 1 );
+ } elseif ( strpos($full_url, MUPLUGINDIR) !== FALSE ) {
+ return get_option( 'siteurl' ) . substr( $full_url, stripos( $full_url, MUPLUGINDIR ) - 1 );
+ }
+ return $full_url;
}
function domain_mapping_themes_uri( $full_url ) {
http://wordpress.org/extend/plugins/wordpress-mu-domain-mapping/