Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

sitemap_notifier

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

sitemap_notifier

  • 1.0.0
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source

Build Status

Sitemap Notifier

Sitemap Notifier is a Ruby on Rails plugin that, when installed, automatically notifies Google, Bing, and Yahoo of changes to your models, i.e. changes to your sitemap. It also works in conjunction with the dynamic_sitemaps plugin.

Installation

In your Gemfile:

gem 'sitemap_notifier'

And run:

$ bundle install

Example

Start by generating an initializer:

$ rails generate sitemap_notifier:install

Then, in config/initializers/sitemap_notifier.rb:

SitemapNotifier::Notifier.configure do |config|
  # Set URL to your sitemap. This is required.
  # This can also be configured per model basis,
  # see https://github.com/lassebunk/sitemap_notifier#per-model-sitemap-url
  config.sitemap_url = "http://example.com/sitemap.xml"

  # Models that should trigger notification of search engines.
  # Default is to trigger on all creates, updates, and deletes.
  config.models = [Article, Category]

  # Or, if you want to specify on which actions to notify search engines:
  config.models = { Article => [:create, :destroy],
                    Product => :update,
                    Page => :all }

  # Enabled in which environments – default is [:production]
  config.environments = [:development, :production]

  # Delay to wait between notifications – default is 10 minutes
  config.delay = 2.minutes

  # Additional urls to ping
  config.ping_urls << "http://localhost:3000/ping?sitemap=%{sitemap_url}"
end

Then create or update a model:

Article.create :title => "My New Article"

The search engines are then automatically notified.

After installation

After you install and configure the plugin, it'll automatically notify Google, Bing, and Yahoo every time you update a model. After each notification, it'll wait 10 minutes (by default) before notifying again. This is to ensure that for example a batch update won't trigger an equal amount of notifications.

Customization

Per model sitemap URL

The sitemaps defaults to what you set in SitemapNotifier::Notifier.sitemap_url. If you want to use a different sitemap URL based on data in your models, you can override the sitemap_url method of each of your models like this:

class Product < ActiveRecord::Base
  belongs_to :site

  def sitemap_url
    "http://#{site.domain}/sitemap.xml"
  end
end

Conditional notifications

You can decide on model level whether the search engines should be pinged by overriding the notify_sitemap? method of your models:

class Product < ActiveRecord::Base
  belongs_to :site

  def notify_sitemap?
    site.id == 1
  end
end

Documentation

Copyright © 2010-2013 Lasse Bunk, released under the MIT license

FAQs

Package last updated on 25 Feb 2013

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc