84% codeflavors-vimeo-video-post-lite

Code Review | Vimeotheque: Vimeo WordPress Plugin

WordPress plugin Vimeotheque: Vimeo WordPress Plugin scored84%from 54 tests.

About plugin

  • Plugin page: codeflavors-vimeo...
  • Plugin version: 2.2.7
  • PHP compatiblity: 5.6+
  • PHP version: 7.4.16
  • WordPress compatibility: 5.2-6.3
  • WordPress version: 6.3.1
  • First release: Jul 20, 2013
  • Latest release: Nov 10, 2023
  • Number of updates: 229
  • Update frequency: every 16.5 days
  • Top authors: codeflavors (70.74%)constantin.boiangiu (29.69%)

Code review

54 tests

User reviews

23 reviews

Install metrics

3,000+ active /203,915 total downloads

Benchmarks

Plugin footprint 83% from 16 tests

Installer Passed 1 test

🔺 Critical test (weight: 50) | It is important to correctly install your plugin, without throwing errors or notices
This plugin's installer ran successfully

Server metrics [RAM: ▲0.26MB] [CPU: ▼1.75ms] Passed 4 tests

An overview of server-side resources used by Vimeotheque: Vimeo WordPress Plugin
This plugin does not affect your website's performance
PageMemory (MB)CPU Time (ms)
Home /3.63 ▲0.1740.23 ▲1.54
Dashboard /wp-admin3.61 ▲0.2648.49 ▼17.48
Posts /wp-admin/edit.php3.67 ▲0.3150.97 ▲6.04
Add New Post /wp-admin/post-new.php6.45 ▲0.56100.77 ▲10.01
Media Library /wp-admin/upload.php3.53 ▲0.3037.56 ▲2.91
All videos /wp-admin/edit.php?post_type=vimeo-video3.5840.98
Settings /wp-admin/edit.php?post_type=vimeo-video&page=cvm_settings3.6936.48
Go PRO! /wp-admin/edit.php?post_type=vimeo-video&page=vimeotheque_go_pro3.4835.61
Add-ons /wp-admin/edit.php?post_type=vimeo-video&page=vimeotheque_extensions3.4430.66
Tags /wp-admin/edit-tags.php?taxonomy=vimeo-tag&post_type=vimeo-video3.6237.31
Categories /wp-admin/edit-tags.php?taxonomy=vimeo-videos&post_type=vimeo-video3.5334.92
Import videos /wp-admin/edit.php?post_type=vimeo-video&page=cvm_import3.6041.05
Status /wp-admin/edit.php?post_type=vimeo-video&page=vimeotheque_status3.4435.54
Add new /wp-admin/post-new.php?post_type=vimeo-video3.5550.27
Setup /wp-admin/admin.php?page=vimeotheque_setup3.3926.93

Server storage [IO: ▲0.97MB] [DB: ▲0.08MB] Passed 3 tests

Filesystem and database footprint
This plugin was installed successfully
Filesystem: 189 new files
Database: no new tables, 9 new options
New WordPress options
widget_recent-comments
widget_recent-posts
theysaidso_admin_options
widget_cvm-latest-videos-widget
vmtq_plugin_review_callout
can_compress_scripts
db_upgraded
widget_cvm-video-categories-widget
widget_theysaidso_widget

Browser metrics Passed 4 tests

An overview of browser requirements for Vimeotheque: Vimeo WordPress Plugin
Normal browser usage
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /2,847 ▲10014.15 ▼0.461.80 ▼0.1142.55 ▼1.19
Dashboard /wp-admin2,249 ▲685.55 ▼0.1383.97 ▼28.4874.38 ▲27.67
Posts /wp-admin/edit.php2,157 ▲571.99 ▲0.0338.75 ▲3.4934.07 ▼2.42
Add New Post /wp-admin/post-new.php6,267 ▲4,74126.35 ▲3.10993.03 ▲302.8840.68 ▼18.77
Media Library /wp-admin/upload.php1,457 ▲544.22 ▲0.0897.78 ▲1.5563.50 ▲15.98
All videos /wp-admin/edit.php?post_type=vimeo-video1,2172.0433.8832.74
Settings /wp-admin/edit.php?post_type=vimeo-video&page=cvm_settings2,2542.7664.9951.13
Go PRO! /wp-admin/edit.php?post_type=vimeo-video&page=vimeotheque_go_pro1,0101.7725.4656.01
Add-ons /wp-admin/edit.php?post_type=vimeo-video&page=vimeotheque_extensions1,0642.3122.4641.03
Tags /wp-admin/edit-tags.php?taxonomy=vimeo-tag&post_type=vimeo-video1,3032.2526.4030.10
Categories /wp-admin/edit-tags.php?taxonomy=vimeo-videos&post_type=vimeo-video1,3252.1226.6229.42
Import videos /wp-admin/edit.php?post_type=vimeo-video&page=cvm_import1,5053.1966.8562.66
Status /wp-admin/edit.php?post_type=vimeo-video&page=vimeotheque_status1,4641.8428.5530.90
Add new /wp-admin/post-new.php?post_type=vimeo-video1,0061.6926.4022.63
Setup /wp-admin/admin.php?page=vimeotheque_setup9162.3647.3712.90

Uninstaller [IO: ▲0.00MB] [DB: ▲0.08MB] 75% from 4 tests

