Glossify Internal Links Auto SEO
What it does
This module generates internal node links (crosslinks) automatically - ideal for SEO of your site's pages.
It is currently node-based - looks for node titles in node bodies and makes them inbound links (= internal links ~= node links) . There are plans to extend it to taxonomy terms, too.
Author
The new 2.0 version is thanks to segments.at - Austria. You can contact us for help/advice or paid customizations.
If you like what we do and we made your life better - you can buy us a beer (TODO: beer link to come :) ).
TODO: Upload a segments video screencast with a brief showcase.
Features
- SEO - This module autolinks your site's content pages to one another - wonderful for SEO automation. Thus you can boost the Google PR of one page from PR-s of another pages.
- FAST - HTML parsing is fast the 1st time and cache-able after that - imagine you had 500 nodes with terms and the current node has 400 plaintext html chunks to loop over searching for terms - that's 200 000 PHP-foreach iterations! Version 2.0 does this extremely fast the first time (in about 0.1-0.2 secs on a average modern server) and even faster if the page is cached by Drupal's mysql cache.
- SMART - There is a plan for an option to save replaced links permanently in the nodes. (TODO)
- SAFE - no html tags mangling - Since v2.0 - the module uses the simplehtmldom PHP library ) via the simplehtmldom API Drupal module (a new requirement of Glossify ).
This ensures that html is parsed safely=correctly in hook_nodeapi, $op=alter.
- no replacement is done in the html tags themselves (a bug in Glossify v.1.x which did a simple preg_replace on the whole html text)
- only in the plaintext within the html is parsed for links/terms
- all a-tags' plaintext is ignored - you cannot create a-tag within another a-tag
- when doing a preg_replace (with every plaintext chunks as an input) - the term-node's title is preg_quote-ed
- FLEXIBLE - Nodes2nodes
From the admin UI you can select which node types will be :
- containing glossary term definitions
- contain the terms in their body
(these types can overlap)
- TODO - a tag is planned
- Page-term bondage display styles
Glossify currently allows three different modes of display (bondage types):
- Titles are linked to their nodes. Clicking a link takes you to that node.
- Titles are displayed as a hovertip. This requires the hovertip module.
A themeable "Terms referenced" block is displayed below the main content (by default, as a definition list).
- Other settings/features
- a setting to parse teasers too
- does not link a node to itself
- a setting to link only first occurance of a node's title
INSTALL
- Version 2.x - require http://drupal.org/project/simplehtmldom to parse the DOM tree.
- Download, enable and setup at admin/settings/glossify.
Version 2.0 alpha released!
The whole module has been rewrote by the new maintainer rsvelko on the 27th of August, 2009.
Roadmap
- possibly implement it as an input filter - to be researched
- add an markup tag or similar
- add a node_save() feature
- decide what to do with overlapping terms - SEO and "SEO Tools" for example... (currently it is unclear what exactly happens in the code...)
- test multilingual support
As compared to Glossary (taxonomy term-based) and G2 Glossary ( node-based, no auto-linking, just a filter-tag, usage ~20) modules:
- it is SIMPLER - in features/settings and in code length - the important part is about 200 lines of code
- it is AUTO linking
- it has a different use-case - to solve the auto linking problem and serve as a save html parser - rather than to build a site glossary so much.
People involved
Version 1.0 of this module was sponsored by the LepTree project.
Releases
| Official releases | Date | Size | Links | Status | |
|---|---|---|---|---|---|
| 6.x-2.0-alpha1 | 2009-Aug-29 | 10.2 KB | Download · Release notes | Recommended for 6.x | |
| 5.x-1.1 | 2008-Nov-05 | 9.66 KB | Download · Release notes | Recommended for 5.x | |
