Skip to content

Commit 7cf051b

Browse files
EugeneHlushkomontogeek
authored andcommitted
feat(misc) Add OpenGraph and Twitter metadata (#2414)
1 parent 2db448e commit 7cf051b

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

src/server.jsx

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import Site from './components/Site/Site';
1111

1212
// Import Images
1313
import Favicon from './favicon.ico';
14+
import Logo from './assets/logo-on-white-bg.svg';
1415

1516
// Define bundles (previously used `Object.values(locals.assets)`) but
1617
// can't retrieve from there anymore due to separate compilation.
@@ -23,6 +24,7 @@ const bundles = [
2324
export default locals => {
2425
let { assets } = locals.webpackStats.compilation;
2526
let title = getPageTitle(locals.content, locals.path);
27+
let description = 'webpack is a module bundler. Its main purpose is to bundle JavaScript files for usage in a browser, yet it is also capable of transforming, bundling, or packaging just about any resource or asset.';
2628

2729
return ReactDOMServer.renderToString(
2830
<StaticRouter location={locals.path} context={{}}>
@@ -32,7 +34,16 @@ export default locals => {
3234
<meta name="theme-color" content="#2B3A42" />
3335
<meta name="viewport" content="width=device-width, initial-scale=1" />
3436
<title>{title}</title>
35-
<meta name="description" content="webpack is a module bundler. Its main purpose is to bundle JavaScript files for usage in a browser, yet it is also capable of transforming, bundling, or packaging just about any resource or asset." />
37+
<meta name="description" content={ description } />
38+
<meta property="og:site_name" content="webpack" />
39+
<meta property="og:type" content="website" />
40+
<meta property="og:title" content={ title } />
41+
<meta property="og:description" name="description" content={ description } />
42+
<meta property="og:image" content={ Logo } />
43+
<meta property="twitter:card" content="summary" />
44+
<meta property="twitter:site" content="@webpack" />
45+
<meta property="twitter:creator" content="@webpack" />
46+
<meta property="twitter:domain" content="https://webpack.js.org/" />
3647
<link rel="icon" type="image/x-icon" href={ Favicon } />
3748
{ Object.keys(assets).filter(asset => /\.css$/.test(asset)).map(path => (
3849
<link key={ path } rel="stylesheet" href={ `/${path}` } />

0 commit comments

Comments
 (0)