Multisite Blog Alias

plugin banner

Set up redirects for Multisite-Blogs.

Author:Jörn Lund (profile at wordpress.org)
WordPress version required:4.8
WordPress version tested:6.5
Plugin version:1.2.0
Added to WordPress repository:16-07-2019
Last updated:06-03-2024
Rating, %:100
Rated by:4
Plugin URI:https://github.com/mcguffin/multisite-blog-al...
Total downloads:5 100
plugin download
Click to start download

WP Multisite plugin to maintain URL-redirects for Blogs.

Features

  • Permanent 301 Redirect to blogs main domain
  • Painless installation and activation – no file access necessary.
  • Checks domain status
  • Supports UTF-8 Domains
  • WP-Cli commands

Usage

  1. Set up your DNS. Make sure your Domain points to your WordPress installation. You can achieve this by either setting up an A- or CNAME-Record in your DNS configuration. Your webserver must be configured to handle requests on the given Domain.
  2. Under Network Admin – Sites edit the site and select the Alias Domains Tab.
  3. Enter the domain without http ao / and click “Add”.
  4. Click “Check Status” to see if it worked. If something went wrong you will see an error message.

If you want to redirect with URL path appended (e.g. from some-alias.tld/some/path to some-real-blog.tld/some/path), add this to your wp-config.php:

define( 'WPMU_BLOG_ALIAS_REDIRECT_WITH_PATH', true );

Status messages

Warning: The domain matches the site URL of this blog: The Blog is using the domain name as Site URL.

Error: The domain is already used by another site: A different Blog is already using the domain as Site URL. Eiter Remove the alias from the sblog you are currently workin on, or from the other one.

The domain is unreachable: There is likely an error in your DNS or your Webserver configuration. Use nslookup from he command line or whatsmydns.net to check the DNS-Settings.

The domain or a redirect does not point to this blog: Following all redirects did not end up on your WordPress-Site, but somewhere else. There is likely an error in your DNS or your Webserver configuration.

WP-CLI Examples

Listing Domain aliases

List alias domains for blog-id 123

wp alias-domains list --blog_id=123

Output minified json of all aliases

wp alias-domains list --format=json --compact=2

Output csv including the header row but omitting other messages into file

wp alias-domains list --format=csv --compact > alias-list.csv

Add Domain Alias

wp alias-domains add --blog_id=123 --domain_alias=quux.foobar.tld

Remove Domain Alias

Remove a specific alias

wp alias-domains remove --domain_alias=quux.foobar.tld

Remove all aliases for blog 123

wp alias-domains remove --blog_id=123

Testing Domain Aliases

wp alias-domains test --domain_alias=quux.foobar.tld<h3>Plugin PHP-API</h3>

The plugin introduces two functions allowing you to add / remove a domain aliases from inside PHP.

Add Domain alias

$result = alias_domain_add( $blog_id, 'quux.foobar.tld' );
if ( is_wp_error( $result ) ) {
    // handle error
}

Remove specific Domain alias

$result = alias_domain_remove_by( 'domain_alias', 'quux.foobar.tld' );
if ( is_wp_error( $result ) ) {
    // handle error
}

Remove Domain aliases for a specific blog

$result = alias_domain_remove_by( 'blog_id', 123 );
if ( is_wp_error( $result ) ) {
    // handle error
}<h3>Development</h3>

Please head over to the source code on Github.


Screenshots
FAQ
ChangeLog