This WordPress plugin started as a portable, cross-platform system that
the Wendell Free Library could use as a transition system from its current
paper card based circulation system to the system that will eventually
be rolled out by the regional library system. It has ‘morphed’ to a
web-based successor to Deepwoods Software’s Home Librarian 3 system.

This plugin implements a simple and basic, web-based, library catalog
and circulation system. There are short codes that can be added to
pages of a WordPress site to search and display items in the library
collection. And there are back-end (admin) pages that implement
management of the collection, management of patrons (users) of the
library, as well as implementing the functionality of a circulation


The plugin can be installed by uploading the Zip file to the plugin
installer or unpacking the zip file under the plugins directory.

There are some options that can be set, but these options are not needed
for basic operation. There are three short codes that can be added to
pages or posts for front end searching and display of your library
collection and there are a number of back-end (dashboard) pages for all
of the management of your library.

Por favor lee el Manual de usuario en PDF (también disponible en
) para tener documentación completa sobre como usar este plugin.
Este es un plugin nada trivial, y no hay una guí de inicio rápido sencilla para los impacientes. Los archivos del manual de usuario tienen 1548805 bytes en la versión italiana y 1548666 en la versión en inglés y MD5 sums están disponibles. Si tienes problemas para abrir el PDF,
por favor revisa el tamaño y el MD5Sum. Si el tamaño es correcto y el MD5Sum es correcto, intenta con otro lector de PDF.

Preguntas frecuentes

El apoyo se realiza ya sea a través de [Deepwoods Software’s Bugzilla][bugreport]
(envía cualquier error y funcionalidad que requieras a Bugzilla) o a través de
[Deepwoods Software’s Support page][support] (usa esto para comentarios o
preguntas generales).

¿Dónde están los menús de administración?

Ha instalado exitosamente el plugin Web Librarian, pero ninguno de los menus de administración (Clientes, Colección, Tipos de circulación, Escritorio de préstamos, o Estadísticas de préstamos) aparecen. ¿Por qué sucede esto? probablemente porque se encuentra firmado como administrador del sitio (su rol de usuario es Administrador). Necesita crear al menos un usuario con rol de bibliotecario y después acceder al sistema con el mismo. De manera opcional, puede crear usuarios con perfiles de Ayudante de bibliotecario o Voluntario, los cuales cuentan con menos privilegios — crear usuarios de los tipos mencionados tienen sentido en bibliotecas que cuentan con personal adicional (“Ayudante de bibliotecario”) o con trabajadores extra (“Voluntario”) que atiendan el mostrador. Es muy importante leer cuidadosamente y entenderla completamente, la sub-sección titulada “Configuración de roles de usuario” contenida en la sección “Instalación y configuración básica”.

Which stylesheet (CSS) selectors can I use to modify the appearance of the front end?

Esto se describe en el apéndice del manual de usuario.

Estoy teniendo problemas con la carga en masa.

Aquí hay algunos consejos relacionados con los problemas de cargar una colección en masa:

If you export a CSV file from Excel (and probably other ‘modern’ spreadsheet
programs as well), you should check the resulting CSV file with a plain text
editor. Things to look for include extra commas at the ends of lines
(‘phantom’ or empty columns) and strange characters, partitularly in the
headings and in barcodes (if you using your own barcodes).

Other issues involving issues with newline characters. Most of the time
WordPress will be running on a LAMP server (a Linux machine). Linux uses the
linefeed character (ASCII 10, Ctrl-j) as newline character. MS-Windows uses a
two character sequence for newlines: carriage return (ASCII 13, Ctrl-m)
followed by a linefeed (ASCII 10, Ctrl-j). MacOSX uses just a carriage
return (ASCII 13, Ctrl-m). Web browsers are supposed to normalize uploaded
plain text files, but sometimes this does not happen. It might be necessary
to fix things in advance of uploading.

Finally, try your upload in small chunks, at least until you get the process
worked out. Remember that most WordPress (PHP) installs have a limit on the
maximum size of uploaded files, so a really large database is going to have be
uploaded in chunks anyway.

¿Cómo puedo revisar un artículo?

In order to check an item out, you need to load a patron record into the
circulation desk page. You can use the “Find Patron” button to search the
patrons by name and then select the proper result from the list of results
in the drop down and then click the “Lookup Patron” to load that patron’s
record. You can then enter the item’s barcode in the item barcode field and
click the “Checkout” button. It is possible to pre-load the item barcode
field before looking up the patron.

La búsqueda no funciona – me envía de nuevo a la página principal.

Esto es causado por un conflicto con los enlaces permanentes y el manejo de los formularios.
Respondido en el foro de soporte en el sitio de WordPress:


