# Changes in Filters and Actions in Version 5.0

NOTE: This only applies to users who have used custom code to customize how Mooberry Book Manager works on their site. As such, this is a technical article meant for the developers who implemented this custom code.

When writing Mooberry Book Manager version 5.0, I tried to minimize the breaking changes as much as possible. However, changing the underlying meta data library not only changed some areas of code but also the structure of the data in the database.

I tried to note every change, but it's possible I missed something. Please back up your site before upgrading to version 5.0 just in case. If you run into any issues upgrading to version 5.0 please contact me at <support@mooberrydreams.com> with information about the error.

### Changes with meta boxes and meta fields including CPTs, Terms, and Settings

The biggest change is in any filter that applies to a custom post type's metabox settings. This is due to the change in libraries. MBM Version 5.0 uses [Metabox.io](http://metabox.io/) for its underlying meta field handling. So, the configuration array passed in the filters will follow that library's settings. [Here is the documentation for Metabox.io](https://docs.metabox.io/creating-fields-with-code/).

<br>

### Specific Filter/Action Changes

mbdb\_summary\_metabox => renamed mbmb\_summary\_metabox (and see above note about metabox changes)

mbdb\_editions\_metabox=> renamed mbmb\_editions\_metabox (and see above note about metabox changes)

mbdb\_excerpt\_metabox=> renamed mbmb\_excerpt\_metabox (and see above note about metabox changes)

mbdb\_reviews\_metabox=> renamed mbmb\_reviews\_metabox (and see above note about metabox changes)

mbdb\_additional\_info\_metabox=> renamed mbmb\_additional\_info\_metabox (and see above note about metabox changes)

mbdb\_cover\_image\_metabox=> renamed mbmb\_cover\_image\_metabox (and see above note about metabox changes)

mbdb\_bookinfo\_metabox=> renamed mbmb\_bookinfo\_metabox (and see above note about metabox changes)

mbdb\_buylinks\_metabox=> renamed mbmb\_buylinks\_metabox (and see above note about metabox changes)

mbdb\_downloadlinks\_metabox => removed

mbdb\_book\_page\_after\_summary => added $book as last argument to access book's data

mbdb\_book\_pre\_mbdb\_{column}\_column => removed (where {column} applies to any meta field that was displayed in the admin columns)

mbdb\_buy\_links\_retailer\_pre\_affiliate\_code => removed

mbdb\_before\_validate\_editions => removed $field arguments

mbdb\_validate\_editions\_before\_msg => removed $field and $flag arguments, added $message argument

mbdb\_validate\_editions\_after\_msg => removed $field and $flag arguments, added $message argument

mbdb\_validate\_reviews\_before\_msg => removed $field and $flag arguments, added $message argument

mbdb\_validate\_reviews\_after\_msg => removed $field and $flag arguments, added $message argument

mbdb\_buy\_links\_pre\_affiliate\_code => removed

mbdb\_buy\_links\_post\_affiliate\_code => removed

mbdb\_widget\_{widget\_type}\_book\_list => argument is now an array of MBM\_Base\_Book objects instead of a Book\_List object (where widget\_type is "newest", "coming\_soon", "specific" or "random")

mbdb\_book\_grid\_heading => added arguments: $taxonomy\_short\_name, $taxonomy, $term, $level, $book\_grid

mbdb\_book\_grid\_publisher\_heading => new

mbdb\_book\_grid\_uncategorized\_heading => added arguments: $taxonomy\_short\_name, $taxonomy, $level, $book\_grid

mbdb\_book\_grid\_untagged\_heading => added arguments: $taxonomy\_short\_name, $taxonomy, $level, $book\_grid

mbdb\_book\_grid\_standalones\_heading => added arguments: 'series', $level, $book\_grid

mbdb\_book\_grid\_pre\_get\_group => array structure of $group\_by argument has changed

mbdb\_book\_grid\_post\_get\_group => array structure of $group\_by argument has changed

mbdb\_book\_grid\_pre\_get\_group => array structure of $group\_by argument has changed

mbdb\_book\_grid\_book\_ids\_filter => array structure of $group\_by argument has changed

mbdb\_book\_grid\_get\_group\_books => array structure of $group\_by argument has changed

mbdb\_book\_grid\_no\_books\_found => added arguments: $books, $level, $book\_grid

mbdb\_book\_grid\_books\_not\_found => added arguments: $books, $level, $book\_grid

mbdb\_book\_grid\_pre\_div => added arguments: $books, $book\_grid

mbdb\_book\_grid\_post\_div => added arguments: $books, $book\_grid

mbdb\_book\_grid\_pre\_image => changed last argument from Book Grid ID to Book Grid Object

mbdb\_book\_grid\_pre\_placeholder\_image => changed last argument from Book Grid ID to Book Grid Object

mbdb\_book\_grid\_additional\_height => removed

mbdb\_export\_data\_book\_object => removed last argument

mbdb\_export\_data\_all\_books\_csv => $books argument now array of MBM\_Base\_Book objects not WP\_Post objects


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://mooberrydreams.gitbook.io/mooberry-book-manager-v5/changes-in-filters-and-actions-in-version-5.0.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
