Skip to content

Search our website or catalog

This is an H1

This is an H2

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque eleifend, massa ac bibendum interdum, nisi sem ornare magna, a pretium eros nulla sed libero. Nullam tempor finibus quam, a interdum felis maximus rhoncus. Donec id magna eget tellus viverra lobortis a egestas justo. Phasellus aliquet tellus nec eros hendrerit ultricies. Here is a text link. This is the link hover state.

Button

Test Image

This is an H3

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque eleifend, massa ac bibendum interdum, nisi sem ornare magna, a pretium eros nulla sed libero. Nullam tempor finibus quam, a interdum felis maximus rhoncus. Donec id magna eget tellus viverra lobortis a egestas justo. Phasellus aliquet tellus nec eros hendrerit ultricies.

Here’s a Button Here’s a Button


This is an h4 with examples of lists below

  • Patrons under the age of 11 must be accompanied by a person age 13 or older.
  • No food allowed. Covered drinks only.
    • Unordered sublist
    • Unordered sublist
    • Unordered sublist
  • Equipment is available first come first serve.
  • Free materials are limited.
    1. Ordered sublist
    2. Ordered sublist
    3. Ordered sublist
    4. Ordered sublist
  • Staff must approve materials prior to use.
  • The library is not responsible for materials that are damaged.
  1. Patrons under the age of 11 must be accompanied by a person age 13 or older.
  2. No food allowed. Covered drinks only.
    1. Ordered Sublist
    2. Ordered Sublist
    3. Ordered Sublist
    4. Ordered Sublist
    5. Ordered Sublist
  3. Equipment is available first come first serve.
  4. Free materials are limited.
    • Unordered Sublist
    • Unordered Sublist
    • Unordered Sublist
    • Unordered Sublist
    • Unordered Sublist
  5. Staff must approve materials prior to use.
  6. The library is not responsible for materials that are damaged.

Table Heading Table Heading Table Heading Table Heading Table Heading
Table Heading Table data Table data Table data Table data
Table Heading Table data Table data Table data Table data
Table Heading Table data Table data Table data Table data
Table Heading Table data Table data Table data Table data
Here’s an h5

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque eleifend, massa ac bibendum interdum, nisi sem ornare magna, a pretium eros nulla sed libero. Nullam tempor finibus quam, a interdum felis maximus rhoncus. Donec id magna eget tellus viverra lobortis a egestas justo. Phasellus aliquet tellus nec eros hendrerit ultricies.


Shortcode Examples

There are 2 types of shortcodes – those that wrap content, and those that insert content. Just like HTML, shortcodes that wrap content have an opening and closing tag, while shortcodes that insert an element into the content do not need a closing tag.

row/cols

A `col` must always be wrapped in a `row` to work correctly. Due to limitations with WordPress shortcode parsing, you cannot nest these (a `row` can’t appear inside of a `row`).

`col` widths are fractions out of 12. A width of `0` can also be used. Unless you specify that a col shouldn’t grow, columns will grow to fill the space, and the `col` width will be set the minimum width of its container that a `col` is allowed to fill.

This is a column inside of a row.

This is another column. Because it has `class=”col–grow-0″` applied, it will not grow to fill the space. The wrapping `row` has class `row–justify-center`, which displays columns horizontally centered within the row. When you do not set a  `class` attribute on a row, it automatically gets the `row–padded` class. This adds padding to the row. If you specify a `class` on a row you need to add a padding class if you want to include these margins.

This is a third column that displays full width at all screen sizes. Note that `mobile=12` applies to all screen sizes unless a larger size is specified. Because this column is too wide to fit next to its siblings, it wraps to a new line.

This is another `row` example that specifies a class but does not include `row–padded`.

Note that this column butts right up to the previous.

columns (best used for lists)

For ordered and unordered lists, it’s best to use the `columns` shortcode so that the list will still be one cohesive unit. If you were to instead split the list using `row/col` shortcodes, you would create extra spacing between both halves of the list on mobile.

  • Columns need a `count` parameter.
  • The `count` parameter applies above 768px screen widths. Lists will always display in a single column on mobile. You can display a list in up to 12 columns if needed.
  • Note that the `count` parameter here is surrounded in quotes while the `tablet`, `notebook`, etc. classes above are not. For integers, the quotes are optional, but for strings the quotes are required (as with the class attributes on row/col shortcodes above).
  • Lorem ipsum dolor sit amet, consectetur adipiscing elit.
  • Ut sit amet arcu vestibulum sem rhoncus laoreet.
  • Nam mattis varius tristique. Pellentesque hendrerit rhoncus lectus.
  • non mollis turpis sollicitudin id. Integer vitae turpis a sem dictum viverra a sit amet elit.
  • Fusce efficitur, nisl ac tincidunt dapibus, velit quam efficitur nunc, ut tempus purus arcu id neque.
  • Fusce condimentum ante sit amet enim placerat pharetra.

accordion

The `accordion` shortcode requires a `title` attribute and needs to have contents.

This is the content within an accordion. This accordion and the one following it have attribute `state=”open”` which sets it to be open when the page initially loads.

This is more accordion content.

An accordion can be displayed in a smaller format by adding `size=”small”`.

expand_collapse

