[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fWzrMBLtjMWmnS8HytZsjzswYBw2BL8RMXEYI0Q_7s-k":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":11,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"vulnerabilities":30,"developer":31,"crawl_stats":28,"alternatives":39,"analysis":140,"fingerprints":466},"jquery-post-splitter","jQuery Post Splitter","3.0.5","Fahad Mahmood","https:\u002F\u002Fprofiles.wordpress.org\u002Ffahadmahmood\u002F","\u003Cul>\n\u003Cli>\n\u003Cp>Author: \u003Ca href=\"https:\u002F\u002Fwww.androidbubbles.com\u002Fcontact\" rel=\"nofollow ugc\">Fahad Mahmood\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Project URI: \u003Ca href=\"http:\u002F\u002Fandroidbubble.com\u002Fblog\u002Fwordpress\u002Fplugins\u002Fjquery-post-splitter\" rel=\"nofollow ugc\">http:\u002F\u002Fandroidbubble.com\u002Fblog\u002Fwordpress\u002Fplugins\u002Fjquery-post-splitter\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>License: GPL 3. See License below for copyright jots and titles.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>jQuery Post Splitter is compatible with almost all themes and it can be implemented in 4 different ways from which you might will require one. For user friendliness, this plugin come up with a button “Split Page” and easy usage within the text editor. It is light weight and comparatively optimized so it will not interrupt your scripts uselessly.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Demo URI: \u003Ca href=\"http:\u002F\u002Fdemo.androidbubble.com\u002Fjquery-post-splitter-pro\" rel=\"nofollow ugc\">http:\u002F\u002Fdemo.androidbubble.com\u002Fjquery-post-splitter-pro\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Demo URI: \u003Ca href=\"http:\u002F\u002Fdemo.androidbubble.com\u002Fhow-it-works-jps\" rel=\"nofollow ugc\">http:\u002F\u002Fdemo.androidbubble.com\u002Fhow-it-works-jps\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Demo URI: \u003Ca href=\"http:\u002F\u002Fdemo.guavapattern.com\u002F?page_id=443\" rel=\"nofollow ugc\">http:\u002F\u002Fdemo.guavapattern.com\u002F?page_id=443\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Demo URI (Page Break Block): \u003Ca href=\"http:\u002F\u002Fdemo.guavapattern.com\u002F?page_id=447\" rel=\"nofollow ugc\">http:\u002F\u002Fdemo.guavapattern.com\u002F?page_id=447\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>WordPress has an excellent, but little known, \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FStyling_Page-Links\" rel=\"nofollow ugc\">feature\u003C\u002Fa> for splitting up long posts into multiple pages. However, a growing trend among major news and blog sites is instead to split up posts into dynamically loading sliders. While there are many slider plugins available for WordPress, none of them quite tackles this functionality. That’s where the jQuery Post Splitter comes in: it takes normal multi-page posts from WordPress and replaces them with jQuery transition, ajax and page-refresh methods.\u003C\u002Fp>\n\u003Ch4>Tags\u003C\u002Fh4>\n\u003Cp>slider, pagination, ajax, carousel, multi-page, newspaper\u003C\u002Fp>\n\u003Ch3>Video Tutorial\u003C\u002Fh3>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FC-ALIaOr7Zo?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>\n\u003Ch3>Basic Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Posts and Pages can be divided into parts with page-breaks.\u003C\u002Fli>\n\u003Cli>View full post optional link\u003C\u002Fli>\n\u003Cli>Navigation captions can be edited\u003C\u002Fli>\n\u003Cli>Slides counter can be displayed\u003C\u002Fli>\n\u003Cli>Custom HTML and CSS can be added above and below post slides\u003C\u002Fli>\n\u003Cli>Scroll to top option is available for long posts\u003C\u002Fli>\n\u003Cli>Exceptional support on wordpress.org\u003C\u002Fli>\n\u003Cli>Slider navigation position\u003C\u002Fli>\n\u003Cli>Insert \u003Cbr \u002F> with each return key\u003C\u002Fli>\n\u003Cli>Slider count (e.g. “2 of 4”) position\u003C\u002Fli>\n\u003Cli>Scroll to top after slide load? (jQuery\u002FAjax)\u003C\u002Fli>\n\u003Cli>Clean \u003C!--nextpart—> \u002F nextpage--> tags from all posts\u002Fpages\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Advanced Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Default post navigation, line numbers display as pagination\u003C\u002Fli>\n\u003Cli>JavaScript Function on Slide, on each next and previous button you can trigger multiple JS functions\u003C\u002Fli>\n\u003Cli>Beautiful Styles for Slider Navigation\u003C\u002Fli>\n\u003Cli>SEO Trick – Display full content on first page as hidden?\u003C\u002Fli>\n\u003Cli>Loop slides – Creates an infinite loop of the slides\u003C\u002Fli>\n\u003Cli>Editable navigation captions\u003C\u002Fli>\n\u003Cli>Disable theme’s default post navigation\u003C\u002Fli>\n\u003Cli>Display full content on first page as hidden\u003C\u002Fli>\n\u003Cli>Combine different pages\u002Fposts with shortcode\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>What the slider does:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\n\u003Cp>Provides an awesome functionality to combine many posts\u002Fpages into one with the shortcodes. Example: [JPS_CHUNK id=”62″ type=”title”]\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Replaces WordPress’ built-in post pagination funtionality with jQuery, ajax-based carousel and page-refresh method.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Uses hash based URLs for easy direct linking to specific slides. This also preserves the functionality of the browser’s Back button.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Automatically adds slide navigation and a slide counter (e.g. ‘1 of 7’) to sliders according to the preferences you set.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Adds the ‘Insert Page Break’ button to the TinyMCE post editor so that you can easily split your content into multiple pages\u002Fslides.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Provides an optional stylesheet for (very) basic styling of the slider navigation.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Optionally allows infinite looping of slides.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Optionally provides a link to view all slides on a single page.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Optionally allows for scrolling back to top when each slide loads.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n","This plugin will split your post and pages into multiple pages with a tag. A button to split the pages and posts is available in text editor icons.",100,41875,92,37,"2025-10-22T08:43:00.000Z","6.8.5","4.0","7.0",[20,21,22,23,24],"ajax-posts","next-page","paged-posts","post-splitter","splitter-auto-loading","http:\u002F\u002Fandroidbubble.com\u002Fblog\u002Fwordpress\u002Fplugins\u002Fjquery-post-splitter","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fjquery-post-splitter.3.0.5.zip",0,null,"2026-03-15T15:16:48.613Z",[],{"slug":32,"display_name":7,"profile_url":8,"plugin_count":33,"total_installs":34,"avg_security_score":35,"avg_patch_time_days":36,"trust_score":37,"computed_at":38},"fahadmahmood",40,32660,96,237,76,"2026-04-04T05:52:02.162Z",[40,62,85,104,122],{"slug":41,"name":42,"version":43,"author":44,"author_profile":45,"description":46,"short_description":47,"active_installs":48,"downloaded":49,"rating":11,"num_ratings":50,"last_updated":51,"tested_up_to":52,"requires_at_least":53,"requires_php":54,"tags":55,"homepage":60,"download_link":61,"security_score":11,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"pagebreak-description","Pagebreak Description","1.12","Katsushi Kawamori","https:\u002F\u002Fprofiles.wordpress.org\u002Fkatsushi-kawamori\u002F","\u003Cul>\n\u003Cli>Enter page breaks and before\u002Fafter descriptions. Values are used in pagination.\u003C\u002Fli>\n\u003Cli>Do not mix this block with the Page Break block, as it may cause the comment to be misaligned.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How it works\u003C\u002Fh4>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002F4WNGiGnnjbc?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>\n\u003Ch4>Filter hooks\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>\u002F** ==================================================\n * Filter for CSS URL.\n * Default CSS -> \u002Fpagebreak-description\u002Fcss\u002Fstyle.css\n *\u002F\nadd_filter(\n    'pagebreak_description_css', \n    function() {\n\n        \u002F* If you put mydesign.css in wp-content\u002Fuploads *\u002F\n        $wp_uploads = wp_upload_dir();\n        $upload_url = $wp_uploads['baseurl'];\n        if ( is_ssl() ) {\n            $upload_url = str_replace( 'http:', 'https:', $upload_url );\n        }\n        $upload_url = untrailingslashit( $upload_url );\n        $url = $upload_url . '\u002Fmydesign.css';\n\n        return $url;\n    },\n    10,\n    1\n);\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Page breaks and before\u002Fafter descriptions",90,3509,1,"2025-11-25T22:00:00.000Z","6.9.4","6.6","8.0",[56,21,57,58,59],"block","pagebreak","pagination","prev-page","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fpagebreak-description\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpagebreak-description.1.12.zip",{"slug":63,"name":64,"version":65,"author":66,"author_profile":67,"description":68,"short_description":69,"active_installs":70,"downloaded":71,"rating":72,"num_ratings":73,"last_updated":74,"tested_up_to":75,"requires_at_least":76,"requires_php":77,"tags":78,"homepage":82,"download_link":83,"security_score":84,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"paged-post-slider","Paged Post Slider","1.5.3","spencejosiah","https:\u002F\u002Fprofiles.wordpress.org\u002Fspencejosiah\u002F","\u003Cp>Automagically turns multi-page posts into an ajax-based slideshow. Simply activate, choose the display options for your slider, and go!\u003C\u002Fp>\n\u003Ch3>NOTE: This plugin is no longer actively developed or supported. If anyone wants to fork it, check out the [github repository](https:\u002F\u002Fgithub.com\u002Fspencejs\u002FPaged-Post-Slider).\u003C\u002Fh3>\n\u003Cp>WordPress has an excellent, but little known, \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FStyling_Page-Links\" rel=\"nofollow ugc\">feature\u003C\u002Fa> for splitting up long posts into multiple pages. However, a growing trend among major news and blog sites is instead to split up posts into dynamically loading sliders. While there are many slider plugins available for WordPress, none of them quite tackles this functionality. That’s where the Paged Post Slider comes in: it takes normal multi-page posts from WordPress and replaces them with an all-ajax slider that requires almost no setup.\u003C\u002Fp>\n\u003Ch3>What the slider does:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Replaces WordPress’ built-in post pagination funtionality with an ajax-based carousel.\u003C\u002Fli>\n\u003Cli>Uses hash based URLs for easy direct linking to specific slides. This also preserves the functionality of the browser’s Back button.\u003C\u002Fli>\n\u003Cli>Automatically adds slide navigation and a slide counter (e.g. ‘1 of 5’) to sliders according to the preferences you set.\u003C\u002Fli>\n\u003Cli>Adds the ‘Insert Page Break’ button to the TinyMCE post editor so that you can easily split your content into multiple pages\u002Fslides.\u003C\u002Fli>\n\u003Cli>Provides an optional stylesheet for (very) basic styling of the slider navigation.\u003C\u002Fli>\n\u003Cli>Optionally allows infinite looping of slides.\u003C\u002Fli>\n\u003Cli>Optionally provides a link to view all slides on a single page.\u003C\u002Fli>\n\u003Cli>Optionally allows for scrolling back to top when each slide loads.\u003C\u002Fli>\n\u003Cli>Degrades gracefully. If the plugin is missing or uninstalled, posts will behave exactly like normal multi-page posts.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Demo:\u003C\u002Fh3>\n\u003Cp>See a \u003Ca href=\"http:\u002F\u002Fcodecarpenter.com\u002Ffreebie\u002Fwordpress-plugin-paged-post-slider\u002Fpaged-post-slider-demo\u002F\" rel=\"nofollow ugc\">demo\u003C\u002Fa> of the slider in action.\u003C\u002Fp>\n","Automagically turns multi-page posts into an ajax-based slideshow. Simply activate, choose the display options for your slider, and go!",80,12826,68,7,"2014-11-24T22:17:00.000Z","3.9.40","3.5.1","",[79,80,22,58,81],"ajax","carousel","slider","http:\u002F\u002FURI_Of_Page_Describing_Plugin_and_Updates","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpaged-post-slider.1.5.3.zip",85,{"slug":86,"name":87,"version":88,"author":89,"author_profile":90,"description":91,"short_description":92,"active_installs":93,"downloaded":94,"rating":70,"num_ratings":95,"last_updated":96,"tested_up_to":97,"requires_at_least":98,"requires_php":77,"tags":99,"homepage":102,"download_link":103,"security_score":84,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"ajax-load-more-by-bkker-theme","AJAX Load More By BKKER Theme","1.0.0","BKKER","https:\u002F\u002Fprofiles.wordpress.org\u002Fbkker\u002F","\u003Cp>Load the next page of posts with AJAX.\u003C\u002Fp>\n","Load the next page of posts with AJAX.",10,2781,2,"2018-08-02T21:39:00.000Z","4.9.29","3.6",[79,100,101,20,58],"ajax-load-posts","ajax-pagination","http:\u002F\u002Fbkkertheme.com\u002Fwordpress-plugins\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fajax-load-more-by-bkker-theme.zip",{"slug":105,"name":106,"version":107,"author":108,"author_profile":109,"description":110,"short_description":111,"active_installs":93,"downloaded":112,"rating":11,"num_ratings":50,"last_updated":113,"tested_up_to":114,"requires_at_least":115,"requires_php":54,"tags":116,"homepage":120,"download_link":121,"security_score":84,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"post-list-with-load-more","Post List with Load More","2.0.1","Ramiz Manked","https:\u002F\u002Fprofiles.wordpress.org\u002Framizmanked\u002F","\u003Cp>Loading more posts is made asynchronous (using AJAX) to ensure seamless user experience.\u003C\u002Fp>\n\u003Cp>The plugin is shipped with two basic layouts: Grid and List.\u003C\u002Fp>\n\u003Cp>For ease and simplicity layouts styles are kept basic, so it should reflect whatever styles provided by your active theme and you don’t have to overwrite styles for each and every element of the layout.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Asynchronous pagination to ensure unwanted reloading and best reading experience.\u003C\u002Fli>\n\u003Cli>Comes with flexible custom block with a bunch of settings.\u003C\u002Fli>\n\u003Cli>Pre-built layouts for getting started easily.\u003C\u002Fli>\n\u003Cli>Option to load more posts ‘On Scroll’ or ‘On Button Click’.\u003C\u002Fli>\n\u003Cli>Dynamic shortcode generator so you don’t have to remember different shortcode parameters.\u003C\u002Fli>\n\u003C\u002Fol>\n","Simple yet powerful WordPress plugin that allows you to display built-in\u002Fcustom posts and pages anywhere on your website.",2592,"2023-01-03T15:39:00.000Z","6.1.10","6.1.0",[20,117,118,119,105],"lazy-loading-posts","list-block","post-list-block","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fpost-list-with-load-more","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpost-list-with-load-more.zip",{"slug":123,"name":124,"version":125,"author":126,"author_profile":127,"description":128,"short_description":129,"active_installs":27,"downloaded":130,"rating":27,"num_ratings":27,"last_updated":131,"tested_up_to":52,"requires_at_least":132,"requires_php":133,"tags":134,"homepage":138,"download_link":139,"security_score":11,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"clickscroll-content-loader","ClickScroll Content Loader","1.1","Galaxy Weblinks","https:\u002F\u002Fprofiles.wordpress.org\u002Fgalaxyweblinks\u002F","\u003Cp>The ClickScroll Content Loader Plugin allows users to dynamically load more posts or pages with a simple click or scroll action. This plugin provides an easy-to-use backend interface for configuring various options, ensuring flexibility for different post types and user preferences. Using this shortcode [clickscroll-content-loader]\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong> This plugin supports only \u003Cstrong>one post type at a time\u003C\u002Fstrong>. You cannot display posts from multiple post types in a single shortcode instance.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Select Post Type\u003C\u002Fstrong>: Choose the post type you want to display.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Select Taxonomy\u003C\u002Fstrong>: Automatically populates based on the selected post type.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Select Terms\u003C\u002Fstrong>: Dynamically loads terms based on the selected taxonomy.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Show Post by Author\u003C\u002Fstrong>: Filter posts by a specific author.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Show Content Type\u003C\u002Fstrong>: Choose to display content as full content or excerpt.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Load More Posts By\u003C\u002Fstrong>: Options to load more posts by click or scroll.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>View Type\u003C\u002Fstrong>: Choose between list view, grid view, or both.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Column\u003C\u002Fstrong>: Set the number of columns (1, 2, 3, or 4) for the display.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Order\u003C\u002Fstrong>: Choose between ascending or descending order.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Order By\u003C\u002Fstrong>: Sort posts by ID, title, or date.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Exclude Posts\u003C\u002Fstrong>: Exclude specific posts by entering IDs, separated by commas.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Filter by Post IDs\u003C\u002Fstrong>: Include specific posts by entering IDs, separated by commas.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Posts Per Page\u003C\u002Fstrong>: Specify how many posts to display before showing the “Load More” button.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Featured Image Width & Height\u003C\u002Fstrong>: Set dimensions for featured images.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Hide Post\u002FPage Title\u003C\u002Fstrong>: Option to hide post titles.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Post\u002FPage Title Length\u003C\u002Fstrong>: Specify the maximum length for post titles.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Hide Content or Excerpt\u003C\u002Fstrong>: Option to hide content or excerpts.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Content Length\u003C\u002Fstrong>: Specify the maximum length for content or excerpts.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Show Search\u003C\u002Fstrong>: Checkbox to enable a search box above the listing to searchs.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Hide Featured Image\u003C\u002Fstrong>: Option to hide the featured image.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Hide Category\u003C\u002Fstrong>: Option to hide the category label.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Hide Author\u003C\u002Fstrong>: Option to hide the author name.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Hide Date\u003C\u002Fstrong>: Option to hide the post date.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Applied Link On Whole Box\u003C\u002Fstrong>: Checkbox to make the entire box clickable.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Read More Button Text\u003C\u002Fstrong>: Customize the text for the “Read More” link.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Load More Button Text\u003C\u002Fstrong>: Customize the text for the “Load More” button.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Post Not Found Text\u003C\u002Fstrong>: Customize the text for the “Not Found” message.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Change Author Icon Image\u003C\u002Fstrong>: Add url for a custom image for the author icon.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Change Date Icon Image\u003C\u002Fstrong>: Add url for a custom image for the date icon.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Change Loader Image\u003C\u002Fstrong>: Add url for a custom loader image for loading states.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Cp>Once activated, navigate to the plugin settings in the backend to select your desired configurations. The frontend will automatically adapt based on your selections. Use this shortcode to show listing [clickscroll-content-loader]. In php file use  shortcode like this.\u003C\u002Fp>\n\u003Cp>After inserting the shortcode on a page or post for the first time, please visit the plugin settings page and click \u003Cstrong>Save Settings\u003C\u002Fstrong> once to initialize the configuration properly.\u003C\u002Fp>\n","AJAX-based loading of posts using click or scroll.",166,"2026-02-19T13:23:00.000Z","6.3","7.4",[20,135,136,58,137],"infinite-scroll","load-more","post-list","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fclickscroll-content-loader\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fclickscroll-content-loader.1.1.zip",{"attackSurface":141,"codeSignals":239,"taintFlows":386,"riskAssessment":458,"analyzedAt":465},{"hooks":142,"ajaxHandlers":223,"restRoutes":235,"shortcodes":236,"cronEvents":237,"entryPointCount":238,"unprotectedCount":27},[143,149,154,157,161,166,170,174,178,182,188,192,195,199,203,207,211,215,219],{"type":144,"name":145,"callback":146,"file":147,"line":148},"action","admin_menu","jpps_add_options","inc\\functions-essentials.php",29,{"type":144,"name":150,"callback":151,"file":152,"line":153},"admin_init","jps_theme_add_editor_styles","inc\\jps-core-admin.php",34,{"type":144,"name":155,"callback":156,"priority":50,"file":152,"line":72},"add_meta_boxes","jps_add_meta_box",{"type":144,"name":158,"callback":159,"file":152,"line":160},"save_post","jps_save_meta_box_data",505,{"type":144,"name":162,"callback":163,"file":164,"line":165},"wp_head","jps_header_scripts","inc\\jps-core-front.php",283,{"type":144,"name":167,"callback":168,"file":164,"line":169},"wp_footer","jps_footer_scripts",284,{"type":144,"name":171,"callback":172,"file":164,"line":173},"init","spnp_js",964,{"type":144,"name":171,"callback":175,"file":176,"line":177},"jps_reset_custom_styles","inc\\jps-functions-inner.php",595,{"type":144,"name":171,"callback":179,"priority":180,"file":176,"line":181},"jps_save_custom_styling",9,646,{"type":183,"name":184,"callback":185,"file":186,"line":187},"filter","mce_external_plugins","spnp_add_tinymce_plugin","inc\\split-buttons.php",14,{"type":183,"name":189,"callback":190,"file":186,"line":191},"mce_buttons","spnp_register_button",15,{"type":144,"name":150,"callback":193,"file":186,"line":194},"spnp_init",20,{"type":183,"name":189,"callback":196,"file":197,"line":198},"paged_post_tinymce","index.php",191,{"type":183,"name":200,"callback":201,"priority":93,"file":197,"line":202},"plugin_row_meta","jpps_plugin_meta",193,{"type":144,"name":204,"callback":205,"file":197,"line":206},"admin_enqueue_scripts","jps_admin_scripts",194,{"type":183,"name":208,"callback":209,"file":197,"line":210},"wp_link_pages_args","paged_post_link_pages",206,{"type":183,"name":212,"callback":213,"priority":50,"file":197,"line":214},"the_content","paged_post_the_content_filter",211,{"type":144,"name":216,"callback":217,"file":197,"line":218},"wp_enqueue_scripts","paged_post_scripts",215,{"type":144,"name":220,"callback":221,"file":197,"line":222},"wp","paged_parts_logic",217,[224,229,232],{"action":225,"nopriv":226,"callback":225,"hasNonce":227,"hasCapCheck":226,"file":152,"line":228},"jps_save_post_meta",false,true,434,{"action":230,"nopriv":226,"callback":230,"hasNonce":227,"hasCapCheck":226,"file":176,"line":231},"jps_clear_page_break",170,{"action":233,"nopriv":226,"callback":233,"hasNonce":227,"hasCapCheck":226,"file":176,"line":234},"jps_get_navigation_style_html",550,[],[],[],3,{"dangerousFunctions":240,"sqlUsage":241,"outputEscaping":244,"fileOperations":27,"externalRequests":27,"nonceChecks":384,"capabilityChecks":238,"bundledLibraries":385},[],{"prepared":242,"raw":27,"locations":243},6,[],{"escaped":245,"rawEcho":246,"locations":247},19,73,[248,251,253,254,255,257,259,261,263,265,267,269,271,273,275,277,279,281,283,285,287,289,291,293,295,297,298,300,302,304,306,308,310,312,313,314,316,318,320,322,324,326,329,331,333,334,335,336,338,340,342,343,345,347,349,351,353,355,357,359,360,362,364,366,368,370,372,373,375,377,378,380,382],{"file":152,"line":249,"context":250},106,"raw output",{"file":152,"line":252,"context":250},268,{"file":152,"line":252,"context":250},{"file":152,"line":252,"context":250},{"file":152,"line":256,"context":250},289,{"file":152,"line":258,"context":250},312,{"file":152,"line":260,"context":250},326,{"file":152,"line":262,"context":250},327,{"file":152,"line":264,"context":250},328,{"file":152,"line":266,"context":250},447,{"file":164,"line":268,"context":250},241,{"file":164,"line":270,"context":250},939,{"file":164,"line":272,"context":250},951,{"file":164,"line":274,"context":250},953,{"file":164,"line":276,"context":250},988,{"file":176,"line":278,"context":250},72,{"file":176,"line":280,"context":250},93,{"file":176,"line":282,"context":250},125,{"file":176,"line":284,"context":250},141,{"file":176,"line":286,"context":250},145,{"file":176,"line":288,"context":250},146,{"file":176,"line":290,"context":250},159,{"file":176,"line":292,"context":250},183,{"file":176,"line":294,"context":250},203,{"file":176,"line":296,"context":250},308,{"file":176,"line":296,"context":250},{"file":176,"line":299,"context":250},336,{"file":176,"line":301,"context":250},339,{"file":176,"line":303,"context":250},342,{"file":176,"line":305,"context":250},401,{"file":176,"line":307,"context":250},409,{"file":176,"line":309,"context":250},424,{"file":176,"line":311,"context":250},425,{"file":176,"line":311,"context":250},{"file":176,"line":228,"context":250},{"file":176,"line":315,"context":250},452,{"file":176,"line":317,"context":250},461,{"file":176,"line":319,"context":250},476,{"file":176,"line":321,"context":250},484,{"file":176,"line":323,"context":250},500,{"file":176,"line":325,"context":250},508,{"file":327,"line":328,"context":250},"inc\\jps-settings.php",53,{"file":327,"line":330,"context":250},56,{"file":327,"line":332,"context":250},71,{"file":327,"line":246,"context":250},{"file":327,"line":246,"context":250},{"file":327,"line":70,"context":250},{"file":327,"line":337,"context":250},86,{"file":327,"line":339,"context":250},192,{"file":327,"line":341,"context":250},503,{"file":327,"line":160,"context":250},{"file":327,"line":344,"context":250},507,{"file":327,"line":346,"context":250},509,{"file":327,"line":348,"context":250},685,{"file":327,"line":350,"context":250},686,{"file":327,"line":352,"context":250},716,{"file":327,"line":354,"context":250},733,{"file":327,"line":356,"context":250},737,{"file":327,"line":358,"context":250},742,{"file":327,"line":358,"context":250},{"file":327,"line":361,"context":250},751,{"file":327,"line":363,"context":250},757,{"file":327,"line":365,"context":250},759,{"file":327,"line":367,"context":250},761,{"file":327,"line":369,"context":250},763,{"file":327,"line":371,"context":250},766,{"file":327,"line":371,"context":250},{"file":327,"line":374,"context":250},767,{"file":327,"line":376,"context":250},774,{"file":327,"line":376,"context":250},{"file":327,"line":379,"context":250},799,{"file":327,"line":381,"context":250},828,{"file":186,"line":383,"context":250},36,8,[],[387,405,425,436,444],{"entryPoint":388,"graph":389,"unsanitizedCount":403,"severity":404},"jps_navigation_styling_html (inc\\jps-functions-inner.php:218)",{"nodes":390,"edges":401},[391,396],{"id":392,"type":393,"label":394,"file":176,"line":395},"n0","source","$_POST (x13)",222,{"id":397,"type":398,"label":399,"file":176,"line":299,"wp_function":400},"n1","sink","echo() [XSS]","echo",[402],{"from":392,"to":397,"sanitized":226},13,"medium",{"entryPoint":406,"graph":407,"unsanitizedCount":27,"severity":424},"jpps_options_page (inc\\jps-core-admin.php:191)",{"nodes":408,"edges":421},[409,412,415,419],{"id":392,"type":393,"label":410,"file":152,"line":411},"$_POST['jps_options']",218,{"id":397,"type":398,"label":413,"file":152,"line":411,"wp_function":414},"update_option() [Settings Manipulation]","update_option",{"id":416,"type":393,"label":417,"file":152,"line":418},"n2","$_POST['jps_restrictions']",221,{"id":420,"type":398,"label":413,"file":152,"line":418,"wp_function":414},"n3",[422,423],{"from":392,"to":397,"sanitized":227},{"from":416,"to":420,"sanitized":227},"low",{"entryPoint":426,"graph":427,"unsanitizedCount":27,"severity":424},"\u003Cjps-core-admin> (inc\\jps-core-admin.php:0)",{"nodes":428,"edges":433},[429,430,431,432],{"id":392,"type":393,"label":410,"file":152,"line":411},{"id":397,"type":398,"label":413,"file":152,"line":411,"wp_function":414},{"id":416,"type":393,"label":417,"file":152,"line":418},{"id":420,"type":398,"label":413,"file":152,"line":418,"wp_function":414},[434,435],{"from":392,"to":397,"sanitized":227},{"from":416,"to":420,"sanitized":227},{"entryPoint":437,"graph":438,"unsanitizedCount":27,"severity":424},"\u003Cjps-functions-inner> (inc\\jps-functions-inner.php:0)",{"nodes":439,"edges":442},[440,441],{"id":392,"type":393,"label":394,"file":176,"line":395},{"id":397,"type":398,"label":399,"file":176,"line":299,"wp_function":400},[443],{"from":392,"to":397,"sanitized":227},{"entryPoint":445,"graph":446,"unsanitizedCount":27,"severity":424},"\u003Cjps-settings> (inc\\jps-settings.php:0)",{"nodes":447,"edges":455},[448,450,451,454],{"id":392,"type":393,"label":449,"file":327,"line":72},"$_SERVER (x3)",{"id":397,"type":398,"label":399,"file":327,"line":332,"wp_function":400},{"id":416,"type":393,"label":452,"file":327,"line":453},"$_POST['jps_tn']",845,{"id":420,"type":398,"label":399,"file":327,"line":453,"wp_function":400},[456,457],{"from":392,"to":397,"sanitized":227},{"from":416,"to":420,"sanitized":227},{"summary":459,"deductions":460},"The 'jquery-post-splitter' plugin v3.0.5 exhibits a generally positive security posture, adhering to several best practices. The complete absence of known CVEs, along with the exclusive use of prepared statements for SQL queries, indicates a mature development process and a focus on preventing common database vulnerabilities. Furthermore, the presence of nonce and capability checks on all identified AJAX entry points is commendable, significantly reducing the risk of unauthorized actions.  The plugin also avoids potentially risky operations like file modifications or external HTTP requests.\n\nHowever, a notable area for improvement lies in output escaping. With only 21% of outputs properly escaped, there is a significant risk of Cross-Site Scripting (XSS) vulnerabilities. While no critical or high-severity taint flows were identified in the static analysis, the unsanitized path flow requires attention as it could potentially lead to vulnerabilities if exploited in conjunction with unescaped output. The limited attack surface is a positive factor, but the low percentage of properly escaped outputs remains the primary concern and warrants remediation.\n\nIn conclusion, 'jquery-post-splitter' v3.0.5 demonstrates a strong foundation by securing its entry points and database interactions. The lack of historical vulnerabilities further reinforces this. The most critical weakness is the insufficient output escaping, which presents a tangible risk that outweighs the generally good practices elsewhere. Addressing this would elevate the plugin's security to a much more robust level.",[461,463],{"reason":462,"points":191},"Insufficient output escaping detected.",{"reason":464,"points":384},"Taint flow with unsanitized path identified.","2026-03-16T20:44:16.251Z",{"wat":467,"direct":478},{"assetPaths":468,"generatorPatterns":472,"scriptPaths":473,"versionParams":474},[469,470,471],"\u002Fwp-content\u002Fplugins\u002Fjquery-post-splitter\u002Fcss\u002Fjps-admin.css","\u002Fwp-content\u002Fplugins\u002Fjquery-post-splitter\u002Fjs\u002Fjps-admin.js","\u002Fwp-content\u002Fplugins\u002Fjquery-post-splitter\u002Fjs\u002Fjps-front.js",[],[470],[475,476,477],"jquery-post-splitter\u002Fcss\u002Fjps-admin.css?t=","jquery-post-splitter\u002Fjs\u002Fjps-admin.js?t=","jquery-post-splitter\u002Fjs\u002Fjps-front.js?ver=",{"cssClasses":479,"htmlComments":483,"htmlAttributes":488,"restEndpoints":490,"jsGlobals":491,"shortcodeOutput":492},[480,481,482],"jps-next","jps-prev","jps-pro-feature",[484,485,486,487],"\u003C!-- Premium Feature -->","\u003C!-- Add a nonce field so we can check for it later. -->","\u003C!-- Use get_post_meta() to retrieve an existing value -->","\u003C!-- from the database and use the value for the form. -->",[489],"jps_meta_box_nonce",[],[],[]]