Writer Helper 3.1.6

Does Writer Helper work with WordPress 6.8.2 and PHP 8.1.12? A smoke test was performed on .

Summary

Errors
9PHP warnings
84PHP notices
15Database errors
41Unrecognized messages in the PHP error log
No JavaScript exceptions
All test pages loaded successfully
No resource errors
Performance

Memory usage: 117.43 KiB
The average PHP memory usage increased by this amount after activating by the plugin.

Page speed impact: insignificant.
The plugin didn't make the site noticeably slower.

Environment
WordPress version6.8.2
PHP version8.1.12
MySQL version10.6.10
PHP memory limit512M
Plugin Info
Last updated
Active installs <10
WordPress.org page https://wordpress.org/plugins/writer-helper/
Badges

WordPress compatibility badge PHP compatibility badge

Get badge code

Pages 12

Plugins ‹ Test site — WordPress

Page screenshot: Plugins ‹ Test site — WordPress
URL /wp-admin/plugins.php?plugin_status=all&paged=1&s
Requested URL /wp-admin/plugins.php?action=activate&plugin=writer-helper%2Fwriter-helper.php&plugin_status=all&paged=1&s&_wpnonce=12d256f0cc
Aspect after-activation
HTTP status 200
Load time 0.459 s
Memory usage 3.64 MiB
JS errors None
Resource errors None

Writer Helper

Page screenshot: Writer Helper
URL /wp-admin/admin.php?page=wtr_helper
Aspect menu-item
HTTP status 200
Load time 0.375 s
Memory usage 3.61 MiB
JS errors None
Resource errors None

Writer Helper → My Books

Page screenshot: Writer Helper → My Books
URL /wp-admin/admin.php?page=wtrh_books
Aspect menu-item
HTTP status 200
Load time 0.212 s
Memory usage 3.61 MiB
JS errors None
Resource errors None

Writer Helper → Bookworlds

Page screenshot: Writer Helper → Bookworlds
URL /wp-admin/admin.php?page=wtrh_bookworlds
Aspect menu-item
HTTP status 200
Load time 0.176 s
Memory usage 3.61 MiB
JS errors None
Resource errors None

Writer Helper → My To Do List

Page screenshot: Writer Helper → My To Do List
URL /wp-admin/admin.php?page=wtrh_todolist
Aspect menu-item
HTTP status 200
Load time 0.191 s
Memory usage 3.61 MiB
JS errors None
Resource errors None

Writer Helper → Statistics

Page screenshot: Writer Helper → Statistics
URL /wp-admin/admin.php?page=wtrh_stats
Aspect menu-item
HTTP status 200
Load time 0.183 s
Memory usage 3.61 MiB
JS errors None
Resource errors None

Writer Helper → Users

Page screenshot: Writer Helper → Users
URL /wp-admin/admin.php?page=wtrh_users
Aspect menu-item
HTTP status 200
Load time 0.204 s
Memory usage 3.61 MiB
JS errors None
Resource errors None

Writer Helper → Communities

Page screenshot: Writer Helper → Communities
URL /wp-admin/admin.php?page=wtrh_communities
Aspect menu-item
HTTP status 200
Load time 0.179 s
Memory usage 3.61 MiB
JS errors None
Resource errors None

Writer Helper → Settings

Page screenshot: Writer Helper → Settings
URL /wp-admin/admin.php?page=wtrh_settings
Aspect menu-item
HTTP status 200
Load time 0.200 s
Memory usage 3.61 MiB
JS errors None
Resource errors None

Test site – Just another WordPress site

Page screenshot: Test site – Just another WordPress site
URL /
Aspect front-page
HTTP status 200
Load time 0.192 s
Memory usage 3.53 MiB
JS errors None
Resource errors None

Dashboard ‹ Test site — WordPress

Page screenshot: Dashboard ‹ Test site — WordPress
URL /wp-admin/index.php
Aspect new-meta-boxes
HTTP status 200
Load time 0.316 s
Memory usage 3.63 MiB
JS errors None
Resource errors None

Widgets ‹ Test site — WordPress

Page screenshot: Widgets ‹ Test site — WordPress
URL /wp-admin/widgets.php
Aspect new-sidebar-widgets
HTTP status 200
Load time 1.364 s
Memory usage 5.93 MiB
JS errors None
Resource errors None

Benchmark

