[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f4IVSqqCmt7X4RdCyHo7WHe9Es73_qY9l4Y9fsj-2Uso":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":13,"last_updated":14,"tested_up_to":15,"requires_at_least":16,"requires_php":17,"tags":18,"homepage":22,"download_link":23,"security_score":24,"vuln_count":13,"unpatched_count":13,"last_vuln_date":25,"fetched_at":26,"vulnerabilities":27,"developer":28,"crawl_stats":25,"alternatives":34,"analysis":141,"fingerprints":174},"better-nearby-posts-links","Better Adjacent Post Links","1.1","unalignedcoder","https:\u002F\u002Fprofiles.wordpress.org\u002Funalignedcoder\u002F","\u003Cp>If you are used to link the ‘previous’ and ‘next’ posts on a wordpress blog using their own title, you have probably noticed how more often than not too long titles can cause broken lines, hence unpredictable results in terms of page layout.\u003C\u002Fp>\n\u003Cp>The only workaround in wordpress so far was to replace the title of the posts with generic phrases like ‘next post’, ‘previous post’ and so on. With this plugin you can use the title of the post itself, and trim it as needed.\u003C\u002Fp>\n\u003Cp>Features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>limits the length of the previous and next post titles to the number of characters you want\u003C\u002Fli>\n\u003Cli>where necessary, truncates the title to the last space, adding three dots\u003C\u002Fli>\n\u003Cli>shows the entire title of the post in the tooltip (mysteriously wordpress never considers the tooltips of the links)\u003C\u002Fli>\n\u003Cli>sets the string that conditionally will appear before the link title, only if the link title itself is present (previously in wordpress you either had to add a string outside of the ‘next\u002Fprevious post’ tag, thus causing it to appear in the page even if the link was not present, or you had to add the string inside the link generated by wordpress, with ugly results: for example if the string was just a simple dividing character like ‘|’)\u003C\u002Fli>\n\u003C\u002Ful>\n","Adds two enhanced commands to replace wordpress 'previous post' and 'next post' functions. Works with Wordpress 2.8+.",80,8858,0,"2009-09-09T01:20:00.000Z","2.8.4","2.0.2","",[19,20,21],"links","post","posts","http:\u002F\u002Funalignedcode.wordpress.com\u002Fbetter-nearby-post-links","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbetter-nearby-posts-links.1.1.zip",85,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":29,"total_installs":30,"avg_security_score":24,"avg_patch_time_days":31,"trust_score":32,"computed_at":33},2,90,30,84,"2026-04-05T17:42:35.104Z",[35,56,78,99,119],{"slug":36,"name":37,"version":38,"author":39,"author_profile":40,"description":41,"short_description":42,"active_installs":43,"downloaded":44,"rating":13,"num_ratings":13,"last_updated":45,"tested_up_to":46,"requires_at_least":47,"requires_php":48,"tags":49,"homepage":53,"download_link":54,"security_score":55,"vuln_count":13,"unpatched_count":13,"last_vuln_date":25,"fetched_at":26},"raratheme-companion","RaraTheme Companion","1.4.4","Rara Themes","https:\u002F\u002Fprofiles.wordpress.org\u002Fraratheme\u002F","\u003Cp>RaraTheme Companion is truly a must have companion for your website. It provides 23 useful and frequently used widgets that you can add to the sidebars to create an engaging website.\u003C\u002Fp>\n\u003Ch3>Widgets offered\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Advertisement\u003C\u002Fli>\n\u003Cli>A Featured Page\u003C\u002Fli>\n\u003Cli>Author Bio\u003C\u002Fli>\n\u003Cli>Call to Action\u003C\u002Fli>\n\u003Cli>Client Logo\u003C\u002Fli>\n\u003Cli>Contact\u003C\u002Fli>\n\u003Cli>Custom Categories\u003C\u002Fli>\n\u003Cli>Facebook Page\u003C\u002Fli>\n\u003Cli>FAQs\u003C\u002Fli>\n\u003Cli>Featured Post\u003C\u002Fli>\n\u003Cli>Icon Text\u003C\u002Fli>\n\u003Cli>Image Text\u003C\u002Fli>\n\u003Cli>Image\u003C\u002Fli>\n\u003Cli>Latest Tweets\u003C\u002Fli>\n\u003Cli>Pinterest\u003C\u002Fli>\n\u003Cli>Popular Post\u003C\u002Fli>\n\u003Cli>Posts Category Slider\u003C\u002Fli>\n\u003Cli>Recent Post\u003C\u002Fli>\n\u003Cli>Snapchat\u003C\u002Fli>\n\u003Cli>Social Media\u003C\u002Fli>\n\u003Cli>Stat Counter\u003C\u002Fli>\n\u003Cli>Team Member\u003C\u002Fli>\n\u003Cli>Testimonial\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>The plugin works best with themes developed by Rara Theme.\u003C\u002Fp>\n\u003Cp>The plugin also provides simple yet clean code which allows developers to overwrite the plugin properties. The plugin offers a multiple numbers of filters and action hooks which for maximum flexibility to the developers.\u003C\u002Fp>\n","23 extremely useful custom widgets to create an engaging website.",10000,497772,"2026-01-06T05:43:00.000Z","6.9.4","4.4.0","7.4",[21,50,51,52],"sidebars","social-links","widgets","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fraratheme-companion","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fraratheme-companion.1.4.4.zip",100,{"slug":57,"name":58,"version":59,"author":60,"author_profile":61,"description":62,"short_description":63,"active_installs":64,"downloaded":65,"rating":66,"num_ratings":67,"last_updated":68,"tested_up_to":46,"requires_at_least":69,"requires_php":48,"tags":70,"homepage":74,"download_link":75,"security_score":76,"vuln_count":29,"unpatched_count":13,"last_vuln_date":77,"fetched_at":26},"mihdan-no-external-links","No External Links","5.1.8","mihdan","https:\u002F\u002Fprofiles.wordpress.org\u002Fmihdan\u002F","\u003Cp>No External Links converts external links to internal links. Featuring \u003Cem>Full Page or Targeted Content Filtering\u003C\u002Fem>, \u003Cem>Custom Redirect Page\u002FMessage\u003C\u002Fem>, \u003Cem>Encoded Masks\u003C\u002Fem>, \u003Cem>External Link Click Logging\u003C\u002Fem>, \u003Cem>Individual Link Exclusion\u003C\u002Fem>, \u003Cem>Post\u002FPage Specific Exclusion\u003C\u002Fem>, and many more…\u003C\u002Fp>\n\u003Ch4>Example\u003C\u002Fh4>\n\u003Cp>Links like “\u003Cem>https:\u002F\u002Fwordpress.org\u003C\u002Fem>” will be masked into\u003Cbr \u002F>\n“\u003Cem>http:\u002F\u002Fwww.example.com\u002Fgoto\u002Fhttps:\u002F\u002Fwordpress.org\u003C\u002Fem>“.\u003C\u002Fp>\n\u003Ch4>Warning\u003C\u002Fh4>\n\u003Cp>No External Links may conflict with cache plugins.\u003Cbr \u002F>\nUsually adding the redirect page to the caching plugin exclusions works fine, but there are no guarantees.\u003Cbr \u002F>\nCreate a \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fmihdan-no-external-links\" rel=\"ugc\">support topic\u003C\u002Fa> if you need assistance resolving a caching issue.\u003Cbr \u002F>\n\u003Cstrong>\u003Cem>Please provide as much detail as possible, for example, what version of WordPress & PHP you are using. Which caching plugin you are using. The more information you include the better.\u003C\u002Fem>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>Details\u003C\u002Fh4>\n\u003Cp>No External Links is designed for specialists who sell different kinds of advertisements on their web site and care about the number of outgoing links that can be found by search engines. Now you can make all external links internal.\u003C\u002Fp>\n\u003Ch4>How To Use\u003C\u002Fh4>\n\u003Cp>Just do everything like you would normally, and as long as the plugin is active, external links will be automatically masked.\u003C\u002Fp>\n\u003Ch4>Recommended Settings\u003C\u002Fh4>\n\u003Cp>The default settings that are used on a fresh install of the plugin are what we recommend.\u003C\u002Fp>\n\u003Ch4>Support\u003C\u002Fh4>\n\u003Cp>Need help with anything? Please create a \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fmihdan-no-external-links\" rel=\"ugc\">support topic\u003C\u002Fa>.\u003Cbr \u002F>\n\u003Cstrong>\u003Cem>Please provide as much detail as possible, for example, what version of WordPress & PHP you are using. Examples of links that do not work. If you are using a caching plugin, please specify which one. The more information you include the better.\u003C\u002Fem>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>Feature Request\u003C\u002Fh4>\n\u003Cp>Want a feature added to this plugin? Create a \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fmihdan-no-external-links\" rel=\"ugc\">support topic\u003C\u002Fa>.\u003Cbr \u002F>\nWe are always looking to add features to improve our plugin.\u003C\u002Fp>\n\u003Ch4>Localization\u003C\u002Fh4>\n\u003Cp>We apologize that the latest version has changed so much that existing localizations no longer work.\u003Cbr \u002F>\nIf you would like to contribute to the translations please get in touch.\u003C\u002Fp>\n\u003Ch4>Note\u003C\u002Fh4>\n\u003Cp>No External Links \u003Cstrong>does not\u003C\u002Fstrong> make any changes to your database, it just processes the output. So you will not see these changes within the WYSIWYG editor.\u003C\u002Fp>\n","Convert external links into internal links, site wide or post\u002Fpage specific. Add NoFollow, Click logging, and more...",6000,78779,96,16,"2025-11-29T11:53:00.000Z","5.7.4",[71,19,21,72,73],"comments","seo","seo-hide","https:\u002F\u002Fwww.kobzarev.com\u002Fprojects\u002Fno-external-links\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmihdan-no-external-links.5.1.8.zip",98,"2025-09-22 00:00:00",{"slug":79,"name":80,"version":81,"author":82,"author_profile":83,"description":84,"short_description":85,"active_installs":86,"downloaded":87,"rating":13,"num_ratings":13,"last_updated":88,"tested_up_to":89,"requires_at_least":90,"requires_php":91,"tags":92,"homepage":97,"download_link":98,"security_score":24,"vuln_count":13,"unpatched_count":13,"last_vuln_date":25,"fetched_at":26},"widget-box-lite","Widget Box Lite","1.0.0","Romik84","https:\u002F\u002Fprofiles.wordpress.org\u002Fromik84\u002F","\u003Cp>The \u003Ca href=\"https:\u002F\u002Ftheme4press.com\u002Fwidget-box\u002F\" rel=\"nofollow ugc\">Widget Box Lite\u003C\u002Fa> plugin comes with a great bunch of widgets designed especially for \u003Ca href=\"https:\u002F\u002Ftheme4press.com\u002F\" rel=\"nofollow ugc\">Theme4Press\u003C\u002Fa> themes users to utilize their websites with extra features. The plugin has now included the following widgets:\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fdemo.theme4press.com\u002Fwidget-box\u002Fposts-slider-widget\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Posts Slider\u003C\u002Fstrong>\u003C\u002Fa> – display posts of your choice in any widget area, set its speed, posts categories, and much more\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fdemo.theme4press.com\u002Fwidget-box\u002Frecent-posts-widget\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Recent Posts\u003C\u002Fstrong>\u003C\u002Fa> – with this widget you can display posts from any category, set their titles and excerpts, and other options\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fdemo.theme4press.com\u002Fwidget-box\u002Fsocial-media-links-widget\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Social Media Links\u003C\u002Fstrong>\u003C\u002Fa> – if you need to add your social media links, use this widget to show Facebook, Twitter links, and more\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fdemo.theme4press.com\u002Fwidget-box\u002Fbanner-ads-widget\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Banner Ads\u003C\u002Fstrong>\u003C\u002Fa> – upload an image banner and display it instantly with few options in the widget area\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fdemo.theme4press.com\u002Fwidget-box\u002Fcontact-info-widget\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Contact Info\u003C\u002Fstrong>\u003C\u002Fa> – contact info widget lets you display your address, phone, fax, or an email address\u003C\u002Fp>\n\u003Ch3>Premium Version Features\u003C\u002Fh3>\n\u003Ch4>The premium version of this plugin add even more settings to the existing free widgets and bring some extra new ones to add a lot of great features. It unlocks the following features:\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Posts Slider\u003C\u002Fstrong> – you can select up to 4 items per slide (multi-item slide), 30 posts per widget, change the display order, select multiple post categories, include only sticky posts, hide post titles, hide post meta, customize the post excerpts and more links, custom image sizes, 3 slider content layouts, link slides to the posts, modify the font size of titles and contents, options to set arrows, indicators and animation style\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Recent Posts\u003C\u002Fstrong> – set up to 3 columns of posts, 30 posts per widget, change the display order, select multiple post categories, include only sticky posts, hide post titles, hide post meta, customize the post excerpts and more links, custom image sizes, up to 4 post layouts, enable thumbnail shadow and animation effects, borders, and colors, modify the font size of titles and contents, enable border-radius and boxed style of the posts\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Social Media Links\u003C\u002Fstrong> – up to 25 social media links + 5 custom ones (Font Awesome icons), change the position of the tooltip, icons boxed styles and custom colors, extra media links – Google+, Dribbble, LinkedIn, Blogger, Tumblr, Reddit, Yahoo!, DeviantArt, Vimeo, YouTube, Pinterest, Digg, Flickr, Forrst, Myspace, Skype, Instagram, VK, PayPal, Dropbox, SoundCloud\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Banner Ads\u003C\u002Fstrong> – you can add up to 10 banners per widget, up to 5 columns layout (great for smaller banner sizes), select display order – default or random (unique banner rotating), banner spacing, enable tooltip to display the banner titles, shadow and hover animation effects, border and rounded styles\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Contact Info\u003C\u002Fstrong> – enable\u002Fdisable the item labels, set the font size, enable\u002Fdisable the item icons, icons background color, and rounded style, extra items – mobile number and website\u003C\u002Fp>\n\u003Ch3>Extra Premium Widgets\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fdemo.theme4press.com\u002Fwidget-box\u002Fcontact-form-widget\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Contact Form\u003C\u002Fstrong>\u003C\u002Fa> – an ajax contact form which will let visitors of your website contact you quickly and simply, protected with the Google reCAPTCHA verification, available fields – company name, name, email, phone, address, subject, message\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fdemo.theme4press.com\u002Fwidget-box\u002Ffacebook-page-widget\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Facebook Page\u003C\u002Fstrong>\u003C\u002Fa> – the Facebook Page widget shows your fan page with many useful options like custom width and height, custom tabs – timeline, messages, and events, you can select header size, show or hide friend’s faces, hide cover photo, add your APP ID for statistics\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fdemo.theme4press.com\u002Fwidget-box\u002Fflickr-photos-widget\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Flickr Photos\u003C\u002Fstrong>\u003C\u002Fa> – show your Flickr photostream, add your Flickr ID, API key, you can set image sizes, spacing, number of photos (up to 30 per widget) and columns (up to 5), enable tooltips, borders, hover and shadow effects, rounded image styles\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fdemo.theme4press.com\u002Fwidget-box\u002Fgoogle-map-widget\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Google Map\u003C\u002Fstrong>\u003C\u002Fa> – the Google Map widget will help you to display a location, for example of your office. Many settings are available, like adding multiple addresses, setting the size of the map, map types, zoom level, enabling\u002Fdisabling the map pin, controls, and tooltip\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fdemo.theme4press.com\u002Fwidget-box\u002Finstagram-photos-widget\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Instagram Photos\u003C\u002Fstrong>\u003C\u002Fa> – display any photos of Instagram, all it’s up to you. Many predefined styles, effects, you can add up to 30 photos per widget, up to 5 columns layout, photo spacing, custom photo sizes, enable tooltip to display the photo titles, shadow and hover animation effects, border and rounded styles\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fdemo.theme4press.com\u002Fwidget-box\u002Fportfolio-catalog-widget\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Portfolio Catalog\u003C\u002Fstrong>\u003C\u002Fa> – your portfolio work can be shown in the widget area with a clean minimal layout. You can add up to 30 items per widget, up to 5 columns layout, image spacing, custom image sizes, enable tooltip, shadow and hover animation effects, border and rounded styles\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fdemo.theme4press.com\u002Fwidget-box\u002Ftwitter-tweets-widget\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Twitter Tweets\u003C\u002Fstrong>\u003C\u002Fa> – recent tweets can be automatically shown on any predefined widget area on your page. This widget lets you add your Twitter username, API Keys, up to 30 tweets per widget, display your image, enable border or light background style\u003C\u002Fp>\n","A toolbox of great widgets for your daily blogging. Display recent posts, social links, and much more. Designed for Theme4Press themes",1000,14222,"2023-08-12T09:04:00.000Z","6.3.8","4.7","7.0",[93,94,95,96,52],"posts-slider","recent-posts","social-media-links","theme4press","https:\u002F\u002Ftheme4press.com\u002Fwidget-box\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwidget-box-lite.zip",{"slug":100,"name":101,"version":102,"author":103,"author_profile":104,"description":105,"short_description":106,"active_installs":107,"downloaded":108,"rating":55,"num_ratings":109,"last_updated":110,"tested_up_to":111,"requires_at_least":112,"requires_php":17,"tags":113,"homepage":117,"download_link":118,"security_score":24,"vuln_count":13,"unpatched_count":13,"last_vuln_date":25,"fetched_at":26},"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,22362,12,"2020-08-27T07:28:00.000Z","5.5.18","4.9",[19,114,115,21,116],"navigation","next","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",{"slug":120,"name":121,"version":122,"author":123,"author_profile":124,"description":125,"short_description":126,"active_installs":127,"downloaded":128,"rating":55,"num_ratings":129,"last_updated":130,"tested_up_to":131,"requires_at_least":132,"requires_php":91,"tags":133,"homepage":17,"download_link":139,"security_score":76,"vuln_count":29,"unpatched_count":13,"last_vuln_date":140,"fetched_at":26},"mww-disclaimer-buttons","MWW Disclaimer Buttons","3.5","Jennifer Moss","https:\u002F\u002Fprofiles.wordpress.org\u002Fmossifer\u002F","\u003Cp>For bloggers\u002Fcontent creators that accept free products or compensation for reviews, or use affiliate links, the FTC requires that you put disclosures at the top of any post or page.\u003C\u002Fp>\n\u003Cp>This plugin creates an options box in the POST or PAGE editor for you to add each of these buttons to your post without having to include it in post text.\u003C\u002Fp>\n\u003Cp>[Affiliate Links] – Blogger makes money when someone clicks on link and purchases product from 3rd party vendor.\u003C\u002Fp>\n\u003Cp>[PR Sample] – Free product was received by blogger in exchange for a review and\u002For post.\u003C\u002Fp>\n\u003Cp>[Sponsored] – Blogger was paid directly for the post\u002Fpage.\u003C\u002Fp>\n\u003Cp>The disclaimer buttons appear below the title and above the text on a single post or page–they do not appear on excerpts nor your RSS feed.\u003C\u002Fp>\n\u003Ch3>Short Description\u003C\u002Fh3>\n\u003Cp>Generates disclaimer buttons for bloggers that receive any compensation for reviews, including affiliate links.\u003C\u002Fp>\n\u003Ch3>Markdown\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Admin Page for entering disclaimer URL\u003C\u002Fli>\n\u003Cli>Settings box on post page\u003C\u002Fli>\n\u003Cli>Appends buttons to the_content() (post text) on single post or page only.\u003C\u002Fli>\n\u003C\u002Fol>\n","The FTC requires that you put disclosures at the top of your post if you were compensated in any way (affiliate links, free products, or payment).",500,13988,3,"2025-10-08T20:30:00.000Z","6.8.5","4.2",[134,135,136,137,138],"affiliate-links","disclaimers","disclosures","pr-samples","sponsored-posts","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmww-disclaimer-buttons.zip","2025-09-26 00:00:00",{"attackSurface":142,"codeSignals":148,"taintFlows":161,"riskAssessment":162,"analyzedAt":173},{"hooks":143,"ajaxHandlers":144,"restRoutes":145,"shortcodes":146,"cronEvents":147,"entryPointCount":13,"unprotectedCount":13},[],[],[],[],[],{"dangerousFunctions":149,"sqlUsage":150,"outputEscaping":152,"fileOperations":13,"externalRequests":13,"nonceChecks":13,"capabilityChecks":13,"bundledLibraries":160},[],{"prepared":13,"raw":13,"locations":151},[],{"escaped":13,"rawEcho":29,"locations":153},[154,158],{"file":155,"line":156,"context":157},"better_post_links.php",40,"raw output",{"file":155,"line":159,"context":157},72,[],[],{"summary":163,"deductions":164},"The static analysis of the \"better-nearby-posts-links\" v1.1 plugin reveals a strong security posture in several key areas. The absence of AJAX handlers, REST API routes, shortcodes, and cron events significantly limits the plugin's attack surface. Furthermore, the complete absence of dangerous functions, file operations, external HTTP requests, and the use of prepared statements for all SQL queries are excellent security practices. The vulnerability history also indicates a clean record with no known CVEs. \n\nHowever, a significant concern arises from the output escaping. With 100% of outputs being unescaped, this presents a substantial risk of Cross-Site Scripting (XSS) vulnerabilities. Any dynamic content rendered by this plugin without proper sanitization or escaping could be exploited by attackers to inject malicious scripts. The lack of nonce checks and capability checks, while not directly evidenced as a vulnerability due to the limited entry points, means that if any entry points were to be introduced or discovered in future versions, they would be inherently unprotected. \n\nIn conclusion, while the plugin demonstrates good foundational security by minimizing its attack surface and handling database interactions securely, the critical flaw in output escaping requires immediate attention. The lack of historical vulnerabilities is a positive sign, but the unescaped output poses an immediate and significant risk that outweighs the plugin's other strengths.",[165,168,171],{"reason":166,"points":167},"Unescaped output detected",6,{"reason":169,"points":170},"Missing nonce checks",5,{"reason":172,"points":170},"Missing capability checks","2026-03-16T21:27:20.731Z",{"wat":175,"direct":180},{"assetPaths":176,"generatorPatterns":177,"scriptPaths":178,"versionParams":179},[],[],[],[],{"cssClasses":181,"htmlComments":182,"htmlAttributes":183,"restEndpoints":184,"jsGlobals":185,"shortcodeOutput":186},[],[],[],[],[],[187,188,189,190,191,192],"\u003Ca href=\"","\" title=\"previous post: ","\">","\u003C\u002Fa>","\" title=\"next post: ","\""]