Not a developer? Go to


Movable Type 7 r.5404 (7.9.9) Release Notes

This version includes improvements, bug fixes, and experimental implementation for Movable Type 8.

New and Improved features

Optimization of internal processing

Search and Replace

  • Enabled to add revision memo when replacing on Search and Replace page. (MTC-27696)
  • Fixed the order of results of search with sort_by date-based key in mt-search.cgi, mt-cdsearch.cgi or Data API (MTC-28689)

Data API

  • Added Data API version 6. The default value of the Limit parameter of Stats is changed to 50, previously 10 (MTC-28721)
  • Improved error handling in normal operations internal DATA API (MTC-28707)

Updating bundled libraries

  • Updated TinyMCE5 to 5.10.7 in TinyMCE5 Plugin (MTC-28691)
  • Updated TinyMCE6 to 6.3.1 in TinyMCE6 Plugin (MTC-28691)
  • Updated Email::Date::Format to 1.005 (MTC-28708)
  • Updated jQuery Migrate to v3.4.1 (MTC-28808)
  • Update Image::ExifTool to 12.50 (MTC-28703)


  • Added .webp as a supported extension for Assets (MTC-28705)
  • Enabled to remove Exif of webp files like as other images (MTC-28703)


  • Enabled to launch MT normally even when plugins having duplicated IDs. Now executes initialize Plugins process after all plugins are loaded (MTC-28633)
  • Fixed the method name to snippet from snipet called from MT::Stats::readied_provider. Enabled to warn deprecated when the snipet method in Google Analytics plugin called (MTC-28748)
  • Fixed the phrase of blog to website in the message at duplicated template tag name in custom fields (SUPPORT-205)

AMI Edition (via AWS Marketplace)

  • Add POSIX::AtFork v0.04 (CLOUD-270)

New and improved features in r.5403 (version released in Japan only)

  • Added callback for scheduled tasks (run-periodic-tasks) (MTC-26373)
    • pre_run_task called before running task
    • post_run_task called after running task
    • PeriodicTaskEnd called at finishing run-periodic-tasks
  • Added an icon of permalink of file URL that uploaded on file upload page (MTC-25504)
  • Enabled to make CustomFields of Site and ChildSite in side menu (MTC-27017)
  • Added the setting of “Disable Data API” on Web Service settings, return 404 Not Found (MTC-27088)
  • Enabled to edit Subject at sending at Entry Notify (MTC-27238)
  • Enabled to store sort order of the List of ContentData on mt.cgi (MTC-27517)
  • Modified On column is now displayed by default on List of ContentData on mt.cgi (MTC-27518)
  • Added Configuration Directive TrimFilePath, which when set to 1, removes inappropriate whitespace when outputting MTFileTemplate tags and various archive paths (MTC-28407)
  • Updated ADOdb to 5.22.4 (MTC-28590)
  • Updated Smarty to 4.2.1 (MTC-28591)
  • Updated modules in extlib (MTC-28620)
    • AutoLoader 5.74
    • CGI::Fast 2.16
    • Digest::SHA::PurePerl 6.03
    • Email::Date::Format 1.006
    • File::Temp 0.2311
    • HTTP::Message 6.44
    • Image::ExifTool 12.42
    • JSON 4.10
    • JSON::PP 4.12
    • libwww-perl 6.67
    • Locale::Maketext 1.32
    • Math::BigInt 1.999837
    • MIME::Charset 1.013001
    • URI::Fetch 0.15
    • XML::XPath 1.48
    • version 0.9929
  • Obsoleted SQLite version 2. Removed Configuration Directive UseSQLite2 (MTC-28631)
  • Enabled Search and Replace of ContentData only for the users having the role of System Administrator or Manage all ContentData (MTC-28643)
  • Asynchronized to toggle code highlights on Edit Template page and saving Tag name on Edit Tags page (MTC-28675)
  • Added BuilderModule Configuration Directive to allow to replace the MT::Builder module (MTC-28335)
  • Added new module MT::Builder::Fast which speeds up the compilation part of MT::Builder (MTC-28336)
  • Refactored for encoding-related process with newly added MT::Util::Encode module (MTC-28320)
  • Suppressed unnecessary database query in MT::Blog::archive_url (MTC-28640)
  • Refactored MT::Util::format_ts to process the values only used (MTC-28641)
  • Refactored not to call methods or conditions unnecessary in MT::Template and MT::Template::Node modules (MTC-28642)
  • Refactored not to seek database unnecessary at calling MT::Meta::Proxy->bulk_load_meta_object() for the Object without meta (MTC-28636)
  • Refactored system check functions in mt-check.cgi and mt-wizard.cgi to MT::Util::SystemCheck and MT::Util::Dependency modules, and the system infomation retrieved internally, not calling mt-check.cgi. Now installed and uninstalled modules in system information separately (MTC-26921)

