[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f0Q3vg8LuGJyfVL5EP2oTIT2ckYA7QLTubJWKmtx8r1A":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":24,"download_link":25,"security_score":13,"vuln_count":26,"unpatched_count":26,"last_vuln_date":27,"fetched_at":28,"vulnerabilities":29,"developer":30,"crawl_stats":27,"alternatives":37,"analysis":148,"fingerprints":307},"easy-bookmark","Easy Bookmark","1.0.3","themewant","https:\u002F\u002Fprofiles.wordpress.org\u002Fthemewant\u002F","\u003Cp>Easy Bookmark allows users to save posts or pages as bookmarks on your WP site. They can then access these bookmarked posts via a dedicated page or widget.\u003C\u002Fp>\n\u003Cp>The plugin is ideal for users who want to save articles, blog posts, or products and revisit them later without needing to search again.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Users can bookmark any post or page with a single click.\u003C\u002Fli>\n\u003Cli>Bookmark management with add\u002Fremove bookmark functionality.\u003C\u002Fli>\n\u003Cli>Display bookmarked posts in a widget or on a custom page.\u003C\u002Fli>\n\u003Cli>Simple shortcode to show the bookmark counter.\u003C\u002Fli>\n\u003Cli>Compatible with any theme.\u003C\u002Fli>\n\u003Cli>Works seamlessly with custom post types.\u003C\u002Fli>\n\u003Cli>Fully responsive and user-friendly.\u003C\u002Fli>\n\u003C\u002Ful>\n","The Easy Bookmark Plugin provides a bookmark solution for WP websites. Users can bookmark posts and view them anytime.",80,1675,100,1,"2025-11-30T12:06:00.000Z","6.8.5","5.0","",[20,21,4,22,23],"bookmark","bookmark-posts","post-bookmark","save-post","https:\u002F\u002Fthemewant.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Feasy-bookmark.1.0.3.zip",0,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":32,"avg_security_score":33,"avg_patch_time_days":34,"trust_score":35,"computed_at":36},8,8990,95,30,91,"2026-04-04T05:34:04.537Z",[38,56,79,103,126],{"slug":39,"name":40,"version":41,"author":42,"author_profile":43,"description":44,"short_description":45,"active_installs":26,"downloaded":46,"rating":26,"num_ratings":26,"last_updated":18,"tested_up_to":16,"requires_at_least":17,"requires_php":47,"tags":48,"homepage":18,"download_link":54,"security_score":13,"vuln_count":26,"unpatched_count":26,"last_vuln_date":27,"fetched_at":55},"jiali-user-bookmarks","Jiali User Bookmarks","1.0.1","Mahyar","https:\u002F\u002Fprofiles.wordpress.org\u002Fmrgrad\u002F","\u003Cp>Jiali User Bookmarks is a lightweight and developer-friendly WordPress plugin that allows users to save posts for later reading.\u003Cbr \u002F>\nYou can choose the wording that best fits your site — “Bookmark”, “Save”, or “Favorite”.\u003Cbr \u002F>\nIt’s fully AJAX-powered for a seamless user experience — no page reloads required.\u003C\u002Fp>\n\u003Cp>Perfect for blogs, news sites, tutorials, or any content-rich site where readers may want to come back to specific articles later.\u003C\u002Fp>\n\u003Ch3>🚀 Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>📑 One-click Bookmark \u002F Save \u002F Favorite button for posts  \u003C\u002Fli>\n\u003Cli>🎨 Custom styles — easily override the button styles with your own CSS  \u003C\u002Fli>\n\u003Cli>📋 Display bookmarks using flexible shortcodes  \u003C\u002Fli>\n\u003Cli>⚡ AJAX-powered (no page reloads)  \u003C\u002Fli>\n\u003Cli>🔐 Works only for logged-in users (for personalization & security)  \u003C\u002Fli>\n\u003Cli>📊 Display bookmark counts and lists dynamically  \u003C\u002Fli>\n\u003Cli>🧩 Shortcode support for easy placement in page builders, templates, or loops  \u003C\u002Fli>\n\u003Cli>🧼 Lightweight, extendable, and developer-friendly (uses WordPress standards)  \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>🛠️ Developer Notes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Coded with WordPress best practices (escaping, nonce validation, cache support)  \u003C\u002Fli>\n\u003Cli>Compatible with block themes and classic themes\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>Developed by \u003Ca href=\"https:\u002F\u002Fmahyarerad.com\" rel=\"nofollow ugc\">Mahyar Rad\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>This plugin is licensed under GPLv2 or later.\u003C\u002Fp>\n","Let your visitors easily bookmark, save, or favorite posts! Lightweight, AJAX-powered plugin to boost user engagement and interactivity. 📑✨",192,"7.2",[49,50,51,52,53],"ajax","bookmarks","favorites","reading-list","save-posts","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fjiali-user-bookmarks.1.0.1.zip","2026-03-15T10:48:56.248Z",{"slug":51,"name":57,"version":58,"author":59,"author_profile":60,"description":61,"short_description":62,"active_installs":63,"downloaded":64,"rating":65,"num_ratings":66,"last_updated":67,"tested_up_to":16,"requires_at_least":68,"requires_php":69,"tags":70,"homepage":74,"download_link":75,"security_score":76,"vuln_count":77,"unpatched_count":14,"last_vuln_date":78,"fetched_at":28},"Favorites","2.3.6","Kyle Phillips","https:\u002F\u002Fprofiles.wordpress.org\u002Fkylephillips\u002F","\u003Cp>\u003Cstrong>Why Favorites?\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Favorites is designed for end users and theme developers. It provides an easy-to-use API for adding favorite button functionality to any post type.\u003C\u002Fp>\n\u003Cp>The plugin can provide a way to save favorites, likes, bookmarks, or any other similar types of data with its customizable button text.\u003C\u002Fp>\n\u003Cp>Visit \u003Ca href=\"http:\u002F\u002Ffavoriteposts.com\" rel=\"nofollow ugc\">favoriteposts.com\u003C\u002Fa> for a full list of available template functions and shortcodes.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Use with Any Post Type\u003C\u002Fstrong> – Enable or disable favorite functionality per post type while automatically adding a favorite button before and\u002For after the content. Or, use the included functions to display the button anywhere in your template.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Available for All Users\u003C\u002Fstrong> – Don’t want to hide functionality behind a login? Favorites includes an option to save anonymous users’ favorites by either Session or Cookie. Logged-In users’ favorites are also saved as user meta\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Designed for Developers\u003C\u002Fstrong> – Favorites works great out-of-the-box for beginners, but a full set of template functions unlocks just about any sort of custom functionality developers may need. Favorites outputs the minimum amount of markup needed, putting the style and control in your hands.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>GDPR\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>As of version 2.2, a setting is provided to help comply with GDPR standards. To enable this setting, visit Settings > Favorites > Users, and check the field under “User Cookie Consent.” When this setting is enabled, the content saved under the setting displays in a modal window, and the user must agree to the terms you provide before favorite cookies can be saved. Note: There is no language provided by default. This should be supplied by a qualified attorney or legal entity. Once the user has approved or denied cookies, that is saved in the “simplefavorites” cookie along with the timestamp of approval or denial. If the site is part of a multi-site installation, the setting will carry through to all sites.\u003C\u002Fp>\n\u003Cp>If your site already has a cookie compliance solution in place, there are two document-level jQuery events that may be triggered in order to approve or deny cookies in the background.\u003C\u002Fp>\n\u003Cp>To approve the use of cookies, trigger the event “favorites-user-consent-approved”. To deny the use of cookies, trigger the event “favorites-user-consent-denied”.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Multisite Compatible\u003C\u002Fstrong> – As of version 1.1.0, Favorites is multisite compatible. User favorites are saved on a site\u002Fblog basis, and may be retrieved and displayed across sites.\u003C\u002Fp>\n\u003Cp>For more information visit \u003Ca href=\"http:\u002F\u002Ffavoriteposts.com\" rel=\"nofollow ugc\">favoriteposts.com\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Important: Favorites requires WordPress version 3.8 or higher, and PHP version 5.4 or higher.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Favorite Button\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>The favorite button can be added automatically to the content by enabling specific post types in the plugin settings. It may also be added to template files or through the content editor using the included functions or shortcodes. The post id may be left blank in all cases if inside the loop. The site id parameter is optional, for use in multisite installations (defaults to current site).\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Get function:\u003C\u002Fstrong> \u003Ccode>get_favorites_button($post_id, $site_id)\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Print function:\u003C\u002Fstrong> \u003Ccode>the_favorites_button($post_id, $site_id)\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Shortcode:\u003C\u002Fstrong> \u003Ccode>[favorite_button post_id=\"\" site_id=\"\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Favorite Count (by Post)\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Total favorites for each post are saved as a simple integer. If a user unfavorites a post, this count is updated. Anonymous users’ favorites count towards the total by default, but may be disabled via the plugin settings. The post id may be left blank in all cases if inside the loop.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Get function:\u003C\u002Fstrong> \u003Ccode>get_favorites_count($post_id)\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Print function:\u003C\u002Fstrong> \u003Ccode>the_favorites_count($post_id)\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Shortcode:\u003C\u002Fstrong> \u003Ccode>[favorite_count post_id=\"\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Favorite Count (by User)\u003C\u002Fstrong>\u003Cbr \u002F>\nDisplays the total number of favorites a user has favorited. Template functions accept the same filters parameter as the user favorites functions.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Get function:\u003C\u002Fstrong> \u003Ccode>get_user_favorites_count($user_id, $site_id, $filters)\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Print function:\u003C\u002Fstrong> \u003Ccode>the_user_favorites_count($user_id, $site_id, $filters)\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Shortcode:\u003C\u002Fstrong> \u003Ccode>[user_favorites user_id=\"\" site_id=\"\" post_types=\"\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>User Favorites\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>User favorites are stored as an array of post ids. Logged-in users’ favorites are stored as a custom user meta field, while anonymous users’ favorites are stored in either the session or browser cookie (configurable in the plugin settings). If the user id parameter is omitted, the favorites default to the current user. The site id parameter is optional, for use in multisite installations (defaults to current site).\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Get function (returns array of IDs):\u003C\u002Fstrong> \u003Ccode>get_user_favorites($user_id, $site_id)\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Get function (returns html list):\u003C\u002Fstrong> \u003Ccode>get_user_favorites_list($user_id, $site_id, $include_links, $filters, $include_button, $include_thumbnails = false, $thumbnail_size = 'thumbnail', $include_excerpt = false)\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Print function (prints an html list):\u003C\u002Fstrong> \u003Ccode>the_user_favorites_list($user_id, $site_id, $include_links, $filters, $include_button, $include_thumbnails = false, $thumbnail_size = 'thumbnail', $include_excerpt = false)\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Shortcode (prints an html list, with the option of omitting links):\u003C\u002Fstrong> `[user_favorites user_id=”” include_links=”true” site_id=”” include_buttons=”false” post_types=”post” include_thumbnails=”false” thumbnail_size=”thumbnail” include_excerpt=”false”]\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>List Users Who Have Favorited a Post\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Display a list of users who have favorited a specific post. If the user id parameter is omitted, the favorites default to the current user. The site id parameter is optional, for use in multisite installations (defaults to current site). The get function returns an array of user objects.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Get function (returns array of User Objects):\u003C\u002Fstrong> \u003Ccode>get_users_who_favorited_post($post_id, $site_id)\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Print function (prints an html list):\u003C\u002Fstrong> \u003Ccode>the_users_who_favorited_post($post_id = null, $site_id = null, $separator = 'list', $include_anonymous = true, $anonymous_label = 'Anonymous Users', $anonymous_label_single = 'Anonymous User')\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Shortcode (prints an html list):\u003C\u002Fstrong> `[post_favorites post_id=”” site_id=”” separator=”list” include_anonymous=”true” anonymous_label=”Anonymous Users” anonymous_label_single=”Anonymous User”]\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Clear Favorites Button\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Displays a button that allows users to clear all of their favorites.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Get function:\u003C\u002Fstrong> \u003Ccode>get_clear_favorites_button($site_id, $text)\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Print function:\u003C\u002Fstrong> \u003Ccode>the_clear_favorites_button($site_id, $text)\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Shortcode:\u003C\u002Fstrong> `[clear_favorites_button site_id=”” text=”Clear Favorites”]\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Favorite Count (Across all Posts)\u003C\u002Fstrong>\u003Cbr \u002F>\nDisplays the total number of favorites for a given site.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Get function:\u003C\u002Fstrong> \u003Ccode>get_total_favorites_count($site_id)\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Print function:\u003C\u002Fstrong> \u003Ccode>the_total_favorites_count($site_id)\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n","Favorites for any post type. Easily add favoriting\u002Fliking, wishlists, or any other similar functionality using the developer-friendly API.",10000,293250,92,132,"2025-04-10T17:30:00.000Z","3.8","5.4",[20,71,51,72,73],"favorite","like","likes","http:\u002F\u002Ffavoriteposts.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ffavorites.2.3.6.zip",71,4,"2025-07-21 00:00:00",{"slug":80,"name":81,"version":82,"author":83,"author_profile":84,"description":85,"short_description":86,"active_installs":87,"downloaded":88,"rating":89,"num_ratings":90,"last_updated":91,"tested_up_to":92,"requires_at_least":93,"requires_php":94,"tags":95,"homepage":101,"download_link":102,"security_score":13,"vuln_count":26,"unpatched_count":26,"last_vuln_date":27,"fetched_at":28},"press-this","Press This","2.0.1","WordPress.org","https:\u002F\u002Fprofiles.wordpress.org\u002Fwordpressdotorg\u002F","\u003Cp>Press This is a little tool that lets you grab bits of the web and create new posts with ease.\u003Cbr \u002F>\nIt will even allow you to choose from images or videos included on the page and use them in your post.\u003Cbr \u002F>\nUse Press This as a quick and lightweight way to highlight another page on the web.\u003C\u002Fp>\n\u003Ch4>Version 2.0 – Gutenberg Block Editor\u003C\u002Fh4>\n\u003Cp>Press This 2.0 brings the modern WordPress block editor experience to the bookmarklet popup. You can now compose posts using familiar blocks like Paragraph, Heading, Image, Quote, List, and Embed.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>New Features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Gutenberg Block Editor\u003C\u002Fstrong> – Full block editor integration for a consistent WordPress editing experience\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Smart Post Format Suggestions\u003C\u002Fstrong> – Automatically suggests Video, Quote, or Link formats based on content\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Enhanced Content Extraction\u003C\u002Fstrong> – Improved scraping with JSON-LD structured data support\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Client-Side Only Scraping\u003C\u002Fstrong> – All content extraction happens in your browser for better privacy and security\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Featured Image Support\u003C\u002Fstrong> – Set any scraped image as your post’s featured image\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Improved Media Grid\u003C\u002Fstrong> – Better thumbnail display with support for video and audio embeds\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Filters for Developers\u003C\u002Fh4>\n\u003Cp>Press This 2.0 includes new filters for customization:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>press_this_allowed_blocks\u003C\u002Fcode> – Customize which blocks are available in the editor\u003C\u002Fli>\n\u003Cli>\u003Ccode>press_this_post_format_suggestion\u003C\u002Fcode> – Modify the auto-suggested post format\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>See the \u003Ca href=\"#developer-documentation\" rel=\"nofollow ugc\">Developer Documentation\u003C\u002Fa> section below for details.\u003C\u002Fp>\n\u003Ch3>Contributing\u003C\u002Fh3>\n\u003Cp>Bugs and PRs can be submitted via https:\u002F\u002Fgithub.com\u002FWordPress\u002Fpress-this .\u003C\u002Fp>\n\u003Ch3>Developer Documentation\u003C\u002Fh3>\n\u003Ch4>New Hooks and Filters in 2.0\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>press_this_allowed_blocks\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Customize which blocks are available in the Press This editor.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>add_filter( 'press_this_allowed_blocks', function( $blocks ) {\n    \u002F\u002F Add the gallery block\n    $blocks[] = 'core\u002Fgallery';\n\n    \u002F\u002F Remove the embed block\n    $blocks = array_filter( $blocks, function( $block ) {\n        return $block !== 'core\u002Fembed';\n    } );\n\n    return $blocks;\n} );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Default blocks: \u003Ccode>core\u002Fparagraph\u003C\u002Fcode>, \u003Ccode>core\u002Fheading\u003C\u002Fcode>, \u003Ccode>core\u002Fimage\u003C\u002Fcode>, \u003Ccode>core\u002Fquote\u003C\u002Fcode>, \u003Ccode>core\u002Flist\u003C\u002Fcode>, \u003Ccode>core\u002Flist-item\u003C\u002Fcode>, \u003Ccode>core\u002Fembed\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>press_this_post_format_suggestion\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Modify or override the auto-suggested post format based on content.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>add_filter( 'press_this_post_format_suggestion', function( $suggested_format, $data ) {\n    \u002F\u002F If the URL contains 'podcast', suggest audio format\n    if ( ! empty( $data['u'] ) && strpos( $data['u'], 'podcast' ) !== false ) {\n        return 'audio';\n    }\n\n    return $suggested_format;\n}, 10, 2 );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>The \u003Ccode>$data\u003C\u002Fcode> array contains scraped content including:\u003Cbr \u002F>\n– \u003Ccode>u\u003C\u002Fcode> – Source URL\u003Cbr \u002F>\n– \u003Ccode>s\u003C\u002Fcode> – Selected text\u003Cbr \u002F>\n– \u003Ccode>t\u003C\u002Fcode> – Page title\u003Cbr \u002F>\n– \u003Ccode>_images\u003C\u002Fcode> – Array of image URLs\u003Cbr \u002F>\n– \u003Ccode>_embeds\u003C\u002Fcode> – Array of embed URLs\u003Cbr \u002F>\n– \u003Ccode>_meta\u003C\u002Fcode> – Meta tag data\u003Cbr \u002F>\n– \u003Ccode>_jsonld\u003C\u002Fcode> – JSON-LD structured data\u003C\u002Fp>\n\u003Ch4>Preserved Hooks from 1.x\u003C\u002Fh4>\n\u003Cp>All existing hooks continue to work:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>press_this_redirect_in_parent\u003C\u002Fcode> – Control post-save redirect behavior\u003C\u002Fli>\n\u003Cli>\u003Ccode>press_this_save_post\u003C\u002Fcode> – Filter post data before saving\u003C\u002Fli>\n\u003Cli>\u003Ccode>press_this_save_redirect\u003C\u002Fcode> – Filter redirect URL after save\u003C\u002Fli>\n\u003Cli>\u003Ccode>enable_press_this_media_discovery\u003C\u002Fcode> – Toggle media scraping\u003C\u002Fli>\n\u003Cli>\u003Ccode>press_this_data\u003C\u002Fcode> – Filter the complete scraped data array\u003C\u002Fli>\n\u003Cli>\u003Ccode>press_this_suggested_html\u003C\u002Fcode> – Filter default content templates\u003C\u002Fli>\n\u003Cli>\u003Ccode>shortcut_link\u003C\u002Fcode> – Customize the bookmarklet URL\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>History\u003C\u002Fh3>\n\u003Cp>WordPress, from the earliest days, included some way to bring in snippets from other websites for you to post on your own.\u003C\u002Fp>\n\u003Cp>The original “Press It” was removed from WordPress 2.5 and a new “Press This” added in 2.6. It existed pretty much unchanged until WordPress 4.2, which completely refreshed Press This.\u003C\u002Fp>\n\u003Cp>In WordPress 4.9, Press This was spun out to a “canonical plugin” — an official plugin from WordPress.org so sites who wanted to use it could, but streamline more niche functionality out of Core. This was previously done with the Importers.\u003C\u002Fp>\n\u003Cp>In version 2.0, Press This was modernized to use the Gutenberg block editor, bringing it in line with the modern WordPress editing experience while maintaining backward compatibility with existing installations.\u003C\u002Fp>\n","Posting images, links, and cat gifs will never be the same.",6000,99041,74,25,"2026-02-23T19:02:00.000Z","6.7.5","6.9","7.4",[96,97,98,99,100],"bookmarklet","gutenberg","photo-post","post","quick-post","https:\u002F\u002Fwordpress.org","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpress-this.2.0.1.zip",{"slug":104,"name":105,"version":106,"author":107,"author_profile":108,"description":109,"short_description":110,"active_installs":111,"downloaded":112,"rating":113,"num_ratings":114,"last_updated":115,"tested_up_to":116,"requires_at_least":117,"requires_php":18,"tags":118,"homepage":123,"download_link":124,"security_score":125,"vuln_count":26,"unpatched_count":26,"last_vuln_date":27,"fetched_at":28},"uptolike-share","Uptolike Social Share Buttons","1.5.9","na1vez","https:\u002F\u002Fprofiles.wordpress.org\u002Fna1vez\u002F","\u003Cp>\u003Cstrong>Uptolike Social Share Buttons – бесплатный русскоязычный плагин социальных кнопок\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Какие задачи выполняет плагин Uptolike?\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Установить на сайте красивые, полностью кастомизрованные социальные кнопки, которые будут нравиться пользователям\u003C\u002Fli>\n\u003Cli>Управлять социальной активностью пользователей на сайте\u003C\u002Fli>\n\u003Cli>Увеличивать показатель шаринга на сайте\u003C\u002Fli>\n\u003Cli>Привлекать новых посетителей из социальных сетей\u003C\u002Fli>\n\u003Cli>Собирать и анализировать статистику социальной активности пользователей\u003C\u002Fli>\n\u003Cli>Корректировать контент-стратегию\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Uptolike – единый интерфейс, откуда можно управлять эффективностью социальных кнопок на сайте, а также собирать и анализировать статистику по лайкам, шарам, количеству возвратов, количеству привлеченных новых пользователей, источниках социального трафика и так далее.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Какие социальные сети поддерживает Uptolike?\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Uptolike поддерживает 25 популярных социальных сетей: Вконтакте, Facebook, Одноклассники, Twitter, и т.д.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Уникальные фишки Uptolike\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>Полная кастомизация социальных кнопок:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>3 формы\u003C\u002Fli>\n\u003Cli>3 размера\u003C\u002Fli>\n\u003Cli>эффект при наведении (увеличение, поворот по часовой стрелке)\u003C\u002Fli>\n\u003Cli>14 стилей кнопок\u003C\u002Fli>\n\u003Cli>настройка фона кнопок\u003C\u002Fli>\n\u003Cli>выбор цвета текста\u003C\u002Fli>\n\u003Cli>установка размера текста счётчика\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Функция фолловинга\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>Функция цитирования по тексту – выделенный участок текста автоматически предлагается расшарить в социальной сети\u003C\u002Fli>\n\u003Cli>Уникальная статистика социальной активности на сайте\u003C\u002Fli>\n\u003Cli>Кнопки социальных сетей, адаптированные под мобильные устройства\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Uptolike Social Share Buttons – social bookmarking widget with sharing statistics\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>What Can You Do With UpToLike Social Share Buttons?\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Create custom buttons that will visually appeal to users\u003C\u002Fli>\n\u003Cli>Easily manage social activity online\u003C\u002Fli>\n\u003Cli>Increase online engagement through Shares and Likes\u003C\u002Fli>\n\u003Cli>Attract new visitors from social networks\u003C\u002Fli>\n\u003Cli>Collect and analyze the social activity of users\u003C\u002Fli>\n\u003Cli>Adjust content strategy based on analytics\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>UpToLike is a single interface from which you can manage the appearance and efficiency of social buttons on your site, as well as collect and analyze statistics on\u003Cbr \u002F>\nlikes, shares, returns, new users, sources of social traffic, and more.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Which social networks does UpToLike Social Share Buttons support?\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>UpToLike is compatible with 25 popular social networking sites. It supports the following functions: Bookmark, Print, Email, Follow, etc.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Unique Functions of UpToLike Social Share Buttons\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>Customization of social buttons:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>3 different shapes\u003C\u002Fli>\n\u003Cli>3 sizes\u003C\u002Fli>\n\u003Cli>Hover effect (increase, clockwise rotation)\u003C\u002Fli>\n\u003Cli>14 button styles\u003C\u002Fli>\n\u003Cli>Button background\u003C\u002Fli>\n\u003Cli>Text color\u003C\u002Fli>\n\u003Cli>Text size of the counter\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Social Media Following\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>Automatic text selection: the system gives you the option to share a highlighted piece of text on a social network\u003C\u002Fli>\n\u003Cli>Gathering unique statistics of social media activity\u003C\u002Fli>\n\u003C\u002Ful>\n","Uptolike Social Share Buttons - social bookmarking widget with sharing statistics.",5000,184541,90,89,"2017-11-28T12:43:00.000Z","4.7.32","3.0.1",[119,120,20,121,122],"1","addthis","social-buttons","uptolike","https:\u002F\u002Fuptolike.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fuptolike-share.1.5.9.zip",85,{"slug":127,"name":128,"version":129,"author":130,"author_profile":131,"description":132,"short_description":133,"active_installs":134,"downloaded":135,"rating":136,"num_ratings":137,"last_updated":138,"tested_up_to":139,"requires_at_least":17,"requires_php":18,"tags":140,"homepage":144,"download_link":145,"security_score":35,"vuln_count":146,"unpatched_count":26,"last_vuln_date":147,"fetched_at":28},"lh-add-media-from-url","LH Add Media From Url","1.30","shawfactor","https:\u002F\u002Fprofiles.wordpress.org\u002Fshawfactor\u002F","\u003Cp>This plugin allow you to grab image from remote url and save into your own word press media library. By doing so, you never worried if the remote image was removed by its owner. This also save you steps to download the image to local computer and upload again to your own WordPress. There is also a JavaScript bookmarklet that helps to automate the process if you are surfing the internet and find something you would like to add to the library\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Automatically downloads and adds the file to the media library.\u003C\u002Fli>\n\u003Cli>After the uploading is successful, you are redirected to the edit screen\u003C\u002Fli>\n\u003Cli>Once the bookmarklet is installed you don’t even need to copy and paste a url (just navigate to the url and select the bookmark).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Like this plugin? Please consider \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fview\u002Fplugin-reviews\u002Flh-add-media-from-url\u002F\" rel=\"ugc\">leaving a 5-star review\u003C\u002Fa>.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Love this plugin or want to help the LocalHero Project? Please consider \u003Ca href=\"https:\u002F\u002Flhero.org\u002Fportfolio\u002Flh-add-media-from-url\u002F\" rel=\"nofollow ugc\">making a donation\u003C\u002Fa>.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch3>Translation credits\u003C\u002Fh3>\n","Upload files from an url to wordpress media library, either enter file urls in an onsite input box or click a bookmarklet.",2000,37732,84,9,"2024-08-20T14:07:00.000Z","6.6.5",[141,96,142,143,99],"attachment","download","media","https:\u002F\u002Flhero.org\u002Fportfolio\u002Flh-add-media-from-url\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flh-add-media-from-url.zip",2,"2024-08-20 17:25:05",{"attackSurface":149,"codeSignals":255,"taintFlows":275,"riskAssessment":301,"analyzedAt":306},{"hooks":150,"ajaxHandlers":217,"restRoutes":239,"shortcodes":240,"cronEvents":254,"entryPointCount":160,"unprotectedCount":26},[151,157,161,166,171,174,179,182,185,189,193,198,203,206,209,213],{"type":152,"name":153,"callback":154,"file":155,"line":156},"action","admin_menu","esbmrk_menus_register","admin\\includes\\class.admin-settings.php",10,{"type":152,"name":158,"callback":159,"file":155,"line":160},"admin_init","esbmrk_register_plugin_settings",11,{"type":152,"name":162,"callback":163,"file":164,"line":165},"plugins_loaded","init","admin\\includes\\class.templates.php",18,{"type":167,"name":168,"callback":169,"file":164,"line":170},"filter","theme_page_templates","esbmrk_register_templates",23,{"type":167,"name":172,"callback":173,"file":164,"line":90},"template_include","esbmrk_include_templates",{"type":152,"name":175,"callback":176,"file":177,"line":178},"admin_enqueue_scripts","esbmrk_admin_enqueue_scripts","admin\\includes\\plugin-scripts.php",3,{"type":152,"name":162,"callback":163,"file":180,"line":181},"class.easy-bookmark.php",35,{"type":152,"name":162,"callback":183,"file":180,"line":184},"includes",36,{"type":152,"name":186,"callback":187,"file":180,"line":188},"elementor\u002Fwidgets\u002Fregister","init_widgets",51,{"type":152,"name":190,"callback":191,"file":180,"line":192},"elementor\u002Felements\u002Fcategories_registered","esbrmk_add_category",52,{"type":152,"name":194,"callback":195,"priority":196,"file":180,"line":197},"elementor\u002Feditor\u002Fbefore_enqueue_scripts","esbrmk_elementor_icon_loader",99999,53,{"type":152,"name":199,"callback":200,"file":201,"line":202},"wp","closure","public\\includes\\class.bookmark-view.php",402,{"type":167,"name":204,"callback":200,"priority":156,"file":201,"line":205},"the_content",409,{"type":167,"name":207,"callback":200,"priority":156,"file":201,"line":208},"the_excerpt",417,{"type":152,"name":210,"callback":211,"file":212,"line":178},"wp_enqueue_scripts","esbrmk_wp_enqueue_scripts","public\\includes\\plugin-scripts.php",{"type":167,"name":214,"callback":215,"priority":156,"file":212,"line":216},"script_loader_tag","esbmrk_add_defer_attribute",15,[218,224,226,228,230,233,235,238],{"action":219,"nopriv":220,"callback":219,"hasNonce":220,"hasCapCheck":221,"file":222,"line":223},"esbmrk_add_to_easy_bookmark",true,false,"admin\\includes\\class.bookmark-admin.php",31,{"action":219,"nopriv":221,"callback":219,"hasNonce":220,"hasCapCheck":221,"file":222,"line":225},32,{"action":227,"nopriv":220,"callback":227,"hasNonce":220,"hasCapCheck":221,"file":222,"line":184},"esbmrk_delete_from_easy_bookmarked",{"action":227,"nopriv":221,"callback":227,"hasNonce":220,"hasCapCheck":221,"file":222,"line":229},37,{"action":231,"nopriv":220,"callback":231,"hasNonce":220,"hasCapCheck":221,"file":222,"line":232},"esbmrk_delete_all_from_easy_bookmarked",39,{"action":231,"nopriv":221,"callback":231,"hasNonce":220,"hasCapCheck":221,"file":222,"line":234},40,{"action":236,"nopriv":220,"callback":236,"hasNonce":220,"hasCapCheck":221,"file":201,"line":237},"esbmrk_get_easy_bookmarked_posts_list_html",29,{"action":236,"nopriv":221,"callback":236,"hasNonce":220,"hasCapCheck":221,"file":201,"line":34},[],[241,246,250],{"tag":242,"callback":243,"file":244,"line":245},"esbmrk_counter","esbmrk_counter_shortcode","admin\\includes\\shortcodes.php",6,{"tag":247,"callback":248,"file":244,"line":249},"esbmrk_button","esbmrk_button_shortcode",43,{"tag":251,"callback":252,"file":244,"line":253},"esbmrk_post_grid","esbmrk_post_grid_shortcode",103,[],{"dangerousFunctions":256,"sqlUsage":257,"outputEscaping":259,"fileOperations":26,"externalRequests":26,"nonceChecks":77,"capabilityChecks":26,"bundledLibraries":274},[],{"prepared":26,"raw":26,"locations":258},[],{"escaped":260,"rawEcho":261,"locations":262},83,5,[263,266,268,270,272],{"file":201,"line":264,"context":265},105,"raw output",{"file":201,"line":267,"context":265},160,{"file":201,"line":269,"context":265},243,{"file":201,"line":271,"context":265},244,{"file":201,"line":273,"context":265},245,[],[276],{"entryPoint":277,"graph":278,"unsanitizedCount":26,"severity":300},"\u003Cclass.bookmark-view> (public\\includes\\class.bookmark-view.php:0)",{"nodes":279,"edges":297},[280,285,291,294],{"id":281,"type":282,"label":283,"file":201,"line":284},"n0","source","$_POST",63,{"id":286,"type":287,"label":288,"file":201,"line":289,"wp_function":290},"n1","sink","echo() [XSS]",195,"echo",{"id":292,"type":282,"label":293,"file":201,"line":232},"n2","$_COOKIE (x2)",{"id":295,"type":287,"label":288,"file":201,"line":296,"wp_function":290},"n3",200,[298,299],{"from":281,"to":286,"sanitized":220},{"from":292,"to":295,"sanitized":220},"low",{"summary":302,"deductions":303},"The \"easy-bookmark\" v1.0.3 plugin exhibits a generally strong security posture based on the provided static analysis. The plugin demonstrates excellent practices by utilizing prepared statements for all SQL queries and properly escaping a high percentage of its output. Furthermore, the absence of known CVEs and the lack of any recorded vulnerabilities in its history are significant positive indicators.  The attack surface, while present with AJAX handlers and shortcodes, is commendable for having no identified unprotected entry points, implying appropriate authentication and authorization checks are in place across these vectors.\n\nHowever, a notable area for concern is the complete lack of capability checks. While nonce checks are present, the absence of capability checks on AJAX handlers means that once an attacker bypasses a nonce, they may be able to execute administrative functions without proper user role validation. This, combined with the fact that all 8 AJAX handlers were analyzed, suggests a potential gap in fine-grained access control. The absence of external HTTP requests and file operations is positive, as these can often be sources of vulnerabilities. The taint analysis showing no unsanitized paths is also a very good sign, indicating that data flowing through the plugin is likely handled safely.\n\nIn conclusion, \"easy-bookmark\" v1.0.3 appears to be a well-developed plugin from a security perspective, with strong data handling and a clean vulnerability history. The primary weakness lies in the reliance on nonce checks alone for AJAX handlers, without corresponding capability checks. This could be exploited if a nonce is compromised or predictable. Addressing this by implementing appropriate capability checks would significantly enhance the plugin's overall security.",[304],{"reason":305,"points":216},"No capability checks on AJAX handlers","2026-03-16T21:25:23.801Z",{"wat":308,"direct":323},{"assetPaths":309,"generatorPatterns":315,"scriptPaths":316,"versionParams":317},[310,311,312,313,314],"\u002Fwp-content\u002Fplugins\u002Feasy-bookmark\u002Fpublic\u002Fassets\u002Fcss\u002Fbookmark.css","\u002Fwp-content\u002Fplugins\u002Feasy-bookmark\u002Fpublic\u002Fassets\u002Fjs\u002Fpublic.js","\u002Fwp-content\u002Fplugins\u002Feasy-bookmark\u002Fadmin\u002Fassets\u002Fcss\u002Fadmin-style.css","\u002Fwp-content\u002Fplugins\u002Feasy-bookmark\u002Fadmin\u002Fassets\u002Fjs\u002Fadmin.js","\u002Fwp-content\u002Fplugins\u002Feasy-bookmark\u002Fpublic\u002Fassets\u002Fcss\u002Felementor-icon.css",[],[311,313],[318,319,320,321,322],"easy-bookmark\u002Fpublic\u002Fassets\u002Fcss\u002Fbookmark.css?ver=","easy-bookmark\u002Fpublic\u002Fassets\u002Fjs\u002Fpublic.js?ver=","easy-bookmark\u002Fadmin\u002Fassets\u002Fcss\u002Fadmin-style.css?ver=","easy-bookmark\u002Fadmin\u002Fassets\u002Fjs\u002Fadmin.js?ver=","easy-bookmark\u002Fpublic\u002Fassets\u002Fcss\u002Felementor-icon.css?ver=",{"cssClasses":324,"htmlComments":326,"htmlAttributes":327,"restEndpoints":329,"jsGlobals":330,"shortcodeOutput":332},[325],"esbmrk-icon",[],[328],"defer=\"defer\"",[],[331],"ebm_ajax",[333,334],"[esbmrk_counter]","[esbmrk_button]"]