\r\n \r\nThe office supplies retailer also said it will ramp up investment in its online and mobile efforts. \r\n \r\nThe announcement comes after a soft second quarter in which profit and traffic dipped downward. \r\n \r","showSummary":null,"url":"/real-estate/staples-unveils-plan-close-60-stores-invest-onlinemobile-efforts","date":"2012-09-25T00:00:00","author":{"email":null,"uname":"Anonymous","firstName":null,"lastName":null,"bio":null,"title":null,"picture":null,"phone":null,"contactForm":null},"byline":"Katherine Boccaccio","hideByline":null,"digitalEdition":null,"sponsored":false,"sponsorship":{"overrideAds":false},"taggedPro":null,"relatedArticles":[],"relatedImages":[],"teaserImage":null,"heroImageSrcset":null,"hideHero":null,"heroImage":null,"heroCaption":null,"attachedFiles":[],"businessTopic":[],"contentType":[],"company":[],"marketSegment":[],"topics":[{"id":9,"name":"REAL ESTATE","url":"/real-estate"}],"contentParagraphs":null,"sections":null};
const country = "US";
const language = null;
const SITE_LANGUAGE = "en";
const siteName = "Chain Store Age";
const userRoles = ["anonymous"];
const userUid = 0;
const indexName = "CSA";
const title = "Staples unveils plan to close 60 stores, invest in online/mobile efforts | Chain Store Age";
window.dataLayer = window.dataLayer || [];
const data = {};
data.entityTaxonomy = {};
const contentTypes = [
"article",
"blog",
"bulletin",
"embed_page",
"landing_page",
"event",
"image",
"page",
"product",
"whitepaper",
"video",
"tags",
];
if (
routeInfo &&
"bundle" in routeInfo &&
contentTypes.includes(routeInfo["bundle"])
) {
data.entityBundle = routeInfo.bundle;
data.entityTitle = title || `${routeInfo.title} | ${siteName}`;
data.entityId = routeInfo.id;
data.entityName = routeInfo.author?.uname;
data.entityCreated = routeInfo.created;
data.sponsored = routeInfo.sponsored;
data.sponsor = routeInfo.sponsoringCompany;
data.entityType = "node";
data.entityLangcode = SITE_LANGUAGE;
data.siteName = siteName;
data.drupalLanguage = language;
data.drupalCountry = country;
data.userRoles = userRoles;
data.userUid = userUid;
data.entityTaxonomyKeys = {};
data.entityTaxonomyHierarchies = {};
data.parentNaicsCode = {};
data.isPro = false;
data.algoliaIndexName = indexName;
// Add toxonomy data
const taxonomies = {
businessTopic: "business_topic",
contentType: "content_type",
company: "company",
marketSegment: "market_segment",
};
const getHierarchy = (term, terms = []) => {
terms.push({ id: term.id, name: term.name });
if (term.parentTerm != null) {
getHierarchy(term.parentTerm, terms);
}
return terms;
};
const getTerms = (term, useApiId = false) => {
return { id: useApiId ? term.apiId : term.id, name: term.name };
};
const getKeys = (term) => {
return { id: term.id, name: term.apiId };
};
Object.entries(taxonomies).forEach(([key, item]) => {
terms = routeInfo[key];
if (terms && terms.length > 0) {
data["entityTaxonomy"][item] = terms.map((term) =>
getTerms(term, key === "company")
);
if (key !== "company") {
data["entityTaxonomyKeys"][item] = terms.map(getKeys);
termGroups = [];
terms.forEach((term, termInd) => {
termGroups[termInd] = getHierarchy(term);
});
data["entityTaxonomyHierarchies"][item] = termGroups;
}
}
});
data["entityTaxonomy"]["tags"] = routeInfo["topics"] || [];
// Primary Topic is either the business topic or the top tag.
if (routeInfo["businessTopic"]?.length > 0) {
data["entityPrimaryTopic"] = routeInfo["businessTopic"][0]["name"];
} else {
if (routeInfo["topics"]?.length > 0) {
data["entityPrimaryTopic"] = routeInfo["topics"][0]["name"];
}
}
// Primary and secondary entityNaicsCodes come from the MarketSegment
if (routeInfo.marketSegment?.length > 0) {
data.entityNaicsCode = {};
data["entityNaicsCode"]["id"] = routeInfo["marketSegment"][0]["id"];
data["entityNaicsCode"]["name"] =
routeInfo["marketSegment"][0]["naicsCode"];
if (routeInfo["marketSegment"][0]["parentTerm"] != null) {
data["parentNaicsCode"]["id"] =
routeInfo["marketSegment"][0]["parentTerm"]["id"];
data["parentNaicsCode"]["name"] =
routeInfo["marketSegment"][0]["parentTerm"]["naicsCode"];
}
} else {
data.entityNaicsCode = [];
}
if (routeInfo.taggedPro) {
data.isPro = routeInfo.taggedPro;
}
window.dataLayer.push(data);
} else if (routeInfo && "vid" in routeInfo) {
data.entityBundle = "tags";
data.entityTitle = routeInfo.name;
data.entityId = routeInfo.id;
data.entityName = routeInfo.author?.uname;
data.entityCreated = routeInfo.created;
data.entityType = "taxonomy_term";
data.entityLangcode = SITE_LANGUAGE;
data.siteName = siteName;
data.sponsored = routeInfo.sponsored;
data.sponsor = routeInfo.sponsoringCompany;
data.drupalLanguage = language;
data.drupalCountry = country;
data.userRoles = userRoles;
data.userUid = userUid;
data.algoliaIndexName = indexName;
data["entityTaxonomy"]["tags"] = {
id: routeInfo["id"],
name: routeInfo["name"],
};
window.dataLayer.push(data);
}
})();
Staples unveils plan to close 60 stores, invest in online/mobile efforts | Chain Store Age
Staples unveils plan to close 60 stores, invest in online/mobile efforts Framingham, Mass. -- Staples Inc. announced Tuesday a strategic plan to shore up sales and profitability that will involve accelerating the closure of 15 U.S. stores and 45 stores in Europe. The office supplies retailer also said it will ramp up investment in its online and mobile efforts. The announcement comes after a soft second quarter in which profit and traffic dipped downward. In all, Staples said it will close about 30 U.S. stores this year, as well as relocate and downsize another 30. In Europe, all 45 closures are expected to occur prior to fiscal year-end. Staples also announced that it has appointed John Wilson as president of Staples Europe, replacing Rob Vale who is retiring. Demos Parneros will lead U.S. retail and online efforts for Staples.
X
This ad will auto-close in 10 seconds