Weglot Translate 3.9.2

Does Weglot Translate work with WordPress 6.1.1 and PHP 8.1.12? A smoke test was performed on .

Summary

Errors
12PHP deprecation warnings
1JavaScript exceptions
All test pages loaded successfully
No resource errors
Performance

Memory usage: 85.2 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.1.1
PHP version8.1.12
MySQL version10.6.10
PHP memory limit512M
Plugin Info
Last updated
Active installs 50,000+
WordPress.org page https://wordpress.org/plugins/weglot/
Badges

WordPress compatibility badge PHP compatibility badge

Get badge code

Pages 6

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=weglot%2Fweglot.php&plugin_status=all&paged=1&s&_wpnonce=27a751106e
Aspect after-activation
HTTP status 200
Load time 0.571 s
Memory usage 3.11 MiB
JS errors None
Resource errors None

Weglot

Page screenshot: Weglot
URL /wp-admin/admin.php?page=weglot-settings
Aspect menu-item
HTTP status 200
Load time 1.945 s
Memory usage 3.27 MiB
JS errors
[
    {
        "message": "TypeError: Cannot read properties of undefined (reading 'value')\n    at Function.fg [as fromTextArea] (/wp-includes/js/codemirror/codemirror.min.js?ver=5.29.1-alpha-ee20357:22:31506)\n    at Object.d.codeEditor.initialize (/wp-admin/js/code-editor.min.js?ver=6.1.1:2:1978)\n    at HTMLDocument.<anonymous> (/wp-content/plugins/weglot/dist/admin-js.js?ver=3.9.2:1:9007)\n    at e (/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=jquery-core,jquery-migrate,hoverIntent,utils,regenerator-runtime,wp-polyfill,wp-hooks&ver=6.1.1:2:30038)\n    at t (/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=jquery-core,jquery-migrate,hoverIntent,utils,regenerator-runtime,wp-polyfill,wp-hooks&ver=6.1.1:2:30340)",
        "trace": null,
        "code": null
    }
]
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.263 s
Memory usage 3.09 MiB
JS errors None
Resource errors None

Add New Post ‹ Test site — WordPress

Page screenshot: Add New Post ‹ Test site — WordPress
URL /wp-admin/post-new.php
Aspect new-meta-boxes
HTTP status 200
Load time 0.758 s
Memory usage 5.01 MiB
JS errors None
Resource errors None

Add New Page ‹ Test site — WordPress

Page screenshot: Add New Page ‹ Test site — WordPress
URL /wp-admin/post-new.php?post_type=page
Aspect new-meta-boxes
HTTP status 200
Load time 0.619 s
Memory usage 5 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 2.444 s
Memory usage 4.96 MiB
JS errors None
Resource errors None

Benchmark

URL Load time Memory usage
Inactive Active Change Inactive Active Change
/wp-admin/index.php0.322 s0.292 s-0.030 s3.05 MiB3.14 MiB+ 99.18 KiB
/wp-admin/edit.php0.209 s0.204 s-0.005 s3.07 MiB3.17 MiB+ 98.5 KiB
/wp-admin/post-new.php0.919 s1.099 s+0.180 s4.97 MiB5.01 MiB+ 42.7 KiB
/wp-admin/upload.php0.952 s0.311 s-0.641 s2.99 MiB3.07 MiB+ 81.19 KiB
/wp-admin/options-writing.php0.230 s0.268 s+0.038 s2.99 MiB3.05 MiB+ 67.84 KiB
/wp-admin/media-new.php0.345 s0.267 s-0.078 s2.97 MiB3.06 MiB+ 93.38 KiB
/wp-admin/edit-tags.php?taxonomy=category0.213 s0.209 s-0.004 s2.98 MiB3.08 MiB+ 98.55 KiB
/wp-admin/post-new.php?post_type=page0.706 s0.667 s-0.039 s4.96 MiB5 MiB+ 37.7 KiB
/wp-admin/options-discussion.php0.262 s0.218 s-0.044 s2.97 MiB3.06 MiB+ 81.99 KiB
/wp-admin/edit-comments.php0.228 s0.229 s+0.001 s3 MiB3.08 MiB+ 81.22 KiB
/0.330 s0.249 s-0.081 s2.94 MiB3.1 MiB+ 155.01 KiB
Average 0.429 s0.365 s-0.064 s3.35 MiB3.44 MiB+ 85.2 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.

PHP
PO File
Sass
Language % Lines of code Comment lines Files
PHP49.9%7,1832,901137
PO File27.3%3,9341,7688
Sass9.5%1,36108
JavaScript7.0%1,00315923
Markdown3.5%50401
CSS2.1%309163
JSON0.7%9603
Total 14,390 4,844 183

