[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fJXHOe2xtKFx6qnn2FlTL-Eyp_lAZYw_2CFOt27B9Sgk":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":24,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30,"vulnerabilities":31,"developer":47,"crawl_stats":37,"alternatives":55,"analysis":160,"fingerprints":259},"wp-commentnavi","WP-CommentNavi","1.12.2","Lester Chan","https:\u002F\u002Fprofiles.wordpress.org\u002Fgamerz\u002F","\u003Cp>Example: \u003Ccode>Pages 1 of 20: [1] 2 3 4 ... Last\u003C\u002Fcode>\u003C\u002Fp>\n\u003Ch3>General Usage\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Open \u003Ccode>wp-content\u002Fthemes\u002F\u003CYOUR THEME NAME>\u002Fcomments.php\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Add: \u003Ccode>\u003C?php if(function_exists('wp_commentnavi')) { wp_commentnavi(); } ?>\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Go to \u003Ccode>WP-Admin -> Settings-> CommentNavi\u003C\u002Fcode> to configure WP-CommentNavi\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cul>\n\u003Cli>If you need to configure the CSS style of WP-CommentNavi, open and edit: \u003Ccode>commentnavi-css.css\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>WP-CommentNavi will load \u003Ccode>commentnavi-css.css\u003C\u002Fcode> from your theme’s directory if it exists.\u003C\u002Fli>\n\u003Cli>If it doesn’t exists, it will just load the default ‘commentnavi-css.css’ that comes with WP-CommentNavi.\u003C\u002Fli>\n\u003Cli>This will allow you to upgrade WP-CommentNavi without worrying about overwriting your page navigation styles that you have create\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Build Status\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Ftravis-ci.org\u002Flesterchan\u002Fwp-commentnavi\" rel=\"nofollow ugc\">\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Development\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Flesterchan\u002Fwp-commentnavi\" title=\"https:\u002F\u002Fgithub.com\u002Flesterchan\u002Fwp-commentnavi\" rel=\"nofollow ugc\">https:\u002F\u002Fgithub.com\u002Flesterchan\u002Fwp-commentnavi\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Translations\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fdev.wp-plugins.org\u002Fbrowser\u002Fwp-commentnavi\u002Fi18n\u002F\" title=\"http:\u002F\u002Fdev.wp-plugins.org\u002Fbrowser\u002Fwp-commentnavi\u002Fi18n\u002F\" rel=\"nofollow ugc\">http:\u002F\u002Fdev.wp-plugins.org\u002Fbrowser\u002Fwp-commentnavi\u002Fi18n\u002F\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Plugin icon by \u003Ca href=\"http:\u002F\u002Fwww.freepik.com\" rel=\"nofollow ugc\">Freepik\u003C\u002Fa> from \u003Ca href=\"http:\u002F\u002Fwww.flaticon.com\" rel=\"nofollow ugc\">Flaticon\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Donations\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>I spent most of my free time creating, updating, maintaining and supporting these plugins, if you really love my plugins and could spare me a couple of bucks, I will really appreciate it. If not feel free to use it without any obligations.\u003C\u002Fli>\n\u003C\u002Ful>\n","Adds a more advanced paging navigation for your comments to your WordPress blog.",900,64536,100,2,"2023-08-09T02:59:00.000Z","6.3.8","2.8","",[20,21,22,23,4],"commentnavi","navi","navigation","page","https:\u002F\u002Flesterchan.net\u002Fportfolio\u002Fprogramming\u002Fphp\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-commentnavi.zip",85,1,0,"2023-01-17 00:00:00","2026-03-15T15:16:48.613Z",[32],{"id":33,"url_slug":34,"title":35,"description":36,"plugin_slug":4,"theme_slug":37,"affected_versions":38,"patched_in_version":6,"severity":39,"cvss_score":40,"cvss_vector":41,"vuln_type":42,"published_date":29,"updated_date":43,"references":44,"days_to_patch":46},"CVE-2023-22715","wp-commentnavi-authenticated-admin-stored-cross-site-scripting","WP-CommentNavi \u003C= 1.12.1 - Authenticated (Admin+) Stored Cross-Site Scripting","The WP-CommentNavi plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the navi options 'pages_text', 'current_text', 'page_text', 'first_text', 'last_text', 'next_text', 'prev_text', 'dotright_text', and 'num_pages', in versions up to, and including, 1.12.1 due to insufficient input sanitization and output escaping. This makes it possible for administrator-level attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.",null,"\u003C=1.12.1","medium",5.5,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:H\u002FUI:N\u002FS:C\u002FC:L\u002FI:L\u002FA:N","Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')","2024-01-22 19:56:02",[45],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F4ba3b414-82a0-4793-9702-cec64d92271e?source=api-prod",371,{"slug":48,"display_name":7,"profile_url":8,"plugin_count":49,"total_installs":50,"avg_security_score":51,"avg_patch_time_days":52,"trust_score":53,"computed_at":54},"gamerz",20,889190,89,1377,71,"2026-04-05T02:01:33.852Z",[56,75,99,119,137],{"slug":57,"name":58,"version":59,"author":7,"author_profile":8,"description":60,"short_description":61,"active_installs":62,"downloaded":63,"rating":64,"num_ratings":65,"last_updated":66,"tested_up_to":67,"requires_at_least":68,"requires_php":18,"tags":69,"homepage":24,"download_link":73,"security_score":74,"vuln_count":28,"unpatched_count":28,"last_vuln_date":37,"fetched_at":30},"wp-pagenavi","WP-PageNavi","2.94.5","\u003Cp>Want to replace the old \u003Cem>&larr; Older posts | Newer posts &rarr;\u003C\u002Fem> links with some page links?\u003C\u002Fp>\n\u003Cp>This plugin provides the \u003Ccode>wp_pagenavi()\u003C\u002Fcode> template tag which generates fancy pagination links.\u003C\u002Fp>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Cp>In your theme, you need to find calls to next_posts_link() and previous_posts_link() and replace them.\u003C\u002Fp>\n\u003Cp>In the Twentyten theme, it looks like this:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003Cdiv class=\"nav-previous\">\u003C?php next_posts_link( __( '\u003Cspan class=\"meta-nav\">&larr;\u003C\u002Fspan> Older posts', 'twentyten' ) ); ?>\u003C\u002Fdiv>\n\u003Cdiv class=\"nav-next\">\u003C?php previous_posts_link( __( 'Newer posts \u003Cspan class=\"meta-nav\">&rarr;\u003C\u002Fspan>', 'twentyten' ) ); ?>\u003C\u002Fdiv>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>You would replace those two lines with this:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php wp_pagenavi(); ?>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>For multipart pages, you would look for code like this:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php wp_link_pages( ... ); ?>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>and replace it with this:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php wp_pagenavi( array( 'type' => 'multipart' ) ); ?>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Go to \u003Cem>WP-Admin -> Settings -> PageNavi\u003C\u002Fem> for configuration.\u003C\u002Fp>\n\u003Ch3>Changing the CSS\u003C\u002Fh3>\n\u003Cp>If you need to configure the CSS style of WP-PageNavi, you can copy the \u003Ccode>pagenavi-css.css\u003C\u002Fcode> file from the plugin directory to your theme’s directory and make your modifications there. This way, you won’t lose your changes when you update the plugin.\u003C\u002Fp>\n\u003Cp>Alternatively, you can uncheck the “Use pagenavi.css?” option from the settings page and add the styles to your theme’s style.css file directly.\u003C\u002Fp>\n\u003Ch3>Changing Class Names\u003C\u002Fh3>\n\u003Cp>There are \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FGlossary#Filter\" rel=\"nofollow ugc\">filters\u003C\u002Fa> that can be used to change the default class names that are assigned to page navigation elements.\u003C\u002Fp>\n\u003Ch4>Filters\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ccode>wp_pagenavi_class_pages\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>wp_pagenavi_class_first\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>wp_pagenavi_class_previouspostslink\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>wp_pagenavi_class_extend\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>wp_pagenavi_class_smaller\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>wp_pagenavi_class_page\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>wp_pagenavi_class_current\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>wp_pagenavi_class_larger\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>wp_pagenavi_class_nextpostslink\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>wp_pagenavi_class_last\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Filter Usage\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>\u002F\u002F Simple Usage - 1 callback per filter\nadd_filter('wp_pagenavi_class_previouspostslink', 'theme_pagination_previouspostslink_class');\nadd_filter('wp_pagenavi_class_nextpostslink', 'theme_pagination_nextpostslink_class');\nadd_filter('wp_pagenavi_class_page', 'theme_pagination_page_class');\n\nfunction theme_pagination_previouspostslink_class($class_name) {\n  return 'pagination__control-link pagination__control-link--previous';\n}\n\nfunction theme_pagination_nextpostslink_class($class_name) {\n  return 'pagination__control-link pagination__control-link--next';\n}\n\nfunction theme_pagination_page_class($class_name) {\n  return 'pagination__current-page';\n}\n\n\n\u002F\u002F More Concise Usage - 1 callback for all filters\nadd_filter('wp_pagenavi_class_previouspostslink', 'theme_pagination_class');\nadd_filter('wp_pagenavi_class_nextpostslink', 'theme_pagination_class');\nadd_filter('wp_pagenavi_class_page', 'theme_pagination_class');\n\nfunction theme_pagination_class($class_name) {\n  switch($class_name) {\n    case 'previouspostslink':\n      $class_name = 'pagination__control-link pagination__control-link--previous';\n      break;\n    case 'nextpostslink':\n      $class_name = 'pagination__control-link pagination__control-link--next';\n      break;\n    case 'page':\n      $class_name = 'pagination__current'\n      break;\n  }\n  return $class_name;\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Development\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Flesterchan\u002Fwp-pagenavi\" title=\"https:\u002F\u002Fgithub.com\u002Flesterchan\u002Fwp-pagenavi\" rel=\"nofollow ugc\">https:\u002F\u002Fgithub.com\u002Flesterchan\u002Fwp-pagenavi\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Plugin icon by \u003Ca href=\"http:\u002F\u002Fwww.simpleicon.com\" rel=\"nofollow ugc\">SimpleIcon\u003C\u002Fa> from \u003Ca href=\"http:\u002F\u002Fwww.flaticon.com\" rel=\"nofollow ugc\">Flaticon\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Donations\u003C\u002Fh3>\n\u003Cp>I spent most of my free time creating, updating, maintaining and supporting these plugins, if you really love my plugins and could spare me a couple of bucks, I will really appreciate it. If not feel free to use it without any obligations.\u003C\u002Fp>\n","Adds a more advanced paging navigation interface.",500000,13305409,94,149,"2024-12-19T01:02:00.000Z","6.7.5","4.6",[22,70,71,72],"pages","pagination","paging","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-pagenavi.2.94.5.zip",92,{"slug":76,"name":77,"version":78,"author":79,"author_profile":80,"description":81,"short_description":82,"active_installs":83,"downloaded":84,"rating":85,"num_ratings":86,"last_updated":87,"tested_up_to":88,"requires_at_least":89,"requires_php":18,"tags":90,"homepage":95,"download_link":96,"security_score":97,"vuln_count":14,"unpatched_count":28,"last_vuln_date":98,"fetched_at":30},"page-scroll-to-id","Page scroll to id","1.7.9","malihu","https:\u002F\u002Fprofiles.wordpress.org\u002Fmalihu\u002F","\u003Cp>\u003Cstrong>Page scroll to id\u003C\u002Fstrong> is a fully featured plugin which replaces browser’s “jumping” behavior with a \u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Frepository\u002Fpage-scroll-to-id\u002Fdemo\u002Fdemo.html\" rel=\"nofollow ugc\">smooth scrolling animation\u003C\u002Fa>, when links with href value containing # are clicked. It provides all the basic tools and advanced functionality for single-page websites, in-page navigation, back-to-top links etc. with features like:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Adjustable scrolling animation \u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Fpage-scroll-to-id-for-wordpress\u002F#plugin-settings-scroll-type-easing\" rel=\"nofollow ugc\">duration and easing (over 30 easing types)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Link and target highlighting via ready-to-use CSS classes\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Frepository\u002Fpage-scroll-to-id\u002Fdemo\u002Fdemo.html\" rel=\"nofollow ugc\">Vertical\u003C\u002Fa> and\u002For \u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Frepository\u002Fpage-scroll-to-id\u002Fdemo\u002Fdemo-horizontal-layout.html\" rel=\"nofollow ugc\">horizontal\u003C\u002Fa> scrolling\u003C\u002Fli>\n\u003Cli>Scrolling from\u002Fto different pages (scrolling to target id on page load)\u003C\u002Fli>\n\u003Cli>Offset scrolling by pixels or element selector with custom expressions\u003C\u002Fli>\n\u003Cli>Insert link and target id buttons in post visual editor \u003C\u002Fli>\n\u003Cli>Link-specific offset, scrolling duration, highlight target etc.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Frepository\u002Fpage-scroll-to-id\u002Fdemo\u002Fdemo.html\" rel=\"nofollow ugc\">Demo (default animation duration\u002Feasing, link highlighting etc.)\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Plugin resources, links and tutorials\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Fpage-scroll-to-id-for-wordpress\u002F\" rel=\"nofollow ugc\">Plugin homepage\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Fpage-scroll-to-id-for-wordpress\u002F2\u002F\" rel=\"nofollow ugc\">Knowledge Base – FAQ\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Fpage-scroll-to-id-for-wordpress-tutorial\u002F\" rel=\"nofollow ugc\">Basic tutorial\u003C\u002Fa> – \u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Fpage-scroll-to-id-for-wordpress-tutorial\u002F#video-tutorial\" rel=\"nofollow ugc\">Video tutorial\u003C\u002Fa>\n\u003Cul>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Fusing-page-scroll-to-id-with-the-divi-builder-plugin\u002F\" rel=\"nofollow ugc\">Using Page scroll to id with the Divi Builder plugin\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Fusing-page-scroll-to-id-with-siteorigin-page-builder\u002F\" rel=\"nofollow ugc\">Using Page scroll to id with SiteOrigin Page Builder\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Fusing-page-scroll-to-id-with-wpbakery-page-builder\u002F\" rel=\"nofollow ugc\">Using Page scroll to id with WPBakery Page Builder\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Fpage-scroll-to-id-elementor-guide\u002F\" rel=\"nofollow ugc\">Using Page scroll to id with Elementor Page Builder\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fpage-scroll-to-id\" rel=\"ugc\">Support\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Requirements\u003C\u002Fh4>\n\u003Cp>Page scroll to id requires WordPress version \u003Cstrong>3.3\u003C\u002Fstrong> or higher (jQuery version \u003Cstrong>1.7.0\u003C\u002Fstrong> or higher) and your theme \u003Cstrong>must\u003C\u002Fstrong> (and should) have \u003Ccode>wp_head()\u003C\u002Fcode> and \u003Ccode>wp_footer()\u003C\u002Fcode> functions. In some Microsoft Windows based web servers some plugins might produce an error 500 (depends on server\u002FPHP configuration). To pinpoint the issue \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FDebugging_in_WordPress\" rel=\"nofollow ugc\">enable debugging\u003C\u002Fa> in \u003Ccode>wp-config.php\u003C\u002Fcode> and check \u003Ccode>wp-content\u002Fdebug.log\u003C\u002Fcode> file for relevant errors.\u003C\u002Fp>\n\u003Ch4>GDPR (General Data Protection Regulation)\u003C\u002Fh4>\n\u003Cp>The plugin is GDPR compliant. It does not use or store any kind of user information\u002Fdata. In fact, it’s functionality has nothing to do with user data (personal or otherwise). So there’s that.\u003C\u002Fp>\n\u003Ch4>Quick usage and tips\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fpage-scroll-to-id\u002Finstallation\u002F\" rel=\"ugc\">Install the plugin\u003C\u002Fa>. \u003C\u002Fli>\n\u003Cli>The plugin is enabled by default on your WordPress Menu links, so you can start adding custom links and set their URL to the id\u002Ftarget you want to scroll to. \u003C\u002Fli>\n\u003Cli>Create id targets within your content using plugin’s “Insert Page scroll to id target” button and\u002For shortcode (see contextual “Help” menu in plugin settings page) in post visual\u002Ftext editor. Create targets in widgets areas using “Page scroll to id target” widget. \u003C\u002Fli>\n\u003Cli>Create links within your content using plugin’s “Insert\u002Fedit Page scroll to id link” button and\u002For shortcode in post visual\u002Ftext editor. You can also add the class \u003Ccode>ps2id\u003C\u002Fcode> on any existing link you want to be handled by the plugin. \u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>For more info \u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Fpage-scroll-to-id-for-wordpress-tutorial\u002F\" rel=\"nofollow ugc\">see plugin’s basic tutorial\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>MIT\u003C\u002Fp>\n\u003Cp>You should have received a copy of the MIT License along with this program.\u003Cbr \u002F>\nIf not, see \u003Ca href=\"http:\u002F\u002Fopensource.org\u002Flicenses\u002FMIT\" rel=\"nofollow ugc\">http:\u002F\u002Fopensource.org\u002Flicenses\u002FMIT\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Donate\u003C\u002Fh3>\n\u003Cp>If you like this plugin and find it useful, consider making a \u003Ca href=\"https:\u002F\u002Fwww.paypal.com\u002Fcgi-bin\u002Fwebscr?cmd=_s-xclick&hosted_button_id=UYJ5G65M6ZA28\" rel=\"nofollow ugc\">donation\u003C\u002Fa> :).\u003C\u002Fp>\n\u003Ch3>Plugin previous\u002Fother versions\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Fpage-scroll-to-id-for-wordpress\u002F#plugin-versions\" rel=\"nofollow ugc\">All plugin versions\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Other\u002Fexternal resources\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.virfice.com\u002Fhow-to-create-anchor-links-on-wordpress-gutenberg-editor\u002F\" rel=\"nofollow ugc\">How to create anchor links on WordPress Gutenberg editor\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fmanos.malihu.gr\u002Fusing-page-scroll-to-id-with-the-divi-builder-plugin\u002F\" rel=\"nofollow ugc\">Using Page scroll to id with the Divi Builder plugin\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=ZJt7-0W-DeE\" rel=\"nofollow ugc\">One Page WordPress Smooth Scrolling Menu – How to Use Page Scroll to ID Plugin 2017\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fsridharkatakam.com\u002Fsmooth-scrolling-page-sections-using-page-scroll-id\u002F\" rel=\"nofollow ugc\">Smooth scrolling between page sections using Page scroll to id\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fwww.pootlepress.com\u002F2013\u002F02\u002Fvideo-tutorial-a-beginners-guide-on-how-to-create-a-single-page-wordpress-website\u002F\" rel=\"nofollow ugc\">Video tutorial: How to create a single page WordPress website\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fsnifflevalve.com\u002Ftutorials\u002Fgeneratepress-elementor-page-scroll-id-one-page-website\u002F\" rel=\"nofollow ugc\">GeneratePress – Elementor – Page Scroll to ID – One Page Website\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=XZ4SbV3aZb8\" rel=\"nofollow ugc\">Onepage WordPress – Page scroll to iD plugin\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","Create links that scroll the page smoothly to any id within the document.",100000,1848034,98,224,"2025-12-24T13:21:00.000Z","6.9.4","3.3",[22,91,92,93,94],"page-animation","page-scrolling","single-page-navigation","smooth-scroll","http:\u002F\u002Fmanos.malihu.gr\u002Fpage-scroll-to-id","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpage-scroll-to-id.1.7.9.zip",99,"2024-02-16 00:00:00",{"slug":100,"name":101,"version":102,"author":103,"author_profile":104,"description":105,"short_description":106,"active_installs":107,"downloaded":108,"rating":85,"num_ratings":109,"last_updated":110,"tested_up_to":111,"requires_at_least":112,"requires_php":18,"tags":113,"homepage":117,"download_link":118,"security_score":26,"vuln_count":28,"unpatched_count":28,"last_vuln_date":37,"fetched_at":30},"exclude-pages","Exclude Pages","1.92","Simon Wheatley","https:\u002F\u002Fprofiles.wordpress.org\u002Fsimonwheatley\u002F","\u003Cp>This plugin adds a checkbox, “include this page in menus”, uncheck this to exclude pages from the page navigation that users see on your site.\u003C\u002Fp>\n\u003Cp>Any issues: \u003Ca href=\"http:\u002F\u002Fwww.simonwheatley.co.uk\u002Fcontact-me\u002F\" rel=\"nofollow ugc\">contact me\u003C\u002Fa>.This plugin adds a checkbox, “include this page in menus”, which is checked by default. If you uncheck\u003Cbr \u002F>\nit, the page will not appear in any listings of pages (which includes, and is \u003Cem>usually\u003C\u002Fem> limited to, your\u003Cbr \u002F>\npage navigation menus).\u003C\u002Fp>\n\u003Cp>Pages which are children of excluded pages also do not show up in menu listings. (An alert in the editing screen,\u003Cbr \u002F>\nunderneath the “include” checkbox allows you to track down which ancestor page is affecting child pages\u003Cbr \u002F>\nin this way.)\u003C\u002Fp>\n\u003Ch3>Advanced Usage\u003C\u002Fh3>\n\u003Cp>It is possible to temporarily pause and resume the effect of Exclude Pages by using the new \u003Ccode>\u003C?php pause_exclude_pages(); ?>\u003C\u002Fcode> and \u003Ccode>\u003C?php resume_exclude_pages(); ?>\u003C\u002Fcode> templates tags. The following code will show a list of all pages in your site, even those normally hidden:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php pause_exclude_pages(); ?>\n\u003C?php wp_list_pages('title_li=\u003Ch2>Pages\u003C\u002Fh2>' ); ?>\n\u003C?php resume_exclude_pages(); ?>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>You can also get an array the IDs of the pages which are excluded by calling the function \u003Ccode>ep_get_excluded_ids();\u003C\u002Fcode>, you can then use these IDs as you wish (e.g. feed them into raw MySQL queries).\u003C\u002Fp>\n\u003Cp>Note to other plugin authors:\u003C\u002Fp>\n\u003Cp>The plugin does not operate on wp_list_pages while the user is on an admin page, if this is an issue you can take advantage of the \u003Ccode>ep_admin_bail_out\u003C\u002Fcode> filter and create a filter function which returns false to allow Exclude Pages to operate in the admin area.\u003C\u002Fp>\n\u003Cp>Another note:\u003C\u002Fp>\n\u003Cp>If your plugins or themes don’t use the standard WordPress functions to create their menus then they won’t work. To get them to work you will need to track down the bit of code in the theme\u002Fplugin which gets the pages and change it to apply the filter “get_pages” (I cannot be responsible for any unforseen effects of the changes you make, so please test thoroughly). The change to getting pages will probably look something like this:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>$pages = apply_filters( 'get_pages', $pages );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Please \u003Ca href=\"http:\u002F\u002Fwww.simonwheatley.co.uk\u002Fcontact-me\u002F\" rel=\"nofollow ugc\">contact me\u003C\u002Fa> if you’re completely stuck and we can discuss possible solutions.\u003C\u002Fp>\n\u003Cp>Exclude pages is incompatible with:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fwordpress-css-drop-down-menu\u002F\" rel=\"ugc\">WP CSS Dropdown Menus\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fextend\u002Fthemes\u002Fphantom\" rel=\"ugc\">Phantom theme\u003C\u002Fa> – This theme\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Requests & Bug Reports\u003C\u002Fh3>\n\u003Cp>I’m simply noting requests & bug reports here, I’ve not necessarily looked into any of these.\u003C\u002Fp>\n\u003Cp>\u003Cem>None!\u003C\u002Fem>\u003C\u002Fp>\n","This plugin adds a checkbox, “include this page in menus”, uncheck this to exclude pages from the page navigation that users see on your site.",30000,1037162,47,"2017-11-28T03:16:00.000Z","3.4.2","2.2.3",[100,114,115,116,22],"get_pages","hide-pages","menu","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fexclude-pages\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fexclude-pages.1.92.zip",{"slug":120,"name":121,"version":122,"author":123,"author_profile":124,"description":125,"short_description":126,"active_installs":127,"downloaded":128,"rating":74,"num_ratings":129,"last_updated":130,"tested_up_to":67,"requires_at_least":18,"requires_php":18,"tags":131,"homepage":133,"download_link":134,"security_score":135,"vuln_count":14,"unpatched_count":28,"last_vuln_date":136,"fetched_at":30},"wp-paginate","WP-Paginate","2.2.4","maxfoundry","https:\u002F\u002Fprofiles.wordpress.org\u002Fmaxfoundry\u002F","\u003Ch4>Latest News\u003C\u002Fh4>\n\u003Cp>WP-Paginate is a simple and flexible pagination plugin which provides users with better navigation on your WordPress site.\u003C\u002Fp>\n\u003Cp>In addition to increasing the user experience for your visitors, it has also been widely reported that pagination increases the SEO of your site by providing more links to your content.\u003C\u002Fp>\n\u003Cp>You can add custom CSS for your pagination links with the Custom CSS tab in WP-Paginate Settings.\u003C\u002Fp>\n\u003Cp>Starting in version 1.1, WP-Paginate can also be used to paginate post comments!\u003C\u002Fp>\n\u003Cp>Translations: https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwp-paginate\u002FI18n (check the version number for the correct file)\u003C\u002Fp>\n","WP-Paginate is a simple and flexible pagination plugin which provides users with better navigation on your WordPress site.",20000,1023369,107,"2025-02-19T12:18:00.000Z",[22,23,132,71,120],"paginate","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-paginate\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-paginate.2.2.4.zip",91,"2022-06-16 00:00:00",{"slug":138,"name":139,"version":140,"author":141,"author_profile":142,"description":143,"short_description":144,"active_installs":145,"downloaded":146,"rating":85,"num_ratings":147,"last_updated":148,"tested_up_to":88,"requires_at_least":149,"requires_php":150,"tags":151,"homepage":157,"download_link":158,"security_score":85,"vuln_count":14,"unpatched_count":28,"last_vuln_date":159,"fetched_at":30},"cc-child-pages","CC Child Pages","2.1.1","caterhamcomputing","https:\u002F\u002Fprofiles.wordpress.org\u002Fcaterhamcomputing\u002F","\u003Cp>CC Child Pages displays WordPress child pages of any parent page in a responsive grid or list layout, making it easy to display hierarchical page structures, subpages and navigation.\u003C\u002Fp>\n\u003Cp>You can use it in page content, widget areas, or templates using:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>the \u003Ccode>[child_pages]\u003C\u002Fcode> shortcode,\u003C\u002Fli>\n\u003Cli>the \u003Cstrong>CC Child Pages\u003C\u002Fstrong> Gutenberg block, or\u003C\u002Fli>\n\u003Cli>the \u003Cstrong>CC Child Pages\u003C\u002Fstrong> Elementor widget (when Elementor is active).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>All output methods use a modern CSS system based on CSS variables and flexible grid layouts for improved theme compatibility. For older or heavily customised themes, a Legacy CSS mode is available — either by checking the \u003Cstrong>Use Legacy CSS\u003C\u002Fstrong> option in the block or Elementor sidebar, or by setting \u003Ccode>use_legacy_css=\"true\"\u003C\u002Fcode> in the shortcode.\u003C\u002Fp>\n\u003Cp>This makes it ideal for building sub-navigation sections, page directories, or visual site maps.\u003C\u002Fp>\n\u003Cp>Full documentation is available at \u003Ca href=\"https:\u002F\u002Fdocs.ccplugins.co.uk\u002Fplugins\u002Fcc-child-pages\u002F\" rel=\"nofollow ugc\">docs.ccplugins.co.uk\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Display WordPress child pages in grid or list layout\u003C\u002Fli>\n\u003Cli>Supports shortcode, Gutenberg block and Elementor widget\u003C\u002Fli>\n\u003Cli>Flexible column layouts (1–6 columns)\u003C\u002Fli>\n\u003Cli>Modern CSS system based on CSS variables\u003C\u002Fli>\n\u003Cli>Optional Legacy CSS mode for older themes\u003C\u002Fli>\n\u003Cli>Pagination and sorting controls\u003C\u002Fli>\n\u003Cli>Custom field overrides\u003C\u002Fli>\n\u003Cli>Lazy loading support\u003C\u002Fli>\n\u003Cli>Fully translatable\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>A Pro add-on is also available at \u003Ca href=\"https:\u002F\u002Fccplugins.co.uk\" rel=\"nofollow ugc\">ccplugins.co.uk\u003C\u002Fa> which adds additional display skins, advanced layout controls, colour customisation options and Elementor enhancements.\u003C\u002Fp>\n\u003Ch3>What’s New in 2.x\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Gutenberg block with live preview\u003C\u002Fli>\n\u003Cli>Elementor widget integration\u003C\u002Fli>\n\u003Cli>Modern CSS skins using CSS variables\u003C\u002Fli>\n\u003Cli>Legacy CSS compatibility toggle\u003C\u002Fli>\n\u003Cli>Reorganised shortcode structure\u003C\u002Fli>\n\u003Cli>Continued support for the classic widget (legacy)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>How It Works\u003C\u002Fh3>\n\u003Ch4>Gutenberg Block\u003C\u002Fh4>\n\u003Cp>Insert the \u003Cstrong>CC Child Pages\u003C\u002Fstrong> block in the editor. Configure:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Parent page\u003C\u002Fli>\n\u003Cli>Columns\u003C\u002Fli>\n\u003Cli>Thumbnails\u003C\u002Fli>\n\u003Cli>Excerpt display\u003C\u002Fli>\n\u003Cli>Sorting\u003C\u002Fli>\n\u003Cli>Legacy CSS toggle\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>The block provides a live preview while editing.\u003C\u002Fp>\n\u003Ch4>Elementor Widget\u003C\u002Fh4>\n\u003Cp>If \u003Cstrong>Elementor\u003C\u002Fstrong> is installed and active, a \u003Cstrong>CC Child Pages\u003C\u002Fstrong> widget becomes available.\u003C\u002Fp>\n\u003Cp>The widget is located inside the \u003Cstrong>CC Plugins\u003C\u002Fstrong> category within the Elementor panel.\u003C\u002Fp>\n\u003Cp>You can:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Select the parent page\u003C\u002Fli>\n\u003Cli>Choose columns (1–6)\u003C\u002Fli>\n\u003Cli>Enable thumbnails and lazy loading\u003C\u002Fli>\n\u003Cli>Control excerpt display\u003C\u002Fli>\n\u003Cli>Configure sorting\u003C\u002Fli>\n\u003Cli>Enable Legacy CSS if required\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>All shortcode options are available via intuitive controls in the Elementor sidebar.\u003C\u002Fp>\n\u003Cp>The widget renders the same output structure as the shortcode and block, ensuring consistent styling across editors.\u003C\u002Fp>\n\u003Ch4>Shortcode\u003C\u002Fh4>\n\u003Cp>Insert:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>By default, this displays the child pages of the current page.\u003C\u002Fp>\n\u003Cp>To enable legacy styling:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages use_legacy_css=\"true\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>The shortcode supports detailed layout and query control, documented below.\u003C\u002Fp>\n\u003Ch3>Complete Shortcode Guide\u003C\u002Fh3>\n\u003Ch3>1. Basic Usage\u003C\u002Fh3>\n\u003Cp>Display children of current page:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Display children of a specific page:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages id=\"42\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Display specific pages only:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages page_ids=\"3,7,10\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Exclude specific pages:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages exclude=\"5,9,12\"]\u003Ch3>2. Grid Layout Options\u003C\u002Fh3>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Choose number of columns:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages cols=\"1\"]\n[child_pages cols=\"2\"]\n[child_pages cols=\"3\"]\n[child_pages cols=\"4\"]\n[child_pages cols=\"5\"]\n[child_pages cols=\"6\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Choose skin:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages skin=\"simple\"]\n[child_pages skin=\"red\"]\n[child_pages skin=\"green\"]\n[child_pages skin=\"blue\"]\n[child_pages skin=\"sleek\"]\n[child_pages skin=\"bold\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Add custom wrapper class:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages class=\"my-custom-grid\"]\u003Ch3>3. List Mode (Instead of Grid)\u003C\u002Fh3>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Display as unordered list:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages list=\"true\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Control hierarchy depth:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages list=\"true\" depth=\"0\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Depth values:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>0\u003C\u002Fcode> – unlimited depth (nested list)\u003C\u002Fli>\n\u003Cli>\u003Ccode>-1\u003C\u002Fcode> – flat list\u003C\u002Fli>\n\u003Cli>\u003Ccode>1\u003C\u002Fcode> – top level only\u003C\u002Fli>\n\u003Cli>\u003Ccode>2, 3, 4\u003C\u002Fcode> – specific depth\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>In list mode, only these attributes apply:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>id, `exclude`, `orderby`, `order`, `cols`, `class`, `depth`\u003Ch3>4. Thumbnails\u003C\u002Fh3>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Show featured images:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages thumbs=\"true\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Specify size:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages thumbs=\"large\"]\n[child_pages thumbs=\"full\"]\n[child_pages thumbs=\"my-custom-size\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Make thumbnails clickable:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages thumbs=\"medium\" link_thumbs=\"true\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Enable lazy loading:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages thumbs=\"medium\" lazy_load=\"true\"]\n[child_pages thumbs=\"medium\" link_thumbs=\"true\" lazy_load=\"true\"]\u003Ch3>5. Titles & Links\u003C\u002Fh3>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Make titles clickable:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages link_titles=\"true\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Hide titles:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages hide_title=\"true\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Hide “Read more” link:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages hide_more=\"true\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Change “Read more” text:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages more=\"View Details\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Open links in new tab:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages link_target=\"_blank\"]\u003Ch3>6. Excerpt Control\u003C\u002Fh3>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Limit word count:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages words=\"20\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Disable excerpt truncation:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages truncate_excerpt=\"false\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Hide excerpt completely:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages hide_excerpt=\"true\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Hide WordPress “Continue reading” text:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages hide_wp_more=\"true\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Show full page content:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages show_page_content=\"true\"]\u003Ch3>7. Sorting & Query Control\u003C\u002Fh3>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Order results:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages orderby=\"title\" order=\"ASC\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Supported \u003Ccode>orderby\u003C\u002Fcode> values:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>menu_order\u003C\u002Fcode> (default)\u003C\u002Fli>\n\u003Cli>\u003Ccode>id\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>title\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>slug\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>author\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>date\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>modified\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>rand\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Limit number displayed:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages limit=\"5\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Offset results:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages offset=\"2\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Display sibling pages:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages siblings=\"true\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Include current page with siblings:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages siblings=\"true\" show_current_page=\"true\"]\u003Ch3>8. Pagination\u003C\u002Fh3>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Enable pagination:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages posts_per_page=\"6\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Force a specific page:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages posts_per_page=\"6\" page=\"2\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Pagination does not apply in list mode.\u003C\u002Fp>\n\u003Ch3>9. Post Status Control\u003C\u002Fh3>\n\u003Cp>By default:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Published pages are shown\u003C\u002Fli>\n\u003Cli>Private pages are shown to authorised users\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Specify manually:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages post_status=\"publish\"]\n[child_pages post_status=\"publish,private\"]\u003Ch3>10. Display Meta Information\u003C\u002Fh3>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Show author:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages show_author=\"true\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Show creation date:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages show_date_created=\"true\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Show modified date:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages show_date_modified=\"true\"]\u003Ch3>11. Custom Fields (Advanced)\u003C\u002Fh3>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Override default values using meta fields.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages use_custom_excerpt=\"custom_excerpt\"]\n[child_pages use_custom_title=\"custom_title\"]\n[child_pages use_custom_thumbs=\"custom_thumb\"]\n[child_pages use_custom_link=\"custom_link\"]\n[child_pages use_custom_link_target=\"custom_target\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Custom field overrides are ignored in list mode.\u003C\u002Fp>\n\u003Ch3>12. Sticky Posts\u003C\u002Fh3>\n\u003Cp>Sticky posts are ignored by default.\u003C\u002Fp>\n\u003Cp>To include them:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[child_pages ignore_sticky_posts=\"false\"]\u003Ch3>License\u003C\u002Fh3>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>This plugin is free software; you may redistribute it and\u002For modify it under the terms of the GNU General Public License v2 or later.\u003C\u002Fp>\n\u003Cp>See https:\u002F\u002Fwww.gnu.org\u002Flicenses\u002Fgpl-2.0.html\u003C\u002Fp>\n","Display WordPress child pages in a responsive grid or list using a shortcode, Gutenberg block or Elementor widget.",10000,159061,49,"2026-03-05T16:53:00.000Z","6.7","7.4",[152,153,154,155,156],"child-pages","elementor","page-list","page-navigation","subpages","https:\u002F\u002Fccplugins.co.uk\u002Fplugins\u002Fcc-child-pages\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcc-child-pages.2.1.1.zip","2025-12-15 02:16:08",{"attackSurface":161,"codeSignals":190,"taintFlows":248,"riskAssessment":249,"analyzedAt":258},{"hooks":162,"ajaxHandlers":186,"restRoutes":187,"shortcodes":188,"cronEvents":189,"entryPointCount":28,"unprotectedCount":28},[163,169,173,177,182],{"type":164,"name":165,"callback":166,"file":167,"line":168},"action","plugins_loaded","commentnavi_textdomain","wp-commentnavi.php",32,{"type":164,"name":170,"callback":171,"file":167,"line":172},"admin_menu","commentnavi_menu",39,{"type":164,"name":174,"callback":175,"file":167,"line":176},"wp_print_styles","commentnavi_stylesheets",48,{"type":178,"name":179,"callback":180,"file":167,"line":181},"filter","query_vars","commentnavi_variables",59,{"type":164,"name":183,"callback":184,"file":167,"line":185},"pre_get_posts","commentnavi_allcomments",67,[],[],[],[],{"dangerousFunctions":191,"sqlUsage":192,"outputEscaping":194,"fileOperations":28,"externalRequests":28,"nonceChecks":27,"capabilityChecks":28,"bundledLibraries":247},[],{"prepared":28,"raw":28,"locations":193},[],{"escaped":195,"rawEcho":196,"locations":197},26,25,[198,202,204,206,207,209,211,213,215,217,218,220,222,223,225,227,229,231,233,235,237,239,241,243,245],{"file":199,"line":200,"context":201},"commentnavi-options.php",41,"raw output",{"file":199,"line":203,"context":201},42,{"file":199,"line":205,"context":201},51,{"file":199,"line":181,"context":201},{"file":199,"line":208,"context":201},66,{"file":199,"line":210,"context":201},73,{"file":199,"line":212,"context":201},80,{"file":199,"line":214,"context":201},87,{"file":199,"line":216,"context":201},93,{"file":199,"line":97,"context":201},{"file":199,"line":219,"context":201},105,{"file":199,"line":221,"context":201},123,{"file":167,"line":26,"context":201},{"file":167,"line":224,"context":201},125,{"file":167,"line":226,"context":201},129,{"file":167,"line":228,"context":201},133,{"file":167,"line":230,"context":201},135,{"file":167,"line":232,"context":201},142,{"file":167,"line":234,"context":201},145,{"file":167,"line":236,"context":201},151,{"file":167,"line":238,"context":201},154,{"file":167,"line":240,"context":201},158,{"file":167,"line":242,"context":201},167,{"file":167,"line":244,"context":201},170,{"file":167,"line":246,"context":201},177,[],[],{"summary":250,"deductions":251},"The wp-commentnavi plugin version 1.12.2 exhibits a mixed security posture. On the positive side, the static analysis reveals no direct entry points into the plugin without authentication or proper permission checks, and all SQL queries are secured using prepared statements. This indicates a good understanding of fundamental WordPress security practices regarding database interactions and access control for core functionalities.\n\nHowever, concerns arise from the output escaping. With 51 total outputs, only 51% are properly escaped. This leaves a significant portion of the plugin's output potentially vulnerable to Cross-Site Scripting (XSS) attacks, where malicious scripts could be injected into the user interface. While no active taint flows or dangerous functions were detected in this static analysis, the history of past vulnerabilities, specifically the 'Cross-site Scripting' type, reinforces the concern around improper output handling. The plugin has had at least one known CVE, suggesting a pattern where input validation or output sanitization might have been previously insufficient.\n\nIn conclusion, while the plugin has strengths in its lack of direct attack vectors and secure database queries, the prevalent issue with output escaping presents a notable risk. The past XSS vulnerability further emphasizes the need for meticulous attention to output sanitization. Addressing the unescaped outputs should be a priority to mitigate potential XSS risks.",[252,255],{"reason":253,"points":254},"Output escaping is not properly handled for 49% of outputs.",8,{"reason":256,"points":257},"Plugin has a history of known CVEs, indicating past vulnerabilities.",5,"2026-03-16T19:15:36.309Z",{"wat":260,"direct":266},{"assetPaths":261,"generatorPatterns":263,"scriptPaths":264,"versionParams":265},[262],"\u002Fwp-content\u002Fplugins\u002Fwp-commentnavi\u002Fcommentnavi-css.css",[],[],[],{"cssClasses":267,"htmlComments":269,"htmlAttributes":270,"restEndpoints":278,"jsGlobals":279,"shortcodeOutput":280},[4,268],"wp-commentnavi-all-comments-link",[],[271,272,273,274,275,276,277,276],"class=\"wp-commentnavi\"","class=\"wp-commentnavi-all-comments-link\"","class=\"pages\"","class=\"first\"","class=\"extend\"","class=\"current\"","class=\"page\"",[],[],[281,282,283,284,282,285,286,287,282,288,289,290,291,290,292],"\u003Cdiv class=\"wp-commentnavi\">","\u003Ca href=\"","\" class=\"wp-commentnavi-all-comments-link\"","\u003Cspan class=\"pages\">","\" class=\"first\"","\u003Cspan class=\"extend\">","\u003Cspan class=\"current\">","\" class=\"page\"","\u003Cselect size=\"1\" onchange=\"document.location.href = this.options[this.selectedIndex].value;\">","\u003Coption value=\"","\" selected=\"selected\" class=\"current\">","\">"]