getJsonPlaceholders(locale, params = {}) {
    // If localization is disabled or there is no JSON resource
    if (!this.pagesConfig.enableLocalization || !this.pagesConfig.localizationJsonPath) {
      return {};
    }

    // Get JSON placeholders
    let placeholders = this.getJsonTranslation(locale);

    // Fill in any placeholders in the translation; this allows a translation
    // to contain default placeholders like {{appName}} which are filled here
    placeholders = JSON.stringify(placeholders);
    placeholders = mustache.render(placeholders, params);
    placeholders = JSON.parse(placeholders);

    return placeholders;
  }
Returns a translation from the JSON resource for a given locale with
placeholders filled in by given parameters.
@param {String} locale The locale to translate to.
@param {Object} params The parameters to fill into any placeholders
within the translations.
@returns {Object} The translation or an empty object if no matching
translation was found.