Resolved Issues

Data API

  • Fixed listOfIndex error at updating websites in Data API v5 (MTC-28704)
  • Fixed the format of the field of response of Assets with related Assets 1 in Data API v6
  • In Data API v5, when retrieving assets associated with a site by specifying 1 for the relatedAssets parameter, the parent field of an image with a parent image was responded as an integer; it is now responded in the previous format { “id”: “1” } (MTC-28711)
  • Fixed can_save argument for MT::DataAPI::Callback::Log and MT::DataAPI::Callback::Tag (MTC-28724)
  • Fixed not to retrieve unapproved comment without authentication
  • Fixed Data API to prevent getting unapproved comments without authentication (MTC-28733)
  • Fixed an issue in which the field information of ContentType was not updated after deleting a ContentField in the Data API (MTC-28782)

Template Tags

  • Fixed to enable date_field modifier in MTContentCalendar tag (MT-27032)
  • The sort order of MTEntryCategories tags was different for Static, Preview, and Dynamic. Sorting is now done by label order according to Static (MTC-28718)


  • Fixed Published Date not to appear in the listing view of draft posts, pages and content data (MTC-27799)
  • Fixed to store the order of ContentFields which is edited in the draft status (MTC-28344)
  • Fixed an issue some cases not to store the order of input fields in Create a Post page (MTC-28684)
  • Fixed the code <mt:if name-"use_jquery_json"> to <mt:if name="use_jquery_json"> in admin templates
  • Fixed the code <mt:if name-"use_jquery_json"> to <mt:if name="use_jquery_json"> in admin templates (MTC-28706)
  • Fixed the previous error message not to show at finishing Import again (MTC-28714)
  • Fixed an issue where autosave would not work correctly after previewing on editing ContentData when the Configuration Directive PreviewInNewWindow is set to 1 (MTC-28803)
  • Fixed <style> tags in the body not to remove with “Rich Text” mode in Create/Edit a post (MTC-28832)
  • Fixed a problem in which an empty system template was added and could no longer be displayed after updating to r.5401 or later if the default template was used for search results, etc.
  • Fixed not to disappear Search Results with the default template, after updated to r.5401 or later, caused by added empty system templates (MTC-28783)
  • Modified to “websites” from “blog” in the default templates of Search Result (MTC-28785)
  • Fixed duplicated results possibility of searching Content Data in mt-cdsearch.cgi or Data API (MTC-28540)
  • Removed unused codes to specify data range in Search and Replace (MTC-28550)
  • Removed codes to sort by date order at merging iterators, which is no longer needed (MTC-28804)

Install, Upgrade

  • Enabled to upgrade even if exists old style .pl plugins which fails to load (MTC-28719)


  • Fixed an issue where using the MTArchiveTitle tag in a ContentType Archive Template would cause an error during preview (SUPPORT-231)
  • Fixed a data corruption issue when saving from the preview screen of ContentData including block editors when the Configuration Directive PreviewInNewWindow is 0 (SUPPORT-236)
  • Fixed a problem in which the value of the MTEntrybasename tag was set to the preview file name when previewed by a user who does not have publishing privileges (SUPPORT-225)


  • Added right bracket “)” for the minimum/maximum value display that can be selected in the checkboxes on Editing ContentData (MTC-28713)
  • Fixed to set wrong keys in TemplateContext (MTC-28757)
  • Removed the code to remove spaces of remove_auth_token at saving a website, which is no longer needed (MTC-28773)
  • Fixed not to occur UUV warnings when using Configuration Directive AssetFileTypes (MTC-28796)
  • Fixed an issue when System Administrator search in “Search and Replace” the result does not includes child websites without privilege specified (MTC-28813)
  • Fixed an issue that could prevent refresh_token from being issued for OAuth2 in Google Analytics V4 plugin (MTC-28815)
  • Fixed to avoid the error when <__trans phrase="_external_link_target"> is using in Plugins (MTC-28810)
  • Fixed to open “Create a Role” even when there are a lot of ContentType (CLOUD-246)
  • Fixed “Invalid request” error when inserting and updating images after deleting images and assets in a Post (SUPPORT-212)