If you have several accordions, you can add the expand_collapse shortcode above the first one to create an “expand/collapse all” link which, when clicked/tapped, will cause all the accordions to expand or collapse.

table_of_contents

Larger pages can have a table of contents that links to subsections on the page by wrapping the page with a table_of_contents shortcode.

  • With no parameters set, the table of contents will include anchors to the highest level title (h1, h2, h3…) within the shortcode.  You can add a `tag` parameter to override this behavior and treat a specific tag as defining linked sections within the shortcode’s contents.
  • Contents wrapped with a `table_of_contents` shortcode will have IDs inserted for all titles, allowing you to link to that section of the page. However, only top level headers will be included in the table of contents. If you use the `tag` parameter, it will override this behavior and only include IDs on the tag used for table of contents headers.
  • Additionally, you can display the table of contents in multiple columns with `columns=”2″` (values up to 12 are valid)
  • You can optionally include a title on a table of contents with attribute `title=”title text”`.
  • A table of contents can be formatted as an accordion as well. You need to include a `title=”title text” accordion=”true”`

Table of contents using default behavior/all title tags:

This is an h2 (1)

This is some text

This is an h2 (2)

This is some text

This is an h3 (1)

This is some text

This is an h3 (2)

This is some text

This is an h2 (3)

This is some text

This is an h3 (3)

This is some text

Table of contents using only h2s:

This is an h2 (4)

This is some text

This is an h2 (5)

This is some text

This is an h3 (4)

This is some text

carousels

This shortcode is very situational and is used to display book/image carousels on the page in the position you specify. It is only used when you choose `Display as shortcode` when configuring the format of a carousel on a page.

For carousels that display MVLC booklists, see Book carousels from MVLC.

newsletter_form

This is another very situation shortcode used to allow your constant contact newsletter form to display on a page without having hidden content within the WYSIWYG editor. We’ll need to update this shortcode if your form ever gets updated (it’s a quick process).

resource_table

This is another very situational shortcode used to display the resources on the Andover Room Collection page. Using it in other contexts isn’t recommended.

search_query

This is another very situational one. If you need to add another suggested search to the sidebar on the search results page, this will be replaced with the search query.

For example, a link to https://example.com/search?s=[ search_query] (without the leading space in [ search_query]) would auto-fill the user’s search query.

museum_passes

Inserts an iframe displaying the contents returned by your museum passes service. Also includes the script you used on your previous site to size this iframe to its contents.

nyt

Inserts a New York Times Best Sellers list into the page by integrating with your NYT API key.

Hardcover Fiction

August 17, 2025

1

Atmosphereby Taylor Jenkins Reid
In the summer of 1980, Joan Goodwin begins training with a group of candidates for NASA’s space shuttle program.

2

Not Quite Dead Yetby Holly Jackson
With only a week left to live after a violent attack on Halloween, Jet Mason is determined to solve her own murder.

3

She Didn't See It Comingby Shari Lapena
Suspicions arise when Bryden seems to have disappeared from her luxury condo building without any of her belongings.

4

The Dealby Elle Kennedy
Hannah Wells agrees to tutor the captain of the hockey team whose grades are tanking if he agrees to go on a pretend date with her.

5

You Belong Hereby Megan Miranda
When her daughter gets a scholarship to the college where she experienced tragedy, Beckett Bowery suspects dangers will return.

6

My Friendsby Fredrik Backman
A young woman looks into the story behind a painting that was made 25 years ago and a small group of teens depicted in it; translated by Neil Smith.

7

Onyx Stormby Rebecca Yarros
The third book in the Empyrean series. As enemies gain traction, Violet Sorrengail goes beyond the Aretian wards in search of allies.

8

Never Flinchby Stephen King
Holly Gibney does double duty by helping head off acts of retribution and protecting a women’s rights activist.

9

The Hamptons Lawyerby James Patterson and Mike Lupica
The third book in the Jane Smith thriller series. Taking on a celebrity client proves dangerous.

10

Wrath of the Dragonsby Olivia Rose Darling
In this sequel to “Fear the Flames,” Elowen and Cayden face violent attacks, shifting alliances and cutthroat diplomacy.

11

The Wedding Peopleby Alison Espach
A woman who is down on her luck forms an unexpected bond with the bride at a wedding in Rhode Island.

12

Broken Countryby Clare Leslie Hall
Beth must confront her past when the man she once loved as a teenager returns to the village with his son.

13

An Inside Jobby Daniel Silva
The 25th book in the Gabriel Allon series. The art world, the mob and the Vatican intersect when a Leonardo da Vinci painting goes missing.

14

The Enchanted Greenhouseby Sarah Beth Durst
In this novel set in the world of “The Spellshop,” Terlu Perna must figure out a sorcerer’s secrets to save an island containing magical greenhouses.

15

Great Big Beautiful Lifeby Emily Henry
A writer looking for her big break competes against a Pulitzer winner to tell the story of an octogenarian with a storied past.

 

noprint

This simply wraps content in a container that hides it from the print view. Use this if you have a page where extra care is needed for the print view (currently used with the NYT Best Seller pages)

print_button

Likewise, this is used on the NYT Best Seller List pages. This adds a simple button that will open a print dialogue. It is automatically excluded from the print view.