Skip to main content

Anysurfer (Belgian accessibility standard) support for Plone

Project description

This package adds Anysurfer ( support to Plone. Anysurfer is a Belgian accessibility standard equivalent to WCAG 2.0 A.

This package is totally transparent for the user. It fixes various accessibility issues in Plone, in standard features, content types, body texts, forms, search results, …

It also overrides Plone Accessibility info to allow its edition through the Anysurfer control panel.


  1. Adds missing page titles for views / skins / 404 error page

  2. Add search results count in H1 and move H1 to the top

  3. Add search results count in page title

  4. Fixes News item image alt

  5. Removes empty <ul> lists

  6. Allows empty image alt

  7. Fixes ‘Required’ labels html position

  8. Replace Plone replacetag=”h2” by real tag

  9. Replace default Accessibility info with a multilingual editable text

  10. Replace “nav” by “div” for breadcrumb (Only for Plone5. It’s already a div in Plone4.)


This add-on has been developed on Plone 4.3 (Python 2) and Plone 5.2/6 (Python 3).


This product has been translated into

  • English

  • French

  • Dutch (with missing translations)


Install collective.anysurfer by adding it to your buildout:



eggs =

and then running bin/buildout


If you use Plone 4, be careful that you must pin those egg versions:

collective.z3cform.datagridfield = 1.2
soupsieve = 1.9.6



The project is licensed under the GPLv2.


  • Godefroid Chapelle, Original Author [BubbleNet]

  • Laurent Lasudry [Affinitic]

  • Valentin Piret [Affinitic]

  • Sébastien Sirtoli [Affinitic]

  • Christophe Boulanger [iMio]

  • Benoît Suttor [iMio]


1.4.6 (2022-08-17)

  • Fix import error for ILanguageSchema on Plone 5.2 / 6 [laulaz]

1.4.5 (2022-01-19)

  • Get rid of includeDependencies for Plone 6 compatibility [laulaz]

  • Add “from_encoding” parameter to BeautifulSoup transformations to fix encoding. [boulch]

  • Include CMFCore permissions to avoid potential ComponentLookupError [laulaz]

1.4.4 (2021-08-09)

  • Add Plone 6 compatibility. [bsuttor]

1.4.3 (2021-07-31)

  • Fix import from collective.z3cform.datagridfield [laulaz]

  • Fix python3 compatibility : use html.escape instead of cgi.escape [boulch]

1.4.2 (2021-01-06)

  • Breadcrumb is already in a “div” in Plone4, so, we override only for Plone5. [boulch]

1.4.1 (2021-01-04)

  • Override Change <nav> to <div> [boulch]

1.4 (2020-11-18)

  • Add Plone 5 (Python 3) compatibility [boulch, laulaz]

  • Add uninstall profile [laulaz]

1.3.4 (2020-11-04)

  • Content types images should be inside links in search results [laulaz]

1.3.3 (2020-06-17)

  • Avoid displaying ‘None’ title for unknown browser views [laulaz]

  • Avoid traversal error with unicode urls [laulaz]

1.3.2 (2020-06-15)

  • Fix multilingual default text translations at install : #3 [laulaz]

1.3.1 (2020-05-28)

  • Fix upgrade steps (1.2 -> 1.3) [laulaz]

1.3 (2020-05-28)

  • Override Accessibility info with a multilingual / editable / filled by default text. The text can be changed in a new Anysurfer control panel (upgrade step included) [boulch, laulaz]

  • Fix 404 / EN pages title handling [laulaz]

  • Update/fix buildout & tests [boulch, laulaz]

  • Make titles calculation more robust in [uni/multi]lingual websites : #1 [laulaz]

1.2.2 (2020-04-29)

  • Fix view titles calculation in multilingual websites : #1 [laulaz]

  • Add missing plone.api dependency [laulaz]

1.2.1 (2019-11-20)

  • Harmonization of ‘(Required)’ syntax for fields [laulaz]

1.2 (2019-10-04)

  • Add documentation, contributors, fix & use RST [laulaz]

  • Handle more Anysurfer usecases : empty lists, bad alts, required labels, … [laulaz]

  • Move h1, add search results count in search page title & handle JS refresh [laulaz]

  • Handle 404 page [vpiret]

  • Migrate to plone 5 [oxydedefer]

  • Add missing translations for accessibility view title [laulaz]

  • Add missing translations for contact-info view title [laulaz]

1.1 (2012-11-12)

  • Nothing changed yet.

1.0 (2012-11-09)

  • Package created using zopeskel []

Project details

Download files

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

Source Distribution

collective.anysurfer-1.4.6.tar.gz (41.4 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page