Hammas Calendar


Plugin allows web users to interact with dental software Hammas to add and delete appointments. Users are identified by
using Estonian ID card or Estonian mobile-ID service. For more information about how to get start can be found from the official website


  • Main interface of online scheduling that will be displayed on the webpage.
  • Verification of appointment and identification page.
  • Your appointment management page that allows to remove existing appointments.


  1. Uncompress the download package
  2. Upload folder including all files and sub directories to the /wp-content/plugins/ directory.
  3. Activate the plugin through the ‘Plugins’ menu in WordPress
  4. Open the plugin settings and fill out the empty fields. If there is any fields you don’t have correct value for please contact with Hammas support.
  5. Place tags into page content to activate the plugin. (e.g [hp-calendar])
  6. FYI: There is additional information on the plugins configuration page.


What is Hammas and how it works?

Please visit the official website

Contributors & Developers

“Hammas Calendar” is open source software. The following people have contributed to this plugin.


Translate “Hammas Calendar” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Maintenance update.
  • Multi api key/database support.
  1. Selected api key index can be defined in apix argument in shortcode. I.e For first key [hp-calendar apix=0]
  2. In the settings api keys have to be defined pipe delimited I.e: API_KEY_1|API_KEY_2
  3. Same logic applies to Logo and Company name setting.


  • New optional shortcode options:
  1. default_clinic=”” will show state filter selection so users can filter clinics by state.
    = Auto select first clinic, -1 = Asks user to select clinic , id = selected clinic with id


  • New optional shortcode options:
  1. show_location=”true” will show state filter selection so users can filter clinics by state.
  2. show_clinic=”true” will enforce plugin to ALWAYS show clinic selection.


  • Maintenance update.


  • New shortcode attribute “get_next_if_nothing”. When set “true” auto-fetches next months slots
    if current month doesn’t have any available.


  • Improvement in API url handling.


  • Maintenance update.


  • Critical hotfix to last release. In some cases plugin stopped populating data.


  • HTTP Requests are now made using fsockopen instead of file_get_content. Some hosting providers
    have disabled remote requests for file_get_content.


  • Maintenance update
  • Few minor backend optimizations.


  • WordPress compatibility update.


  • New feature: Ability to add attribute default_service to WordPress shortcode.
    When the default service is defined widget will auto-selects service and query-s
    open slots from current month. Also multiple service codes can be defined and the
    first available code found from dropdown will be selected. If non of the codes are found
    the logic will select the top service of dropdown. I.e [hp-calendar default_service=”3,123″].
    Service codes can be found by inspecting the dropdown menu tag values.
  • Also at the this plug-in is released 2 new behavioral changes will be made
  1. First free slot in a month will be auto selected.
  2. If there is no open slots in the month then informative message will be shown.


  • Localization update and easier instructions is configuration.


  • WordPress update compatibility update.


  • Optimization: Plugin is now using minified versions of js libraries and css styles


  • Optimization: Scripts and styles are now loaded only when Calendar is displayed.


  • Minor backend api communication change.


  • Compatibility update for wordpress 4.0


  • Minor internal code enhancement.


  • Better handling in case there is no logo url.


  • Compatibility update with new WordPress 3.9


  • First version that’s published in WordPress repository.
  • Added option to force interface language if wordpress localization isn’t used properly.