1.0.1 • Published 5 years ago

seo-tags-helper v1.0.1

Weekly downloads
6
License
ISC
Repository
github
Last release
5 years ago

SEO Tags Helper

Generates Meta Tags for SEO, Facebook Open Graph, Twitter Cards

Installation

npm i seo-tags-helper

Getting Started

// Node.js
const seoHelper = require('seo-tags-helper')

Usage

seoHelper.print( meta = {}, config = {} )

Returns the constructed HTML Output String, using data specified in meta.

  • meta An object containing data for meta tags, values specified here override the default values (if specified)

    Refer Here for a list of possible keys for meta

  • config An object containing configuration options, values specified here override the global configuration

    Refer Here for a list of possible configuration options


seoHelper.setConfig( config = {} )

Sets Global Configuration

Refer Here for a list of possible configuration options


seoHelper.setDefault( defaultMeta = {} )

Sets default values for meta tags data, default values are used as fallbacks for keys not specified in seoHelper.print

Refer Here for a list of possible keys for defaultMeta


Example with ejs

// Controller
const seoHelper = require("seo-tags-helper");

// Set Default Value, acts as fallback
seoHelper.setDefault({ title: "Dummy Title" });

// Set Global Config
seoHelper.setConfig({ enableRobots: false, enableFacebookOg: false });

module.exports.dummy = (req, res) => {

	const metaData = {
		title: "Lorem Ipsum",
		favicon: "https://picsum.photos/60",
		desc: "Lorem ipsum dolor sit amet consectetur adipisicing elit. ",

		twitterTitle: "Twitter - Dummy Title",
		twitterDesc:  "Twitter - Lorem ipsum dolor sit amet consectetur adipisicing elit",
		twitterImage: "https://picsum.photos/400",
		twitterUrl: "https://www.lipsum.com/",
	};

		// Pass Data To view
		res.render("view", { metaData, seoHelper });
	});
};
<!-- View -->

<html>

  <head>
    <!-- Pass config as the second argument, overrides global config -->
    <%- seoHelper.print(metaData, { useGeneralAsDefault: false } ) %>
  </head>

  <body>
    Hello World
  </body>

</html>

Configuration Options

OptionDefaultDescription
enableGeneraltrueEnable General Meta Tags
enableFacebookOgtrueEnable Tags for Facebook Open Graph
enableTwittertrueEnable Tags for Twitter Cards
enableRobotstrueAllow / Disallow Robots
useGeneralAsDefaulttrueUse General tags as default for Facebook and Twitter

Meta Tags Data Reference

KeyDescription
titleMeta Title
descMeta Description
imageImage to be used for Facebook and Twitter if ogImage or twitterImage is missing and enableGeneralAsDefault is set to true
imageAltAlt Text for Image
urlUrl to be used for Facebook and Twitter if ogUrl or twitterUrl are missing and enableGeneralAsDefault is set to true
faviconLink to Favicon Image
ogTitleTitle to be used for Facebook Open Graph, defaults to title if enableGeneralAsDefault is set to true
ogTypeType to be used for Facebook Open Graph - article, audio, video etc.
ogDescDescription to be used for Facebook Open Graph, defaults to desc if enableGeneralAsDefault is set to true
ogImageImage to be used for Facebook Open Graph, defaults to image if enableGeneralAsDefault is set to true
ogImageAltAlt Text for ogImage
ogUrlUrl to be used for Facebook Open Graph, defaults to url if enableGeneralAsDefault is set to true
ogFbAppIdFacebook App ID
twitterTitleTitle to be used for Twitter Card, defaults to title if enableGeneralAsDefault is set to true
twitterDescDescription to be used for Twitter Card, defaults to desc if enableGeneralAsDefault is set to true
twitterUrlUrl to be used for Twitter Card, defaults to url if enableGeneralAsDefault is set to true
twitterImageImage to be used for Twitter Card, defaults to image if enableGeneralAsDefault is set to true
twitterImageAltAlt Text for twitterImage

Contact

LinkedIn