Sugiero esta solución:

Change your site’s permalink settings: on the dashboard select
Settings->permalinks, then select something other than the ‘default’.

No puedo abrir el manual de usuario, parece que está dañado.

Please check the size of the PDF (1548805 for user_manual_IT.pdf and 1548666
for user_manual.pdf) and also check the MD5 sum to make
sure you properly downloaded the file. The correct download urls are:

Manual de usuario (inglés):

Manual de usuario (Italiano):

Algo no funciona. ¿Qué debo hacer?

Informa de algún error en [Deepwoods Software’s Bugzilla][bugreport].

Tengo otra pregunta que no está enlistada. ¿Qué debo hacer?

Submit one on Deepwoods Software’s Support page. You can
also submit a documentation bug at Deepwoods Software’s Bugzilla
as well.


5 de enero de 2018
Dear Robert, Truly value your exertion in making this module. Good to run an online library. We have effectively setup and propelled a free online library for our group. Great work. We created a new theme on your work and its all thanks to your work. Web Librarian Much thanks 🙂
13 de noviembre de 2016
As a non-lending family history society, we wanted a plugin which would enable members to search the library catalogue and display results. We did not require the circulation side of it as we don't lend materials. We also wanted the ability to enter the category and subject so have added those to the database_code_php so that the librarian can select from each without having to retype every time. The librarian can export to a CSV file (already provided), and can now search the collection using Title, ISBN, Keyword, Call Number etc and sort on those headings as well. This has the bones of a good program for our needs and I had searched long and hard before downloading this one.
3 de septiembre de 2016
I tried loading this onto a subdomain site with the theme ‘Evolve'. Each time the plugin uploaded and activated, but soon as I added a library user the subdomain site and my main site froze. I had to delete the plugin in order to restore. Maybe this is a good plugin but not for me. I have no option but to look for an alternative.
Leer todas las 12 reseñas

Colaboradores y desarrolladores

Este software es de código abierto. Las siguientes personas han contribuido a este plugin.


"WebLibrarian" ha sido traducido a 3 idiomas locales. Gracias a los traductores por sus contribuciones.

Traduce "WebLibrarian" a tu idioma.

¿Interesado en el desarrollo?

Revisa el código, echa un vistazo al repositorio SVN o suscríbete al registro de desarrollo por RSS.

Registro de cambios


Fixed collection sorting.


Se corrigió un ; faltante en short_codes.php.


Se reparó CVE-2019-1010034.


Add loading of base jQuery, in case the theme does not load it.


Perform length check and truncation in WEBLIB_ItemInCollection::upload_csv().


Se eliminó un signo de dólar sobrante en database_code.php.


Small bug — fix small edit error in WEBLIB_AdminPages constructor.


Changed the localization slug from web-librarian to weblibrarian to conform
with https://make.wordpress.org/meta/handbook/documentation/translations/

Fix yet another XSS problem in front end short codes.

Fix additional XSS problems in front end short codes.

Fix XSS problem in front end short codes.

Fix pubdate error in short codes.