URL Load time Memory usage
Inactive Active Change Inactive Active Change
/wp-admin/index.php0.364 s0.305 s-0.059 s3.51 MiB3.63 MiB+ 125.02 KiB
/wp-admin/edit.php0.213 s0.221 s+0.008 s3.57 MiB3.69 MiB+ 121.2 KiB
/wp-admin/post-new.php0.833 s1.057 s+0.224 s6.06 MiB6.2 MiB+ 142.71 KiB
/wp-admin/upload.php0.779 s0.510 s-0.269 s3.52 MiB3.62 MiB+ 103.79 KiB
/wp-admin/options-writing.php0.249 s0.198 s-0.051 s3.5 MiB3.61 MiB+ 107.78 KiB
/wp-admin/media-new.php0.290 s0.254 s-0.036 s3.49 MiB3.6 MiB+ 115.98 KiB
/wp-admin/edit-tags.php?taxonomy=category0.205 s0.194 s-0.011 s3.5 MiB3.63 MiB+ 126.65 KiB
/wp-admin/post-new.php?post_type=page0.784 s0.615 s-0.169 s6.05 MiB6.18 MiB+ 138.23 KiB
/wp-admin/options-discussion.php0.464 s0.311 s-0.153 s3.5 MiB3.6 MiB+ 104.28 KiB
/wp-admin/edit-comments.php0.531 s0.445 s-0.086 s3.52 MiB3.62 MiB+ 103.78 KiB
/0.353 s0.250 s-0.103 s3.43 MiB3.53 MiB+ 102.33 KiB
Average 0.460 s0.396 s-0.064 s3.97 MiB4.08 MiB+ 117.43 KiB

Code Statistics

Note: Third-party libraries and minified JS/CSS files are excluded from these statistics where possible, so the numbers you see here may be lower than those reported by other tools.

JavaScript
PHP
Language % Lines of code Comment lines Files
JavaScript60.2%31,89914,21110
PHP26.5%14,0412,04283
Markdown5.6%2,97004
PO File5.0%2,6621,9842
CSS2.7%1,43415710
Total 53,006 18,394 109

PHP Code Analysis | More results »

Lines of code 11,112
Total complexity 2,765
Median class complexity 37.0
Median method complexity 2.0
Most complex class WH_Book
Most complex function wtrh_ajax_manageBook()
Classes 36
Methods 455
Functions 89

Additions

Things that the plugin adds to the site. This section is not intended to be comprehensive. The test tool only looks for a few specific types of added content.

Database Tables 7

Options wp_options 7

Sidebar Widgets 7

ID Name
wh_libraryWriter Helper - Library
wh_lastestpubliWriter Helper - Lastest publication
wh_book_summaryWriter Helper - Book's summary
wh_chapter_book_summaryWriter Helper - Book's summary when on a chapter page
wh_book_infoWriter Helper - Book's info
wh_chapter_book_infoWriter Helper - Book's info when on a chapter page
wh_search_bookWriter Helper - Search book field

Meta Boxes

{
    "dashboard": {
        "wtrh_stat_author_dashboard_widget": {
            "title": "Writer Helper - Statistics",
            "context": "normal"
        }
    }
}

PHP Error Log 554 lines