PHP Code Analysis | More results »

Lines of code 5,860
Total complexity 1,062
Median class complexity 4.0
Median method complexity 2.0
Most complex class WeglotWP\Services\Option_Service_Weglot
Most complex function WeglotWP\Actions\Front\Front_Menu_Weglot::weglot_wp_get_nav_menu_items()
Classes 108
Methods 298
Functions 43

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.

Options wp_options 2

Sidebar Widgets 1

ID Name
weglot-translateWeglot Translate

Meta Boxes

{
    "post": {
        "weglot-url-translate": {
            "title": "Weglot URL Translate",
            "context": "advanced"
        }
    },
    "page": {
        "weglot-url-translate": {
            "title": "Weglot URL Translate",
            "context": "advanced"
        }
    }
}

PHP Error Log 12 lines

[30-Jan-2023 17:29:20 UTC] PHP Deprecated:  Return type of Weglot\Client\Api\Shared\AbstractCollection::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /wp-content/plugins/weglot/vendor/weglot/weglot-php/src/Client/Api/Shared/AbstractCollectionCountable.php on line 14
[30-Jan-2023 17:29:20 UTC] PHP Deprecated:  Return type of Weglot\Client\Api\Shared\AbstractCollection::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /wp-content/plugins/weglot/vendor/weglot/weglot-php/src/Client/Api/Shared/AbstractCollectionIterator.php on line 14
[30-Jan-2023 17:29:20 UTC] PHP Deprecated:  Return type of Weglot\Client\Api\Shared\AbstractCollection::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /wp-content/plugins/weglot/vendor/weglot/weglot-php/src/Client/Api/Shared/AbstractCollectionIterator.php on line 22
[30-Jan-2023 17:29:20 UTC] PHP Deprecated:  Return type of Weglot\Client\Api\Shared\AbstractCollection::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /wp-content/plugins/weglot/vendor/weglot/weglot-php/src/Client/Api/Shared/AbstractCollectionIterator.php on line 30
[30-Jan-2023 17:29:20 UTC] PHP Deprecated:  Return type of Weglot\Client\Api\Shared\AbstractCollection::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /wp-content/plugins/weglot/vendor/weglot/weglot-php/src/Client/Api/Shared/AbstractCollectionIterator.php on line 38
[30-Jan-2023 17:29:20 UTC] PHP Deprecated:  Return type of Weglot\Client\Api\Shared\AbstractCollection::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /wp-content/plugins/weglot/vendor/weglot/weglot-php/src/Client/Api/Shared/AbstractCollectionIterator.php on line 46
[30-Jan-2023 17:29:20 UTC] PHP Deprecated:  Return type of Weglot\Client\Api\Shared\AbstractCollection::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /wp-content/plugins/weglot/vendor/weglot/weglot-php/src/Client/Api/Shared/AbstractCollectionArrayAccess.php on line 14
[30-Jan-2023 17:29:20 UTC] PHP Deprecated:  Return type of Weglot\Client\Api\Shared\AbstractCollection::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /wp-content/plugins/weglot/vendor/weglot/weglot-php/src/Client/Api/Shared/AbstractCollectionArrayAccess.php on line 22
[30-Jan-2023 17:29:20 UTC] PHP Deprecated:  Return type of Weglot\Client\Api\Shared\AbstractCollection::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /wp-content/plugins/weglot/vendor/weglot/weglot-php/src/Client/Api/Shared/AbstractCollectionArrayAccess.php on line 30
[30-Jan-2023 17:29:20 UTC] PHP Deprecated:  Return type of Weglot\Client\Api\Shared\AbstractCollection::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /wp-content/plugins/weglot/vendor/weglot/weglot-php/src/Client/Api/Shared/AbstractCollectionArrayAccess.php on line 40
[30-Jan-2023 17:29:20 UTC] PHP Deprecated:  Return type of Weglot\Client\Api\Shared\AbstractCollection::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /wp-content/plugins/weglot/vendor/weglot/weglot-php/src/Client/Api/Shared/AbstractCollectionSerializable.php on line 14
[30-Jan-2023 17:29:20 UTC] PHP Deprecated:  Return type of Weglot\Client\Api\LanguageEntry::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /wp-content/plugins/weglot/vendor/weglot/weglot-php/src/Client/Api/LanguageEntry.php on line 164
See also: All tests for this plugin, How to Hide Weglot Translate Admin Menus and Meta Boxes