Corrected ordering of fields in long format short code.

  • Hubo un cambio para que los formularios de entrada muestren la fecha de manera consistente.

  • Remove USA specific State check (required two letter state).


  • Relaxed the State, Zip, and Telephone fields of patrons to allow for non-USA users.


  • Se corrigió un pequeño error de manejo de código en WEBLIB_Patrons_Admin.php.


  • Changed to use PHP5 constructors in Widget classes (WP_Widget).


  • Changed split() in includes/WEBLIB_Patrons_Admin.php to explode().


  • Se añadieron archivos en idioma checo.


  • Se añadió el módulo de portugués de Brasil.


  • Minor bugfix for Patron Short Codes: removed unused functions and removed
    references to undefined members (leftovers from copying ListTable code from
    Admin land).


  • Added check for patron insertion falure.


  • Added short codes to put patron edit functions on the front side: editing
    patron contact info along with hold and circs handling. This allows use with
    plugins like WooCommerce that redirect away from the “normal” WP Admin


  • Secure data export code: convert to use admin-post.php.
  • Secure AWS code: convert to use admin-post.php and admin-ajax.php
  • Move AJAX code to proper WP coding (using admin_ajax.php).

  • Add ‘view_admin_dashboard’ cap. to Librarian, Senior Aid, and Volunteer, to allow usage with WooCommerce.

  • Fix minor error (wrong scope for WEBLIB_Circulation_Admin::single_row_columns()).

  • Add auto truncation of collection fields to prevent database errors.

  • Fix minor error (wrong scope for WEBLIB_Circulation_Admin::get_column_info()).

  • Se corrigió error menor (variable sin definir).

  • Fix errors in cirlist code (fun with changed WP_List api…).

  • Moved URL defines to the constructor. And updated tested to version.

  • Fix incrstring — MySQL uses case folded compares for unique string keys!

  • Add wildcards to username search in add patron id.

  • Fix small bug in Add Patron ID page: wrong page id in search form.

  • Corrección menor en la hoja de estilo (#overdue => span.overdue).

  • Actualización menor en la documentación

  • Se manejaba la columna extra de Excel tontamente.


  • Se corrigieron problemas con los códigos de barra generados en las cargas en masa.

  • Include medium and large image in AWS item loopup and make them available for insertion

  • Fix bug in autobarcode generator code. (Stupid SQL ‘order by’!).

  • Updated AWS Locale endpoints.

  • Se corrigió el atributo de nombre faltante en el shortcode.

  • Se eliminaron dos pequeñas etiquetas.

  • Comment out ALL debug code (silly IIS).

  • Fix minor bug in patron admin code (wrong page name).

  • Workaround for missing localization function (nl_langinfo()).
  • Fix missing localization function call (missing _’s).

  • Se corrigió dedazo en el archivo readme.txt


  • Ayuda contextual traducida al italiano (completado).

  • Update when styles are enqueued.
  • Ayuda contextual traducida al italiano (en proceso).

  • Updated readme: Fixed Changelog section (too many =’s!).
    Added link for user manual (in English and Italian).
  • Updated user manual to include style sheet information for front side

  • Added hook to allow for localized contextual help.
  • Se corrigió un error menor de localización.


  • Move user manual to assets.
  • Small fix to options page: allow for blank AWS options.

  • Front side update: minor short code updates.

  • Front side update: short codes and front style sheet updates.

  • Actualizaciones de ubicación. Actualización menor a la base de datos.

  • Localization updates, including localized date validation.

  • Actualizaciones de ubicación.

  • Se agregó la definición de estilo faltante para weblib-item-table.

  • Changed default for publication date to 1900-01-01 to deal with possible
    MySQL/PHP error on activation (out of range default for publication date).


  • Fixed up the jQuery UI, smoothed out the rough edges (eg got all of the
    proper stylesheet and image support). Additional (minor) localization

  • Way too much fun with resizable iframes and jQuery: put the Amazon search
    thingy in an iframe and put the iframe into a resizable (via jQuery) div.
    sort of works, but still a little funky.
  • Fixed various minor typos: broken tags, spelling errors, missing


  • Changed AWS insert buttons to be a small icon instead of “bulky” text buttons
  • Se actualizó la localización y se añadió la traducción al italiano.

  • Add insert / add buttons to Amazon item loopup. (Experimental!)

  • Se eliminan las funciones al desactivar.
  • El título ahora es usado de manera predeterminada en búsquedas de Amazon.

  • Move loading of Localization files to the correct place


  • Added missing contextual help page.
  • Fixed silly typo error in the collection bulk delete code.


  • Added code to collection and patron delete functions to clear out orphaned
    holds and checkouts.
  • Added Collection Database Maintenance page, containing a button to clear out
    orphaned holds and checkouts.


  • Updated the support/donation links (added localization).
  • Se añadió página ‘Acerca de’.


  • Se añadieron botones y enlaces para donaciones.
  • Se actualizó la localización.


  • Minor bug fix with Call Number column.


  • Added Call Number column to collection database.
  • Se actualizó la localización.


  • Minor documentation update for the contextual help for the options page.


  • Major code rewrite. All of the WP_List_Tables redone properly and
    separated into separate source files. Adding the per_page screen options
    Added bulletproofing to the collection import code: barcodes are now checked
    and fixed as they are added — no more ‘broken’ databases!

  • Varias correcciones de seguridad.

  • Incluye código de corrección de errores.


  • Se corrigió un error menor con la validación del número telefónico al añadir patrones.


  • Fixed database creation to deal with MS-Windows / MySQL weirdness
    (no default allowed for BLOB/TEXT — error under MS-Windows, warning
    under Linux).


  • Se añadió la localización al código JavaScript


  • Se añadió la localización al código PHP


  • Se corrigió error de sintaxis SQL.
  • Added ‘upload_files’ capability to Librarian and SeniorAid roles (allows
    them to upload images for items in the collection).
  • Fixed the scoping of variables in the JavaScript code.


  • Se agregó algo a la sección de FAQ.


  • Se corrigió un problema con el shortcode del formulario de búsqueda.


  • Se corrigió un problema con las etiquetas cortas de PHP.


  • Updated to include the AssociateTag parameter required by Amazon.


  • Primer lanzamiento público.