Multilingual sites

What do I need when contacting VIP? Multilingual sites can widely vary in both display needs and content-entry needs, so when contacting VIP about your multilingual site, it can be helpful to share the following information:

  1. Where will the original content be authored, created, edited, and deleted? Will this be in the VIP environment, or will it be elsewhere and then imported in?
  2. Where will the language specific theme files be authored, created, edited, and deleted? How will this content be brought into the VIP environment and managed?
  3. What is the desired UX for editors in switching between various languages?
  4. What is the desired UX for viewers in selecting a language for the site? Will this be automated or manual? Can they only switch between landing pages, or will they be able to toggle an article in different languages?

The more details you can provide about how you expect your multilingual site to work, the better our recommendations can be.

Can I set up a multilingual site on VIP?

Yes, absolutely. For multilingual sites we typically recommend setting up separate sites — in previous experience we’ve learned that this is the least complicated way of handling multilingual content, and typically over time the different language sites need different things and end up diverging anyway.

Just to clarify, when you set up separate instances for each language, you can set them up under different subdomains, but not different subdirectories. For example, you will be able to set up and, but you will not be able to set up and 

How do a set a blog/admin’s language?

You can do that under Language Settings.

What multilingual plugins can we use on VIP?

We review multilingual plugins just like any other plugin. Please take a look at our plugin review guidelines here, and contact us if you have any questions.

Mapping Your Domain and Managing DNS

You love your shiny new site and you probably want to put your own domain on it.

To proceed forward, you’ll need to have first registered your domain with a domain registrar. If you haven’t yet, you can register your domain through or another domain registrar. To map a domain you already own, simply follow these instructions. Domain mappings are included for free on VIP and Enterprise.

Since DNS propagation can take up to 72 hours, you will want to begin this process at least a week before your planned launch date.

Managing DNS Records

Once you point your domain to WordPress nameservers, you can continue to manage your domain with our Domain Management tools which allow you to add custom DNS records.

