[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fmwbdVeqL4HTtrIT85SDZDIh6I9YsBOc8vIXC1FHsDSo":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":32,"crawl_stats":29,"alternatives":37,"analysis":145,"fingerprints":612},"flexible-frontend-login","Flexible Frontend Login","1.0.5","palatino","https:\u002F\u002Fprofiles.wordpress.org\u002Fpalatino\u002F","\u003Cp>Provides shortcode and template tag to place a \u003Cstrong>link to popup a login form\u003C\u002Fstrong> at any place you want to.\u003C\u002Fp>\n\u003Cp>Features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Modal form with overlay or simple popup form\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Shows a \u003Cstrong>login link\u003C\u002Fstrong> for not logged in users that \u003Cstrong>pops up a login form on click\u003C\u002Fstrong> \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Multiple instances\u003C\u002Fstrong> possible: Place login form links to sidebar, header, and footer\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Fully customizable\u003C\u002Fstrong> HTML, CSS and text lines ( but works completely out of the box )\u003C\u002Fli>\n\u003Cli>Reads your \u003Cstrong>custom CSS\u003C\u002Fstrong> file from your themes folder if existing\u003C\u002Fli>\n\u003Cli>Provides \u003Cstrong>shortcodes\u003C\u002Fstrong> for use in posts and widgets\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Template tags\u003C\u002Fstrong> for easy use in template files\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Languages so far:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>English\u003C\u002Fli>\n\u003Cli>German\u003C\u002Fli>\n\u003Cli>Nederlands by \u003Ca href=\"http:\u002F\u002Fwww.sjoerdlohuis.nl\u002F\" rel=\"nofollow ugc\">Sjoerd Lohuis\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>French by Denis (\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fprofile\u002Fboulli\" rel=\"ugc\">Boulli\u003C\u002Fa>)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>If you like to provide a translation please \u003Ca href=\"http:\u002F\u002Fwww.flexibleplugins.com\u002Ffrontend-login\u002F\" rel=\"nofollow ugc\">drop me a line\u003C\u002Fa>.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>See \u003Ca href=\"\u002Fextend\u002Fplugins\u002Fflexible-frontend-login\u002Fother_notes\u002F\" rel=\"nofollow ugc\">Other Notes\u003C\u002Fa> section\u003C\u002Fstrong> for further information.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>See \u003Ca href=\"http:\u002F\u002Fwww.flexibleplugins.com\u002Ffrontend-login\u002F\" rel=\"nofollow ugc\">flexibleplugins.com\u003C\u002Fa>\u003C\u002Fstrong> for usage examples.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>See \u003Ca href=\"http:\u002F\u002Fwww.flexibleplugins.com\u002Ffrontend-login\u002Fexperimental\" rel=\"nofollow ugc\">the experimental page\u003C\u002Fa>\u003C\u002Fstrong> for upcoming features.\u003C\u002Fp>\n\u003Ch4>How to use the Flexible Frontend Login shortcode on your site\u003C\u002Fh4>\n\u003Cp>On the widget settings page choose the Flexible Frontend Login and adjust the settings to your site.\u003C\u002Fp>\n\u003Cp>In a post or page place \u003Cstrong>\u003Ccode>[flexible-frontend-login]\u003C\u002Fcode>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>By default the shortcode uses the settings set on the admin options page\u003C\u002Fp>\n\u003Cp>You can override those default values with the following parameters and options:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>vertical=top, bottom\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>horizontal=left, right\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>So your shortcode might look like this:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>\u003Ccode>[flexible-frontend-login vertical=bottom horizontal=left]\u003C\u002Fcode>\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>If you want to use the centered login form with darkened overlay in the background\u003Cbr \u002F>\nuse \u003Cstrong>\u003Ccode>[flexible-frontend-login-modal]\u003C\u002Fcode>\u003C\u002Fstrong> without any parameters.\u003C\u002Fp>\n\u003Ch4>How to use the Flexible Frontend Login template tag on your site\u003C\u002Fh4>\n\u003Cp>In template files place:\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>\u003C?php if ( function_exists('flexible_frontend_login') ) flexible_frontend_login( 'bottom', 'left' ); ?>\u003C\u002Fcode>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>To change popups behavior you can use\u003C\u002Fp>\n\u003Cul>\n\u003Cli>“bottom” or “top”\u003C\u002Fli>\n\u003Cli>“left” or “right”\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>For popup with overlay use:\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>\u003C?php if ( function_exists('flexible_frontend_login_modal') ) flexible_frontend_login_modal(); ?>\u003C\u002Fcode>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>Live examples\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>For more examples see \u003Ca href=\"http:\u002F\u002Fwww.flexibleplugins.com\u002Ffrontend-login\u002F\" rel=\"nofollow ugc\">plugin’s website\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How to add your own styling\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Place a folder \u003Ccode>flexible-frontend-login\u003C\u002Fcode> in your theme folder\u003C\u002Fli>\n\u003Cli>Copy the files from \u003Ccode>\u002Fwp-content\u002Fplugins\u002Fflexible-frontend-login\u002Fcustomization\u002F\u003C\u002Fcode> into the newly created theme subfolder\u003C\u002Fli>\n\u003Cli>Adjust the CSS to your theme. You’ll find all classes provided by the plugin in that file.\u003C\u002Fli>\n\u003Cli>If necessary change the HTML markup in the template file.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>To Do\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Include option to delete options on deactivation\u003C\u002Fli>\n\u003Cli>Add option to display register link and form\u003C\u002Fli>\n\u003Cli>Add admin option for redirection on logout\u003C\u002Fli>\n\u003Cli>Add languages\u003C\u002Fli>\n\u003Cli>Add option for Gravatar display for logged in users\u003C\u002Fli>\n\u003Cli>Validate inside of modal window\u002Fcurrent page without jumping to the basic wp-login.php\u003C\u002Fli>\n\u003Cli>redirect to a specific User Role accessible page after a succesful login, add shortcode options for this\u003C\u002Fli>\n\u003C\u002Ful>\n","Easily place a link to a Login Form Popup at any place of your site. Saves a lot of screen property and looks very nice.",100,43241,92,14,"2013-08-22T23:46:00.000Z","3.6.1","3.0.1","",[20,21,22,23,24],"form","frontend","login","modal","popup","http:\u002F\u002Fwww.flexibleplugins.com\u002Ffrontend-login","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fflexible-frontend-login.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":33,"total_installs":11,"avg_security_score":27,"avg_patch_time_days":34,"trust_score":35,"computed_at":36},1,30,84,"2026-04-04T03:54:46.484Z",[38,57,81,105,126],{"slug":39,"name":40,"version":41,"author":42,"author_profile":43,"description":44,"short_description":45,"active_installs":28,"downloaded":46,"rating":28,"num_ratings":28,"last_updated":47,"tested_up_to":48,"requires_at_least":49,"requires_php":18,"tags":50,"homepage":55,"download_link":56,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"shopcode-popup-profile-builder","ShopCode Popup Profile Builder","1.0","spinthewheelgame","https:\u002F\u002Fprofiles.wordpress.org\u002Fshopcode\u002F","\u003Cp>Popup Profile Builder is a ShopCode plugin developed to support create popup bootstrap user registration and login in frontend wordpress\u003C\u002Fp>\n\u003Cp>Demo: \u003Ca href=\"http:\u002F\u002Fpopup.shopcode.org\u002Fpopup-profile-builder-bootstrap\u002F\" rel=\"nofollow ugc\">popup.shopcode.org\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>HOW USING\u003C\u002Fh3>\n\u003Cp>1.Install and active 3 Plugin:\u003Cbr \u002F>\n    Require install Plugin: \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fprofile-builder\u002F\" rel=\"ugc\">Profile Builder\u003C\u002Fa>\u003Cbr \u002F>\n    Using ShortCode: \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwidget-shortcode\u002F\" rel=\"ugc\">Widget Shortcode\u003C\u002Fa>\u003Cbr \u002F>\n    Plugin Popup: \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fshopcode-popup-profile-builder\" rel=\"ugc\">Popup Profile Builder\u003C\u002Fa>\u003Cbr \u002F>\n2.Go to widget (Setting)\u003C\u002Fp>\n\u003Cp>3.Drag and Drop  (Popup Profile Builder by ShopCode)\u003C\u002Fp>\n\u003Cp>widget: Popup Profile Builder\u003C\u002Fp>\n\u003Cp>4.How Show Popup login to page, post\u003Cbr \u002F>\n    Using ShortCode from plugin : Widget Shortcode and Popup Profile Builder\u003C\u002Fp>\n\u003Ch3>FEATURES\u003C\u002Fh3>\n\u003Cp>How To Using WordPress:\u003Cbr \u002F>\nwordpress user registration frontend\u003Cbr \u002F>\nwordpress user login Bootstrap\u003Cbr \u002F>\nPopup Registration frontend\u003Cbr \u002F>\nForgot password front end wordpress\u003C\u002Fp>\n","Popup Profile Builder is a widget plugin that allows you to show Popup login button and Registration frontend",937,"2018-12-03T01:32:00.000Z","4.9.29","4.0",[23,51,52,53,54],"popup-login","popup-registration","profile-builder-popup","user-registration-frontend","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fshopcode-popup-profile-builder","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fshopcode-popup-profile-builder.zip",{"slug":58,"name":59,"version":60,"author":61,"author_profile":62,"description":63,"short_description":64,"active_installs":65,"downloaded":66,"rating":67,"num_ratings":68,"last_updated":69,"tested_up_to":70,"requires_at_least":71,"requires_php":18,"tags":72,"homepage":76,"download_link":77,"security_score":78,"vuln_count":79,"unpatched_count":33,"last_vuln_date":80,"fetched_at":30},"easy-modal","Easy Modal","2.1.0","Daniel Iser","https:\u002F\u002Fprofiles.wordpress.org\u002Fdanieliser\u002F","\u003Cp>Did you know, that Easy Modal has a fancy new replacement called \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fpopup-maker\u002F\" rel=\"ugc\">Popup Maker\u003C\u002Fa>\u003C\u002Fstrong>? It is the highest user rated popup & modal plugin available for WordPress.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Unlimited themes\u003C\u002Fli>\n\u003Cli>Precision Targeting, Triggers & Cookies\u003C\u002Fli>\n\u003Cli>Customize everything\u003C\u002Fli>\n\u003Cli>Full line of extensions\u003C\u002Fli>\n\u003Cli>Extensive Documentation & Developer APIs\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fpopup-maker\u002F\" rel=\"ugc\">Learn more\u003C\u002Fa>!\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>We hope you enjoy using Popup Maker to destroy your old conversion rates!\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwppopupmaker.com\" title=\"Popup Maker Website\" rel=\"nofollow ugc\">Continue to Popup Maker\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>If you’re an existing Easy Modal user, transitioning from Easy Modal to Popup Maker is a snap with our custom Importer! \u003Ca href=\"https:\u002F\u002Fwppopupmaker.com\u002Fkb\u002Fupgrading-easy-modal-popup-maker\" title=\"Upgrade from Easy Modal to Popup Maker\" rel=\"nofollow ugc\">See How!\u003C\u002Fa>\u003C\u002Fp>\n","The #1 WordPress Popup Plugin! Make glorious & powerful popups and market your content like never before - all in minutes!",8000,240749,88,124,"2017-11-28T09:05:00.000Z","4.7.32","3.3.0",[23,73,74,75,24],"modal-box","modal-form","modal-window","http:\u002F\u002Feasy-modal.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Feasy-modal.2.1.0.zip",53,3,"2026-01-11 13:44:04",{"slug":82,"name":83,"version":84,"author":85,"author_profile":86,"description":87,"short_description":88,"active_installs":89,"downloaded":90,"rating":91,"num_ratings":92,"last_updated":93,"tested_up_to":94,"requires_at_least":95,"requires_php":18,"tags":96,"homepage":100,"download_link":101,"security_score":102,"vuln_count":103,"unpatched_count":28,"last_vuln_date":104,"fetched_at":30},"popup-addon-for-ninja-forms","Popup addon for Ninja Forms","3.5.2","Aman","https:\u002F\u002Fprofiles.wordpress.org\u002Faman086\u002F","\u003Cp>Popup Addon for Ninja Forms allows you to show any Ninja Forms in Popup\u002FModal.\u003Cbr \u002F>\nYou can create beautiful popups with live preview in customizer.\u003Cbr \u002F>\nIt allows you add additional content before & after the form in popup.\u003Cbr \u002F>\nPopup can be triggered by click or can be opened on page load using the shortocde.\u003C\u002Fp>\n\u003Ch3>Top Features:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Option to set Popup Cookie to hide it after opened certain number of times.\u003C\u002Fli>\n\u003Cli>Option to set Popup Animations.\u003C\u002Fli>\n\u003Cli>Option to set Popup Container Width for mobile.\u003C\u002Fli>\n\u003Cli>Option to set Popup Container Height for mobile.\u003C\u002Fli>\n\u003Cli>Option to set Overlay color.\u003C\u002Fli>\n\u003Cli>Option to set Overlay opacity.\u003C\u002Fli>\n\u003Cli>Option to set Popup Container opacity.\u003C\u002Fli>\n\u003Cli>Option to set Popup Container background color.\u003C\u002Fli>\n\u003Cli>Option to set Popup Container Padding.\u003C\u002Fli>\n\u003Cli>Option to set Popup Container Border.\u003C\u002Fli>\n\u003Cli>Option to set Popup Container Rounded Corners.\u003C\u002Fli>\n\u003Cli>Option to set Popup Container Width.\u003C\u002Fli>\n\u003Cli>Option to set Popup Container Height.\u003C\u002Fli>\n\u003Cli>Option to open popup by any link using class or ID.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Get more features in \u003Ca href=\"https:\u002F\u002Fwebholics.org\u002Fdownloads\u002Fpopup-add-on-for-ninja-forms-pro\u002F?utm_source=wordpress-plugin-repo&utm_medium=popup-addon-for-ninja-forms&utm_campaign=popup-addon-for-ninja-form-lite-version\" rel=\"nofollow ugc\">Pro version\u003C\u002Fa>\u003Cbr \u002F>\n* Advanced Animations\u003Cbr \u002F>\n* Exit Intent\u003Cbr \u002F>\n* Hide Popup on Mobile\u002FDesktop.\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwebholics.org\u002Fdownloads\u002Fpopup-add-on-for-ninja-forms-pro\u002F?utm_source=wordpress-plugin-repo&utm_medium=popup-addon-for-ninja-forms&utm_campaign=popup-addon-for-ninja-form-lite-version\" rel=\"nofollow ugc\">Get Popup Addon for Ninja Forms PRO!\u003C\u002Fa>\u003C\u002Fp>\n","Popup\u002FModal addon for Ninja Forms. Create beautiful popups using Ninja Forms for newsletters, login, registration forms.",1000,37205,76,6,"2025-11-04T12:25:00.000Z","6.8.5","4.4",[97,23,98,99,24],"contact-form","newsletter","ninja-forms","https:\u002F\u002Fwebholics.org\u002Fdownloads\u002Fpopup-add-on-for-ninja-forms-pro\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpopup-addon-for-ninja-forms.3.5.2.zip",98,2,"2025-10-31 00:00:00",{"slug":106,"name":107,"version":108,"author":109,"author_profile":110,"description":111,"short_description":112,"active_installs":113,"downloaded":114,"rating":11,"num_ratings":115,"last_updated":116,"tested_up_to":117,"requires_at_least":118,"requires_php":119,"tags":120,"homepage":124,"download_link":125,"security_score":11,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"osom-modal-login","Osom Modal Login","1.5.2","OsomPress","https:\u002F\u002Fprofiles.wordpress.org\u002Fosompress\u002F","\u003Cp>Osom Modal Login lets you easily create a modal box (pop-up) displaying the WordPress login form. In block themes, Osom Modal Login uses the native WordPress login\u002Fout block, so you can introduce this login\u002Fout block on the header (or footer) navigation block and it will display a modal box with the login form when clicked. On the other hand, in classic themes it automatically adds a menu item named “Login”, which you can customize, at the end of the selected menu(s). Once you click on it, it will also launch the login modal box.\u003C\u002Fp>\n\u003Cp>Alternatively, you can also use the included shortcode or the native login\u002Fout block to add the modal login box in any place of the web.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cp>With Osom Modal Login you can customize several parameters in the options page.\u003C\u002Fp>\n\u003Cp>Both in classic and block themes:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Customize “Login” text.\u003C\u002Fli>\n\u003Cli>Customize “Logout” text.\u003C\u002Fli>\n\u003Cli>Set login and logout URL redirection.\u003C\u002Fli>\n\u003Cli>Display\u002Fhide “Remember me” checkbox.\u003C\u002Fli>\n\u003Cli>Display\u002Fhide “Did you forget your password” link.\u003C\u002Fli>\n\u003Cli>Display\u002Fhide Register link.\u003C\u002Fli>\n\u003Cli>Set Register text link (if displayed).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Only in classic themes:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Set the title of the modal box.\u003C\u002Fli>\n\u003Cli>Select the navigation menu where you want to add login\u002Fout item. You can choose more than one or the option ‘none’ if you don’t want to add it in any menu location.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>You can also use the built-in shortcode to add the modal box any where in your website or use the WordPress login\u002Fout native block with the setting “Display login as form” unselected.\u003C\u002Fp>\n\u003Ch4>Shortcode usage (optional)\u003C\u002Fh4>\n\u003Cp>You just need to enclose your custom text in [osom-login] shortcode.\u003Cbr \u002F>\nFor example: [osom-login] Custom text [\u002Fosom-login]\u003C\u002Fp>\n\u003Ch4>Quick Setup Videos\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fyoutu.be\u002F0LJGYnq6G3o\" rel=\"nofollow ugc\">In classic themes\u003C\u002Fa>:\u003C\u002Fp>\n\u003Cp>\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\u002F0LJGYnq6G3o?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&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>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fyoutu.be\u002Fy0GOzfNsptI\" rel=\"nofollow ugc\">In block themes\u003C\u002Fa>:\u003C\u002Fp>\n\u003Cp>\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\u002Fy0GOzfNsptI?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&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>\u003C\u002Fp>\n\u003Cp>If you want more info about the setup and configuration you can check the tutorials below.\u003C\u002Fp>\n\u003Ch4>Tutorials\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fosompress.com\u002Fadd-button-styles-login-out-block-wordpress-block-theme\u002F\" rel=\"nofollow ugc\">How to add button styles to Login\u002Fout Block in a WordPress Block Theme\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fosompress.com\u002Fadd-login-modal-pop-up-window-wordpress-block-theme\u002F\" rel=\"nofollow ugc\">Add a login modal\u002Fpop-up window to a WordPress block theme\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fosompress.com\u002Fadd-svg-icons-osom-modal-login-logout-items\u002F\" rel=\"nofollow ugc\">How to add SVG icons to Osom Modal Login login\u002Flogout items\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fosompress.com\u002Fshow-the-login-form-in-modal-window\u002F\" rel=\"nofollow ugc\">How to add a login popup modal in WordPress classic themes\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Dev Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>The plugin uses Vanilla JavaScript so you can use it even if you dequeue WordPress jQuery. It’s always nice to keep the dependencies to the minimum.\u003C\u002Fli>\n\u003C\u002Ful>\n","Osom Modal Login lets you easily create a modal box (pop-up) displaying the WordPress login form. In block themes, Osom Modal Login uses the native Wo &hellip;",400,11890,15,"2025-11-25T09:48:00.000Z","6.9.4","5.0","5.6",[121,22,122,123,23],"custom-login","login-form","logout","https:\u002F\u002Fosompress.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fosom-modal-login.1.5.2.zip",{"slug":127,"name":128,"version":129,"author":130,"author_profile":131,"description":132,"short_description":133,"active_installs":134,"downloaded":135,"rating":11,"num_ratings":103,"last_updated":136,"tested_up_to":137,"requires_at_least":17,"requires_php":18,"tags":138,"homepage":143,"download_link":144,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"wp-ajax-login-and-register","WP AJAX Login and Register","1.3","newbiesup","https:\u002F\u002Fprofiles.wordpress.org\u002Fnewbiesup\u002F","\u003Cp>This plugin will automatically add a login\u002Fregister link to your ‘primary’ menu location. A nice looking form will popup when the link is clicked.\u003Cbr \u002F>\nShortcode is also available for use on any post or widget with ‘[wp-ajax-login text=”Login\u002FRegister”]’ and ‘text’ attribute is the link text.\u003C\u002Fp>\n\u003Cp>For more information, please visit \u003Ca href=\"http:\u002F\u002Fptheme.com\u002Fitem\u002Fwp-ajax-login\u002F\" title=\"ptheme\" rel=\"nofollow ugc\">ptheme.com\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Arbitrary section\u003C\u002Fh3>\n","Easy to use frontend AJAX Login and Register plugin with no settings required.",60,8932,"2016-04-25T14:52:00.000Z","4.5.33",[139,140,141,142,122],"ajax","ajax-login","ajax-register","frontend-login","http:\u002F\u002Fptheme.com\u002Fitem\u002Fwp-ajax-login","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-ajax-login-and-register.1.3.zip",{"attackSurface":146,"codeSignals":262,"taintFlows":465,"riskAssessment":594,"analyzedAt":611},{"hooks":147,"ajaxHandlers":226,"restRoutes":248,"shortcodes":249,"cronEvents":260,"entryPointCount":261,"unprotectedCount":33},[148,155,159,162,168,172,176,179,183,187,191,195,198,201,206,209,214,218,222],{"type":149,"name":150,"callback":151,"priority":152,"file":153,"line":154},"filter","plugin_row_meta","paw_ffl_set_plugin_meta",10,"flexible-frontend-login.php",47,{"type":149,"name":156,"callback":157,"priority":158,"file":153,"line":78},"widget_text","do_shortcode",11,{"type":149,"name":156,"callback":160,"file":153,"line":161},"shortcode_unautop",54,{"type":163,"name":164,"callback":165,"file":166,"line":167},"action","template_redirect","admin_redirect_download_files","includes\\classes\\admin-page-class\\admin-page-class.php",209,{"type":149,"name":169,"callback":170,"file":166,"line":171},"init","add_query_var_vars",210,{"type":163,"name":173,"callback":174,"file":166,"line":175},"admin_menu","AddMenuSubPage",274,{"type":163,"name":173,"callback":177,"file":166,"line":178},"AddMenuTopPage",278,{"type":149,"name":180,"callback":181,"priority":152,"file":166,"line":182},"attribute_escape","edit_insert_to_post_text",305,{"type":163,"name":184,"callback":185,"file":166,"line":186},"admin_print_styles","load_scripts_styles",376,{"type":163,"name":188,"callback":189,"file":166,"line":190},"post_edit_form_tag","add_enctype",1073,{"type":149,"name":192,"callback":193,"file":166,"line":194},"media_upload_gallery","insert_images",1088,{"type":149,"name":196,"callback":193,"file":166,"line":197},"media_upload_library",1089,{"type":149,"name":199,"callback":193,"file":166,"line":200},"media_upload_image",1090,{"type":163,"name":202,"callback":203,"file":204,"line":205},"admin_enqueue_scripts","paw_ffl_admin_css","includes\\options-page.php",319,{"type":163,"name":202,"callback":207,"file":204,"line":208},"paw_ffl_admin_js",330,{"type":163,"name":210,"callback":211,"file":212,"line":213},"wp_enqueue_scripts","paw_ffl_enqueue_scripts","includes\\output.php",16,{"type":149,"name":215,"callback":216,"file":212,"line":217},"allowed_redirect_hosts","paw_ffl_allow_redirect",149,{"type":163,"name":210,"callback":219,"file":220,"line":221},"paw_ffl_enqueue_styles","includes\\styling.php",4,{"type":163,"name":223,"callback":224,"file":225,"line":79},"widgets_init","paw_ffl_register_widget","includes\\widget.php",[227,233,237,241,245],{"action":228,"nopriv":229,"callback":230,"hasNonce":231,"hasCapCheck":229,"file":166,"line":232},"apc_delete_mupload",false,"wp_ajax_delete_image",true,308,{"action":234,"nopriv":229,"callback":235,"hasNonce":231,"hasCapCheck":229,"file":166,"line":236},"plupload_action","Handle_plupload_action",314,{"action":238,"nopriv":229,"callback":239,"hasNonce":229,"hasCapCheck":229,"file":166,"line":240},"at_delete_file","delete_file",1093,{"action":242,"nopriv":229,"callback":243,"hasNonce":231,"hasCapCheck":229,"file":166,"line":244},"at_reorder_images","reorder_images",1094,{"action":246,"nopriv":229,"callback":230,"hasNonce":231,"hasCapCheck":229,"file":166,"line":247},"at_delete_mupload",1096,[],[250,254,258],{"tag":251,"callback":252,"file":212,"line":253},"flexible-frontend-login-modal","paw_ffl_execute_shortcode_modal",27,{"tag":255,"callback":256,"file":212,"line":257},"flexiblefrontendlogin","paw_ffl_execute_shortcode",39,{"tag":4,"callback":256,"file":212,"line":259},40,[],8,{"dangerousFunctions":263,"sqlUsage":268,"outputEscaping":273,"fileOperations":33,"externalRequests":33,"nonceChecks":261,"capabilityChecks":33,"bundledLibraries":461},[264],{"fn":265,"file":166,"line":266,"context":267},"unserialize",3322,"$import_code = unserialize($import_code);",{"prepared":28,"raw":33,"locations":269},[270],{"file":271,"line":152,"context":272},"includes\\classes\\class.AdminPageClassExtension.php","$wpdb->query() with variable interpolation",{"escaped":274,"rawEcho":275,"locations":276},19,93,[277,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,312,314,316,318,320,322,324,326,328,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,376,378,380,382,384,386,388,390,392,394,396,398,400,402,404,406,408,410,412,414,416,418,420,422,424,426,428,430,432,434,436,438,440,442,444,445,447,448,450,451,453,455,457,459],{"file":166,"line":278,"context":279},413,"raw output",{"file":166,"line":281,"context":279},508,{"file":166,"line":283,"context":279},523,{"file":166,"line":285,"context":279},665,{"file":166,"line":287,"context":279},668,{"file":166,"line":289,"context":279},669,{"file":166,"line":291,"context":279},685,{"file":166,"line":293,"context":279},719,{"file":166,"line":295,"context":279},721,{"file":166,"line":297,"context":279},735,{"file":166,"line":299,"context":279},741,{"file":166,"line":301,"context":279},745,{"file":166,"line":303,"context":279},748,{"file":166,"line":305,"context":279},751,{"file":166,"line":307,"context":279},768,{"file":166,"line":309,"context":279},1238,{"file":166,"line":311,"context":279},1241,{"file":166,"line":313,"context":279},1389,{"file":166,"line":315,"context":279},1401,{"file":166,"line":317,"context":279},1435,{"file":166,"line":319,"context":279},1442,{"file":166,"line":321,"context":279},1446,{"file":166,"line":323,"context":279},1454,{"file":166,"line":325,"context":279},1458,{"file":166,"line":327,"context":279},1486,{"file":166,"line":329,"context":279},1491,{"file":166,"line":331,"context":279},1496,{"file":166,"line":333,"context":279},1540,{"file":166,"line":335,"context":279},1546,{"file":166,"line":337,"context":279},1559,{"file":166,"line":339,"context":279},1592,{"file":166,"line":341,"context":279},1606,{"file":166,"line":343,"context":279},1641,{"file":166,"line":345,"context":279},1656,{"file":166,"line":347,"context":279},1670,{"file":166,"line":349,"context":279},1681,{"file":166,"line":351,"context":279},1694,{"file":166,"line":353,"context":279},1712,{"file":166,"line":355,"context":279},1714,{"file":166,"line":357,"context":279},1735,{"file":166,"line":359,"context":279},1752,{"file":166,"line":361,"context":279},1771,{"file":166,"line":363,"context":279},1775,{"file":166,"line":365,"context":279},1807,{"file":166,"line":367,"context":279},1831,{"file":166,"line":369,"context":279},1835,{"file":166,"line":371,"context":279},1839,{"file":166,"line":373,"context":279},1846,{"file":166,"line":375,"context":279},1850,{"file":166,"line":377,"context":279},1852,{"file":166,"line":379,"context":279},1879,{"file":166,"line":381,"context":279},1912,{"file":166,"line":383,"context":279},1991,{"file":166,"line":385,"context":279},2010,{"file":166,"line":387,"context":279},2012,{"file":166,"line":389,"context":279},2013,{"file":166,"line":391,"context":279},2014,{"file":166,"line":393,"context":279},2041,{"file":166,"line":395,"context":279},2057,{"file":166,"line":397,"context":279},2071,{"file":166,"line":399,"context":279},2095,{"file":166,"line":401,"context":279},2097,{"file":166,"line":403,"context":279},2102,{"file":166,"line":405,"context":279},2104,{"file":166,"line":407,"context":279},2134,{"file":166,"line":409,"context":279},2136,{"file":166,"line":411,"context":279},2141,{"file":166,"line":413,"context":279},2143,{"file":166,"line":415,"context":279},2175,{"file":166,"line":417,"context":279},2177,{"file":166,"line":419,"context":279},2182,{"file":166,"line":421,"context":279},2184,{"file":166,"line":423,"context":279},3266,{"file":166,"line":425,"context":279},3284,{"file":166,"line":427,"context":279},3296,{"file":166,"line":429,"context":279},3315,{"file":166,"line":431,"context":279},3331,{"file":166,"line":433,"context":279},3360,{"file":166,"line":435,"context":279},3373,{"file":166,"line":437,"context":279},3405,{"file":166,"line":439,"context":279},3461,{"file":166,"line":441,"context":279},3463,{"file":166,"line":443,"context":279},3465,{"file":271,"line":213,"context":279},{"file":212,"line":446,"context":279},82,{"file":212,"line":35,"context":279},{"file":212,"line":449,"context":279},90,{"file":212,"line":13,"context":279},{"file":212,"line":452,"context":279},141,{"file":212,"line":454,"context":279},145,{"file":225,"line":456,"context":279},77,{"file":225,"line":458,"context":279},96,{"file":225,"line":460,"context":279},104,[462],{"name":463,"version":29,"knownCves":464},"Select2",[],[466,490,508,518,542],{"entryPoint":467,"graph":468,"unsanitizedCount":28,"severity":489},"import (includes\\classes\\admin-page-class\\admin-page-class.php:3310)",{"nodes":469,"edges":486},[470,475,479,481],{"id":471,"type":472,"label":473,"file":166,"line":474},"n0","source","$_POST",3318,{"id":476,"type":477,"label":478,"file":166,"line":266,"wp_function":265},"n1","sink","unserialize() [Object Injection]",{"id":480,"type":472,"label":473,"file":166,"line":474},"n2",{"id":482,"type":477,"label":483,"file":166,"line":484,"wp_function":485},"n3","update_option() [Settings Manipulation]",3324,"update_option",[487,488],{"from":471,"to":476,"sanitized":231},{"from":480,"to":482,"sanitized":231},"low",{"entryPoint":491,"graph":492,"unsanitizedCount":28,"severity":489},"download_file (includes\\classes\\admin-page-class\\admin-page-class.php:3337)",{"nodes":493,"edges":505},[494,497,501,502],{"id":471,"type":472,"label":495,"file":166,"line":496},"$_REQUEST",3342,{"id":476,"type":477,"label":498,"file":166,"line":499,"wp_function":500},"header() [Header Injection]",3357,"header",{"id":480,"type":472,"label":495,"file":166,"line":496},{"id":482,"type":477,"label":503,"file":166,"line":433,"wp_function":504},"echo() [XSS]","echo",[506,507],{"from":471,"to":476,"sanitized":231},{"from":480,"to":482,"sanitized":231},{"entryPoint":509,"graph":510,"unsanitizedCount":28,"severity":489},"Handle_plupload_action (includes\\classes\\admin-page-class\\admin-page-class.php:3396)",{"nodes":511,"edges":516},[512,515],{"id":471,"type":472,"label":513,"file":166,"line":514},"$_FILES",3402,{"id":476,"type":477,"label":503,"file":166,"line":437,"wp_function":504},[517],{"from":471,"to":476,"sanitized":231},{"entryPoint":519,"graph":520,"unsanitizedCount":33,"severity":541},"save (includes\\classes\\admin-page-class\\admin-page-class.php:2199)",{"nodes":521,"edges":537},[522,525,529,531,534],{"id":471,"type":472,"label":523,"file":166,"line":524},"$_POST (x2)",2219,{"id":476,"type":477,"label":526,"file":166,"line":527,"wp_function":528},"call_user_func() [RCE]",2226,"call_user_func",{"id":480,"type":472,"label":473,"file":166,"line":530},2231,{"id":482,"type":532,"label":533,"file":166,"line":530},"transform","→ validate_field()",{"id":535,"type":477,"label":526,"file":166,"line":536,"wp_function":528},"n4",3440,[538,539,540],{"from":471,"to":476,"sanitized":231},{"from":480,"to":482,"sanitized":229},{"from":482,"to":535,"sanitized":229},"high",{"entryPoint":543,"graph":544,"unsanitizedCount":33,"severity":541},"\u003Cadmin-page-class> (includes\\classes\\admin-page-class\\admin-page-class.php:0)",{"nodes":545,"edges":583},[546,549,551,553,554,555,557,559,561,563,565,567,569,571,573,575,577,579,581],{"id":471,"type":472,"label":547,"file":166,"line":548},"$_GET (x3)",1186,{"id":476,"type":477,"label":526,"file":166,"line":550,"wp_function":528},1424,{"id":480,"type":472,"label":552,"file":166,"line":548},"$_GET (x5)",{"id":482,"type":477,"label":503,"file":166,"line":343,"wp_function":504},{"id":535,"type":472,"label":523,"file":166,"line":524},{"id":556,"type":477,"label":526,"file":166,"line":527,"wp_function":528},"n5",{"id":558,"type":472,"label":473,"file":166,"line":474},"n6",{"id":560,"type":477,"label":478,"file":166,"line":266,"wp_function":265},"n7",{"id":562,"type":472,"label":473,"file":166,"line":474},"n8",{"id":564,"type":477,"label":483,"file":166,"line":484,"wp_function":485},"n9",{"id":566,"type":472,"label":495,"file":166,"line":496},"n10",{"id":568,"type":477,"label":498,"file":166,"line":499,"wp_function":500},"n11",{"id":570,"type":472,"label":495,"file":166,"line":496},"n12",{"id":572,"type":477,"label":503,"file":166,"line":433,"wp_function":504},"n13",{"id":574,"type":472,"label":513,"file":166,"line":514},"n14",{"id":576,"type":477,"label":503,"file":166,"line":437,"wp_function":504},"n15",{"id":578,"type":472,"label":473,"file":166,"line":530},"n16",{"id":580,"type":532,"label":533,"file":166,"line":530},"n17",{"id":582,"type":477,"label":526,"file":166,"line":536,"wp_function":528},"n18",[584,585,586,587,588,589,590,591,592,593],{"from":471,"to":476,"sanitized":231},{"from":480,"to":482,"sanitized":231},{"from":535,"to":556,"sanitized":231},{"from":558,"to":560,"sanitized":231},{"from":562,"to":564,"sanitized":231},{"from":566,"to":568,"sanitized":231},{"from":570,"to":572,"sanitized":231},{"from":574,"to":576,"sanitized":231},{"from":578,"to":580,"sanitized":229},{"from":580,"to":582,"sanitized":229},{"summary":595,"deductions":596},"The \"flexible-frontend-login\" plugin v1.0.5 presents a mixed security posture. While the plugin has no recorded vulnerabilities or CVEs, indicating a potentially stable development history, the static analysis reveals several areas of concern. The presence of an unprotected AJAX handler is a significant weakness, creating a direct entry point for unauthenticated attackers. Furthermore, the use of the `unserialize` function, coupled with flows with unsanitized paths identified in taint analysis, raises flags for potential remote code execution or cross-site scripting vulnerabilities if user-controlled input is involved. The low percentage of properly escaped output is also a notable weakness, increasing the risk of XSS attacks.\n\nDespite these concerns, the plugin demonstrates some good security practices, such as a reasonable number of nonce checks and a capability check on at least one entry point. However, the critical findings related to unprotected entry points, potential unserialization vulnerabilities, and insufficient output escaping outweigh these positives. The lack of known CVEs might be due to the plugin's maturity or lack of extensive security auditing, rather than inherent robustness.\n\nIn conclusion, while the plugin has a clean vulnerability history, the static analysis indicates several critical security weaknesses that require immediate attention. The unprotected AJAX handler, the potential for unserialization vulnerabilities, and the poor output escaping are significant risks that could be exploited by attackers. Addressing these issues is crucial to improving the plugin's overall security.",[597,599,601,603,606,609],{"reason":598,"points":152},"Unprotected AJAX handler found",{"reason":600,"points":261},"Dangerous function 'unserialize' used",{"reason":602,"points":115},"High percentage of unsanitized paths in taint flows",{"reason":604,"points":605},"Low percentage of properly escaped output",7,{"reason":607,"points":608},"SQL queries without prepared statements",5,{"reason":610,"points":79},"Bundled library Select2 (potential outdatedness)","2026-03-16T20:47:32.455Z",{"wat":613,"direct":622},{"assetPaths":614,"generatorPatterns":617,"scriptPaths":618,"versionParams":619},[615,616],"\u002Fwp-content\u002Fplugins\u002Fflexible-frontend-login\u002Fcss\u002Fstyle.css","\u002Fwp-content\u002Fplugins\u002Fflexible-frontend-login\u002Fjs\u002Ffrontend-login.js",[],[616],[620,621],"flexible-frontend-login\u002Fcss\u002Fstyle.css?ver=","flexible-frontend-login\u002Fjs\u002Ffrontend-login.js?ver=",{"cssClasses":623,"htmlComments":626,"htmlAttributes":627,"restEndpoints":629,"jsGlobals":630,"shortcodeOutput":632},[624,625],"ffl-login-wrap","ffl-login-form",[],[628],"data-ffl-login-ajax-url",[],[631],"FFL",[633],"[flexible-frontend-login]"]