[23-Jul-2025 08:52:34 UTC] WriterHelper :: INFO :: wtrh_update_changes :: apply changes after update
[23-Jul-2025 08:52:34 UTC] WriterHelper :: INFO :: wtrh_update_changes :: convert old status
[23-Jul-2025 08:52:34 UTC] WordPress database error Table 'wordpress.wp_wtr_book' doesn't exist for query SELECT COUNT(*) FROM wp_wtr_book WHERE status > 0 AND status < 10 made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/writer-helper/writer-helper.php'), wtrh_update_changes, wtr_convertOldStatuses, wtr_getRow
[23-Jul-2025 08:52:34 UTC] PHP Warning:  Trying to access array offset on value of type null in /wp-content/plugins/writer-helper/includes/functions/db_functions.php on line 200
[23-Jul-2025 08:52:34 UTC] WriterHelper :: INFO :: wtr_convertOldStatuses ::  rows to change in wp_wtr_book <br>
[23-Jul-2025 08:52:34 UTC] PHP Warning:  Trying to access array offset on value of type null in /wp-content/plugins/writer-helper/includes/functions/db_functions.php on line 201
[23-Jul-2025 08:52:34 UTC] WordPress database error Table 'wordpress.wp_wtr_chapter' doesn't exist for query SELECT COUNT(*) FROM wp_wtr_chapter WHERE status > 0 AND status < 10 made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/writer-helper/writer-helper.php'), wtrh_update_changes, wtr_convertOldStatuses, wtr_getRow
[23-Jul-2025 08:52:34 UTC] PHP Warning:  Trying to access array offset on value of type null in /wp-content/plugins/writer-helper/includes/functions/db_functions.php on line 208
[23-Jul-2025 08:52:34 UTC] WriterHelper :: INFO :: wtr_convertOldStatuses ::  rows to change in wp_wtr_chapter <br>
[23-Jul-2025 08:52:34 UTC] PHP Warning:  Trying to access array offset on value of type null in /wp-content/plugins/writer-helper/includes/functions/db_functions.php on line 209
[23-Jul-2025 08:52:34 UTC] WordPress database error Table 'wordpress.wp_wtr_scene' doesn't exist for query SELECT COUNT(*) FROM wp_wtr_scene WHERE status > 0 AND status < 10 made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/writer-helper/writer-helper.php'), wtrh_update_changes, wtr_convertOldStatuses, wtr_getRow
[23-Jul-2025 08:52:34 UTC] PHP Warning:  Trying to access array offset on value of type null in /wp-content/plugins/writer-helper/includes/functions/db_functions.php on line 216
[23-Jul-2025 08:52:34 UTC] WriterHelper :: INFO :: wtr_convertOldStatuses ::  rows to change in wp_wtr_scene <br>
[23-Jul-2025 08:52:34 UTC] PHP Warning:  Trying to access array offset on value of type null in /wp-content/plugins/writer-helper/includes/functions/db_functions.php on line 217
[23-Jul-2025 08:52:34 UTC] WriterHelper :: INFO :: wtrh_update_changes :: create metadata table
[23-Jul-2025 08:52:34 UTC] WriterHelper :: INFO :: wtrh_update_changes :: add column bookworld_id and storyboard_id to wtr_book
[23-Jul-2025 08:52:34 UTC] WordPress database error Table 'wordpress.wp_wtr_book' doesn't exist for query DESCRIBE wp_wtr_book made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/writer-helper/writer-helper.php'), wtrh_update_changes, wtr_updateBooksTable
[23-Jul-2025 08:52:34 UTC] WordPress database error Table 'wordpress.wp_wtr_book' doesn't exist for query ALTER TABLE wp_wtr_book ADD COLUMN `bookworld_id` bigint(20) NOT NULL DEFAULT 0 made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/writer-helper/writer-helper.php'), wtrh_update_changes, wtr_updateBooksTable
[23-Jul-2025 08:52:34 UTC] WordPress database error Table 'wordpress.wp_wtr_book' doesn't exist for query ALTER TABLE wp_wtr_book ADD COLUMN `storyboard_id` bigint(20) NOT NULL DEFAULT 0 made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/writer-helper/writer-helper.php'), wtrh_update_changes, wtr_updateBooksTable
[23-Jul-2025 08:52:34 UTC] WriterHelper :: ERROR :: wtrh_update_changes :: Table 'wordpress.wp_wtr_book' doesn't exist
[23-Jul-2025 08:52:34 UTC] WordPress database error Table 'wordpress.wp_wtr_category' doesn't exist for query SELECT id, element, number, title, description, parent_id FROM wp_wtr_category WHERE element='Settings::Books' ORDER BY number asc made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/writer-helper/writer-helper.php'), wtrh_update_changes, WH_Category::get_BooksSettings, WH_Category::getAll_Categories, WH_DB_Category::getAllDB_Categories, wtr_getResults
[23-Jul-2025 08:52:34 UTC] WriterHelper :: INFO :: wtrh_update_changes :: add book settings nb=0
[23-Jul-2025 08:52:34 UTC] WordPress database error Table 'wordpress.wp_wtr_category' doesn't exist for query SELECT id, element, number, title, description, parent_id FROM wp_wtr_category WHERE element='Settings::Books' AND title='Authors' ORDER BY element asc made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/writer-helper/writer-helper.php'), wtrh_update_changes, WH_Category->__construct, WH_DB_Category::getDB_CategoryByTitle, wtr_getResults
[23-Jul-2025 08:52:34 UTC] WordPress database error Table 'wordpress.wp_wtr_category' doesn't exist for query SHOW FULL COLUMNS FROM `wp_wtr_category` made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/writer-helper/writer-helper.php'), wtrh_update_changes, WH_Category->save, WH_DB_Category->save, WH_DB_Category->insertDB_Category, wtr_setRow
[23-Jul-2025 08:52:34 UTC] WriterHelper :: ERROR :: wtr_setRow :: Request <SHOW FULL COLUMNS FROM `wp_wtr_category`> :: Error message Table 'wordpress.wp_wtr_category' doesn't exist
[23-Jul-2025 08:52:34 UTC] WriterHelper :: ERROR :: WH_DB_Category::insertDB_Category :: error on insert: Table 'wordpress.wp_wtr_category' doesn't exist
[23-Jul-2025 08:52:34 UTC] PHP Warning:  Array to string conversion in /wp-content/plugins/writer-helper/includes/classes/db_class_activity.php on line 60
[23-Jul-2025 08:52:34 UTC] WordPress database error Table 'wordpress.wp_wtr_activity' doesn't exist for query SHOW FULL COLUMNS FROM `wp_wtr_activity` made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/writer-helper/writer-helper.php'), wtrh_update_changes, WH_Category->save, WH_DB_Category->save, WH_DB_Category->insertDB_Category, WH_DB_Activity::addActivity, WH_DB_Activity->save, WH_DB_Activity->insertDB_Activity, wtr_setRow
[23-Jul-2025 08:52:34 UTC] WriterHelper :: ERROR :: wtr_setRow :: Request <SHOW FULL COLUMNS FROM `wp_wtr_activity`> :: Error message Table 'wordpress.wp_wtr_activity' doesn't exist
[23-Jul-2025 08:52:34 UTC] WriterHelper :: ERROR :: WH_DB_Activity::addActivity :: action save WH_DB_Activity KO <WH_DB_Activity Object
(
    [id] => 0
    [user_id] => 1
    [element] => Category
    [element_id] => 0
    [book_id] => 0
    [action] => insert
    [comment] => Array
    [action_seen] => 
    [action_done] => 
    [isOk] => 1
)
>
[23-Jul-2025 08:52:34 UTC] WriterHelper :: ERROR :: wtrh_update_changes :: add new category 'Settings::Books' 
[23-Jul-2025 08:52:34 UTC] WordPress database error Table 'wordpress.wp_wtr_category' doesn't exist for query SELECT id, element, number, title, description, parent_id FROM wp_wtr_category WHERE element='Settings::Books' AND title='Editors' ORDER BY element asc made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/writer-helper/writer-helper.php'), wtrh_update_changes, WH_Category->__construct, WH_DB_Category::getDB_CategoryByTitle, wtr_getResults
[23-Jul-2025 08:52:34 UTC] WordPress database error Table 'wordpress.wp_wtr_category' doesn't exist for query SHOW FULL COLUMNS FROM `wp_wtr_category` made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/writer-helper/writer-helper.php'), wtrh_update_changes, WH_Category->save, WH_DB_Category->save, WH_DB_Category->insertDB_Category, wtr_setRow
[23-Jul-2025 08:52:34 UTC] WriterHelper :: ERROR :: wtr_setRow :: Request <SHOW FULL COLUMNS FROM `wp_wtr_category`> :: Error message Table 'wordpress.wp_wtr_category' doesn't exist
[23-Jul-2025 08:52:34 UTC] WriterHelper :: ERROR :: WH_DB_Category::insertDB_Category :: error on insert: Table 'wordpress.wp_wtr_category' doesn't exist
[23-Jul-2025 08:52:34 UTC] PHP Warning:  Array to string conversion in /wp-content/plugins/writer-helper/includes/classes/db_class_activity.php on line 60
[23-Jul-2025 08:52:34 UTC] WordPress database error Table 'wordpress.wp_wtr_activity' doesn't exist for query SHOW FULL COLUMNS FROM `wp_wtr_activity` made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/writer-helper/writer-helper.php'), wtrh_update_changes, WH_Category->save, WH_DB_Category->save, WH_DB_Category->insertDB_Category, WH_DB_Activity::addActivity, WH_DB_Activity->save, WH_DB_Activity->insertDB_Activity, wtr_setRow
[23-Jul-2025 08:52:34 UTC] WriterHelper :: ERROR :: wtr_setRow :: Request <SHOW FULL COLUMNS FROM `wp_wtr_activity`> :: Error message Table 'wordpress.wp_wtr_activity' doesn't exist
[23-Jul-2025 08:52:34 UTC] WriterHelper :: ERROR :: WH_DB_Activity::addActivity :: action save WH_DB_Activity KO <WH_DB_Activity Object
(
    [id] => 0
    [user_id] => 1
    [element] => Category
    [element_id] => 0
    [book_id] => 0
    [action] => insert
    [comment] => Array
    [action_seen] => 
    [action_done] => 
    [isOk] => 1
)
>
[23-Jul-2025 08:52:34 UTC] WriterHelper :: ERROR :: wtrh_update_changes :: add new category 'Settings::Books'
[23-Jul-2025 08:52:34 UTC] WriterHelper :: INFO :: wtrh_update_changes :: upgrade users
[23-Jul-2025 08:52:34 UTC] WordPress database error Table 'wordpress.wp_wtr_users' doesn't exist for query SELECT id, user_id, user_name, role, book_id FROM wp_wtr_users ORDER BY book_id asc, role asc  made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/writer-helper/writer-helper.php'), wtrh_update_changes, wtr_upgradeUser, wtr_getResults
[23-Jul-2025 08:52:34 UTC] WriterHelper :: INFO :: wtrh_update_changes :: drop users columns
[23-Jul-2025 08:52:34 UTC] WordPress database error Table 'wordpress.wp_wtr_users' doesn't exist for query ALTER TABLE wp_wtr_users DROP COLUMN user_name, DROP COLUMN role, DROP COLUMN book_id made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/writer-helper/writer-helper.php'), wtrh_update_changes, wtr_dropUserColumns, wtr_runQuery
[23-Jul-2025 08:52:34 UTC] WriterHelper :: ERROR :: wtr_runQuery :: Error on query: ALTER TABLE wp_wtr_users DROP COLUMN user_name, DROP COLUMN role, DROP COLUMN book_id :: args: Array
(
)

