[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f5grlUN6FPufFrdYCNy0t4QYpGUB1WgLtjHcLO_3Tjik":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":13,"last_updated":14,"tested_up_to":15,"requires_at_least":16,"requires_php":17,"tags":18,"homepage":24,"download_link":25,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28,"vulnerabilities":29,"developer":30,"crawl_stats":27,"alternatives":38,"analysis":139,"fingerprints":323},"jajadi-training","JaJaDi Training","0.5.7","DoubelJ","https:\u002F\u002Fprofiles.wordpress.org\u002Fdoubelj\u002F","\u003Cp>With this plugin you can add a Training and associated Courses to your WordPress site.\u003Cbr \u002F>\nWith a widget you can get a sorted list by date of the Training.\u003C\u002Fp>\n\u003Cp>In newer versions there is an agenda with the training and an opportunity to add subscription forms at the training and an e-learning module.\u003C\u002Fp>\n","With this plugin you can add training and courses to your WordPress site.",10,2646,0,"2014-04-25T13:22:00.000Z","3.9.40","3.0.1","",[19,20,21,22,23],"calendar","course","post","training","widget","http:\u002F\u002Ftech.janjaapvandijk.nl\u002Fjajadi-training-plugin","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fjajadi-training.0.5.7.zip",85,null,"2026-03-15T15:16:48.613Z",[],{"slug":31,"display_name":7,"profile_url":8,"plugin_count":32,"total_installs":33,"avg_security_score":34,"avg_patch_time_days":35,"trust_score":36,"computed_at":37},"doubelj",3,120,90,30,87,"2026-04-05T09:56:37.417Z",[39,60,78,96,119],{"slug":40,"name":41,"version":42,"author":43,"author_profile":44,"description":45,"short_description":46,"active_installs":47,"downloaded":48,"rating":49,"num_ratings":50,"last_updated":51,"tested_up_to":52,"requires_at_least":53,"requires_php":17,"tags":54,"homepage":58,"download_link":59,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"blog-post-calendar-widget","Blog Post Calendar Widget","1.1","Ron Zvagelsky","https:\u002F\u002Fprofiles.wordpress.org\u002Frzvagelsky\u002F","\u003Cp>Monthly grid view calendar widget highlighting archived and\u002For future posts.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Additional Features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Popup details for each date with posts\u003C\u002Fli>\n\u003Cli>Optional details include post author and comment count.\u003C\u002Fli>\n\u003Cli>Ability to show posts by post type, category, specific taxonomy and\u002For term\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fpresshive.com\u002Fplugins\u002Fwordpress-blog-post-calendar-plugin\" rel=\"nofollow ugc\">\u003Cstrong>For more information or to request additional features, please visit the plugin page\u003C\u002Fstrong>\u003C\u002Fa>\u003C\u002Fp>\n","The Blog Posts Calendar Widget allows you to display your archived or future posts in a calendar as a sidebar widget.",100,14402,96,8,"2013-05-24T19:47:00.000Z","3.5.2","3.2",[19,55,56,57,23],"future-posts","post-types","posts","http:\u002F\u002Fpresshive.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fblog-post-calendar-widget.zip",{"slug":61,"name":62,"version":63,"author":64,"author_profile":65,"description":66,"short_description":67,"active_installs":47,"downloaded":68,"rating":69,"num_ratings":32,"last_updated":70,"tested_up_to":71,"requires_at_least":72,"requires_php":17,"tags":73,"homepage":17,"download_link":77,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"cpt-calender-widget","CPT Calender Widget for WordPress","1.0.0","Ahir Hemant","https:\u002F\u002Fprofiles.wordpress.org\u002Fhemant-ahir\u002F","\u003Col>\n\u003Cli>Create Custom Post and  and select CPT from dropdown.\u003C\u002Fli>\n\u003Cli>CPT Calnder Widget for WordPress is the easiest way to Display CPT Calnder in page and post\u003C\u002Fli>\n\u003Cli>Create Custom Post type Select from deropdown and add widget in sidebar.\u003C\u002Fli>\n\u003Cli>feel free to contact me via support \u003C\u002Fli>\n\u003Cli>please rate this plugin,Thanks \u003C\u002Fli>\n\u003Cli>enjoy!\u003Cbr \u002F>\nplease check installation and screenshot tab for more idea!.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Fully integrated \u003C\u002Fli>\n\u003Cli>Fully responsive design\u003C\u002Fli>\n\u003C\u002Ful>\n","Create Custom Post and  and select CPT from dropdown.",9683,94,"2015-09-24T16:35:00.000Z","4.3.34","3.3",[19,74,75,61,76],"calendar-sidebar","calendar-widget","custom-post-type-calendar","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcpt-calender-widget.zip",{"slug":79,"name":80,"version":81,"author":82,"author_profile":83,"description":84,"short_description":85,"active_installs":13,"downloaded":86,"rating":13,"num_ratings":13,"last_updated":87,"tested_up_to":88,"requires_at_least":89,"requires_php":90,"tags":91,"homepage":17,"download_link":94,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":95},"drafts","Drafts","1.1.0","Brad Parbs","https:\u002F\u002Fprofiles.wordpress.org\u002Fbradparbs\u002F","\u003Cp>Quickly and easily view all your recent draft posts.\u003C\u002Fp>\n\u003Ch3>Availiable filters\u003C\u002Fh3>\n\u003Cpre>\u003Ccode>drafts_widget_icon - The dashicon to use for the dashboard widget.\ndrafts_widget_title - The title to use for the dashboard widget.\ndrafts_post_types_to_show - An arry of post types to show in the widget. Defaults to all post types.\ndrafts_widget_query_args - An array of arguments to pass to the WP_Query.\ndrafts_show_in_widget - Will pass ID of each post, returning `false` will not add it to the dashboard widget.\n\u003C\u002Fcode>\u003C\u002Fpre>\n","A WordPress plugin to quickly and easily view all your recent draft posts.",3038,"2021-08-20T17:06:00.000Z","5.8.13","5.2","5.6",[19,92,93,57,23],"content","dashboard","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdrafts.1.1.0.zip","2026-03-15T14:54:45.397Z",{"slug":97,"name":98,"version":99,"author":100,"author_profile":101,"description":102,"short_description":103,"active_installs":104,"downloaded":105,"rating":69,"num_ratings":106,"last_updated":107,"tested_up_to":108,"requires_at_least":109,"requires_php":17,"tags":110,"homepage":116,"download_link":117,"security_score":118,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"ele-custom-skin","Elementor Custom Skin","3.1.9","dudaster","https:\u002F\u002Fprofiles.wordpress.org\u002Fdudaster\u002F","\u003Cp>This plugin adds new skin to Elementor Page Builder Posts and Posts Archive widget.\u003C\u002Fp>\n\u003Cp>You can design a loop item just like a single template and it would be used as a skin so you can be able to create a post grid the way you like.\u003C\u002Fp>\n\u003Cp>All you have to do is to create a Custom Grid Template and place the Post Item Widget (placeholder) in your template made with sections and columns, and why not other widgets.\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FDwLFdaZ69KU?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&start=94&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Cp>For a quick tutorial see Frequently Asked Questions!\u003C\u002Fp>\n\u003Cp>For more details and demo check our official site https:\u002F\u002Fdudaster.com\u002F\u003C\u002Fp>\n\u003Cp>Note: This plugin is an addon of Elementor Page Builder (https:\u002F\u002Fwordpress.org\u002Fplugins\u002Felementor\u002F) and will only work with Elementor Page Builder installed.\u003C\u002Fp>\n\u003Cp>Also check \u003Ca href=\"https:\u002F\u002Fdudaster.com\u002Fecs-pro\u002F\" rel=\"nofollow ugc\">Elementor Custom Skin Pro\u003C\u002Fa>!\u003C\u002Fp>\n\u003Cp>You can expand your freedom in more ways than you can imagine. Check it out at https:\u002F\u002Fdudaster.com\u002Fecs-pro\u002F !\u003C\u002Fp>\n","Create new skins for Elementor PRO 3.x page builder. Design your own skins for Post and Post Archive Widgets using Elementor Loop Templates.",100000,1491073,116,"2024-04-11T09:40:00.000Z","6.5.8","5.0",[111,112,113,114,115],"archive-list","elementor","loop","page-builder","post-widget","https:\u002F\u002Fdudaster.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fele-custom-skin.zip",92,{"slug":120,"name":121,"version":122,"author":123,"author_profile":124,"description":125,"short_description":126,"active_installs":104,"downloaded":127,"rating":49,"num_ratings":128,"last_updated":129,"tested_up_to":130,"requires_at_least":131,"requires_php":89,"tags":132,"homepage":137,"download_link":138,"security_score":47,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"recent-posts-widget-with-thumbnails","Recent Posts Widget With Thumbnails","7.1.1","Kybernetik Services","https:\u002F\u002Fprofiles.wordpress.org\u002Fkybernetikservices\u002F","\u003Cp>List the most recent posts with post titles, thumbnails, excerpts, authors, categories, dates and more!\u003C\u002Fp>\n\u003Cp>Although the plugin is built only for widget areas users reported that it \u003Cstrong>works in Elementor\u003C\u002Fstrong> and \u003Cstrong>works in Oxygen\u003C\u002Fstrong>. Whether it runs in other page builders is unknown. Please let me know in which \u003Cstrong>page builder\u003C\u002Fstrong> you were able to use the plugin successfully.\u003C\u002Fp>\n\u003Cp>The plugin does not collect any personal data, so it is \u003Cstrong>ready for EU General Data Protection Regulation (GDPR) compliance\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Ch4>Lightweight, simple and effective\u003C\u002Fh4>\n\u003Cp>No huge widget with hundreds of options. This plugin is based on the well-known WordPress default widget ‘Recent Posts’ and extended to display more information about the posts like e.g. thumbnails, excerpts and assigned categories. And it provides more options to build custom-taylored posts lists.\u003C\u002Fp>\n\u003Cp>The thumbnails will be built from the featured image of a post or of the first image in the post content. If there is neither a featured image nor a content image then you can define a default thumbnail.\u003C\u002Fp>\n\u003Cp>You can set the width and height of the thumbnails in the list. The thumbnails appear left-aligned to the post titles in left-to-right languages. In right-to-left languages they appear right-aligned.\u003C\u002Fp>\n\u003Ch4>What users wrote\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>“This plugin performs a simple task but one that I find to be invaluable.”\u003C\u002Fstrong> \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Fsimple-but-invaluable-plugin\u002F\" rel=\"ugc\">reviews\u003C\u002Fa> by funkster on July 1, 2025\u003C\u002Fli>\n\u003Cli>\u003Cstrong>“I just want to say thank you for developing such a good plugin.”\u003C\u002Fstrong> in the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Fthanks-for-developing-such-a-great-plugin-4\u002F\" rel=\"ugc\">reviews\u003C\u002Fa> by modelaid on July 3, 2024\u003C\u002Fli>\n\u003Cli>\u003Cstrong>“Excellent plugin!”\u003C\u002Fstrong> in the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Fexcellent-plugin-8567\u002F\" rel=\"ugc\">reviews\u003C\u002Fa> by mystnick on April 18, 2023\u003C\u002Fli>\n\u003Cli>\u003Cstrong>“… one of the dynamic and smart, yet admin and user optimized widget plugins …”\u003C\u002Fstrong> in \u003Ca href=\"https:\u002F\u002Fwww.sktthemes.org\u002Fwordpress-plugins\u002Fadd-widgets-wordpress-website\u002F\" rel=\"nofollow ugc\">How to Add Widgets and Start Using Them in WordPress Website?\u003C\u002Fa> by SKT Posts Themes on September 3, 2020\u003C\u002Fli>\n\u003Cli>\u003Cstrong>“بهترین افزونه های نمایش آخرین نوشته ها در وردپرس”\u003C\u002Fstrong> in \u003Ca href=\"https:\u002F\u002Fmodirwp.com\u002F%D8%A7%D9%81%D8%B2%D9%88%D9%86%D9%87-recent-posts-widget-with-thumbnails\u002F\" rel=\"nofollow ugc\">ابزارک آخرین نوشته وردپرس\u003C\u002Fa> by Ghodsi on December 16, 2019\u003C\u002Fli>\n\u003Cli>\u003Cstrong>“Another good all around widget, suitable for most projects”\u003C\u002Fstrong> in \u003Ca href=\"https:\u002F\u002Fhowto-wordpress-tips.com\u002Ffree-wordpress-recent-posts-widget\u002F\" rel=\"nofollow ugc\">Free WordPress recent posts widget – Which one is the best?\u003C\u002Fa> on December 3, 2019\u003C\u002Fli>\n\u003Cli>\u003Cstrong>“In just a few clicks, your website will look considerably more established and professional.”\u003C\u002Fstrong> in \u003Ca href=\"https:\u002F\u002Fblog.hubspot.com\u002Fwebsite\u002Fwordpress-thumbnail-plugins\" rel=\"nofollow ugc\">3 Best WordPress Thumbnail Plugins to Manage Images Perfectly\u003C\u002Fa> by HubSpot Staff on October 29, 2019\u003C\u002Fli>\n\u003Cli>\u003Cstrong>The best of the recent posts widgets\u003C\u002Fstrong> in the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Fthe-best-of-the-recent-posts-widget\u002F\" rel=\"ugc\">reviews\u003C\u002Fa> by noddemix on June 13, 2019\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Number 8\u003C\u002Fstrong> in \u003Ca href=\"https:\u002F\u002Fideiasdig.com\u002F14-plugins-para-otimizar-seu-site\u002F#8Recent_Posts_Widget_With_Thumbnails\" rel=\"nofollow ugc\">14 Plugins para Otimizar seu Site\u003C\u002Fa> by Ideias Dig on November 8, 2018\u003C\u002Fli>\n\u003Cli>\u003Cstrong>“Truly EXCELLENT Plugin!”\u003C\u002Fstrong> in the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Ftruly-excellent-plugin\u002F\" rel=\"ugc\">reviews\u003C\u002Fa> by dnuttal on October 11, 2018\u003C\u002Fli>\n\u003Cli>\u003Cstrong>“Easier than making an egg, seriously.”\u003C\u002Fstrong> in the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Feasier-than-making-an-egg-seriously\u002F\" rel=\"ugc\">reviews\u003C\u002Fa> by djackofall on October 2, 2017\u003C\u002Fli>\n\u003Cli>\u003Cstrong>“This plugin is INCREDIBLE”\u003C\u002Fstrong> in the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Fdo-you-also-have-one-for-most-popular-posts\u002F\" rel=\"ugc\">reviews\u003C\u002Fa> by lucio7 on August 25, 2017\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Widgets Users Will Love\u003C\u002Fstrong> in \u003Ca href=\"https:\u002F\u002Fspeckyboy.com\u002Ffree-wordpress-widget-plugins\u002F\" rel=\"nofollow ugc\">10 Ultra-Useful Free WordPress Widget Plugins\u003C\u002Fa> by Eric Karkovack on June 16, 2017\u003C\u002Fli>\n\u003Cli>\u003Cstrong>listed\u003C\u002Fstrong> in \u003Ca href=\"https:\u002F\u002Fwpteamsupport.com\u002Fwordpress-plugins-engage-visitors\u002F\" rel=\"nofollow ugc\">20 WordPress Plugins that Steals Attention to Engage Visitors of Your Site\u003C\u002Fa> by WP Team Support on March 6, 2017\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Number 1\u003C\u002Fstrong> in \u003Ca href=\"https:\u002F\u002Fwww.nimbusthemes.com\u002F8-essential-wordpress-widgets-to-supercharge-your-website\u002F\" rel=\"nofollow ugc\">8 essential WordPress widgets to supercharge your website\u003C\u002Fa> by Rafay Ansari on January 31, 2017\u003C\u002Fli>\n\u003Cli>\u003Cstrong>“Excellent (after trying a few)!”\u003C\u002Fstrong> in the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Fexcellent-after-trying-a-few\u002F\" rel=\"ugc\">reviews\u003C\u002Fa> by giorgissimo on January 6, 2017\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>What users filmed\u003C\u002Fh4>\n\u003Cp>Some users published video tutorials on YouTube:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=dKoqcLBHhkM\" rel=\"nofollow ugc\">Class 09 – Working with Plugins (Recent Posts Widget With Thumbnails)\u003C\u002Fa> by WordPress Learning Bangladesh on March 7, 2017\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=qS9WIeaMb6s\" rel=\"nofollow ugc\">Recent Posts Widget With Thumbnails Setup Tutorial – WordPress Lesson and Tip\u003C\u002Fa> by Making a Website on April 17, 2016\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fyoutu.be\u002Fdqzz8NZc99Q\" rel=\"nofollow ugc\">Add Recent Posts Widget with Thumbnail – WordPress\u003C\u002Fa> by eMediaCoach on August 15, 2015\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Options you can set\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Title of the widget\u003C\u002Fli>\n\u003Cli>Number of listed posts\u003C\u002Fli>\n\u003Cli>Open post links in new windows\u003C\u002Fli>\n\u003Cli>Different options for post order and sorting\u003C\u002Fli>\n\u003Cli>Hide the current post in list\u003C\u002Fli>\n\u003Cli>Show only sticky posts\u003C\u002Fli>\n\u003Cli>Hide sticky posts\u003C\u002Fli>\n\u003Cli>Keep sticky posts on top of the list if not hidden\u003C\u002Fli>\n\u003Cli>Hide post title\u003C\u002Fli>\n\u003Cli>Maximum length of post title\u003C\u002Fli>\n\u003Cli>Show post author name\u003C\u002Fli>\n\u003Cli>Label for the author names\u003C\u002Fli>\n\u003Cli>Show post categories\u003C\u002Fli>\n\u003Cli>Show post category names as links to their archives\u003C\u002Fli>\n\u003Cli>Label for categories\u003C\u002Fli>\n\u003Cli>Show post date\u003C\u002Fli>\n\u003Cli>Show post excerpt\u003C\u002Fli>\n\u003Cli>Show number of comments\u003C\u002Fli>\n\u003Cli>Excerpt length\u003C\u002Fli>\n\u003Cli>Signs after excerpt\u003C\u002Fli>\n\u003Cli>Ignore post excerpt field as excerpt source (builds excerpts only from the post content)\u003C\u002Fli>\n\u003Cli>Ignore post content as excerpt source (builds excerpts only from the excerpt fields)\u003C\u002Fli>\n\u003Cli>Show posts of selected categories (or of all categories)\u003C\u002Fli>\n\u003Cli>Show post thumbnail (featured image)\u003C\u002Fli>\n\u003Cli>Registered thumbnail dimensions\u003C\u002Fli>\n\u003Cli>Thumbnail width in px\u003C\u002Fli>\n\u003Cli>Thumbnail height in px\u003C\u002Fli>\n\u003Cli>Keep the aspect ratio of thumbnails\u003C\u002Fli>\n\u003Cli>Try to take the first post image as thumbnail\u003C\u002Fli>\n\u003Cli>Only use the first post image as thumbnail\u003C\u002Fli>\n\u003Cli>Use default thumbnail if no thumbnail is available\u003C\u002Fli>\n\u003Cli>Always use default thumbnail\u003C\u002Fli>\n\u003Cli>Default thumbnail URL\u003C\u002Fli>\n\u003Cli>Alternative text of the default thumbnail\u003C\u002Fli>\n\u003Cli>Omit all alternative texts of the thumbnails for a better accessibility\u003C\u002Fli>\n\u003Cli>Print slugs of post categories in class attribute of LI elements\u003C\u002Fli>\n\u003Cli>Print inline CSS instead of creating a CSS file\u003C\u002Fli>\n\u003Cli>No CSS generation at all\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Useful hints for developers: Supported Hooks\u003C\u002Fh4>\n\u003Cp>The plugin considers the output of actions hooked on:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Ccode>rpwwt_widget_posts_args\u003C\u002Fcode>\n\u003Cul>\n\u003Cli>\u003Cstrong>passed argument:\u003C\u002Fstrong> the query arguments as an array\u003C\u002Fli>\n\u003Cli>\u003Cstrong>expected return value:\u003C\u002Fstrong> an array of query arguments\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Ccode>widget_title\u003C\u002Fcode>\n\u003Cul>\n\u003Cli>\u003Cstrong>passed arguments:\u003C\u002Fstrong>\n\u003Col>\n\u003Cli>the widget title as a string\u003C\u002Fli>\n\u003Cli>the widget settings as an array\u003C\u002Fli>\n\u003Cli>the widget base ID as a string\u003C\u002Fli>\n\u003C\u002Fol>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>expected return value:\u003C\u002Fstrong> a string\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Ccode>rpwwt_excerpt_length\u003C\u002Fcode>\n\u003Cul>\n\u003Cli>\u003Cstrong>passed argument:\u003C\u002Fstrong> the maximum number of characters for the post excerpt as an integer\u003C\u002Fli>\n\u003Cli>\u003Cstrong>expected return value:\u003C\u002Fstrong> an integer\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Ccode>rpwwt_excerpt_more\u003C\u002Fcode>\n\u003Cul>\n\u003Cli>\u003Cstrong>passed argument:\u003C\u002Fstrong> the string to append after the post excerpt\u003C\u002Fli>\n\u003Cli>\u003Cstrong>expected return value:\u003C\u002Fstrong> a string\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Ccode>rpwwt_the_excerpt\u003C\u002Fcode>\n\u003Cul>\n\u003Cli>\u003Cstrong>passed arguments:\u003C\u002Fstrong>\n\u003Col>\n\u003Cli>the content of the post excerpt field as a string\u003C\u002Fli>\n\u003Cli>the post object\u003C\u002Fli>\n\u003C\u002Fol>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>expected return value:\u003C\u002Fstrong> a string\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Ccode>the_excerpt\u003C\u002Fcode>\n\u003Cul>\n\u003Cli>\u003Cstrong>passed argument:\u003C\u002Fstrong> the post excerpt as a string\u003C\u002Fli>\n\u003Cli>\u003Cstrong>expected return value:\u003C\u002Fstrong> a string\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Ccode>rpwwt_categories\u003C\u002Fcode>\n\u003Cul>\n\u003Cli>\u003Cstrong>passed argument:\u003C\u002Fstrong> the category list of each post as a string\u003C\u002Fli>\n\u003Cli>\u003Cstrong>expected return value:\u003C\u002Fstrong> a string\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Ccode>rpwwt_list_cats\u003C\u002Fcode>\n\u003Cul>\n\u003Cli>\u003Cstrong>passed arguments:\u003C\u002Fstrong>\n\u003Col>\n\u003Cli>the category name as a string\u003C\u002Fli>\n\u003Cli>the category as an array\u003C\u002Fli>\n\u003C\u002Fol>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>expected return value:\u003C\u002Fstrong> a string\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Useful hints for developers: Available CSS Selectors\u003C\u002Fh4>\n\u003Cp>To design the list and its items, you can use these CSS selectors:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>.rpwwt-widget: the element which contains the post list\n.rpwwt-widget ul: the list which contains the list items\n.rpwwt-widget ul li: the list item in the list\n.rpwwt-widget ul li.rpwwt-sticky: the list item of a sticky post\n.rpwwt-widget ul li a: link in the list\n.rpwwt-widget ul li a img: linked image\n.rpwwt-widget ul li a span.rpwwt-post-title: the post title\n.rpwwt-widget ul li div.rpwwt-post-author: the post author\n.rpwwt-widget ul li div.rpwwt-post-categories: the post category list\n.rpwwt-widget ul li div.rpwwt-post-date: the post date\n.rpwwt-widget ul li div.rpwwt-post-excerpt: the post excerpt\n.rpwwt-widget ul li div.rpwwt-post-excerpt .rpwwt-post-excerpt-more: the \"more\" text following the excerpt.\n.rpwwt-widget ul li div.rpwwt-post-comments-number: the number of comments\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Languages\u003C\u002Fh4>\n\u003Cp>The user interface is available in several languages.\u003C\u002Fp>\n\u003Cp>Starting from version 7.1.0 the handling for translations are moved to \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp-plugins\u002Frecent-posts-widget-with-thumbnails\u002F\" rel=\"nofollow ugc\">translate.wordpress.org\u003C\u002Fa>.\u003Cbr \u002F>\nPlease help to translate into more languages, or you can re-work on the current translations if you think it’s needed.\u003Cbr \u002F>\nIf you have done your translation, please leave a comment in the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Frecent-posts-widget-with-thumbnails\" rel=\"ugc\">plugin’s support forum\u003C\u002Fa>. I’ll take care of the review and approval.\u003C\u002Fp>\n","List the most recent posts with post titles, thumbnails, excerpts, authors, categories, dates and more!",3599279,212,"2025-12-01T17:12:00.000Z","6.9.4","4.6",[133,134,135,136,23],"images","posts-list","recent-posts","thumbnails","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Frecent-posts-widget-with-thumbnails\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Frecent-posts-widget-with-thumbnails.7.1.1.zip",{"attackSurface":140,"codeSignals":238,"taintFlows":313,"riskAssessment":314,"analyzedAt":322},{"hooks":141,"ajaxHandlers":234,"restRoutes":235,"shortcodes":236,"cronEvents":237,"entryPointCount":13,"unprotectedCount":13},[142,147,151,157,161,165,170,175,179,183,187,191,195,199,202,206,210,214,218,222,226,229],{"type":143,"name":144,"callback":145,"file":146,"line":11},"action","add_meta_boxes","myplugin_add_custom_box","jajadi-custombox.php",{"type":143,"name":148,"callback":149,"file":146,"line":150},"save_post","myplugin_save_postdata",15,{"type":152,"name":153,"callback":154,"file":155,"line":156},"filter","request","jajadi_sort_trainingdate","jajadi-training-functions.php",311,{"type":143,"name":158,"callback":159,"file":160,"line":32},"admin_menu","jajadi_training_settings_menu","jajadi-training-settings.php",{"type":143,"name":162,"callback":163,"file":160,"line":164},"admin_init","jajadi_register_training_settings",11,{"type":143,"name":166,"callback":167,"file":168,"line":169},"widgets_init","anonymous","jajadi-training-widget.php",107,{"type":152,"name":171,"callback":172,"priority":11,"file":173,"line":174},"manage_jajadi_training_posts_columns","jajadi_columns_head_training_category","jajadi-training.php",33,{"type":143,"name":176,"callback":177,"priority":11,"file":173,"line":178},"manage_jajadi_training_posts_custom_column","jajadi_columns_content_training_category",34,{"type":152,"name":180,"callback":181,"file":173,"line":182},"manage_edit-jajadi_training_sortable_columns","jajadi_sortable_columns",35,{"type":143,"name":184,"callback":185,"file":173,"line":186},"load-edit.php","jajadi_edit_training_load",39,{"type":152,"name":188,"callback":189,"priority":11,"file":173,"line":190},"manage_jajadi_course_posts_columns","jajadi_columns_head_course_category",45,{"type":143,"name":192,"callback":193,"priority":11,"file":173,"line":194},"manage_jajadi_course_posts_custom_column","jajadi_columns_content_course_category",46,{"type":152,"name":196,"callback":197,"file":173,"line":198},"post_updated_messages","jajadi_updated_messages",61,{"type":152,"name":196,"callback":200,"file":173,"line":201},"jajadi_updated_messages_course",62,{"type":143,"name":203,"callback":204,"file":173,"line":205},"admin_head","jajadi_admin_register_head",64,{"type":143,"name":207,"callback":208,"file":173,"line":209},"init","jajadi_training_register",65,{"type":143,"name":211,"callback":212,"priority":11,"file":173,"line":213},"contextual_help","jajadi_contextual_help",66,{"type":143,"name":215,"callback":216,"file":173,"line":217},"after_switch_theme","my_rewrite_flush",67,{"type":143,"name":219,"callback":220,"file":173,"line":221},"plugins_loaded","jajadi_load_textdomain",68,{"type":152,"name":223,"callback":224,"file":173,"line":225},"the_content","jajadi_showcourses",73,{"type":143,"name":207,"callback":227,"file":173,"line":228},"jajadi_course_register",74,{"type":143,"name":230,"callback":231,"priority":232,"file":173,"line":233},"after_setup_theme","jajadi_register_taxonomies",1,75,[],[],[],[],{"dangerousFunctions":239,"sqlUsage":243,"outputEscaping":245,"fileOperations":13,"externalRequests":13,"nonceChecks":232,"capabilityChecks":232,"bundledLibraries":312},[240],{"fn":241,"file":168,"line":169,"context":242},"create_function","add_action( 'widgets_init', create_function('', 'return register_widget(\"jajadi_TrainingenWidget\");'",{"prepared":13,"raw":13,"locations":244},[],{"escaped":164,"rawEcho":182,"locations":246},[247,250,252,254,256,258,260,262,265,266,268,270,272,273,275,277,279,281,283,285,287,289,291,293,295,296,297,298,300,302,303,305,306,308,310],{"file":146,"line":248,"context":249},71,"raw output",{"file":146,"line":251,"context":249},99,{"file":146,"line":253,"context":249},109,{"file":146,"line":255,"context":249},110,{"file":146,"line":257,"context":249},122,{"file":146,"line":259,"context":249},133,{"file":146,"line":261,"context":249},160,{"file":263,"line":264,"context":249},"jajadi-training-about.php",2,{"file":263,"line":32,"context":249},{"file":263,"line":267,"context":249},4,{"file":263,"line":269,"context":249},6,{"file":263,"line":271,"context":249},7,{"file":263,"line":50,"context":249},{"file":274,"line":264,"context":249},"jajadi-training-calender.php",{"file":276,"line":264,"context":249},"jajadi-training-e-learning.php",{"file":278,"line":264,"context":249},"jajadi-training-forms.php",{"file":155,"line":280,"context":249},9,{"file":155,"line":282,"context":249},290,{"file":155,"line":284,"context":249},295,{"file":155,"line":286,"context":249},352,{"file":155,"line":288,"context":249},354,{"file":155,"line":290,"context":249},360,{"file":155,"line":292,"context":249},362,{"file":160,"line":294,"context":249},32,{"file":160,"line":186,"context":249},{"file":160,"line":201,"context":249},{"file":160,"line":217,"context":249},{"file":160,"line":299,"context":249},72,{"file":160,"line":301,"context":249},77,{"file":168,"line":150,"context":249},{"file":168,"line":304,"context":249},28,{"file":168,"line":174,"context":249},{"file":168,"line":307,"context":249},93,{"file":168,"line":309,"context":249},95,{"file":168,"line":311,"context":249},103,[],[],{"summary":315,"deductions":316},"The \"jajadi-training\" v0.5.7 plugin exhibits a generally strong security posture based on the provided static analysis. The absence of any known CVEs and the complete reliance on prepared statements for SQL queries are significant strengths. The plugin also appears to implement nonce and capability checks, which are fundamental security practices. However, the low percentage of properly escaped output (24%) is a notable concern. This indicates a substantial risk of Cross-Site Scripting (XSS) vulnerabilities, as user-supplied data might be rendered directly into the page without adequate sanitization.\n\nThe static analysis reveals the presence of the `create_function` dangerous function, which, while not an immediate vulnerability on its own, is considered a deprecated and potentially risky practice that can lead to security issues if not handled with extreme care. The fact that there are no identified taint flows or unsanitized paths is positive, suggesting that currently, there are no detectable exploitable paths from user input to sensitive operations. However, this could also be due to the limited scope of the taint analysis performed.\n\nGiven the lack of historical vulnerabilities, it's difficult to draw strong conclusions about past security patterns. The current version appears to be free from known critical security flaws based on the provided data. The primary area for improvement lies in the output escaping mechanisms to mitigate XSS risks. Overall, while the plugin demonstrates good intent with prepared statements and auth checks, the insufficient output escaping leaves it vulnerable to common web attacks.",[317,319],{"reason":318,"points":11},"Low percentage of properly escaped output (24%)",{"reason":320,"points":321},"Presence of dangerous function 'create_function'",5,"2026-03-17T01:24:58.181Z",{"wat":324,"direct":330},{"assetPaths":325,"generatorPatterns":327,"scriptPaths":328,"versionParams":329},[326],"\u002Fwp-content\u002Fplugins\u002Fjajadi-training\u002Fstyle.css",[],[],[],{"cssClasses":331,"htmlComments":332,"htmlAttributes":341,"restEndpoints":344,"jsGlobals":345,"shortcodeOutput":346},[],[333,334,335,336,337,338,339,340],"\u003C!-- Only run our customization on the 'edit.php' page in the admin. -->","\u003C!-- Common actions -->","\u003C!-- Register the post type - Training -->","\u003C!-- ATTENTION: This is *only* done during plugin activation hook! -->","\u003C!-- You should *NEVER EVER* do this on every page load!! -->","\u003C!-- add filter to ensure the text Training is displayed when user updates a jajadi_training -->","\u003C!-- Register the post type - Course -->","\u003C!-- add filter to ensure the text Course is displayed when user updates a jajadi_course -->",[342,343],"data-id","data-title",[],[],[]]