Resolved issues in r.5403 (version released in Japan only)

  • Fixed an issue not to show ContentData on Listing view at adding a ContentField with the setting default value as display option to existing ContentType (MTC-25996)
  • Removed obsolete template_params module_yearly_archives from Yearly and ContentType-Yearly archive types (MTC-26073)
  • Removed obsolete template_params content_type_archive_listing from ContentType-Category-Daily, ContentType-Category-Weekly, ContentType-Category-Monthly and ContentType-Category-Yearly archive type (MTC-26074)
  • Removed obsolete template_params entry_archive from Page archive type (MTC-26075)
  • Fixed an issue not to get category list from MTCategories tags within MTCategorySets tag (MTC-26214)
  • Fixed to work MTIfCategory tag at rebuilding in ContentType Archive Mapping (MTC-26396)
  • Fixed an issue sometimes created useless directories that were not deleted when previewing Posts and ContentData (MTC-26474)
  • Fixed an issue DynamicPublishing not worked when a ContentField is set as sort_by value in MTContents tag (MTC-26903)
  • Fixed an issue sometimes caused mt.cgi to stop responding when MT tags used into archive mapping and Textile set as text format (MTC-26959)
  • Fixed an issue display name of Plugins are different when the Plugin is enabled or disabled (MTC-27228)
  • Fixed not to get permalink from MTEntryPermalink tag or on Edit a post page when set except entry as preferred archive type (MTC-27380)
  • Fixed an issue sometimes error occurred when previewing Category-based list archive not existing any Category on Editing Template (MTC-27495)
  • Fixed an issue not appearing icons of View Published Template at creating an index template with filename including multi-bytes codes on Windows (MTC-27528)
  • Fixed an issue a user having system administrator privilege not to store User Display Options on websites that created by other users (MTC-28487)
  • Fixed an issue to show counts of shortcut association to Group on Edit Role page (MTC-28533)
  • Disabled to log to MT::Util::Log::Stderr on IIS, to avoid errors due to output to stderr (MTC-28617)
  • Fixed URL of Password Reset sent by email via Data API (MTC-28618)
  • Fixed an error occurred on dashboard when disabled GoogleAnalyticsV4 Plugin (MTC-28627)
  • Fixed target attribute values on mt.cgi to "_blank" not depended on language setting (MTC-28629)
  • Fixed the link icon to published index template on template selecting dailog at Export Themes (MTC-28630)
  • Fixed an issue that caused display corruption when searching for Assets in List Assets and Search/Replace pages if the actual file did not exist (MTC-28635)
  • Added a status Unpublish to entry_status of Description and content_status of ContentData in OpenAPI JSON Schema of Data API (MTC-28639)
  • Fixed blog to site in error message at login (MTC-28656)
  • Fixed MTArchivePrevious and MTArchiveNext tag at existing two or more ContentTypes (MTC-28659)
  • Fixed counts of Entry and ContentData associated with categories Using MTCategoryPrevious and MTCategoryNext tags in Static Publishing (MTC-28660)
  • Fixed MTCategoryPrivious and MTCategoryNext behaviors outside context of Entries, Pages or Contents in Static Publishing (MTC-28661)
  • Fixed MTCategoryPrivious and MTCategoryNext behaviors in Category Archive templates in Static Publishing (MTC-29662)
  • Fixed warning of redefined in mt-check.cgi (MTC-28663)
  • Fixed an issue sometimes not removing logs associated with the site when removing a site (MTC-28665)
  • Fixed an issue sometimes not to show re-login dialog when using as PSGI, Configuration Directive PSGIStreaming set to 1 and session expired on Category List
  • Fixed limit modifier in MTContents tag at publishing category-based archive in ContentType List Archive Templates (SUPPORT-12)
  • Fixed to avoid double clicks in Create ContentData page (SUPPORT-193)
  • Fixed to appear correct permalink under title on Edit ContentData page (SUPPORT-200)
  • Fixed Use of uninitialized value warning on Edit Post page and Setting web services page (MTC-28632)
  • Suppressed error messages associated databases occurred at running Movable Type as PSGI with empty database (CLOUD-229)