[23-Jul-2025 08:52:34 UTC] WriterHelper :: ERROR :: wtr_dropUserColumns :: Error alter wp_wtr_users drop columns<br>
[23-Jul-2025 08:52:34 UTC] WriterHelper :: ERROR :: wtrh_update_changes :: Table 'wordpress.wp_wtr_book' doesn't exist
[23-Jul-2025 08:52:34 UTC] WriterHelper :: INFO :: Writer_Helper::install :: create DB
[23-Jul-2025 08:52:35 UTC] PHP Warning:  Attempt to read property "ID" on array in /wp-content/plugins/writer-helper/includes/functions/user_functions.php on line 192
[23-Jul-2025 08:52:35 UTC] PHP Notice:  Function _load_textdomain_just_in_time was called <strong>incorrectly</strong>. Translation loading for the <code>wtr_helper</code> domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the <code>init</code> action or later. Please see <a href="https://developer.wordpress.org/advanced-administration/debug/debug-wordpress/">Debugging in WordPress</a> for more information. (This message was added in version 6.7.0.) in /wp-includes/functions.php on line 6121
[23-Jul-2025 08:52:35 UTC] PHP Notice:  Function _load_textdomain_just_in_time was called <strong>incorrectly</strong>. Translation loading for the <code>wtr_helper</code> domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the <code>init</code> action or later. Please see <a href="https://developer.wordpress.org/advanced-administration/debug/debug-wordpress/">Debugging in WordPress</a> for more information. (This message was added in version 6.7.0.) in /wp-includes/functions.php on line 6121
[23-Jul-2025 08:52:36 UTC] PHP Notice:  Function _load_textdomain_just_in_time was called <strong>incorrectly</strong>. Translation loading for the <code>wtr_helper</code> domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the <code>init</code> action or later. Please see <a href="https://developer.wordpress.org/advanced-administration/debug/debug-wordpress/">Debugging in WordPress</a> for more information. (This message was added in version 6.7.0.) in /wp-includes/functions.php on line 6121
[23-Jul-2025 08:52:36 UTC] WriterHelper :: INFO :: WH_User::isAuthorizedOnWHdashboard :: user_id = 1
[23-Jul-2025 08:52:36 UTC] WriterHelper :: INFO :: WH_User::isAuthorizedOnWHdashboard :: user_id = 1  /  user_roles = Array
(
    [0] => Array
        (
            [role] => Administrator
            [meta] => Array
                (
                )

        )

    [1] => Array
        (
            [role] => Author
            [meta] => Array
                (
                    [meta] => Array
                        (

(+454 more lines)
See also: All tests for this plugin, How to Hide Writer Helper Admin Menus and Widgets