Skip to main content

Quintagroup Search Engine Optimization Tool

Project description

Quintagroup Search Engine Optimization Tool

This product was created to enhance SE visibility of Plone sites.


quintagroup.seoptimizer allows per document editing of:

* HTML Title tag

* META description tag

* META keywords tag

* HTML comment into page header

* META robots tag

* META Disposition tag

* Canonical URl (

For Title, description keywords and comment you have statistics (total/stop/used words, field length counter).


* Go to Plone Control Panel, enable Plone SEO for desired content types

* Go to a document (Blog entry, news item, event, etc)

* Switch to *SEO Properties* tab

* Select *Override* checkboxes of features you want to override

* Type-in your SEO values

* Save changes

* Do this for all documents that need enhanced SEO properties


* Plone 3.x, Plone 4.0

quintagroup.seoptimizer requires plone.browserlayer package to be installed in your site. plone.browserlayer package is shipped with Plone >= 3.1 and thus you don't need anything extra when you have that version of Plone.

But for Plone 3.0.x < 3.1 the process looks like this:

* if you are creating a new Plone site and want it to support Quintagroup Search Engine Optimization Tool, just select 2 extension profiles Local browser layer support and quintagroup.seoptimizer profile in 'Extension Profiles' when adding a new Plone site;
* if you want to add quintagroup.seoptimizer to already-existing Plone site, you need to apply Local browser layer support extension profile and then quintagroup.seoptimizer profile. You can do it either in portal_setup/Import or in portal_quickinstaller by simple installation procedure.

In Plone 3.1 you can simply install quintagroup.seoptimizer profile in portal_quickinstaller without need of prior installation of Local browser layer support (that is not available for installation anyway, since it is a part of core system).

IMPORTANT! For Plone 3.0.x you should use plone.browserlayer 1.0.rc3. Be sure to define the right version of plone.browserlayer in your buildout.cfg. For Plone 3.1.x just use the version you have.


* For Plone 4 versions - use Plone SEO 4.0 release and up In your buildout.cfg file's egg section set product version::

eggs =
quintagroup.seoptimizer >=4.0

* For Plone 3 versions - use the latest Plone SEO 3.x release In your buildout.cfg file's egg section set product version::

eggs =
quintagroup.seoptimizer >3.0,<4.0

* For Plone 2.x versions - use Plone SEO 1.7.1 release


Watch Plone SEO screencast ( to learn how to install and set up Plone SEO on a buildout-based Plone instance for Plone 3.2 or above.


* Myroslav Opyr

* Volodymyr Romaniuk

* Mykola Kharechko

* Vitaliy Podoba

* Volodymyr Cherepanyak

* Taras Melnychuk

* Vitaliy Stepanov

* Andriy Mylenkyy



Alternatively, if you are using zc.buildout and the plone.recipe.zope2instance recipe to manage your project, you can do this:

* Add ``quintagroup.seoptimizer`` to the list of eggs to install, e.g.::

For Plone 4 - in your buildout.cfg file write::

eggs =
quintagroup.seoptimizer >=4.0

For Plone 3 - in your buildout.cfg file write::

eggs =
quintagroup.seoptimizer >3.0,<4.0

* Tell the plone.recipe.zope2instance recipe to install a ZCML slug::

zcml =

* Re-run buildout, e.g. with::

$ ./bin/buildout

* Restart the Zope server, e.g with the following command in the terminal::

$ ./bin/instance restart

Traditional Zope 2 Instance

To install quintagroup.seoptimizer into the global Python environment (or a workingenv), using a traditional Zope 2 instance, you can do this:

* Copy ``quintagroup`` folder to your instance's */lib/python* directory.

* Create a file called ``quintagroup.seoptimizer-configure.zcml`` in your instance's */etc/package-includes* directory. The file should only contain this::

<include package="quintagroup.seoptimizer" file="configure.zcml" />

* Restart the Zope server, for example with the following command in the terminal::

$ ./bin/zopectl restart

Install quintagroup.seoptimizer via ZMI portal_setup -> *Import* tab. Select ``quintagroup.seoptimizer`` from the list of available profiles and press *Import all steps*.


To uninstall quintagroup.seoptimizer - go to ZMI portal_setup -> *Import* tab. Select ``quintagroup.seoptimizer uninstall`` profile from the list of available profiles and press *Import all steps*.

Package Upgrade / Reinstall

In case you want to upgrate quintagroup.seoptimizer to a newer version in your buildout:

* Remove ``quintagroup.seoptimizer-overrides`` from ``buildout.cfg`` file's ZCML area if it is there (starting from 3.0 release - quintagroup.seoptimizer package does not use overrides.zcml file any longer)

* Upgrade quintagroup.seoptimizer to the newer version using buildout (rerun the buildout to replace old package with a new one in your instance)

* Run the reinstall procedure: visit "Site Setup" -> "Add-ons" control panel in your Plone site, where you have to press quintagroup.seoptimizer button next to Upgrade. (The same can be done with quickinstaller via ZMI: at /portal_quickinstaller/manage_installProductsForm: check the seoptimizer box and press Reinstall button.) This is an essential step as new version of product introduces new persistent settings and ways to migrate settings/content from old to new version.


3.0.7 (2010-10-20)

* Removed lynx dependency,
fixed issue.
* Added 'External keywords test' option to SEO configlet.
Keyword validation can occur against HTML produced by Plone
itself or against one processed externally with Deliverance/xdv.

3.0.5 (2010-05-15)

* Fix version issue in metadata.xml [crchemist]

3.0.4 (2010-05-05)

* Added overrides.zcml for BBB, [mylan]
* Prevent view breakage for context, which canonical url can't be calculated for [mylan]
* Fixed security issue for SEO Property action and view
[crchemist, mylan]

3.0.1 (2010-04-29)

* Bad title tag definition fixed [crchemist]

3.0 (2010-04-20)

* Drop global keywords functionality [mylan]
* Fix performance issues [mylan]
* Reviewed, updated tests [mylan]
* Moved all metatags list into htmlhead viewletmanager [mylan]
* Added advanced tab to seo configlet [mylan]
* Rewrite seo configlet - use standard plone configlet approach [mylan]
* Use collective.monkeypatcher package for listMetatags patch [liebster]
* Killed accessors usage in 'metatags order' property [liebster]
* Changed management of 'SEO' tab visiblity for different portal types [liebster]
* Implemented migration to new version [liebster]
* Cleanup code [mylan]
* Extend package's requirements, register in z3c.autoinclude entry-point [mylan]
* Translations rebuilt [mylan]
* Typo in fields description of seo_configlet fixed [mylan]
* Ukrainian translations updated [mylan]

2.3.4 (2010-03-30)

* Fixed bugs with using domain by custom content type.
* Missing icon added

2.3.3 (2010-02-22)

* Fixed content types translation

2.3.2 (2010-02-16)

* Removed the broken keywords filtering code (fixed the issue #10 decode error) [chervol]

2.3.0 (2010-02-08)

* Added condition install or reinstall package [liebster]
* Added filter keywords by their availability in content [liebster]
* Added settings to control Plone categories and global SEO keywords behaviour [liebster]
* Added settings to control Plone global SEO keywords vs local SEO keywords behaviour [liebster]

2.2.0 (2010-01-06)

* Refactor seo_context_properties cpy script to browser view [liebster]
* Added search numbers of keywords at page [liebster]

2.1.1 (2009-11-09)

* Fixed bug of meta-tags absence for folderish objects [mylan]

2.1.0 (2009-10-21)

* Added metatags order feature, which is managed by metatags_order property of of configlet [liebster]
* Resolved metatags duplication [liebster]

2.0.9 (2009-09-10)

* Fixed bugs in metatags viewlet [liebster]

2.0.8 (2009-07-28)

* Added use of default meta tags from the control panel in metatags viewlet [liebster]

2.0.7 (2009-07-25)

* Fix url action in qseo_properties_edit_form [liebster]

2.0.6 (2009-05-19)

* Fix page title tag, now it is not duplicated in case site and current page have equal titles [piv]

2.0.5 (2009-04-03)

* Fix seoptimizer intrusion before installation to plone instance [mylan]
* Fix base url for folderish objects [mylan]
* Bind viewlets to specific layer and set viewlets order for all skins. [mylan]

2.0.4 (2009-03-31)

* Canonical url support added [mylan]
* Custom script viewlets in html head added

2.0.2 (2009-03-06)

* Uninstallation package profile title added
* REAME.txt and INSTALL.txt changed, text format ready for PyPi

2.0.1 (2009-02-16)

* Formatted text in docs for PyPi

2.0.0 (2009-02-11)

* Some refactoring of product was done, some python script are moved to zope 3 views.
Also all main parts of html head section were moved to viewlets and now can easily be


* Support of additional keywords added.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution (87.1 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page