[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fzmSd0VfT3usb5EUtagKnLKsA4j_w3Wjylp2XM35b-XQ":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":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":25,"download_link":26,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30,"vulnerabilities":31,"developer":46,"crawl_stats":37,"alternatives":54,"analysis":154,"fingerprints":382},"posts-by-tag","Posts By Tag","3.2.1","Sudar Muthu","https:\u002F\u002Fprofiles.wordpress.org\u002Fsudar\u002F","\u003Cp>Posts By Tag WordPress Plugin, provides sidebar widgets which can be used to display posts from a specific set of tags in the sidebar.\u003C\u002Fp>\n\u003Cp>These tags can be specified in the widget or the Plugin can automatically retrieve them from the current post tags, post slug or form custom field. The custom fields can be specified in the edit post or page screen.\u003C\u002Fp>\n\u003Cp>You can also use shortcode or template function to display the posts.\u003C\u002Fp>\n\u003Cp>The Plugin caches the posts of each widget separately, and issues database queries only when needed. This will reduce the amount of database queries involved for each page load and will therefore be light on your server. If this clashes with other Plugins, you also have an option to disable it.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Ch4>Sidebar Widget\u003C\u002Fh4>\n\u003Cp>Posts By Tag Plugin provides a sidebar widget which can be configured to display posts from a set of tags in the sidebar. You can have multiple widgets with different set of tags configured for each one of them.\u003C\u002Fp>\n\u003Cp>Each widget allows you to choose\u003C\u002Fp>\n\u003Cul>\n\u003Cli>The set of tags from where posts should be selected (or excluded)\u003C\u002Fli>\n\u003Cli>The number of posts to be displayed.\u003C\u002Fli>\n\u003Cli>Whether to pick the tags from current post\u003C\u002Fli>\n\u003Cli>Whether to pick the tags from current post slug\u003C\u002Fli>\n\u003Cli>Whether to pick the tags from current post’s custom field\u003C\u002Fli>\n\u003Cli>Option to enable post excerpts to be displayed with post titles.\u003C\u002Fli>\n\u003Cli>Option to display post thumbnail if present.\u003C\u002Fli>\n\u003Cli>Option to display post author.\u003C\u002Fli>\n\u003Cli>Option to display post date.\u003C\u002Fli>\n\u003Cli>Option to display post content.\u003C\u002Fli>\n\u003Cli>Choose the order in which the posts should be displayed.\u003C\u002Fli>\n\u003Cli>Option to exclude current post\u002Fpage.\u003C\u002Fli>\n\u003Cli>Option to specify the target attribute for links\u003C\u002Fli>\n\u003Cli>Option to display links to tag archive pages.\u003C\u002Fli>\n\u003Cli>Option to disable the cache if needed.\u003C\u002Fli>\n\u003Cli>Option to enable Google Analytics tracking on the links\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>To add the widget, log into your WordPress admin console and go to Appearances -> Widgets. You will find the widget with the title “Posts By Tag”. Drag and drop it in the sidebar where you want the widget to be displayed.\u003C\u002Fp>\n\u003Ch4>Template function\u003C\u002Fh4>\n\u003Cp>In addition to using the widget, you can also use the following template function to display posts from a set of tags, anywhere in the theme.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>posts_by_tag($tags, $options);\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>The following options can be passed in the $options array\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>$tags\u003C\u002Fcode> (string) – set of comma separated tags. If you leave this empty, then the tags from the current post will be used.\u003C\u002Fli>\n\u003Cli>\u003Ccode>$options\u003C\u002Fcode> (array) – set of options. The following are the fields that are allowed\n\u003Cul>\n\u003Cli>\u003Ccode>number\u003C\u002Fcode> (number) – default 5 – number of posts to display\u003C\u002Fli>\n\u003Cli>\u003Ccode>tag_from_post\u003C\u002Fcode> (bool) – default FALSE – whether to pick up tags from current post’s tag\u003C\u002Fli>\n\u003Cli>\u003Ccode>tag_from_post_slug\u003C\u002Fcode> (bool) – default FALSE – whether to pick up tags from current post’s slug\u003C\u002Fli>\n\u003Cli>\u003Ccode>tag_from_post_custom_field\u003C\u002Fcode> (bool) – default FALSE – whether to pick up tags from current post’s custom field\u003C\u002Fli>\n\u003Cli>\u003Ccode>exclude\u003C\u002Fcode> (bool) – default FALSE – Where to include the tags or exclude the tags\u003C\u002Fli>\n\u003Cli>\u003Ccode>excerpt\u003C\u002Fcode> (bool)  – default FALSE – To display post excerpts or not\u003C\u002Fli>\n\u003Cli>\u003Ccode>excerpt_filter\u003C\u002Fcode> (bool) – default TRUE Whether to enable or disable excerpt filter\u003C\u002Fli>\n\u003Cli>\u003Ccode>thumbnail\u003C\u002Fcode> (bool) – default FALSE  – To display post thumbnails or not\u003C\u002Fli>\n\u003Cli>\u003Ccode>thumbnail_size\u003C\u002Fcode> (string\u002Farray) – default thumbnail  – Size of the thumbnail image. Refer to https:\u002F\u002Fcodex.wordpress.org\u002FFunction_Reference\u002Fget_the_post_thumbnail#Thumbnail_Sizes\u003C\u002Fli>\n\u003Cli>\u003Ccode>order_by\u003C\u002Fcode> (date,title, random) – default date – Whether to order by date or by title or show them randomly\u003C\u002Fli>\n\u003Cli>\u003Ccode>order\u003C\u002Fcode> (asc,desc) – default desc – To change the order in which the posts are displayed.\u003C\u002Fli>\n\u003Cli>\u003Ccode>author\u003C\u002Fcode> (bool) – default FALSE – To display author name or not.\u003C\u002Fli>\n\u003Cli>\u003Ccode>date\u003C\u002Fcode> (bool) – default FALSE – To display post date or not.\u003C\u002Fli>\n\u003Cli>\u003Ccode>content\u003C\u002Fcode> (bool) – default FALSE – To display post content or not.\u003C\u002Fli>\n\u003Cli>\u003Ccode>content_filter\u003C\u002Fcode> (bool) – default TRUE Whether to enable or disable content filter\u003C\u002Fli>\n\u003Cli>\u003Ccode>exclude_current_post\u003C\u002Fcode> (bool) – default TRUE – To exclude current post\u002Fpage.\u003C\u002Fli>\n\u003Cli>\u003Ccode>tag_links\u003C\u002Fcode> (bool) – default FALSE – To display link to tag archive page or not.\u003C\u002Fli>\n\u003Cli>\u003Ccode>link_target\u003C\u002Fcode> (string) – default empty – target attribute for the permalink links.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>In addition to the above options the following options are available in the \u003Ca href=\"http:\u002F\u002Fsudarmuthu.com\u002Fwordpress\u002Fposts-by-tag\u002Fpro-addons\" rel=\"nofollow ugc\">Pro addon\u003C\u002Fa>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>campaign\u003C\u002Fcode> (string) – The Google Analytics campaign code that needs to be appended to every link\u003C\u002Fli>\n\u003Cli>\u003Ccode>event\u003C\u002Fcode> (string) – The Google Analytics events code that needs to be appended to every link\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>You can checkout \u003Ca href=\"http:\u002F\u002Fsudarmuthu.com\u002Fwordpress\u002Fposts-by-tag#example-template\" rel=\"nofollow ugc\">some example PHP code\u003C\u002Fa> that shows how you can call the template function with different options.\u003C\u002Fp>\n\u003Ch4>Shortcode\u003C\u002Fh4>\n\u003Cp>You can also include the following shortcode in your blog posts or WordPress page, to display the posts from the set of tags.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>posts-by-tag tags = \"tag1, tag2\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>All the parameters that are accepted by the template tag can also be used in the shortcode.\u003C\u002Fp>\n\u003Cp>You can checkout \u003Ca href=\"http:\u002F\u002Fsudarmuthu.com\u002Fwordpress\u002Fposts-by-tag#example-shortcode\" rel=\"nofollow ugc\">some example shortcodes\u003C\u002Fa> that shows how you can use the shortcode with different options.\u003C\u002Fp>\n\u003Ch4>Custom field\u003C\u002Fh4>\n\u003Cp>You can also specify the tags for each post or page and a custom title using custom field. The UI for the custom field is available on the right side of the add\u002Fedit post\u002Fpage screen in WordPress admin console.\u003C\u002Fp>\n\u003Ch4>Styling using CSS\u003C\u002Fh4>\n\u003Cp>The Plugin adds the following CSS classes. If you want to customize the look of the widget then can change it by adding custom styles to these CSS classes and ids.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>The \u003Ccode>UL\u003C\u002Fcode> tag has the class \u003Ccode>posts-by-tag-list\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Every \u003Ccode>LI\u003C\u002Fcode> tag has the class \u003Ccode>posts-by-tag-item\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Every \u003Ccode>LI\u003C\u002Fcode> tag also has all tags names to which the post belongs as part of the class attribute\u003C\u002Fli>\n\u003Cli>Each \u003Ccode>LI\u003C\u002Fcode> tag also has the id \u003Ccode>posts-by-tag-item-{id}\u003C\u002Fcode>, where id is the post id.\u003C\u002Fli>\n\u003Cli>Each \u003Ccode>\u003Ca>\u003C\u002Fcode> tag inside \u003Ccode>LI\u003C\u002Fcode> that contains title has the class \u003Ccode>posts-by-tag-item-title\u003C\u002Fcode>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>If you want to output categories of the post as class names(so that you can style them differently), then you can get the code from this \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Fplugin-posts-by-tag-display-post-category-classes-in-outputted-code\" rel=\"ugc\">forum thread\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Caching\u003C\u002Fh4>\n\u003Cp>If you are using the widget, then the Plugin automatically caches the db queries. This will greatly improve the performance of you page. If this clashes with other Plugins or if you want to manage the cache yourself, then you disable the cache if needed.\u003C\u002Fp>\n\u003Cp>However if you are going to use the shortcode or the template directly, then you might have to cache the output yourself.\u003C\u002Fp>\n\u003Ch3>Development and Support\u003C\u002Fh3>\n\u003Cp>The development of the Plugin happens over at \u003Ca href=\"http:\u002F\u002Fgithub.com\u002Fsudar\u002Fposts-by-tag\" rel=\"nofollow ugc\">github\u003C\u002Fa>. If you want to contribute to the Plugin, fork the \u003Ca href=\"http:\u002F\u002Fgithub.com\u002Fsudar\u002Fposts-by-tag\" rel=\"nofollow ugc\">project at github\u003C\u002Fa> and send me a pull request.\u003C\u002Fp>\n\u003Cp>If you are not familiar with either git or Github then refer to this \u003Ca href=\"http:\u002F\u002Fsudarmuthu.com\u002Fblog\u002Fcontributing-to-project-hosted-in-github\" rel=\"nofollow ugc\">guide to see how fork and send pull request\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>If you are looking for ideas, then you can start with one of the following TODO items 🙂\u003C\u002Fp>\n\u003Ch3>TODO\u003C\u002Fh3>\n\u003Cp>The following are the features that I am thinking of adding to the Plugin, when I get some free time. If you have any feature request or want to increase the priority of a particular feature, then let me know by adding them to \u003Ca href=\"http:\u002F\u002Fgithub.com\u002Fsudar\u002Fposts-by-tag\u002Fissues\" rel=\"nofollow ugc\">github issues\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Provide template tags for widget title, that will be dynamically expanded.\u003C\u002Fli>\n\u003Cli>Add support for custom post types\u003C\u002Fli>\n\u003Cli>Ability to sort posts alphabetically\u003C\u002Fli>\n\u003Cli>Ability to \u003Ca href=\"http:\u002F\u002Fsudarmuthu.com\u002Fwordpress\u002Fposts-by-tag#comment-783250\" rel=\"nofollow ugc\">exclude posts by id\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Ability to \u003Ca href=\"http:\u002F\u002Fsudarmuthu.com\u002Fwordpress\u002Fposts-by-tag#comment-783248\" rel=\"nofollow ugc\">show comment count\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Ability to \u003Ca href=\"http:\u002F\u002Fsudarmuthu.com\u002Fwordpress\u002Fposts-by-tag#comment-780935\" rel=\"nofollow ugc\">retrieve posts by date range\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Ability to pull posts randomly. – Added in v3.0\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>If you have found a bug\u002Fissue or have a feature request, then post them in \u003Ca href=\"http:\u002F\u002Fgithub.com\u002Fsudar\u002Fposts-by-tag\u002Fissues\" rel=\"nofollow ugc\">github issues\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>If you have a question about usage or need help to troubleshoot, then post in WordPress forums or leave a comment in \u003Ca href=\"http:\u002F\u002Fsudarmuthu.com\u002Fwordpress\u002Fposts-by-tag\" rel=\"nofollow ugc\">Plugins’s home page\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>If you like the Plugin, then kindly leave a review\u002Ffeedback at \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fposts-by-tag\u002F\" rel=\"ugc\">WordPress repo page\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>If you find this Plugin useful or and wanted to say thank you, then there are ways to \u003Ca href=\"http:\u002F\u002Fsudarmuthu.com\u002Fif-you-wanna-thank-me\" rel=\"nofollow ugc\">make me happy\u003C\u002Fa> 🙂 and I would really appreciate if you can do one of those.\u003C\u002Fli>\n\u003Cli>Checkout other \u003Ca href=\"http:\u002F\u002Fsudarmuthu.com\u002Fwordpress\" rel=\"nofollow ugc\">WordPress Plugins\u003C\u002Fa> that I have written\u003C\u002Fli>\n\u003Cli>If anything else, then contact me in \u003Ca href=\"http:\u002F\u002Ftwitter.com\u002Fsudarmuthu\" rel=\"nofollow ugc\">twitter\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Translation\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Swedish (Thanks Gunnar Lindberg Årneby)\u003C\u002Fli>\n\u003Cli>Turkish (Thanks Yakup Gövler)\u003C\u002Fli>\n\u003Cli>Belorussian (Thanks FatCow)\u003C\u002Fli>\n\u003Cli>German (Thanks Renate)\u003C\u002Fli>\n\u003Cli>Dutch (Thanks Rene)\u003C\u002Fli>\n\u003Cli>Hebrew (Thanks Sagive SEO)\u003C\u002Fli>\n\u003Cli>Spanish (Thanks Brian Flores of InMotion Hosting)\u003C\u002Fli>\n\u003Cli>Bulgarian (Thanks Nikolay Nikolov of [IQ Test)\u003C\u002Fli>\n\u003Cli>Lithuanian (Thanks  Vincent G)\u003C\u002Fli>\n\u003Cli>Hindi (Thanks Love Chandel)\u003C\u002Fli>\n\u003Cli>Gujarati (Thanks Punnet of Resolutions Mart)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>The pot file is available with the Plugin. If you are willing to do translation for the Plugin, use the pot file to create the .po files for your language and let me know. I will add it to the Plugin after giving credit to you.\u003C\u002Fp>\n\u003Ch3>Readme Generator\u003C\u002Fh3>\n\u003Cp>This Readme file was generated using \u003Ca href='http:\u002F\u002Fsudarmuthu.com\u002Fwordpress\u002Fwp-readme' rel=\"nofollow ugc\">wp-readme\u003C\u002Fa>, which generates readme files for WordPress Plugins.\u003C\u002Fp>\n","Provide sidebar widget, shortcode and template functions that can be used to display posts from a set of tags using various options in the sidebar or  &hellip;",1000,80307,76,15,"2021-10-13T12:20:00.000Z","5.8.13","4.0","",[20,21,22,23,24],"cache","posts","sidebar","tag","widget","http:\u002F\u002Fsudarmuthu.com\u002Fwordpress\u002Fposts-by-tag","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fposts-by-tag.3.2.1.zip",63,1,"2025-10-22 00:00:00","2026-03-15T15:16:48.613Z",[32],{"id":33,"url_slug":34,"title":35,"description":36,"plugin_slug":4,"theme_slug":37,"affected_versions":38,"patched_in_version":37,"severity":39,"cvss_score":40,"cvss_vector":41,"vuln_type":42,"published_date":29,"updated_date":43,"references":44,"days_to_patch":37},"CVE-2025-62983","posts-by-tag-authenticated-contributor-stored-cross-site-scripting","Posts By Tag \u003C= 3.2.1 - Authenticated (Contributor+) Stored Cross-Site Scripting","The Posts By Tag plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to, and including, 3.2.1 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.",null,"\u003C=3.2.1","medium",6.4,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:L\u002FUI:N\u002FS:C\u002FC:L\u002FI:L\u002FA:N","Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')","2025-10-29 14:37:57",[45],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F92a81d4a-58ed-4812-a1f8-db86e410393c?source=api-prod",{"slug":47,"display_name":7,"profile_url":8,"plugin_count":48,"total_installs":49,"avg_security_score":50,"avg_patch_time_days":51,"trust_score":52,"computed_at":53},"sudar",16,21300,86,30,84,"2026-04-04T05:53:03.660Z",[55,73,93,111,134],{"slug":56,"name":57,"version":58,"author":59,"author_profile":60,"description":61,"short_description":62,"active_installs":63,"downloaded":64,"rating":65,"num_ratings":65,"last_updated":66,"tested_up_to":67,"requires_at_least":68,"requires_php":18,"tags":69,"homepage":70,"download_link":71,"security_score":72,"vuln_count":65,"unpatched_count":65,"last_vuln_date":37,"fetched_at":30},"selective-tags","Selective Tag Cloud Widget","1.2","Purab","https:\u002F\u002Fprofiles.wordpress.org\u002Fwordpressapi\u002F","\u003Cp>Selective Tag wordpress Plugin, provides sidebar widgets which can be used to display tags in the sidebar.\u003C\u002Fp>\n\u003Cp>Admin can select tag to show in sidebar. Auto complete Text box for Tags.\u003C\u002Fp>\n\u003Cp>When try to type tags, It will suggest you the used tags from wordpress site.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fwpapi.com\u002Fshow-selected-tags-in-wordpress-using-selective-tags-plugin\u002F\" rel=\"nofollow ugc\">Step by step installation instructions >>\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Demo URL:\u003Cbr \u002F>\nhttp:\u002F\u002Fwpapi.com\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fwpapi.com\u002Fcontact\u002F\" rel=\"nofollow ugc\">Click here for customer support >>\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Ch4>Sidebar Widget\u003C\u002Fh4>\n\u003Cp>Selective Tag wp Plugin, provides sidebar widgets which can be used to display tags in the sidebar. You can have multiple widgets with different set of tags configured for each one of them.\u003C\u002Fp>\n\u003Cp>Each widget allows you to choose\u003C\u002Fp>\n\u003Cul>\n\u003Cli>The set of tags displayed which is selected by admin\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Template function\u003C\u002Fh4>\n\u003Ch3>Translation\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Swedish \u003C\u002Fli>\n\u003Cli>Turkish \u003C\u002Fli>\n\u003Cli>Belorussian \u003C\u002Fli>\n\u003Cli>German \u003C\u002Fli>\n\u003Cli>Dutch \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>The pot file is available with the Plugin. If you are willing to do translation for the Plugin, use the pot file to create the .po files for your language and let me know. I will add it to the Plugin after giving credit to you.\u003C\u002Fp>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>Support for the Plugin is available from the [Plugin’s home page][1]. If you have any questions or suggestions, do leave a comment there or contact me in [twitter][5].\u003C\u002Fp>\n\u003Cp>[1]: \u003Ca href=\"http:\u002F\u002Fwpapi.com\u002Fcontact\u002F\" rel=\"nofollow ugc\">Click here for customer support >>\u003C\u002Fa>\u003C\u002Fp>\n","Provide sidebar widgets that can be used to display Selective Tags from a set of tags which is selected by admin in the sidebar.",10,2090,0,"2016-04-28T18:16:00.000Z","4.5.33","2.8",[20,21,22,23,24],"http:\u002F\u002Fwpapi.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fselective-tags.1.2.zip",85,{"slug":74,"name":75,"version":76,"author":77,"author_profile":78,"description":79,"short_description":80,"active_installs":81,"downloaded":82,"rating":83,"num_ratings":84,"last_updated":85,"tested_up_to":86,"requires_at_least":87,"requires_php":18,"tags":88,"homepage":91,"download_link":92,"security_score":72,"vuln_count":65,"unpatched_count":65,"last_vuln_date":37,"fetched_at":30},"ff-tab-widget","FF Tab Widget","1.1","Kharis Sulistiyono","https:\u002F\u002Fprofiles.wordpress.org\u002Fkharisblank\u002F","\u003Cp>FF Tab Widget is a great solution for you to display different contents in a single widget. You can display popular posts, recent posts, recent commets, and tags in an animated tabs.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Easy to install, just drag the widget into your widgetized sidebar.\u003C\u002Fli>\n\u003Cli>Has widget options: Label name, limit tab content and show\u002Fhide tab item.\u003C\u002Fli>\n\u003Cli>Uses jQuery Tabs \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FamazingSurge\u002Fjquery-tabs\" rel=\"nofollow ugc\">script\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>If you’d like to contribute to the plugin you can find it on \u003Ca href=\"http:\u002F\u002Fgithub.com\u002Fkharissulistiyo\u002FFF-Tab-Widget\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>FF doesn’t stand for anything.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fwww.kharissulistiyono.com\u002Fff-tab-widget-pro\u002F\" rel=\"nofollow ugc\">PRO version\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Usage\u003C\u002Fh4>\n\u003Cp>Simply go to Appearance > Widgets and drag “FF Tab Widget” instance to the sidebar of your choice. Within the widget are several options where you can show\u002Fhide tab item and specifify the content limit. See the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fff-tab-widget\u002Fscreenshots\" rel=\"ugc\">screenshots\u003C\u002Fa> for more details.\u003C\u002Fp>\n\u003Ch4>Tabs Widget Style\u003C\u002Fh4>\n\u003Cp>The tab widget style tested on “Twenty Twelve” theme (see the plugin screenshot). It may look different on other themes. You can adjust its style by modifying CSS file (fftw.css) inside the plugin folder. To make developers easy to make modification I also profide the LESS file (fftw.less).\u003C\u002Fp>\n\u003Cp>If you do not have time to make your tabs widget looks beautiful on your theme, you can \u003Ca href=\"mailto:kharisblank@gmail.com\" rel=\"nofollow ugc\">contact me\u003C\u002Fa> for plugin customization service.\u003C\u002Fp>\n\u003Cp>Contact this \u003Ca href=\"http:\u002F\u002Fkharissulistiyo.com\" rel=\"nofollow ugc\">plugin author\u003C\u002Fa>.\u003C\u002Fp>\n","Display popular posts, recent posts, recent commets, and tags in an animated tabs in a single widget.",80,7765,46,3,"2014-01-09T17:16:00.000Z","3.7.41","3.0",[89,21,22,90,24],"comments","tags","https:\u002F\u002Fgithub.com\u002Fkharissulistiyo\u002FFF-Tab-Widget","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fff-tab-widget.zip",{"slug":94,"name":95,"version":96,"author":97,"author_profile":98,"description":99,"short_description":100,"active_installs":101,"downloaded":102,"rating":65,"num_ratings":65,"last_updated":103,"tested_up_to":104,"requires_at_least":105,"requires_php":18,"tags":106,"homepage":108,"download_link":109,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":110,"fetched_at":30},"sensitive-tag-cloud","SensitiveTagCloud","1.4.1","reneade","https:\u002F\u002Fprofiles.wordpress.org\u002Freneade\u002F","\u003Cp>This wordpress plugin provides a configurable tagcloud that shows tags depending of the current context only. For example the tagcloud shows only tags that really occur in the current category, or within the current date-, author-, tag- archive or even only the tags that occur in the search results.\u003Cbr \u002F>\nIt is also possible to restrict the links of the tag cloud to the current viewing tag archive or category: If you click on the tag “test1” within the tag cloud of the tag archive of “test2” the target page will only contain posts that have both tags, like a drill down navigation. It is possible to exclude the tag of the tag-archive itself from the tagcloud.\u003Cbr \u002F>\nFor the single post pages you can configure the tagcloud to show also related tags of the current posts, not only the direct tags of the post. And you can configure the tagcloud to exclude the tag of the current post, to show only the related tags.\u003Cbr \u002F>\nThe style and sizes of the tagcloud can be configured, and the widget can be configured to be only visible if viewing a tag archive, category, a sinlge post or even only if viewing the searchresults for example. It is also possible to configure the number of tags that should be displayed in the different conditions.\u003C\u002Fp>\n\u003Cp>Plugin Website: http:\u002F\u002Fwww.rene-ade.de\u002Finhalte\u002Fwordpress-plugin-sensitivetagcloud.html\u003Cbr \u002F>\nDonations: http:\u002F\u002Fwww.rene-ade.de\u002Fstichwoerter\u002Fspenden\u003C\u002Fp>\n\u003Ch3>Update\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Deactivate the Plugin\u003C\u002Fli>\n\u003Cli>Remove the existing folder ‘sensitive-tag-cloud’ with all files from the ‘wp-content\u002Fplugins’ folder on your webserver\u003C\u002Fli>\n\u003Cli>Upload the new folder ‘sensitive-tag-cloud’ with all files to ‘\u002Fwp-content\u002Fplugins’ on your webserver\u003C\u002Fli>\n\u003Cli>Activate the plugin through the ‘Plugins’ menu in WordPress\u003C\u002Fli>\n\u003C\u002Fol>\n","This wordpress plugin provides a tagcloud that shows tags depending of the current context (e.g. Category, Author, Tag, Post) only.",50,15079,"2009-06-25T01:17:00.000Z","2.99999","2.3",[107,21,22,90,24],"categories","http:\u002F\u002Fwww.rene-ade.de\u002Finhalte\u002Fwordpress-plugin-sensitivetagcloud.html","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsensitive-tag-cloud.zip","2025-12-31 00:00:00",{"slug":112,"name":113,"version":114,"author":115,"author_profile":116,"description":117,"short_description":118,"active_installs":119,"downloaded":120,"rating":121,"num_ratings":122,"last_updated":123,"tested_up_to":124,"requires_at_least":87,"requires_php":125,"tags":126,"homepage":18,"download_link":130,"security_score":131,"vuln_count":132,"unpatched_count":65,"last_vuln_date":133,"fetched_at":30},"widget-logic","Widget Logic","6.0.9","Widgetlogic.org","https:\u002F\u002Fprofiles.wordpress.org\u002Fwidgetlogics\u002F","\u003Cp>This plugin gives every widget an extra control field called “Widget logic” that lets you control the pages that the widget will appear on. The text field lets you use WP’s \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FConditional_Tags\" rel=\"nofollow ugc\">Conditional Tags\u003C\u002Fa>, or any general PHP code.\u003C\u002Fp>\n\u003Cp>The configuring and options are in the usual widget admin interface.\u003C\u002Fp>\n\u003Cp>BIG UPDATE:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>Now you can control widget in Gutenberg Widgets editor as well as in Classic Editor. It is just as easy as before but also in gutenberg view.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Pre-installed widgets let you add special widget with one click of the mouse. First pre-installed widget is Live Match that let you add widget of one random live football game with real time score updates (teams logos, livescore, minute of the match, tournament name). And more interesting widgets to come!\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>NOTE ON DEFAULT FUNCTIONS:\u003C\u002Fstrong> Widget Logic includes a whitelist of common WordPress conditional tags and safe functions. If you need additional WordPress functions that are not currently whitelisted, please create a topic in our \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fwidget-logic\u002F\" rel=\"ugc\">support forum\u003C\u002Fa> to request them. We regularly add commonly requested functions in new releases.\u003C\u002Fp>\n\u003Ch4>Configuration\u003C\u002Fh4>\n\u003Cp>Aside from logic against your widgets, there are three options added to the foot of the widget admin page (see screenshots).\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>Use ‘wp_reset_query’ fix — Many features of WP, as well as the many themes and plugins out there, can mess with the conditional tags, such that is_home is NOT true on the home page. This can often be fixed with a quick wp_reset_query() statement just before the widgets are called, and this option puts that in for you rather than having to resort to code editing\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Load logic — This option allows you to set the point in the page load at which your widget logic if first checked. Pre v.50 it was when the ‘wp_head’ trigger happened, ie during the creation of the HTML’s HEAD block. Many themes didn’t call wp_head, which was a problem. From v.50 it happens, by default, as early as possible, which is as soon as the plugin loads. You can now specify these ‘late load’ points (in chronological order):\u003C\u002Fp>\n\u003Cul>\n\u003Cli>after the theme loads (after_setup_theme trigger)\u003C\u002Fli>\n\u003Cli>when all PHP loaded (wp_loaded trigger)\u003C\u002Fli>\n\u003Cli>after query variables set (parse_query) – this is the default\u003C\u002Fli>\n\u003Cli>during page header (wp_head trigger)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>You may need to delay the load if your logic depends on functions defined, eg in the theme functions.php file. Conversely you may want the load early so that the widget count is calculated correctly, eg to show an alternative layour or content when a sidebar has no widgets.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Don’t cache widget logic results — From v .58 the widget logic code should only execute once, but that might cause unexpected results with some themes, so this option is here to turn that behaviour off. (The truth\u002Ffalse of the code will be evaluated every time the sidebars_widgets filter is called.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Custom PHP Functions — From v.6.0.6 you can use the \u003Ccode>widget_logic_allowed_functions\u003C\u002Fcode> filter to add custom PHP functions that will be allowed in Widget Logic fields. By default, only WordPress conditional tags and a whitelist of safe functions are available. This filter allows you to extend the functionality and use your own custom functions.\u003C\u002Fp>\n\u003Cp>To add a custom function, add the following code to your theme’s \u003Ccode>functions.php\u003C\u002Fcode> file:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>`add_filter('widget_logic_allowed_functions', 'my_allowed_functions');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>function my_allowed_functions($functions) {\u003Cbr \u002F>\n    $functions[] = ‘\u003Cem>my_custom_function_name\u003C\u002Fem>‘;\u003Cbr \u002F>\n    return $functions;\u003Cbr \u002F>\n}`\u003C\u002Fp>\n\u003Cp>You can add multiple functions by using one wrapper function:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>`add_filter('widget_logic_allowed_functions', 'my_allowed_functions');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>function my_allowed_functions($functions) {\u003Cbr \u002F>\n    $functions[] = ‘is_special_page’;\u003Cbr \u002F>\n    $functions[] = ‘is_user_verified’;\u003Cbr \u002F>\n    $functions[] = ‘get_sidebar_title’;\u003Cbr \u002F>\n    return $functions;\u003Cbr \u002F>\n}`\u003C\u002Fp>\n\u003Cp>\u003Cstrong>IMPORTANT NOTE ON VARIABLES:\u003C\u002Fstrong> Widget Logic is designed to work with simple data types (strings, numbers, booleans). If you need to use complex variables, global state, or conditional logic that depends on many factors, create a custom function in your theme’s \u003Ccode>functions.php\u003C\u002Fcode> file and call it from Widget Logic:\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Good approach (in functions.php):\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>`function is_special_page() {\nglobal $post;\n$special_ids = array(5, 10, 15);\n$conditions = some_complex_function();\n\nreturn is_page() && in_array($post->ID, $special_ids) && $conditions;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>}`\u003C\u002Fp>\n\u003Cp>Then in Widget Logic field, simply use: \u003Ccode>is_special_page()\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Less ideal approach (in Widget Logic field):\u003C\u002Fstrong>\u003Cbr \u002F>\nAvoid putting complex logic directly in the Widget Logic field. Keep it simple and let your custom function handle the complexity. This keeps your widget settings clean and maintainable.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Interaction with External Services\u003C\u002Fh4>\n\u003Cp>Widget Logic uses the external service to obtain up-to-date information about the results of football matches. \u003Ca href=\"https:\u002F\u002Fwidgetlogic.org\" rel=\"nofollow ugc\">widgetlogic.org\u003C\u002Fa> is a source of sports information, that provides a wide range of information about football, including various leagues, tournaments, and championships from around the world.\u003C\u002Fp>\n\u003Cp>The functioning of the \u003Ca href=\"https:\u002F\u002Fwidgetlogic.org\" rel=\"nofollow ugc\">widgetlogic.org\u003C\u002Fa> service is based on delivering real-time data about selected matches without the need to refresh the page. This means that data is automatically updated without requiring page reload. This approach ensures users quick and uninterrupted access to the latest sports data without the effort of manually updating information, allowing them to stay informed about ongoing events in real-time.\u003C\u002Fp>\n\u003Ch3>Writing Logic Code\u003C\u002Fh3>\n\u003Cp>The text in the ‘Widget logic’ field can be full PHP code and should return ‘true’ when you need the widget to appear. If there is no ‘return’ in the text, an implicit ‘return’ is added to the start and a ‘;’ is added on the end. (This is just to make single statements like is_home() more convenient.)\u003C\u002Fp>\n\u003Ch4>The Basics\u003C\u002Fh4>\n\u003Cp>Make good use of \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FConditional_Tags\" rel=\"nofollow ugc\">WP’s own conditional tags\u003C\u002Fa>. You can vary and combine code using:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>!\u003C\u002Fcode> (NOT) to \u003Cstrong>reverse\u003C\u002Fstrong> the logic, eg \u003Ccode>!is_home()\u003C\u002Fcode> is TRUE when this is NOT the home page.\u003C\u002Fli>\n\u003Cli>\u003Ccode>||\u003C\u002Fcode> (OR) to \u003Cstrong>combine\u003C\u002Fstrong> conditions. \u003Ccode>X OR Y\u003C\u002Fcode> is TRUE when either X is true or Y is true.\u003C\u002Fli>\n\u003Cli>\u003Ccode>&&\u003C\u002Fcode> (AND) to make conditions \u003Cstrong>more specific\u003C\u002Fstrong>. \u003Ccode>X AND Y\u003C\u002Fcode> is TRUE when both X is true and Y is true.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>There are lots of great code examples on the WP forums, and on WP sites across the net. But the WP Codex is also full of good examples to adapt, such as \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FTemplate_Tags\u002Fin_category#Testing_if_a_post_is_in_a_descendant_category\" rel=\"nofollow ugc\">Test if post is in a descendent category\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Examples\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ccode>is_home()\u003C\u002Fcode> — just the main blog page\u003C\u002Fli>\n\u003Cli>\u003Ccode>!is_page('about')\u003C\u002Fcode> — everywhere EXCEPT this specific WP ‘page’\u003C\u002Fli>\n\u003Cli>\u003Ccode>!is_user_logged_in()\u003C\u002Fcode> — shown when a user is not logged in\u003C\u002Fli>\n\u003Cli>\u003Ccode>is_category(array(5,9,10,11))\u003C\u002Fcode> — category page of one of the given category IDs\u003C\u002Fli>\n\u003Cli>\u003Ccode>is_single() && in_category('baked-goods')\u003C\u002Fcode> — single post that’s in the category with this slug\u003C\u002Fli>\n\u003Cli>\u003Ccode>current_user_can('level_10')\u003C\u002Fcode> — admin only widget\u003C\u002Fli>\n\u003Cli>\u003Ccode>strpos($_SERVER['HTTP_REFERER'], \"google.com\")!=false\u003C\u002Fcode> — widget to show when clicked through from a google search\u003C\u002Fli>\n\u003Cli>\u003Ccode>is_category() && custom_function_to_check_the_category()\u003C\u002Fcode> — category page that’s a descendent of category 5\u003C\u002Fli>\n\u003Cli>\u003Ccode>custom_function_from_functions_php_to_check_the_page()\u003C\u002Fcode> — WP page that is a child of page 77\u003C\u002Fli>\n\u003Cli>\u003Ccode>custom_function_from_functions_php_to_check_the_page_child_of(13)\u003C\u002Fcode> — home page OR the page that’s a child of page 13\u003C\u002Fli>\n\u003C\u002Ful>\n","Widget Logic lets you control on which pages widgets appear using WP's conditional tags.",100000,3242040,88,188,"2026-01-15T09:43:00.000Z","6.9.4","5.4",[127,128,129,22,24],"blocks","conditional-tags","gutenberg-widgets","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwidget-logic.6.0.9.zip",95,2,"2025-06-09 00:00:00",{"slug":135,"name":136,"version":137,"author":138,"author_profile":139,"description":140,"short_description":141,"active_installs":142,"downloaded":143,"rating":81,"num_ratings":144,"last_updated":145,"tested_up_to":146,"requires_at_least":147,"requires_php":18,"tags":148,"homepage":152,"download_link":153,"security_score":72,"vuln_count":65,"unpatched_count":65,"last_vuln_date":37,"fetched_at":30},"advanced-random-posts-widget","Advanced Random Posts Widget","2.2.1","Ga Satrya","https:\u002F\u002Fprofiles.wordpress.org\u002Fsatrya\u002F","\u003Ch4>Notice\u003C\u002Fh4>\n\u003Cp>This plugin is no longer supported, please use \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Frecent-posts-widget-extended\u002F\" rel=\"ugc\">Recent posts widget Extended\u003C\u002Fa> instead.\u003C\u002Fp>\n\u003Cp>This plugin will enable a custom, flexible and advanced random posts. It allows you to display a list of random posts via shortcode or widget with thumbnail, excerpt and post date, also you can display it from all or specific or multiple taxonomy.\u003C\u002Fp>\n\u003Ch4>Features Include\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Allow you to set title url.\u003C\u002Fli>\n\u003Cli>Display thumbnails, with customizable size and alignment.\u003C\u002Fli>\n\u003Cli>Display excerpt, with customizable length.\u003C\u002Fli>\n\u003Cli>Display from all, specific or multiple category.\u003C\u002Fli>\n\u003Cli>Display from all, specific or multiple tag.\u003C\u002Fli>\n\u003Cli>Display from all, specific or multiple taxonomy.\u003C\u002Fli>\n\u003Cli>Display post date.\u003C\u002Fli>\n\u003Cli>Display post modified date.\u003C\u002Fli>\n\u003Cli>Post types.\u003C\u002Fli>\n\u003Cli>Post status.\u003C\u002Fli>\n\u003Cli>Allow you to set custom css class per widget.\u003C\u002Fli>\n\u003Cli>Add custom html or text before and\u002For after random posts.\u003C\u002Fli>\n\u003Cli>Multiple widgets.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Support Me\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Purchase or download my \u003Ca href=\"https:\u002F\u002Fwp.idenovasi.com\u002F\" rel=\"nofollow ugc\">WordPress themes\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Purchase my \u003Ca href=\"https:\u002F\u002Fwww.fiverr.com\u002Fidenovasi\" rel=\"nofollow ugc\">Services\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Try another \u003Ca href=\"https:\u002F\u002Fprofiles.wordpress.org\u002Fidenovasi\u002F#content-plugins\" rel=\"nofollow ugc\">WordPress plugin\u003C\u002Fa> from me.\u003C\u002Fli>\n\u003Cli>Contribute on \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fidenovasi\u002Fadvanced-random-posts-widget\" rel=\"nofollow ugc\">Github\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Shorcode Explanation\u003C\u002Fh3>\n\u003Cp>Explanation of shortcode options:\u003C\u002Fp>\n\u003Cp>Basic shortcode\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[arpw]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Display 10 random posts\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[arpw limit=\"10\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Display with thumbnail and set the size\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[arpw thumbnail=\"true\" thumbnail_size=\"arpw-thumbnail\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Display posts based on category by id\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[arpw thumbnail=\"true\" cat=\"10\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Display portfolio post type\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[arpw post_type=\"portfolio\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Here’s the full default shortcode arguments\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>title=\"\"\noffset=\"\"\nlimit=\"5\"\npost_type=\"post\"\npost_status=\"publish\"\nignore_sticky=\"1\"\ntaxonomy=\"\"\ncat=\"\"\ntag=\"\"\nthumbnail=\"false\"\nthumbnail_size=\"arpw-thumbnail\"\nthumbnail_align=\"left\"\nexcerpt=\"false\"\nexcerpt_length=\"10\"\ndate=\"false\"\ndate_modified=\"false\"\ndate_relative=\"false\"\ncss_class=\"\"\nbefore=\"\"\nafter=\"\"\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Provides flexible and advanced random posts. Display it via shortcode or widget with thumbnails, post excerpt, and much more!",10000,216217,39,"2023-08-05T11:11:00.000Z","6.1.10","4.5",[149,22,150,24,151],"random-posts","thumbnail","widgets","https:\u002F\u002Fgithub.com\u002Fidenovasi\u002Fadvanced-random-posts-widget","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fadvanced-random-posts-widget.2.2.1.zip",{"attackSurface":155,"codeSignals":198,"taintFlows":372,"riskAssessment":373,"analyzedAt":381},{"hooks":156,"ajaxHandlers":191,"restRoutes":192,"shortcodes":193,"cronEvents":197,"entryPointCount":28,"unprotectedCount":65},[157,164,168,172,176,180,184,187],{"type":158,"name":159,"callback":160,"priority":161,"file":162,"line":163},"action","init","Posts_By_Tag_Google_Analytics",100,"include\\posts-by-tag-google-analytics.php",105,{"type":158,"name":165,"callback":166,"file":167,"line":131},"admin_print_scripts","add_script","posts-by-tag.php",{"type":158,"name":169,"callback":170,"file":167,"line":171},"admin_head","add_script_config",96,{"type":158,"name":173,"callback":174,"file":167,"line":175},"admin_menu","add_custom_box",99,{"type":158,"name":177,"callback":178,"file":167,"line":179},"save_post","save_postdata",102,{"type":181,"name":182,"callback":183,"priority":63,"file":167,"line":163},"filter","plugin_row_meta","add_plugin_links",{"type":158,"name":159,"callback":185,"file":167,"line":186},"posts_by_tag_init",375,{"type":158,"name":188,"callback":189,"file":167,"line":190},"widgets_init","simple_tags_register_widget",381,[],[],[194],{"tag":4,"callback":195,"file":167,"line":196},"shortcode_handler",108,[],{"dangerousFunctions":199,"sqlUsage":200,"outputEscaping":202,"fileOperations":65,"externalRequests":65,"nonceChecks":28,"capabilityChecks":132,"bundledLibraries":371},[],{"prepared":65,"raw":65,"locations":201},[],{"escaped":203,"rawEcho":204,"locations":205},11,101,[206,209,210,212,213,215,217,218,220,222,223,224,226,228,229,230,231,233,235,236,238,240,241,243,245,246,248,250,251,253,255,256,258,260,261,262,264,266,267,268,269,271,273,275,276,277,279,280,282,283,284,286,287,288,290,292,293,295,297,298,300,302,303,305,307,308,310,312,314,316,318,320,322,324,326,328,330,332,333,335,337,338,339,341,343,344,346,348,349,350,351,353,355,356,357,358,360,363,365,367,369],{"file":207,"line":72,"context":208},"include\\class-tagwidget.php","raw output",{"file":207,"line":50,"context":208},{"file":207,"line":211,"context":208},87,{"file":207,"line":121,"context":208},{"file":207,"line":214,"context":208},90,{"file":207,"line":216,"context":208},92,{"file":207,"line":131,"context":208},{"file":207,"line":219,"context":208},225,{"file":207,"line":221,"context":208},226,{"file":207,"line":221,"context":208},{"file":207,"line":221,"context":208},{"file":207,"line":225,"context":208},230,{"file":207,"line":227,"context":208},232,{"file":207,"line":227,"context":208},{"file":207,"line":227,"context":208},{"file":207,"line":227,"context":208},{"file":207,"line":232,"context":208},238,{"file":207,"line":234,"context":208},239,{"file":207,"line":234,"context":208},{"file":207,"line":237,"context":208},244,{"file":207,"line":239,"context":208},245,{"file":207,"line":239,"context":208},{"file":207,"line":242,"context":208},250,{"file":207,"line":244,"context":208},251,{"file":207,"line":244,"context":208},{"file":207,"line":247,"context":208},256,{"file":207,"line":249,"context":208},257,{"file":207,"line":249,"context":208},{"file":207,"line":252,"context":208},262,{"file":207,"line":254,"context":208},263,{"file":207,"line":254,"context":208},{"file":207,"line":257,"context":208},268,{"file":207,"line":259,"context":208},270,{"file":207,"line":259,"context":208},{"file":207,"line":259,"context":208},{"file":207,"line":263,"context":208},274,{"file":207,"line":265,"context":208},275,{"file":207,"line":265,"context":208},{"file":207,"line":265,"context":208},{"file":207,"line":265,"context":208},{"file":207,"line":270,"context":208},279,{"file":207,"line":272,"context":208},280,{"file":207,"line":274,"context":208},281,{"file":207,"line":274,"context":208},{"file":207,"line":274,"context":208},{"file":207,"line":278,"context":208},289,{"file":207,"line":278,"context":208},{"file":207,"line":281,"context":208},291,{"file":207,"line":281,"context":208},{"file":207,"line":281,"context":208},{"file":207,"line":285,"context":208},292,{"file":207,"line":285,"context":208},{"file":207,"line":285,"context":208},{"file":207,"line":289,"context":208},297,{"file":207,"line":291,"context":208},298,{"file":207,"line":291,"context":208},{"file":207,"line":294,"context":208},303,{"file":207,"line":296,"context":208},304,{"file":207,"line":296,"context":208},{"file":207,"line":299,"context":208},309,{"file":207,"line":301,"context":208},310,{"file":207,"line":301,"context":208},{"file":207,"line":304,"context":208},315,{"file":207,"line":306,"context":208},316,{"file":207,"line":306,"context":208},{"file":207,"line":309,"context":208},322,{"file":207,"line":311,"context":208},323,{"file":207,"line":313,"context":208},326,{"file":207,"line":315,"context":208},327,{"file":207,"line":317,"context":208},330,{"file":207,"line":319,"context":208},331,{"file":207,"line":321,"context":208},338,{"file":207,"line":323,"context":208},339,{"file":207,"line":325,"context":208},342,{"file":207,"line":327,"context":208},343,{"file":207,"line":329,"context":208},349,{"file":207,"line":331,"context":208},350,{"file":207,"line":331,"context":208},{"file":207,"line":334,"context":208},355,{"file":207,"line":336,"context":208},357,{"file":207,"line":336,"context":208},{"file":207,"line":336,"context":208},{"file":207,"line":340,"context":208},361,{"file":207,"line":342,"context":208},362,{"file":207,"line":342,"context":208},{"file":207,"line":345,"context":208},376,{"file":207,"line":347,"context":208},378,{"file":207,"line":347,"context":208},{"file":207,"line":347,"context":208},{"file":207,"line":347,"context":208},{"file":207,"line":352,"context":208},383,{"file":207,"line":354,"context":208},385,{"file":207,"line":354,"context":208},{"file":207,"line":354,"context":208},{"file":207,"line":354,"context":208},{"file":207,"line":359,"context":208},389,{"file":361,"line":362,"context":208},"include\\template-functions.php",49,{"file":167,"line":364,"context":208},133,{"file":167,"line":366,"context":208},215,{"file":167,"line":368,"context":208},217,{"file":167,"line":370,"context":208},218,[],[],{"summary":374,"deductions":375},"The \"posts-by-tag\" plugin version 3.2.1 exhibits a mixed security posture. On the positive side, it demonstrates good practices with 100% of SQL queries using prepared statements, no dangerous functions, no file operations, and no external HTTP requests. The presence of nonce and capability checks suggests an awareness of securing entry points. However, a significant concern arises from the low output escaping rate, with only 10% of outputs being properly escaped. This indicates a high risk of Cross-Site Scripting (XSS) vulnerabilities where user-supplied data could be rendered unsafely in the browser.\n\nThe vulnerability history reveals one known medium-severity CVE, identified as Cross-Site Scripting, which is currently unpatched. This is a critical indicator of an existing security flaw that could be exploited by attackers. While the static analysis did not explicitly flag unsanitized output that leads to XSS, the low escaping rate strongly suggests this is the likely cause of the past vulnerability and a continuing risk.\n\nIn conclusion, while the plugin has some strong security foundations, the unpatched XSS vulnerability and the low rate of output escaping represent significant weaknesses. The single unpatched CVE demands immediate attention, and the general lack of robust output escaping in the codebase presents a persistent threat that could lead to further exploitable vulnerabilities.",[376,378],{"reason":377,"points":14},"Unpatched medium severity CVE",{"reason":379,"points":380},"Low output escaping (90% unescaped)",7,"2026-03-16T18:52:21.980Z",{"wat":383,"direct":389},{"assetPaths":384,"generatorPatterns":386,"scriptPaths":387,"versionParams":388},[385],"\u002Fwp-content\u002Fplugins\u002Fposts-by-tag\u002Finclude\u002Fposts-by-tag-google-analytics.php",[],[],[],{"cssClasses":390,"htmlComments":391,"htmlAttributes":392,"restEndpoints":393,"jsGlobals":394,"shortcodeOutput":396},[],[],[],[],[395],"Posts_By_Tag",[]]