[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fdfBHbDKIcW9eOGHh23tux0kLU_KZ5cp_PNAkAEFurRw":3,"$fsQTAXsMR2A1JiRUh2HFxkoBMEHJFh3Ccby1NrSthk2c":230,"$fx8-nrMakOx_ZY3kC2lB9aJv_iAv0KubkP9asi2M_I0k":235},{"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,"discovery_status":31,"vulnerabilities":32,"developer":33,"crawl_stats":29,"alternatives":41,"analysis":147,"fingerprints":217},"loop-post-navigation-links","Loop Post Navigation Links","3.0.2","Scott Reilly","https:\u002F\u002Fprofiles.wordpress.org\u002Fcoffee2code\u002F","\u003Cp>This plugin provides two template tags for use in single.php to create a post navigation loop, whereby previous to the first post is the last post, and after the last post is first post. Basically, when you’re on the last post and you click to go to the next post, the link takes you to the first post. Likewise, if you’re on the first post and click to go to the previous post, the link takes you to the last post.\u003C\u002Fp>\n\u003Cp>The function \u003Ccode>c2c_next_or_loop_post_link()\u003C\u002Fcode> is identical to WordPress’s \u003Ccode>next_post_link()\u003C\u002Fcode> in every way except when called on the last post in the navigation sequence, in which case it links back to the first post in the navigation sequence.\u003C\u002Fp>\n\u003Cp>The function \u003Ccode>c2c_previous_or_loop_post_link()\u003C\u002Fcode> is identical to WordPress’s \u003Ccode>previous_post_link()\u003C\u002Fcode> in every way except when called on the first post in the navigation sequence, in which case it links back to the last post in the navigation sequence.\u003C\u002Fp>\n\u003Cp>Useful for providing a looping link of posts, such as for a portfolio, or to continually present pertinent posts for visitors to continue reading.\u003C\u002Fp>\n\u003Cp>If you are interested in getting the post itself and not just a link to the post, you can use the \u003Ccode>c2c_get_next_or_loop_post()\u003C\u002Fcode> and \u003Ccode>c2c_get_previous_or_loop_post()\u003C\u002Fcode> functions. If you just want the URL to the post, you can use \u003Ccode>c2c_get_next_or_loop_post_url()\u003C\u002Fcode> and \u003Ccode>c2c_get_previous_or_loop_post_url()\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Links: \u003Ca href=\"https:\u002F\u002Fcoffee2code.com\u002Fwp-plugins\u002Floop-post-navigation-links\u002F\" rel=\"nofollow ugc\">Plugin Homepage\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Floop-post-navigation-links\u002F\" rel=\"ugc\">Plugin Directory Page\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fcoffee2code\u002Floop-post-navigation-links\u002F\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fcoffee2code.com\" rel=\"nofollow ugc\">Author Homepage\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Template Tags\u003C\u002Fh3>\n\u003Cp>The plugin provides four template tags for use in your single-post theme templates.\u003C\u002Fp>\n\u003Ch4>Functions\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Ccode>function c2c_next_or_loop_post_link( $format='%link &raquo;', $link='%title', $in_same_term = false, $excluded_terms = '', $taxonomy = 'category' )\u003C\u002Fcode>\u003Cbr \u002F>\nLike WordPress’s \u003Ccode>next_post_link()\u003C\u002Fcode>, this function displays a link to the next chronological post (among all published posts, those in the same category, or those not in certain categories). Unlink \u003Ccode>next_post_link()\u003C\u002Fcode>, when on the last post in the sequence this function will link back to the first post in the sequence, creating a circular loop.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>function c2c_get_next_or_loop_post_link( $format='%link &raquo;', $link='%title', $in_same_term = false, $excluded_terms = '', $taxonomy = 'category' )\u003C\u002Fcode>\u003Cbr \u002F>\nLike `c2c_next_or_loop_post_link(), but returns the value without echoing it.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>function c2c_previous_or_loop_post_link( $format='&laquo; %link', $link='%title', $in_same_term = false, $excluded_terms = '', $taxonomy = 'category' )\u003C\u002Fcode>\u003Cbr \u002F>\nLike WordPress’s \u003Ccode>previous_post_link()\u003C\u002Fcode>, this function displays a link to the previous chronological post (among all published posts, those in the same category, or those not in certain categories). Unlink \u003Ccode>previous_post_link()\u003C\u002Fcode>, when on the first post in the sequence this function will link to the last post in the sequence, creating a circular loop.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>function c2c_get_previous_or_loop_post_link( $format='&laquo; %link', $link='%title', $in_same_term = false, $excluded_terms = '', $taxonomy = 'category' )\u003C\u002Fcode>\u003Cbr \u002F>\nLike `c2c_get_previous_or_loop_post_link(), but returns the value without echoing it.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>function c2c_get_next_or_loop_post( $in_same_term = false, $excluded_terms = '', $taxonomy = 'category' )\u003C\u002Fcode>\u003Cbr \u002F>\nLike WordPress’s \u003Ccode>get_adjacent_post()\u003C\u002Fcode> when used to find the next post, except when on the last post in the sequence this function will return the first post in the sequence, creating a circular loop.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>function c2c_get_previous_or_loop_post( $in_same_term = false, $excluded_terms = '', $taxonomy = 'category' )\u003C\u002Fcode>\u003Cbr \u002F>\nLike WordPress’s \u003Ccode>get_adjacent_post()\u003C\u002Fcode> when used to find the previous post, except when on the first post in the sequence this function will return the last post in the sequence, creating a circular loop.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>function c2c_get_next_or_loop_post_url( $in_same_term = false, $excluded_terms = '', $taxonomy = 'category' )\u003C\u002Fcode>\u003Cbr \u002F>\nReturns the URL for the next post or the post at the beginning of the series.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>function c2c_get_previous_or_loop_post_url( $in_same_term = false, $excluded_terms = '', $taxonomy = 'category' )\u003C\u002Fcode>\u003Cbr \u002F>\nReturns the URL for the previous post or the post at the end of the series.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Arguments\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Ccode>$format\u003C\u002Fcode>\u003Cbr \u002F>\n(optional) A percent-substitution string indicating the format of the entire output string. Use \u003Ccode>%link\u003C\u002Fcode> to represent the next\u002Fprevious post being linked, or \u003Ccode>%title\u003C\u002Fcode> to represent the title of the next\u002Fprevious post.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>$link\u003C\u002Fcode>\u003Cbr \u002F>\n(optional) A percent-substitution string indicating the format of the link itself that gets created for the next\u002Fprevious post. Use \u003Ccode>%link\u003C\u002Fcode> to represent the next\u002Fprevious post being linked, or \u003Ccode>%title\u003C\u002Fcode> to represent the title of the next\u002Fprevious post.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>$in_same_term\u003C\u002Fcode>\u003Cbr \u002F>\n(optional) A boolean value (either true or false) indicating if the next\u002Fprevious post should be in the current post’s same taxonomy term.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>$excluded_terms\u003C\u002Fcode>\u003Cbr \u002F>\n(optional) An array or comma-separated string of category or term IDs to which posts cannot belong.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>$taxonomy\u003C\u002Fcode>\u003Cbr \u002F>\n(optional) Taxonomy, if $in_same_term is true. Default ‘category’.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Examples\u003C\u002Fh3>\n\u003Cpre>\u003Ccode>\u003Cdiv class=\"loop-navigation\">\n    \u003Cdiv class=\"alignleft\">\u003C?php c2c_previous_or_loop_post_link(); ?>\u003C\u002Fdiv>\n    \u003Cdiv class=\"alignright\">\u003C?php c2c_next_or_loop_post_link(); ?>\u003C\u002Fdiv>\n\u003C\u002Fdiv>\u003Ch3>Hooks\u003C\u002Fh3>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>The plugin is further customizable via eleven hooks. Typically, code making use of hooks should ideally be put into a mu-plugin, a site-specific plugin (which is beyond the scope of this readme to explain), or in theme template files. Many of these filters are likely only of interest to advanced users able to code.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>c2c_previous_or_loop_post_link_output, c2c_next_or_loop_post_link_output (filters)\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>The ‘c2c_previous_or_loop_post_link_output’ and ‘c2c_next_or_loop_post_link_output’ filters allow you to customize the link markup generated for previous and next looping links, respectively.\u003C\u002Fp>\n\u003Cp>Arguments:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>$format         (string):       Link anchor format.\u003C\u002Fli>\n\u003Cli>$link           (string):       Link permalink format.\u003C\u002Fli>\n\u003Cli>$in_same_term   (bool):         Optional. Whether link should be in a same taxonomy term. Default is false.\u003C\u002Fli>\n\u003Cli>$excluded_terms (array|string): Optional. Array or comma-separated list of excluded term IDs. Default is ”.\u003C\u002Fli>\n\u003Cli>$previous       (bool):         Optional. Whether to display link to previous or next post. Default is true.\u003C\u002Fli>\n\u003Cli>$taxonomy       (string):       Optional. Taxonomy, if $in_same_term is true. Default ‘category’.\u003C\u002Fli>\n\u003Cli>$adjacent       (string):       Whether the post is previous or next.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Example:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>  \u003C?php\n      \u002F\u002F Prepend \"Prev:\" to previous link markup.\n      function my_custom_previous_or_loop_link_output( $output, $format, $link, $post, $in_same_term, $excluded_terms, $taxonomy ) {\n        return 'Prev: ' . $output;\n      }\n      add_filter( 'c2c_previous_or_loop_post_link_output', 'my_custom_previous_or_loop_link_output', 10, 4 );\n    ?>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>c2c_previous_or_loop_post_link_get, c2c_next_or_loop_post_link_get (filters)\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>The ‘c2c_previous_or_loop_post_link_get’ and ‘c2c_next_or_loop_post_link_get’ filters allow you to customize the link markups generated for previous and next looping links, respectively, but in the non-echoing functions.\u003C\u002Fp>\n\u003Cp>Arguments:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>$output         (string):       The adjacent post link.\u003C\u002Fli>\n\u003Cli>$format         (string):       Link anchor format.\u003C\u002Fli>\n\u003Cli>$link           (string):       Link permalink format.\u003C\u002Fli>\n\u003Cli>$post           (WP_Post):      The adjacent post.\u003C\u002Fli>\n\u003Cli>$in_same_term   (bool):         Optional. Whether link should be in a same taxonomy term. Default is false.\u003C\u002Fli>\n\u003Cli>$excluded_terms (array|string): Optional. Array or comma-separated list of excluded term IDs. Default is ”.\u003C\u002Fli>\n\u003Cli>$previous       (bool):         Optional. Whether to display link to previous or next post. Default is true.\u003C\u002Fli>\n\u003Cli>$taxonomy       (string):       Optional. Taxonomy, if $in_same_term is true. Default ‘category’.\u003C\u002Fli>\n\u003Cli>$adjacent       (string):       Whether the post is previous or next.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>c2c_previous_or_loop_post_link, c2c_next_or_loop_post_link, c2c_get_previous_or_loop_post_link, c2c_get_next_or_loop_post_link, c2c_get_adjacent_or_loop_post, c2c_get_previous_or_loop_post, c2c_get_previous_or_loop_post (actions)\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>The ‘c2c_previous_or_loop_post_link’ and ‘c2c_next_or_loop_post_link’ actions allow you to use an alternative approach to safely invoke \u003Ccode>c2c_previous_or_loop_post_link()\u003C\u002Fcode> and \u003Ccode>c2c_next_or_loop_post_link()\u003C\u002Fcode>, respectively, in such a way that if the plugin were deactivated or deleted, then your calls to the functions won’t cause errors in your site. The ‘c2c_get_previous_or_loop_post_link’ and ‘c2c_get_next_or_loop_post_link’ filters do the same for the non-echoing \u003Ccode>c2c_previous_or_loop_post_link()\u003C\u002Fcode> and \u003Ccode>c2c_next_or_loop_post_link()\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Arguments:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Same as for for \u003Ccode>c2c_previous_or_loop_post_link()\u003C\u002Fcode> and \u003Ccode>c2c_next_or_loop_post_link()\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Example:\u003C\u002Fp>\n\u003Cp>Instead of:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php c2c_previous_or_loop_post_link( '\u003Cspan class=\"prev-or-loop-link\">&laquo; %link\u003C\u002Fspan>' ); ?>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Do:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php do_action( 'c2c_previous_or_loop_post_link', '\u003Cspan class=\"prev-or-loop-link\">&laquo; %link\u003C\u002Fspan>' ); ?>\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Template tags (for use in single.php) to create post navigation loop (previous to first post is last post; next\u002Fafter last post is first post).",600,22450,100,12,"2020-08-27T07:28:00.000Z","5.5.18","4.9","",[20,21,22,23,24],"links","navigation","next","posts","previous","https:\u002F\u002Fcoffee2code.com\u002Fwp-plugins\u002Floop-post-navigation-links\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floop-post-navigation-links.3.0.2.zip",85,0,null,"2026-04-16T10:56:18.058Z","no_bundle",[],{"slug":34,"display_name":7,"profile_url":8,"plugin_count":35,"total_installs":36,"avg_security_score":37,"avg_patch_time_days":38,"trust_score":39,"computed_at":40},"coffee2code",63,91830,88,374,71,"2026-05-19T21:15:20.386Z",[42,64,85,106,128],{"slug":43,"name":44,"version":45,"author":46,"author_profile":47,"description":48,"short_description":49,"active_installs":13,"downloaded":50,"rating":13,"num_ratings":51,"last_updated":52,"tested_up_to":53,"requires_at_least":54,"requires_php":55,"tags":56,"homepage":18,"download_link":62,"security_score":63,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"keep-pagination-in-same-taxonomy","Keep Pagination in Same Taxonomy","0.15","keith_wp","https:\u002F\u002Fprofiles.wordpress.org\u002Fkeith_wp\u002F","\u003Cp>Instantly join separate posts together by making the Previous\u002FNext Post links on a Single Post look for other posts that share the same taxonomies.\u003C\u002Fp>\n\u003Cp>This lightweight plugin simply adds a filter to your selected taxonomies (both default and custom) so that any theme can have its post navigation links stay in the same category as the currently viewed post.\u003C\u002Fp>\n","Makes any previous\u002Fnext post links use the same taxonomy as the current post.",2607,3,"2025-04-07T15:19:00.000Z","6.7.5","4.0","8.3",[57,58,59,60,61],"link-posts","pagination","post-navigation","previous-next-posts","previous-next-links","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fkeep-pagination-in-same-taxonomy.0.15.zip",92,{"slug":65,"name":66,"version":67,"author":68,"author_profile":69,"description":70,"short_description":71,"active_installs":72,"downloaded":73,"rating":74,"num_ratings":75,"last_updated":76,"tested_up_to":77,"requires_at_least":78,"requires_php":18,"tags":79,"homepage":83,"download_link":84,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"wp-post-navigation","WP Post Navigation","1.2.4","Anas Mir","https:\u002F\u002Fprofiles.wordpress.org\u002Fsharpcoders\u002F","\u003Cp>WP Post Navigation Plugin gives you facility to show Previous and Next Post Links at the Top or Bottom of a Post.\u003Cbr \u002F>\nYou can set to navigate within category or date wise navigation. You’ve the option to set Post Navigation Bar at Bottom, Top or both Top & Bottom.\u003Cbr \u002F>\nYou can apply CSS style to Previous and Next Post Links. You can set custom text instead of Next and Previous Post Titles.\u003Cbr \u002F>\nYou can set custom Image for Next and Previous Post Links.\u003Cbr \u002F>\nManually Place Post Navigation in single.php, just Copy & paste following code anywhere in single.php page under get_header();\u003Cbr \u002F>\n\u003C?php echo isset( $WPPostNavigation ) ? $WPPostNavigation->WP_Custom_Post_Navigation():”; ?>\u003Cbr \u002F>\nFor Help visit: http:\u002F\u002Fsharp-coders.com\u002Fwp-post-navigation\u002F\u003C\u002Fp>\n","Show Next and Previous Post Links at Posts.",2000,57528,82,26,"2017-11-28T18:10:00.000Z","4.7.33","3.0",[80,81,59,82,65],"next-and-previous-post","next-post-link","previous-post-link","http:\u002F\u002Fsharp-coders.com\u002Fwp-post-navigation","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-post-navigation.zip",{"slug":86,"name":87,"version":88,"author":89,"author_profile":90,"description":91,"short_description":92,"active_installs":93,"downloaded":94,"rating":95,"num_ratings":96,"last_updated":97,"tested_up_to":98,"requires_at_least":99,"requires_php":18,"tags":100,"homepage":104,"download_link":105,"security_score":63,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"cresta-posts-box","Cresta Posts Box","1.3.6","CrestaProject","https:\u002F\u002Fprofiles.wordpress.org\u002Fcrestaproject\u002F","\u003Cp>\u003Ca href=\"https:\u002F\u002Fcrestaproject.com\u002Fdownloads\u002Fcresta-posts-box\u002F\" rel=\"nofollow ugc\">Plugin Homepage & Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>With \u003Cstrong>Cresta Posts Box\u003C\u002Fstrong> you can show, in a single page (posts, pages or custom post types), a small box that allows the reader to \u003Cstrong>go to the next or previous post\u003C\u002Fstrong>. The box appears only when the reader finishes reading the current post.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Some features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Choose to show next or previous post\u003C\u002Fli>\n\u003Cli>Choose the box position (left or right)\u003C\u002Fli>\n\u003Cli>Choose the font size\u003C\u002Fli>\n\u003Cli>Choose the box width\u003C\u002Fli>\n\u003Cli>and more…\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>PRO version features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Show Random Post\u003C\u002Fli>\n\u003Cli>Show Related Post\u003C\u002Fli>\n\u003Cli>Set box background color\u003C\u002Fli>\n\u003Cli>Set box text and link color\u003C\u002Fli>\n\u003Cli>Set border box and border radius box\u003C\u002Fli>\n\u003Cli>5 Animations\u003C\u002Fli>\n\u003Cli>and much more…\u003C\u002Fli>\n\u003C\u002Ful>\n","Show the next or previous post in a box that appears when the user scrolls to the bottom of a current post.",1000,37431,86,7,"2025-04-14T14:20:00.000Z","6.8.5","3.9",[101,102,23,24,103],"next-post","post","previous-post","https:\u002F\u002Fcrestaproject.com\u002Fdownloads\u002Fcresta-posts-box\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcresta-posts-box.1.3.6.zip",{"slug":107,"name":108,"version":109,"author":110,"author_profile":111,"description":112,"short_description":113,"active_installs":114,"downloaded":115,"rating":13,"num_ratings":116,"last_updated":117,"tested_up_to":118,"requires_at_least":78,"requires_php":18,"tags":119,"homepage":124,"download_link":125,"security_score":27,"vuln_count":126,"unpatched_count":28,"last_vuln_date":127,"fetched_at":30},"swifty-bar","Swifty Bar, sticky bar by WPGens","1.2.11","Goran87","https:\u002F\u002Fprofiles.wordpress.org\u002Fgoran87\u002F","\u003Cp>\u003Cstrong>Boost your user engagement!\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>As featured on \u003Ca href=\"http:\u002F\u002Fwww.wpbeginner.com\u002Fplugins\u002Fhow-to-boost-user-engagement-with-swifty-bar-for-wordpress\u002F\" rel=\"nofollow ugc\">wpbegginer\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fwww.elegantthemes.com\u002Fblog\u002Fresources\u002F10-awesome-new-and-free-plugins-released-on-wordpress-org-in-2015\" rel=\"nofollow ugc\">elegantthemes\u003C\u002Fa> as top10 plugins of 2015, and on product hunt as product of the day.\u003C\u002Fp>\n\u003Cp>Swifty bar will adds sticky bar at the bottom of post that shows category, post title, author, time needed to read article, share buttons together with share count, and previous\u002Fnext post links. This plugin can easily replace your social share buttons while giving readers better experience with much more options. Its fast, coded with best practice, super light and will not slow down your site.\u003C\u002Fp>\n\u003Cp>Check out demo \u003Ca href=\"http:\u002F\u002Fitsgoran.com\u002Fwp\u002Fteaching-civil-rights-without-a-textbook\u002F\" rel=\"nofollow ugc\">here\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Major features in Swifty Bar include:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Shows current post category, post title and authors first and last name.\u003C\u002Fli>\n\u003Cli>Shows estimated time that is needed for visitor to read your article.\u003C\u002Fli>\n\u003Cli>Share buttons for most popular social networks (new ones comming soon).\u003C\u002Fli>\n\u003Cli>Number of Comments and click to scroll to comment form.\u003C\u002Fli>\n\u003Cli>Previous\u002FNext Post Links with nice preview on hover.\u003C\u002Fli>\n\u003Cli>Super light, clean code that will not slow down your site.\u003C\u002Fli>\n\u003Cli>Admin Panel to customize each module.\u003C\u002Fli>\n\u003Cli>Supports custom post types.\u003C\u002Fli>\n\u003Cli>Multiple colors and two type of icons\u003C\u002Fli>\n\u003Cli>Share counter\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Share Count in 1.2!\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>We introduced share count in latest version of swifty bar. We are saving share counts inside WP Transients to keep things fast and fetching new shares once user clicks on any of the share icons, if no clicks have been made, share will refresh once daily, that way site is doing minimal requests to the share APIs which boosts its speed by ALOT.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Check out my other plugins on \u003Ca href=\"http:\u002F\u002Fwpgens.com\" rel=\"nofollow ugc\">wpgens.com\u003C\u002Fa> and subscribe to get notified once new cool plugins are out – one email per plugin\u002Fmonth\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>If you have any suggestions\u002Ffeedback to improve Swifty Bar, please get in touch with me via email goranefbl@gmail.com .\u003C\u002Fp>\n","Adds sticky bar at the bottom of post that shows category,post title, author, time needed to read article, share buttons and previous\u002Fnext post links",400,34104,48,"2023-09-10T12:23:00.000Z","6.3.8",[120,60,121,122,123],"footer-bar","share-buttons","sticky-bar","time-to-read","http:\u002F\u002Fwpgens.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fswifty-bar.1.2.11.zip",1,"2023-09-05 00:00:00",{"slug":129,"name":130,"version":131,"author":132,"author_profile":133,"description":134,"short_description":135,"active_installs":136,"downloaded":137,"rating":138,"num_ratings":139,"last_updated":140,"tested_up_to":141,"requires_at_least":142,"requires_php":18,"tags":143,"homepage":145,"download_link":146,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"smarter-navigation","Smarter Navigation","1.4","scribu","https:\u002F\u002Fprofiles.wordpress.org\u002Fscribu\u002F","\u003Cp>When displaying a single post, you might want to show links to the previous and next posts in the same category.\u003C\u002Fp>\n\u003Cp>That’s fine; WordPress let’s you do this with \u003Ccode>previous_post_link()\u003C\u002Fcode> and \u003Ccode>next_post_link()\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>But what if that post is in multiple categories?\u003C\u002Fp>\n\u003Cp>What if the user came to that post from a tag page or from an author page? Wouldn’t it make more sense to display previous \u002F next posts from that particular set?\u003C\u002Fp>\n\u003Cp>Well, you can do this with a similar pair of functions, provided by this plugin: \u003Ccode>previous_post_smart()\u003C\u002Fcode> and \u003Ccode>next_post_smart()\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Here’s how it works:\u003C\u002Fp>\n\u003Cp>Whenever a visitor goes to an archive page (category, tag, date, author, search etc.), the plugin notes which archive it is in a browser cookie.\u003C\u002Fp>\n\u003Cp>Then, if the visitor goes to a single post from that archive page, the plugin generates the prev \u002F next links based on the information in the cookie.\u003C\u002Fp>\n\u003Cp>Links: \u003Ca href=\"http:\u002F\u002Fscribu.net\u002Fwordpress\u002Fsmarter-navigation\" rel=\"nofollow ugc\">Plugin News\u003C\u002Fa> | \u003Ca href=\"http:\u002F\u002Fscribu.net\" rel=\"nofollow ugc\">Author’s Site\u003C\u002Fa>\u003C\u002Fp>\n","Generates more specific previous \u002F next post links based on referrer.",300,19438,94,10,"2015-09-18T22:24:00.000Z","3.5.2","3.2",[21,22,24,144],"referrer","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fsmarter-navigation\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsmarter-navigation.1.4.zip",{"attackSurface":148,"codeSignals":194,"taintFlows":204,"riskAssessment":205,"analyzedAt":216},{"hooks":149,"ajaxHandlers":190,"restRoutes":191,"shortcodes":192,"cronEvents":193,"entryPointCount":28,"unprotectedCount":28},[150,156,159,164,167,170,173,175,178,181,184,187],{"type":151,"name":152,"callback":153,"file":154,"line":155},"filter","get_next_post_where","modify_nextprevious_post_where","loop-post-navigation-links.php",77,{"type":151,"name":157,"callback":153,"file":154,"line":158},"get_previous_post_where",78,{"type":160,"name":161,"callback":162,"file":154,"line":163},"action","plugins_loaded","init",103,{"type":160,"name":165,"callback":165,"priority":139,"file":154,"line":166},"c2c_get_next_or_loop_post_link",132,{"type":160,"name":168,"callback":168,"priority":139,"file":154,"line":169},"c2c_next_or_loop_post_link",152,{"type":160,"name":171,"callback":171,"priority":139,"file":154,"line":172},"c2c_previous_or_loop_post_link",172,{"type":160,"name":171,"callback":171,"priority":139,"file":154,"line":174},192,{"type":160,"name":176,"callback":176,"priority":139,"file":154,"line":177},"c2c_get_adjacent_or_loop_post_link",288,{"type":160,"name":179,"callback":179,"priority":139,"file":154,"line":180},"c2c_adjacent_or_loop_post_link",335,{"type":160,"name":182,"callback":182,"priority":139,"file":154,"line":183},"c2c_get_adjacent_or_loop_post",371,{"type":160,"name":185,"callback":185,"priority":139,"file":154,"line":186},"c2c_get_next_or_loop_post",389,{"type":160,"name":188,"callback":188,"priority":139,"file":154,"line":189},"c2c_get_previous_or_loop_post",407,[],[],[],[],{"dangerousFunctions":195,"sqlUsage":196,"outputEscaping":198,"fileOperations":28,"externalRequests":28,"nonceChecks":28,"capabilityChecks":28,"bundledLibraries":203},[],{"prepared":28,"raw":28,"locations":197},[],{"escaped":126,"rawEcho":126,"locations":199},[200],{"file":154,"line":201,"context":202},323,"raw output",[],[],{"summary":206,"deductions":207},"The plugin \"loop-post-navigation-links\" v3.0.2 exhibits a strong security posture based on the provided static analysis. The absence of any identified AJAX handlers, REST API routes, shortcodes, or cron events with attack surface points suggests a minimal exposure to external manipulation. Furthermore, the code signals show a complete absence of dangerous functions, file operations, and external HTTP requests. The use of prepared statements for all SQL queries is a significant strength, and the lack of known vulnerabilities in its history further bolsters its security. However, there are minor areas for improvement. With only two output operations, one of which is not properly escaped, there is a small risk of cross-site scripting (XSS) if sensitive data is displayed without sanitization. Additionally, the complete lack of nonce and capability checks, while not posing an immediate threat due to the limited attack surface, is a general security best practice that is missing. Overall, this plugin appears to be secure and well-developed, with only minor areas for enhancement.",[208,211,214],{"reason":209,"points":210},"Unescaped output found",4,{"reason":212,"points":213},"Missing nonce checks",5,{"reason":215,"points":213},"Missing capability checks","2026-03-16T19:31:08.150Z",{"wat":218,"direct":223},{"assetPaths":219,"generatorPatterns":220,"scriptPaths":221,"versionParams":222},[],[],[],[],{"cssClasses":224,"htmlComments":225,"htmlAttributes":226,"restEndpoints":227,"jsGlobals":228,"shortcodeOutput":229},[],[],[],[],[],[],{"error":231,"url":232,"statusCode":233,"statusMessage":234,"message":234},true,"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Floop-post-navigation-links\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":236,"versions":237},15,[238,244,251,257,264,271,278,285,292,299,306,313,320,327,334],{"version":6,"download_url":26,"svn_tag_url":239,"released_at":29,"has_diff":240,"diff_files_changed":241,"diff_lines":29,"trac_diff_url":242,"vulnerabilities":243,"is_current":231},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Floop-post-navigation-links\u002Ftags\u002F3.0.2\u002F",false,[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Floop-post-navigation-links%2Ftags%2F3.0.1&new_path=%2Floop-post-navigation-links%2Ftags%2F3.0.2",[],{"version":245,"download_url":246,"svn_tag_url":247,"released_at":29,"has_diff":240,"diff_files_changed":248,"diff_lines":29,"trac_diff_url":249,"vulnerabilities":250,"is_current":240},"3.0.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floop-post-navigation-links.3.0.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Floop-post-navigation-links\u002Ftags\u002F3.0.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Floop-post-navigation-links%2Ftags%2F3.0&new_path=%2Floop-post-navigation-links%2Ftags%2F3.0.1",[],{"version":78,"download_url":252,"svn_tag_url":253,"released_at":29,"has_diff":240,"diff_files_changed":254,"diff_lines":29,"trac_diff_url":255,"vulnerabilities":256,"is_current":240},"https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floop-post-navigation-links.3.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Floop-post-navigation-links\u002Ftags\u002F3.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Floop-post-navigation-links%2Ftags%2F2.6.1&new_path=%2Floop-post-navigation-links%2Ftags%2F3.0",[],{"version":258,"download_url":259,"svn_tag_url":260,"released_at":29,"has_diff":240,"diff_files_changed":261,"diff_lines":29,"trac_diff_url":262,"vulnerabilities":263,"is_current":240},"2.6.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floop-post-navigation-links.2.6.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Floop-post-navigation-links\u002Ftags\u002F2.6.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Floop-post-navigation-links%2Ftags%2F2.6&new_path=%2Floop-post-navigation-links%2Ftags%2F2.6.1",[],{"version":265,"download_url":266,"svn_tag_url":267,"released_at":29,"has_diff":240,"diff_files_changed":268,"diff_lines":29,"trac_diff_url":269,"vulnerabilities":270,"is_current":240},"2.6","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floop-post-navigation-links.2.6.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Floop-post-navigation-links\u002Ftags\u002F2.6\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Floop-post-navigation-links%2Ftags%2F2.5.2&new_path=%2Floop-post-navigation-links%2Ftags%2F2.6",[],{"version":272,"download_url":273,"svn_tag_url":274,"released_at":29,"has_diff":240,"diff_files_changed":275,"diff_lines":29,"trac_diff_url":276,"vulnerabilities":277,"is_current":240},"2.5.2","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floop-post-navigation-links.2.5.2.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Floop-post-navigation-links\u002Ftags\u002F2.5.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Floop-post-navigation-links%2Ftags%2F2.5.1&new_path=%2Floop-post-navigation-links%2Ftags%2F2.5.2",[],{"version":279,"download_url":280,"svn_tag_url":281,"released_at":29,"has_diff":240,"diff_files_changed":282,"diff_lines":29,"trac_diff_url":283,"vulnerabilities":284,"is_current":240},"2.5.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floop-post-navigation-links.2.5.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Floop-post-navigation-links\u002Ftags\u002F2.5.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Floop-post-navigation-links%2Ftags%2F2.5&new_path=%2Floop-post-navigation-links%2Ftags%2F2.5.1",[],{"version":286,"download_url":287,"svn_tag_url":288,"released_at":29,"has_diff":240,"diff_files_changed":289,"diff_lines":29,"trac_diff_url":290,"vulnerabilities":291,"is_current":240},"2.5","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floop-post-navigation-links.2.5.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Floop-post-navigation-links\u002Ftags\u002F2.5\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Floop-post-navigation-links%2Ftags%2F2.0&new_path=%2Floop-post-navigation-links%2Ftags%2F2.5",[],{"version":293,"download_url":294,"svn_tag_url":295,"released_at":29,"has_diff":240,"diff_files_changed":296,"diff_lines":29,"trac_diff_url":297,"vulnerabilities":298,"is_current":240},"2.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floop-post-navigation-links.2.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Floop-post-navigation-links\u002Ftags\u002F2.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Floop-post-navigation-links%2Ftags%2F1.6.3&new_path=%2Floop-post-navigation-links%2Ftags%2F2.0",[],{"version":300,"download_url":301,"svn_tag_url":302,"released_at":29,"has_diff":240,"diff_files_changed":303,"diff_lines":29,"trac_diff_url":304,"vulnerabilities":305,"is_current":240},"1.6.3","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floop-post-navigation-links.1.6.3.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Floop-post-navigation-links\u002Ftags\u002F1.6.3\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Floop-post-navigation-links%2Ftags%2F1.6.2&new_path=%2Floop-post-navigation-links%2Ftags%2F1.6.3",[],{"version":307,"download_url":308,"svn_tag_url":309,"released_at":29,"has_diff":240,"diff_files_changed":310,"diff_lines":29,"trac_diff_url":311,"vulnerabilities":312,"is_current":240},"1.6.2","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floop-post-navigation-links.1.6.2.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Floop-post-navigation-links\u002Ftags\u002F1.6.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Floop-post-navigation-links%2Ftags%2F1.6.1&new_path=%2Floop-post-navigation-links%2Ftags%2F1.6.2",[],{"version":314,"download_url":315,"svn_tag_url":316,"released_at":29,"has_diff":240,"diff_files_changed":317,"diff_lines":29,"trac_diff_url":318,"vulnerabilities":319,"is_current":240},"1.6.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floop-post-navigation-links.1.6.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Floop-post-navigation-links\u002Ftags\u002F1.6.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Floop-post-navigation-links%2Ftags%2F1.6&new_path=%2Floop-post-navigation-links%2Ftags%2F1.6.1",[],{"version":321,"download_url":322,"svn_tag_url":323,"released_at":29,"has_diff":240,"diff_files_changed":324,"diff_lines":29,"trac_diff_url":325,"vulnerabilities":326,"is_current":240},"1.6","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floop-post-navigation-links.1.6.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Floop-post-navigation-links\u002Ftags\u002F1.6\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Floop-post-navigation-links%2Ftags%2F1.5&new_path=%2Floop-post-navigation-links%2Ftags%2F1.6",[],{"version":328,"download_url":329,"svn_tag_url":330,"released_at":29,"has_diff":240,"diff_files_changed":331,"diff_lines":29,"trac_diff_url":332,"vulnerabilities":333,"is_current":240},"1.5","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floop-post-navigation-links.1.5.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Floop-post-navigation-links\u002Ftags\u002F1.5\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Floop-post-navigation-links%2Ftags%2F1.0&new_path=%2Floop-post-navigation-links%2Ftags%2F1.5",[],{"version":335,"download_url":336,"svn_tag_url":337,"released_at":29,"has_diff":240,"diff_files_changed":338,"diff_lines":29,"trac_diff_url":29,"vulnerabilities":339,"is_current":240},"1.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floop-post-navigation-links.1.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Floop-post-navigation-links\u002Ftags\u002F1.0\u002F",[],[]]