Git Product home page Git Product logo

metalsmith-seo-checker's Introduction

metalsmith-seo-checker

This plugin provides a simple way to ensure that front matter values regarding SEO are valid.

You can provide defaults for SEO parameters, or mark them as required by setting them to true. This should be combined with something in your templating language that places these values where they belong. An example header that uses handlebars templating can be seen at /examples/seo-header.html

This plugin manipulates values within an seo object inside of your front-matter, with one exception. The one exception is the title property which is expected to be set on the base front matter object.

SEO Checker will also check for a private flag on the front matter. If this flag is found and there is no seo.robots provided seo.robots will be set to 'noindex, nofollow'.

With this set of options:

{
    ignoreFiles: ['special.html'],
    trailingSlash: true, // Append a trailing slash to the canonical url
    lengths: {
        title: 60, // This is the default value
        description: 160 // This is the default value
    },
    seo: {
        title: true, // This is the default value
        description: 'Foo Bar Baz', // There is no default for this
        robots: 'index, follow' // This is the default value
    },
    ogp: {
        defaultType: 'website', // This is the default value
        defaultImage: 'www.example.org/myImage.png', // The default value for this is false
        ignoreMissingImage: false // This is the default value
    }
}

The lengths block sets up max string length checks on different fields. The seo block defines which fields are required, or have a default value. Finally the ogp block defines attribute checks that are specific to the Open Graph Protocol.

In english this config block is ensuring that we have a title on the base front matter and that it is no longer than 60 characters. We then provide a default description of 'Foo Bar Baz' and ensure that all seo.descriptions are less than 160 characters. We are also ensuring that any page without a seo.robots field defined will have 'index, follow' set. Finally the ogp config ensures that for any page that has no seo.ogp.type we set the type to 'website', and for any page without an image we can provide a default image. The ignoreMissingImage config determines how the plugin will react to there being no seo.ogp.image (after applying the default image provided).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.