Skip to content

Commit

Permalink
SEO improvements
Browse files Browse the repository at this point in the history
  • Loading branch information
Mark Moffat authored and Mark Moffat committed Jan 23, 2020
1 parent 94f4577 commit de0b81d
Show file tree
Hide file tree
Showing 5 changed files with 125 additions and 4 deletions.
6 changes: 6 additions & 0 deletions app.js
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,12 @@ handlebars = handlebars.create({
return'd-none';
}
return'';
},
snip: (text) => {
if(text.length > 155){
return text.substring(0, 155) + '...';
}
return text;
}
}
});
Expand Down
99 changes: 98 additions & 1 deletion package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@
"rimraf": "^2.7.1",
"sanitize-html": "^1.20.1",
"sitemap": "^1.6.0",
"string-strip-html": "^4.3.14",
"strip-bom": "^3.0.0",
"stripe": "^7.12.0",
"uglifycss": "0.0.27",
Expand Down
3 changes: 2 additions & 1 deletion routes/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ const express = require('express');
const router = express.Router();
const colors = require('colors');
const hash = require('object-hash');
const stripHtml = require('string-strip-html');
const moment = require('moment');
const _ = require('lodash');
const {
Expand Down Expand Up @@ -320,7 +321,7 @@ router.get('/product/:id', async (req, res) => {
result: product,
productOptions: productOptions,
images: images,
productDescription: product.productDescription,
productDescription: stripHtml(product.productDescription),
metaDescription: config.cartTitle + ' - ' + product.productTitle,
config: config,
session: req.session,
Expand Down
20 changes: 18 additions & 2 deletions views/layouts/layout.hbs
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@
{{/if}}
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
{{#if metaDescription}}
<meta name="description" content="{{metaDescription}}">
<meta name="description" content="{{snip metaDescription}}">
{{else}}
<meta name="description" content="{{config.cartDescription}}">
<meta name="description" content="{{snip config.cartDescription}}">
{{/if}}
<meta name="keywords" content="{{config.cartTitle}}">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha256-L/W5Wfqfa0sdBNIKN9cG6QA5F2qx4qICmU2VgLruv9Y=" crossorigin="anonymous" />
Expand Down Expand Up @@ -55,15 +55,31 @@
{{/if}}
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-tokenfield/0.12.0/bootstrap-tokenfield.min.js" integrity="sha256-jdwX0QzXB7z7Xc7Vz0ovtIHWO5qIZWg0aLcGv44JDgE=" crossorigin="anonymous"></script>
<!-- SEO data -->
{{#if pageUrl}}
<link rel="canonical" href="{{pageUrl}}" />
{{else}}
<link rel="canonical" href="{{config.baseUrl}}" />
{{/if}}
<meta name="referrer" content="origin" />
<meta property="og:site_name" content="{{config.cartTitle}}" />
<meta property="og:type" content="website" />
<meta property="og:title" content="{{title}}" />
{{#if pageUrl}}
<meta property="og:url" content="{{pageUrl}}" />
{{else}}
<meta property="og:url" content="{{config.baseUrl}}" />
{{/if}}
{{#if result.productImage}}
<meta property="og:image" content="{{result.productImage}}" />
{{/if}}
<meta name="twitter:card" content="summary" />
<meta name="twitter:title" content="{{title}}" />
<meta name="twitter:url" content="{{config.baseUrl}}" />
{{#if pageUrl}}
<meta name="twitter:url" content="{{pageUrl}}" />
{{else}}
<meta name="twitter:url" content="{{config.baseUrl}}" />
{{/if}}
<script type="application/ld+json">
{
"@context": "http://schema.org",
Expand Down

0 comments on commit de0b81d

Please sign in to comment.