If you map a 2nd-level domain (e.g., you can easily add a subdomain (e.g. to it.

There are a few kinds of DNS changes that you cannot make directly through our tools, but that can be requested by contacting us via a ticket:

  • Adding wildcard DNS records
  • Adding TXT records that exceed 192 characters in length
  • Changing TTL values for DNS records
  • Adding TXT records for subdomains
  • Managing NS records for a domain

Mapping to

If your site will live on a 2nd-level domain (, we highly recommend hosting it with our DNS servers. In order to smoothly handle any volume of traffic and weather any malicious attack, our load balancing and high availability solutions are dependent on us being the name server for 2nd-level domains. By taking this approach, it enables our skilled systems team to effectively route traffic to additional servers, mitigate attacks, or accommodate for an outage in one of our data centers.

If you have an existing website that you are migrating to, the following steps should be taken to set up the domain least a week before the launch:

  1. Send us the ZONE file for your domain including any subdomains or MX records for email.
  2. We will set up the domain mapping on the site
  3. We will set up the DNS entries to mirror your current setup (so your existing site continues to work when you point your domain to our nameservers).
  4. Once setup is complete, you can verify and switch to our nameservers.
  5. When your site is ready to launch, we will update your website’s entry to point to your new site.

This provides the most fluid migration and means we’re around to pull the actual trigger and assist with any post-launch tasks.

Using Nameservers

The nameservers to use are:

We provide a handy DNS management tool for you to create A, MX, CNAME, and TXT records.

Using 3rd-party Nameservers

If you’re required to host the DNS elsewhere, you can create A records pointing to two or more of our IPs. To get this information, please contact us using the contact form inside your Dashboard.

At least a couple of days before the migration you will want to change the TTL to 300, or if that is not allowed by your current DNS hosting, the lowest value allowed to allow for the smoothest transition possible.

Subdomain (

If your site will live on a subdomain (, all that is required is a CNAME. When the site is ready to launch, you can create a CNAME entry pointing to your registered site: IN CNAME

Note that you will want to change the TTL for the subdomain to 300 or the next lowest value allowed to make the transition as smooth as possible.

Primary Domains

Every site can have multiple mapped domains but only one Primary Domain. This the canonical domain name for your site and all other domains registered against the site will redirect accordingly. The Primary Domain can be set from the Domains page in the Dashboard; just head to Settings > Domains and select the domain you would like to be primary.

www subdomain does not support using the www subdomain as a primary hostname for a site. The www subdomain is typically set up as a CNAME to the root domain, and requests to it are then redirected to the root domain.

Subdirectories does not support hosting the root of a site in the subdirectory of a site’s primary domain.

DNSSEC DNS does not currently support DNSSEC. If managing your DNS on you’ll need to disable DNSSEC at your registrar.

Change Your Pretty Permalinks or Add Custom Rewrite Rules

Permalinks are the permanent URLs to posts, categories, and other sections of your website. They generally look like this by default:

URLs should be permanent and never change — hence the name permalink. When you’re first configuring your site though, you can modify them from the default structure. Some of the values you can use include:

%year% The year of the post, four digits, for example 2004
%monthnum% Month of the year, for example 05
%day% Day of the month, for example 28
%hour% Hour of the day, for example 15
%minute% Minute of the hour, for example 43
%second% Second of the minute, for example 33
%post_id% The unique ID # of the post, for example 423
%postname% A sanitized version of the title of the post (post slug field on Edit Post/Page panel). So “This Is A Great Post!” becomes this-is-a-great-post in the URI.
%category% A sanitized version of the category name (category slug field on New/Edit Category panel). Nested sub-categories appear as nested directories in the URI.


For VIP clients, if you’d like to customize these permastructs, you can use any of the following helper functions in your theme’s functions.php file:

 * Enable a custom permastruct, if the site wants to use one that's not the default (/yyyy/mm/dd/post-name/)
wpcom_vip_load_permastruct( '/%category%/%postname%/' );

 * Enables a custom or no category base, if the site wants to use one that's not the default (/category/)
wpcom_vip_load_category_base( 'section' );

 * Enables a custom or no tag base, if the site wants to use one that's not the default (/tag/)
wpcom_vip_load_tag_base( 'topic' );

If you need to test this in a local environment, instead use the wp rewrite structure command from WP CLI.

Your theme’s rewrite rules are flushed automatically on every deploy (and when you switch themes), so you only need to worry about committing this change to the repository.

Custom rewrite rules can also be committed to your theme and incorporated in this manner.

There is no need to ever call flush_rewrite_rules() on WordPress VIP.

Rewrite Rules Inspector


A handy tool for testing and debugging your permastructs is the rewrite rules inspector. Enabled by default on VIP, this plugin features a complete list of your rules and a URL-matching tool to test your URLs. To find the inspector, visit VIP -> rewrite rules.

Note: if the inspector ever shows all or some of your rules in red and issues the “some rules are missing” error, click the flush rules button, and your rules should fully refresh.


Enterprise users have an admin interface for changing their permastructs. It appears at “Settings” -> “Permalinks”:

Enterprise permastruct screen

Activating Plugins on Enterprise offers a wide selection of features, including Contact Forms, Polling, and Publicize, a way to share posts across social media outlets. Before activating a plugin, be sure to check out Support to see if the you need feature already exists.

As a Enterprise member, you get access to pre-approved plugins from Featured Partners and friends. These plugins have been reviewed by our VIP Team and can be activated immediately.

Here’s how to activate your plugin:

1. Navigate to the Plugins tab in your Dashboard.


2. Click activate.

3. You’re done!

Brand Your New Website

Getting ready to launch your new Enterprise site? Here’s a 10 step guide on how you can make the design your own.

The most important component to your website’s appearance is your WordPress Theme. A WordPress Theme is a collection of files that work together to produce a graphical interface with an underlying, unifying design for a blog. With Enterprise, you can choose from any of our 200+ themes (free or premium) and then brand it as your own using CSS and JavaScript.

Please know that you cannot upload your own custom theme to Enterprise, but you can select a base theme and modify or override its CSS. You can also write your own JavaScript. Here are the steps to customize your website’s appearance:

1. Sketch Out an Outline

First, you should have an idea of what you want your website to look like. What functionality do you want your homepage to have? How many columns do you want in your layout? Having a rough outline will help you choose the best theme for your site.

2. Choose a Theme offers more than 200 free and premium themes for you to choose from. With Enterprise, you have unlimited access to all of the premium themes. Visit our Themes page and select a theme that is the closest to what you want your website to look like. If it’s not perfect yet, don’t worry. Think of the theme as a bare structure of a house. You’ll be able to remodel the kitchen and add fresh coats of paint later.

By default, the front page (“Home”) of your blog will display your latest posts. You can change this so readers see a static homepage instead, and can view your posts on a different page. Click here to learn how to create a static homepage.

3. Set your Site Title and Tagline

The Site Title is displayed in the title bar of a web browser and is displayed in the header for most themes. The Tagline is next and is a short description or catchy phrase to describe what your blog is about. Some themes will display the tagline in the header or in the sidebar. You can find these options under Settings > General in your Dashboard. Read more about Site Titles and Taglines here.

4. Set your blog’s Blavatar, favicon

A Blavatar is your blog’s avatar. It displays as the favicon for your blog, which shows up in a browser’s address bar and on browser tabs. If you create a bookmark on your browser or shortcut on your iPhone/iPad home screen to any blog with a Blavatar, it will also be used as the icon. You can upload your Blavatar under Settings > General in your Dashboard. Read more about Blavatars here.

5. Customize Your Sidebar(s)

Your site’s sidebar is a great place to show off important links and make it easier for visitors to find what they’re looking for. Your website comes pre-installed with a collection of widgets you can drag-and-drop onto your sidebar, including Twitter widget, an Archives widget, a Recent Comments widget and Top Posts & Pages widget. Please know that each theme displays widgets differently depending on the layout, so be sure to check out your theme’s information page to understand how widgets appear. You can access your widgets by going to Appearance > Widgets on your Dashboard. Learn more about how to use widgets, and what widgets are available, here.

6. Choose Your Colors

With our color picker, you’ll be able to quickly change the colors of your selected theme’s background, headers, links, primary colors and secondary colors without any code. You can also select a color palette, add a background pattern or image. You can access the Custom Colors menu in your Dashboard under Appearance > Custom Design. You can read more about Custom Colors here, or watch the video below.

7. Choose Your Fonts

With our custom font menu, you can quickly customize the fonts on your blog in a matter of clicks — no coding required. There’s also an advanced mode for those who want to add fonts to their blog using the Typekit Kit Editor. You can learn more about how to use the Custom Font menu here, or how to add fonts using Typekit here.

8. Customize Your CSS

With Enterprise, you have access to the Custom CSS editor, which allows you to change the appearance of your blog by editing your theme’s CSS (Cascading Style Sheet). Custom CSS allows you to change fonts, colors, borders, backgrounds, and even the layout of your blog. Please note: Uploading custom themes is not supported on, but you can modify existing themes and completely override a theme’s CSS and start from scratch with our CSS editor. You can find Custom CSS in Appearance > Custom Design in the Dashboard. Learn more about Custom CSS here.

9. Customize Your JavaScript

JavaScript support is provided to Enterprise sites using our Custom JavaScript Editor. Use it, in conjunction with any of the available third-party libraries, to build a media slider, implement a custom photo gallery, or add a further level of interactivity to your site.

Learn more about customizing your site with JavaScript.

10. Set Up Your Own Domain

On, you can use a custom domain for your blog, such as, instead of the default address you get when you sign up, like Your old address will still work, but we will automatically redirect traffic from your old address to your new one. For more information on how to set up your own domain, please visit our Domain and DNS documentation.

home_url() vs site_url()

When working with domain-mapped sites on, home_url() and site_url() will return different values.

  • home_url() returns the primary mapped domain (e.g.
  • site_url() returns the * URL (e.g.

A few notes:

  • home_url() will only return the mapped domain on or after the init has fired. Calling it before then will return the domain.
  • If you accidentally use site_url() in your templates, theme-side links will still redirect correctly to the home_url() equivalent.
  • home_url() is the preferred method, as it avoids the above redirect.

Ready to get started?

Tell us about your needs

Let us lead the way. We’ll help you select a top tier development partner. We’ll train your developers, operations, infrastructure, and editorial teams. We’ll coarchitect your deployment processes. We will provide live support for peak events. We’ll help your people avoid dark alleys and blind corners, and reduce wasted cycles.