New features and Improvements for Movable Type 8

Bootstrap v5.x

  • We have implemented an admin theme that is compatible with Bootstrap v5.x (v5.1.3). You can switch from the previous theme by specifying bootstrap5 in the AdminThemeId Configuration Directive. This feature was implemented for the purpose of confirmation, development, and verification for Movable Type 8, and is not recommended for use in production at this time. See also Limitations, Known Issues (MTC-27266)

Optimize and Improve codes

Optimization and improvement of internal processing, which does not expect to affect Movable Type’s operating specifications, but is expected to improve speed, memory usage, and reduce the frequency of errors and warnings.

  • Avoided to execute from_object, to_object unless needed (MTC-28715)
  • Improved handling cache in MT::Template::Tag::Misc::_hdlr_widget_manager (MTC-28725)
  • Enabled cache template in MTLink (MTC-28735)
  • Enabled cache template(map) in MT::PublishOption::get_throttle (MTC-28736)
  • Enabled to cache the value of is_superuser (MTC-28742)
  • Improved caching has_archive_type (MTC-28743)
  • Enabled cache of IndexBasename in MT::Util::strip_index (MTC-28744)
  • Fixed an error occurred at DisableObjectCache is effective (MTC-28745)
  • Enabled cache the readied_provider value repeatedly called at using MTStatsSnippet (MTC-28747)
  • SQL where clauses and other constructs are now sorted in possible (MTC-28749)
  • Enabled cache the child websites data in MT::Template::Context::set_blog_load_context (MTC-28750)
  • Enabled cache of the top category data related to websites using in TopLevelCategories/SubCategories tags (MTC-28751)
  • Cached the value of the Configuration Directive PublishCharset (MTC-28752)
  • Reduced calling tag method in MT::Builder::build (MTC-28753)
  • Improved sorting filter inside MT::Build::Fast (MTC-28754)
  • Enabled cache the templates using in MT::ContentPublisher::rebuild_file and MT::WeblogPublisher::rebuild_file (MTC-28755)
  • Cached tags retrieved in MT::Template::Context::set_tag_filter_context if no constraints except tag name or site IDs (MTC-28758)
  • Changed caching category data of MT::Entry into MT::Request (MTC-28759)
  • Stored a determination results of type of MT::Archive into the object (MTC-28765)
  • Updated __is_stored in Data::ObjectDriver at same time when creates and updates an MT::Object (MTC-28764)
  • Enabled cache categories and folders used in MTEntries and MTPages tags with some attributes as possible (MTC-28774)
  • Cached users in Listing framework (MTC-28775)
  • Publisher is now stored in a variable rather than in the request cache, so that the archive type initialization and unnecessary access to the request cache that occurs during Publisher initialization for each request can be omitted (MTC-28776)
  • Cached the result of MTWebsiteHasBlog tag to the Website object (MTC-28777)
  • Enabled cache website objects as needed (MTC-28784)
  • Improved cache of properties in Listing view (MTC-28835)

Known issues

  • Not worked .form-control[readonly] at appling AdminThemeId bootstrap5 (MTC-28884)
  • Occurred javascript errors at canceling modals at appling AdminThemeId bootstrap5 (MTC-28870)


We would like to thank all those who have reported bugs and requested features for the release. In particular, we would like to thank the following people individually. - Makoto Tajima, M-Logic, Inc. (MTC-28815)