🔸 Tests weight: 35 | Verifying that this plugin uninstalls completely without leaving any traces
It is recommended to fix the following
  • Zombie WordPress options were found after uninstall: 9 options
    • vmtq_plugin_review_callout
    • widget_theysaidso_widget
    • theysaidso_admin_options
    • widget_cvm-video-categories-widget
    • can_compress_scripts
    • db_upgraded
    • widget_recent-comments
    • widget_recent-posts
    • widget_cvm-latest-videos-widget

Smoke tests 75% from 4 tests

Server-side errors Passed 1 test

🔹 Test weight: 20 | A smoke test targeting server-side errors
Even though everything seems fine, this is not an exhaustive test

SRP 50% from 2 tests

🔹 Tests weight: 20 | SRP (Single-Responsibility Principle) - PHP files must act as libraries and never output text or perform any action when accessed directly in a browser
Please fix the following items
  • 11× PHP files trigger server-side errors or warnings when accessed directly (only 10 are shown):
    • > PHP Fatal error
      Uncaught Error: Cannot access parent:: when no class scope is active in wp-content/plugins/codeflavors-vimeo-video-post-lite/themes/default/player.php:11
    • > PHP Fatal error
      Uncaught Error: Call to undefined function vimeotheque_get_template_part() in wp-content/plugins/codeflavors-vimeo-video-post-lite/templates/content-single-video.php:12
    • > PHP Fatal error
      Uncaught Error: Class 'Vimeotheque\\Options\\Options_Factory' not found in wp-content/plugins/codeflavors-vimeo-video-post-lite/includes/deprecated.php:19
    • > PHP Fatal error
      Uncaught Error: Call to undefined function has_post_thumbnail() in wp-content/plugins/codeflavors-vimeo-video-post-lite/templates/archive/content-video-post.php:7
    • > PHP Fatal error
      Uncaught Error: Call to undefined function have_posts() in wp-content/plugins/codeflavors-vimeo-video-post-lite/templates/archive/content-archive.php:12
    • > PHP Fatal error
      Uncaught Error: Cannot access parent:: when no class scope is active in wp-content/plugins/codeflavors-vimeo-video-post-lite/themes/listy/theme.php:16
    • > PHP Fatal error
      Uncaught Error: Call to undefined function get_avatar() in wp-content/plugins/codeflavors-vimeo-video-post-lite/templates/single-video/post-meta.php:10
    • > PHP Fatal error
      Uncaught Error: Call to undefined function vimeotheque_the_video_embed() in wp-content/plugins/codeflavors-vimeo-video-post-lite/templates/single-video/media-video.php:11
    • > PHP Fatal error
      Uncaught Error: Cannot access parent:: when no class scope is active in wp-content/plugins/codeflavors-vimeo-video-post-lite/themes/simple/theme.php:16
    • > PHP Fatal error
      Uncaught Error: Call to undefined function add_action() in wp-content/plugins/codeflavors-vimeo-video-post-lite/includes/libs/templates/hooks.php:6

User-side errors Passed 1 test

🔹 Test weight: 20 | This is a shallow check for browser errors
There were no browser issues found

Optimizations

Plugin configuration 93% from 29 tests

readme.txt Passed 16 tests

It's important to format your readme.txt file correctly as it is parsed for the public listing of your plugin
5 plugin tags: vimeo, video post, video embed, featured video, video gallery

codeflavors-vimeo-video-post-lite/main.php 85% from 13 tests

The entry point to "Vimeotheque: Vimeo WordPress Plugin" version 2.2.7 is a PHP file that has certain tags in its header comment area
Please take the time to fix the following:
  • Description: If Twitter did it, so should we! Keep the description under 140 characters (currently 154 characters long)
  • Main file name: The principal plugin file should be the same as the plugin slug ("codeflavors-vimeo-video-post-lite.php" instead of "main.php")

Code Analysis Passed 3 tests

File types Passed 1 test

🔸 Test weight: 35 | A short check of programming languages and file extensions; no executable files are allowed
Everything looks great! No dangerous files found in this plugin15,681 lines of code in 170 files:
LanguageFilesBlank linesComment linesLines of code
PHP1242,6046,80112,306
CSS2195461,631
JavaScript23165561,554
Markdown1480189
SVG1001

PHP code Passed 2 tests

A short review of cyclomatic complexity and code structure
This plugin has no cyclomatic complexity issues
Cyclomatic complexity
Average complexity per logical line of code0.29
Average class complexity9.64
▷ Minimum class complexity1.00
▷ Maximum class complexity55.00
Average method complexity2.29
▷ Minimum method complexity1.00
▷ Maximum method complexity31.00
Code structure
Namespaces30
Interfaces7
Traits0
Classes95
▷ Abstract classes44.21%
▷ Concrete classes9195.79%
▷ Final classes44.40%
Methods728
▷ Static methods7910.85%
▷ Public methods58680.49%
▷ Protected methods263.57%
▷ Private methods11615.93%
Functions100
▷ Named functions7171.00%
▷ Anonymous functions2929.00%
Constants14
▷ Global constants964.29%
▷ Class constants535.71%
▷ Public constants5100.00%

Plugin size Passed 2 tests

Image compression Passed 2 tests

It is recommended to compress PNG files in your plugin to minimize bandwidth usage
10 compressed PNG files occupy 0.04MB
Potential savings
Compression of 5 random PNG files using pngquant
FileSize - originalSize - compressedSavings
assets/back-end/images/error-small.png0.19KB0.22KB0.00%
themes/default/assets/images/collapse.png0.38KB0.39KB0.00%
themes/default/assets/images/expand.png0.38KB0.40KB0.00%
assets/back-end/images/success-small.png0.58KB0.58KB0.00%
assets/front-end/images/play-btn.png1.59KB1.43KB▼ 10.14%