[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fkJVIUX8ZjXPNLs29wc18hVTSHOTG-72ChehS_XkzI2E":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":24,"download_link":25,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28,"vulnerabilities":29,"developer":30,"crawl_stats":27,"alternatives":36,"analysis":142,"fingerprints":474},"supple-forms","Supple Forms","0.1.62","Byron","https:\u002F\u002Fprofiles.wordpress.org\u002Fbennebw\u002F","\u003Cp>Supple Forms makes it easy to create a custom meta box or write panel to enter data while adding or editing posts and pages.  Supple Forms allows you to easily format and insert your data into posts by using shortcodes and HTML snippets.  Following are the features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Custom write panel or Meta box that displays on the Write Post form\u003C\u002Fli>\n\u003Cli>Fields utilizing textboxes, dropdown lists, radio buttons, checkboxes, textareas, and a jQuery DatePicker\u003C\u002Fli>\n\u003Cli>Allows fields with multiple values\u003C\u002Fli>\n\u003Cli>Options for placement of the custom meta box (after title, after the wysiwyg editor, at the bottom)\u003Cbr \u002F>\nChoose between storing data in a Custom Table or as WordPress’ own Custom Fields….note that multiple value fields will be stored as WP Custom Fields\u003C\u002Fli>\n\u003Cli>Insert field values into posts\u002Fpages with a flexible shortcode api\u003C\u002Fli>\n\u003Cli>Create reuseable HTML (really HTML, Javascript or any valid XHTML) snippets – we call them snips in Supple Forms – that can utilize field values\u003C\u002Fli>\n\u003Cli>Easily insert snips into posts\u002Fpages with a shortcode\u003C\u002Fli>\n\u003Cli>Specify CSS code to be inserted with your HTML snips\u003C\u002Fli>\n\u003Cli>A database view is included to allow you to view your custom table data\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Cp>Using Supple Forms is extremely simple:\u003C\u002Fp>\n\u003Col>\n\u003Cli>After uploading and activating the Supple Forms plugin (see the Installation page), you’re ready to begin building your form\u003C\u002Fli>\n\u003Cli>In the Supple Forms menu, click Form Settings to set form level defaults\u003C\u002Fli>\n\u003Cli>Enter a Form Title.  This will be the title that shows in the form box on the Write Post\u002FPage page\u003C\u002Fli>\n\u003Cli>Choose other form-level defaults such as whether to store data in a Custom Table or in WP Custom Fields\u003C\u002Fli>\n\u003Cli>In the Supple Forms menu, click Add\u002FEdit Fields to add fields to your custom form.  \u003C\u002Fli>\n\u003Cli>Add new fields or Edit existing ones by making the proper selection in the Select field dropdown box\u003C\u002Fli>\n\u003Cli>If you chose Custom Table as the storage option on the Form Settings page, a Generate Table button will be available on the Add\u002FEdit Fields screen.  You will a warning to Generate the table after a field is created or edited until you run the Generate Table option.  However, do not Generate Table until you are done adding\u002Fediting your fields.  It won’t break anything, but it is a best practice to wait.  You can generate the table as often as you want, but waiting until you are done editing fields prevents creating extraneous fields in your database.  Supple Forms will not Delete table fields or custom tables.  We don’t want to risk you losing any data by stray clicks.  So if you end up creating fields that later get changed, you will can delete them through phpMyAdmin or another database management tool.  \u003C\u002Fli>\n\u003Cli>After you’ve added your fields and generated the Your fields will now be available on the Write Post\u002FPage pages\u003C\u002Fli>\n\u003Cli>Saving a post\u002Fpage or publishing a post\u002Fpage saves your custom field data as well.  Custom field data is not saved in the revisions.  It is only linked to the actual Post ID record (not the revision IDs)\u003C\u002Fli>\n\u003Cli>To create HTML snips for inserting into posts\u002Fpages, in the Supple Forms menu, click the HTML Snips Editor\u003C\u002Fli>\n\u003Cli>In the HTML Snips Editor, you can create pre-formatted HTML snippets that include your data.  Simply place your field names in brackets and insert them in your snips.  For example:  \u003Cdiv class=’neatbox’>I live in [city]\u003C\u002Fdiv>\u003C\u002Fli>\n\u003Cli>The name you give your HTML snip will be used in the shortcode that you insert into your posts\u002Fpages.  For example, a snip named address_box would be inserted with this shortcode: [supple snip=’address_box’]\u003C\u002Fli>\n\u003Cli>Finally, place shortcodes like [supple snip=’my_snip’] in your posts or pages.\u003C\u002Fli>\n\u003Cli>For the programmer in you, you have direct access to your custom table from within your template code.  Use the WordPress database object ($wpdb) to perform SQL commands and queries on your data.  Your table name (if using Custom Table) is shown in red on the Form Settings page. Supple Forms utilizes your defined WordPress table prefix ($wpdb->prefix) + the prefix “supple_”.  So a table that you named destinations would normally be in the database as:  wp_supple_destinations   (unless you changed your $wpdb->prefix to something other than the default (wp_))\u003C\u002Fli>\n\u003C\u002Fol>\n","Supple Forms - a CMS plugin for WordPress to create custom write panels, and format and insert values into Posts.",10,16780,0,"2009-03-08T06:11:00.000Z","2.7.1","2.5","",[19,20,21,22,23],"cms","custom-fields","custom-write-panel","forms","shortcode","http:\u002F\u002Fwww.whypad.com\u002Fposts\u002Fsupple-forms-a-wordpress-cms-plugin\u002F566\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsupple-forms.0.1.62.zip",85,null,"2026-03-15T15:16:48.613Z",[],{"slug":31,"display_name":7,"profile_url":8,"plugin_count":32,"total_installs":11,"avg_security_score":26,"avg_patch_time_days":33,"trust_score":34,"computed_at":35},"bennebw",1,30,84,"2026-04-04T14:38:21.078Z",[37,55,78,97,118],{"slug":38,"name":39,"version":40,"author":41,"author_profile":42,"description":43,"short_description":44,"active_installs":45,"downloaded":46,"rating":13,"num_ratings":13,"last_updated":47,"tested_up_to":48,"requires_at_least":49,"requires_php":17,"tags":50,"homepage":53,"download_link":54,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"conditional-custom-fields-shortcode","Conditional Custom Fields Shortcode","0.5","ctltwp","https:\u002F\u002Fprofiles.wordpress.org\u002Fctltwp\u002F","\u003Cp>A series of shortcodes for using custom field values in pages or posts (or in sidebar widgets – via \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fwidget-logic\u002F\" rel=\"ugc\">Section Widget\u003C\u002Fa>!), which would then allows you to take store the actual data in custom fields while storing the presentation in the page\u002Fpost body. This transforms WordPress into an awesome CMS. Keep reading for more inspirations.\u003C\u002Fp>\n\u003Ch4>Basic Usage\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>[cf \"custom field name\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Example:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>Picture of the day:\n\u003Cimg src='[cf \"picture-link\"]' \u002F>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>This would output something like \u003Ccode>\u003Cimg src='http:\u002F\u002Fthesite.com\u002Fsomething.jpg' \u002F>\u003C\u002Fcode>, assume the post\u002Fpage has the custom field “picture-link” and its value is “http:\u002F\u002Fthesite.com\u002Fsomething.jpg”. That way, you (or your clients!) would never accidentally take out a div when updating your page because you won’t have to touch the page\u002Fpost body anymore!\u003C\u002Fp>\n\u003Ch4>Default Values\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>[cf \"custom field name\" default=\"display this if the CF is undefined\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Example:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>Contact [cf \"support-email\" default=\"support@mycompany.com\"] if you have questions.\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>support@mycompany.com will be displayed there if the custom field “support-email” is not present in that post\u002Fpage.\u003C\u002Fp>\n\u003Ch4>Simple Template\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>[cf \"custom field name\" default=\"default value\"]...template...[\u002Fcf]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Example:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>Price: [cf \"price\" default=\"Pricing information not available yet.\"] USD$%value% [\u002Fcf]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>If you cannot use \u003Ccode>%value%\u003C\u002Fcode> as your placeholder text for some reason, you can change it by specifying the placeholder attribute.\u003C\u002Fp>\n\u003Cp>Example:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>Price: [cf \"price\" default=\"Pricing information not available yet.\" placeholder=\"__value__\"] USD$__value__ [\u002Fcf]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Multiple Values\u003C\u002Fh4>\n\u003Cp>It’s smart enough to do the right thing. If your post has the following custom fields:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>concert-date: Jan 14th\u003C\u002Fli>\n\u003Cli>concert-date: Jan 28th\u003C\u002Fli>\n\u003Cli>concert-date: Feb 2nd\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Then \u003Ccode>[cf \"concert-date\"]\u003C\u002Fcode> will output \u003Ccode>Jan 14th,Jan 28th,Feb2nd\u003C\u002Fcode>, exactly what you would expect. You can also optionally provide a separator to replace the default (,).\u003C\u002Fp>\n\u003Cp>Example:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>Come to one of our concerts on the following dates: [cf \"concert-date\" separator=\" \u002F \"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>(=> Jan 14th \u002F Jan 28th \u002F Feb 2nd)\u003C\u002Fp>\n\u003Ch4>Sorting\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>[cf \"custom field name\" sort=\"nosort|asc|dsc|random\" type=\"string|int|integer|float|bool|boolean|date|auto\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>You can control how it sort the items (when there’s more than one) using the sort attribute (default is \u003Ccode>nosort\u003C\u002Fcode>). By default, it would compare them using PHP’s comparison operator (i.e. try to cast them into numeric values, or compare them as strings if that failed). However, you can force a type cast by specifying the type attribute (default is \u003Ccode>auto\u003C\u002Fcode>).\u003C\u002Fp>\n\u003Ch4>Display Single Value\u003C\u002Fh4>\n\u003Cp>If display multiple values is not what you want it to do, you can use \u003Ccode>[cf single=\"true\"]\u003C\u002Fcode> to force it to display only the first value. Combining what we have learned so far, you can display a single random value by \u003Ccode>[cf single=\"true\" sort=\"random\"]\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Ch4>Summary\u003C\u002Fh4>\n\u003Cp>Syntax for \u003Ccode>[cf]\u003C\u002Fcode> shortcode: (default values in parenthesis)\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[cf \"field-name\" default=\"\" placeholder=\"%value%\" single=\"(false)|true\" separator=\",\" sort=\"(nosort)|asc|dsc|random\" type=\"string|int|integer|float|bool|boolean|date|(auto)\"](OPTIONAL) template[\u002Fcf]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Conditionals\u003C\u002Fh4>\n\u003Cp>Conditionals tags is what makes this plugin unique. Here is a list of them:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[if-cf-def \"custom field name\"]\n  Do this when \"custom field name\" is defined for this page\u002Fpost\n[\u002Fif-cf-def]\n\n[if-cf-ndef \"custom field name\"]\n  Do this when \"custom field name\" is NOT defined for this page\u002Fpost\n[\u002Fif-cf-ndef]\n\n[if-cf-eq \"custom field name\" \"value\"]\n  Do this when \"custom field name\" == \"value\"\n[\u002Fif-cf-eq]\n\n[if-cf-neq \"custom field name\" \"value\"]\n  Do this when \"custom field name\" != \"value\"\n[\u002Fif-cf-neq]\n\n[if-cf-lt \"custom field name\" \"value\"]\n  Do this when \"custom field name\" \u003C \"value\"\n[\u002Fif-cf-lt]\n\n[if-cf-gt \"custom field name\" \"value\"]\n  Do this when \"custom field name\" > \"value\"\n[\u002Fif-cf-gt]\n\n[if-cf-let \"custom field name\" \"value\"]\n  Do this when \"custom field name\" \u003C= \"value\"\n[\u002Fif-cf-let]\n\n[if-cf-get \"custom field name\" \"value\"]\n  Do this when \"custom field name\" >= \"value\"\n[\u002Fif-cf-get]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>More detailed documentations will be published soon. In the mean time, check out the following examples and the comments in the PHP code to get a rough idea.\u003C\u002Fp>\n\u003Ch4>Examples\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>[if-cf-get \"deadline\" \"today\" type=\"date\"]\n    Submit your application \u003Ca href='[cf \"submit-link\"]'>here\u003C\u002Fa>.\n[\u002Fif-cf-get]\n\n[if-cf-lt \"deadline\" \"today\" type=\"date\"]\n    Sorry we regret that we cannot take anymore applications.\n[\u002Fif-cf-lt]\n\n[if-cf-def \"discounted-price\" \"discount-expires\" logic=\"and\"]\n    This product is on discount, get it now for [cf \"discounted-price\" \u002F] [cf \"discount-expires\" default=\"for a limited time\"]before %value%[\u002Fcf]!\n[\u002Fif-cf-def]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Please note: It seems that there is a serious bug in WordPress’ shortcode parser that prevents shortcodes from functioning correctly in certain occasions.\u003C\u002Fstrong> The developers are hard at work to get this fixed before the 2.8.3 release. (See \u003Ca href=\"https:\u002F\u002Fcore.trac.wordpress.org\u002Fticket\u002F10082\" rel=\"nofollow ugc\">#10082\u003C\u002Fa>) Therefore, please do not report any parser related bugs for the moment. (e.g. the shortcode is displayed on the actual page)\u003C\u002Fp>\n","Use custom field values in you pages or posts. With conditional supports which enables basic templating with custom fields.",20,3977,"2009-07-30T20:47:00.000Z","2.8.2","2.7",[19,51,20,23,52],"conditional","template","#TODO","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fconditional-custom-fields-shortcode.zip",{"slug":56,"name":57,"version":58,"author":59,"author_profile":60,"description":61,"short_description":62,"active_installs":63,"downloaded":64,"rating":34,"num_ratings":65,"last_updated":66,"tested_up_to":67,"requires_at_least":68,"requires_php":17,"tags":69,"homepage":75,"download_link":76,"security_score":77,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"acf-gravityforms-add-on","Advanced Custom Fields: Gravity Forms Add-on","1.3.10","DannyvanHolten","https:\u002F\u002Fprofiles.wordpress.org\u002Fdannyvanholten\u002F","\u003Cp>Provides an Advanced Custom Field which allows a WordPress editorial user or administrator to select a Gravity Form as part of a field group configuration.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>This plugin does not have any effect on the frontend of the website. It does not output the form, nor does it modify the output of existing forms. The plugin only adds a custom ACF field type for use in an ACF field group.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Full documentation can be found in the \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FSayHelloGmbH\u002Facf-gravityforms-add-on\u002F\" rel=\"nofollow ugc\">plugin’s GitHub Repository\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Development\u003C\u002Fh3>\n\u003Cp>Version 1.3.2 added a plain HTML filter to the output of the field. This filter is not applied to fields in ACF version 4.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>apply_filters('acf-gravityforms-add-on\u002Ffield_html', string $field_html, array $field, string $field_options, string $multiple)\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Provides an Advanced Custom Field which allows a WordPress user to select a Gravity Form as part of a field group configuration.",30000,552315,14,"2025-12-02T17:20:00.000Z","6.9.0","4.6",[70,71,72,73,74],"acf","advanced-custom-fields","form","gravity-forms","sayhellogmbh","https:\u002F\u002Fgithub.com\u002Fsayhellogmbh\u002Facf-gravityforms-add-on","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Facf-gravityforms-add-on.1.3.10.zip",100,{"slug":79,"name":80,"version":81,"author":82,"author_profile":83,"description":84,"short_description":85,"active_installs":86,"downloaded":87,"rating":77,"num_ratings":32,"last_updated":88,"tested_up_to":49,"requires_at_least":89,"requires_php":17,"tags":90,"homepage":95,"download_link":96,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"custom-shortcodes","Custom Shortcodes","1.0","marapper","https:\u002F\u002Fprofiles.wordpress.org\u002Fmarapper\u002F","\u003Cp>Manage \u003Cstrong>custom fields\u003C\u002Fstrong> using the insert \u003Cstrong>shortcodes\u003C\u002Fstrong> [custom name=”\u003Cem>field-name\u003C\u002Fem>” value=”\u003Cem>field-value\u003C\u002Fem>“] or HTML \u003Cstrong>conditional comments\u003C\u002Fstrong> \u003C!–custom name=”\u003Cem>field-name\u003C\u002Fem>” value=”\u003Cem>field-value\u003C\u002Fem>“–> in text of post. It’s a hook for desktop blog clients, which don’t support customfields natively.\u003C\u002Fp>\n\u003Cp>Простой хак Вордпресса, позволяющий управлять \u003Cstrong>произвольными полями\u003C\u002Fstrong> из любого внешнего клиента или при отправке через почту с помощью \u003Cstrong>шорткодов\u003C\u002Fstrong> [custom name=”\u003Cem>имя-произвольного-поля\u003C\u002Fem>” value=”\u003Cem>значение\u003C\u002Fem>“] или \u003Cstrong>условных комментариев\u003C\u002Fstrong> \u003C!–custom name=”\u003Cem>имя-произвольного-поля\u003C\u002Fem>” value=”\u003Cem>значение\u003C\u002Fem>“–> прямо в тексте поста.\u003C\u002Fp>\n","Manage custom fields using the insert shortcodes or HTML comment in text of post.",6000,5599,"2009-04-04T11:51:00.000Z","2.0.2",[91,20,92,93,94],"custom","post","shortcodes","text","http:\u002F\u002Fiskariot.ru\u002Fwordpress\u002Fremix\u002F#custom-short","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcustom-shortcodes.1.0.zip",{"slug":98,"name":99,"version":100,"author":101,"author_profile":102,"description":103,"short_description":104,"active_installs":105,"downloaded":106,"rating":77,"num_ratings":107,"last_updated":108,"tested_up_to":109,"requires_at_least":110,"requires_php":17,"tags":111,"homepage":115,"download_link":116,"security_score":34,"vuln_count":107,"unpatched_count":13,"last_vuln_date":117,"fetched_at":28},"get-custom-field-values","Get Custom Field Values","4.1","Scott Reilly","https:\u002F\u002Fprofiles.wordpress.org\u002Fcoffee2code\u002F","\u003Cp>This plugin provides a powerful widget, shortcode (with shortcode builder tool), and template tags for easily retrieving and displaying custom field values for posts or pages.\u003C\u002Fp>\n\u003Cp>The power of custom fields gives this plugin the potential to be dozens of plugins all rolled into one.\u003C\u002Fp>\n\u003Cp>This plugin allows you to harness the power of custom fields\u002Fmeta data. Use the “Get Custom Field” widget, the \u003Ccode>[custom_field]\u003C\u002Fcode> shortcode (which has a post editor sidebar widget to help you build the shortcode), or one of six template tags to retrieve and display custom fields. Find a custom field for the current post, a specified post, a recent post, or randomly. And for the custom field values found by the plugin, you may optionally specify text or HTML to appear before and after the results. If nothing is found, then nothing is display (unless you define text to appear when no results are found). If multiple results are found, only the first will be displayed unless you specify a string to be used to join the results together (such as “,”), in which case all will be returned. Visit the Examples section to see how this plugin can be cast in dozens of different ways.\u003C\u002Fp>\n\u003Cp>There are six template tags provided by this plugin. Here they are, with an explanation of when they are appropriate for use:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>c2c_get_custom()\u003C\u002Fcode> : Use this inside “the loop” to retrieve a custom field value for a post\u003C\u002Fli>\n\u003Cli>\u003Ccode>c2c_get_current_custom()\u003C\u002Fcode> : This is only available on the permalink post template (single.php) and page template (page.php). Can be used inside or outside “the loop”. Useful for using custom field to define text you want to include on a post or page’s header, footer, or sidebar.\u003C\u002Fli>\n\u003Cli>\u003Ccode>c2c_get_post_custom()\u003C\u002Fcode> : Useful when you know the ID of the post whose custom field value you want.\u003C\u002Fli>\n\u003Cli>\u003Ccode>c2c_get_random_custom()\u003C\u002Fcode> : Retrieve the value of a random instance of the specified custom field key, as long as the field is associated with a published posted, non-passworded post (you can modify a setting in the plugin file to search passworded posts as well).\u003C\u002Fli>\n\u003Cli>\u003Ccode>c2c_get_random_post_custom()\u003C\u002Fcode> : Retrieves the value of random custom field(s) from a post when you know the ID of the post you’re interested in.\u003C\u002Fli>\n\u003Cli>\u003Ccode>c2c_get_recent_custom()\u003C\u002Fcode> : Retrieves the most recent (according to the associated post’s publish date) value of the specified custom field.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>You can filter the custom field values that the plugin would display. Add filters for ‘\u003Ccode>the_meta\u003C\u002Fcode>‘ to filter custom field data (see the end of the code file for commented out samples you may wish to include). You can also add per-meta filters by hooking ‘\u003Ccode>the_meta_$sanitized_field\u003C\u002Fcode>‘. \u003Ccode>$sanitized_field\u003C\u002Fcode> is a clean version of the value of \u003Ccode>$field\u003C\u002Fcode> where everything but alphanumeric and underscore characters have been removed. So to filter the value of the “Related Posts” custom field, you would need to add a filter for ‘\u003Ccode>the_meta_RelatedPosts\u003C\u002Fcode>‘.\u003C\u002Fp>\n\u003Cp>Links: \u003Ca href=\"https:\u002F\u002Fcoffee2code.com\u002Fwp-plugins\u002Fget-custom-field-values\u002F\" rel=\"nofollow ugc\">Plugin Homepage\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fget-custom-field-values\u002F\" rel=\"ugc\">Plugin Directory Page\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fcoffee2code\u002Fget-custom-field-values\u002F\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fcoffee2code.com\" rel=\"nofollow ugc\">Author Homepage\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Developer Documentation\u003C\u002Fh3>\n\u003Cp>Developer documentation can be found in \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fcoffee2code\u002Fget-custom-field-values\u002Fblob\u002Fmaster\u002FDEVELOPER-DOCS.md\" rel=\"nofollow ugc\">DEVELOPER-DOCS.md\u003C\u002Fa>. That documentation covers the numerous template tags, hooks, and shortcode provided by the plugin.\u003C\u002Fp>\n\u003Cp>As an overview, these are the template tags provided the plugin:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>c2c_get_custom()\u003C\u002Fcode>             : Template tag for use inside “the loop” and applies to the currently listed post.\u003C\u002Fli>\n\u003Cli>\u003Ccode>c2c_get_current_custom()\u003C\u002Fcode>     : Template tag for use on permalink (aka single) page templates for posts and pages.\u003C\u002Fli>\n\u003Cli>\u003Ccode>c2c_get_post_custom()\u003C\u002Fcode>        : Template tag for use when you know the ID of the post you’re interested in.\u003C\u002Fli>\n\u003Cli>\u003Ccode>c2c_get_random_custom()\u003C\u002Fcode>      : Template tag for use to retrieve a random custom field value.\u003C\u002Fli>\n\u003Cli>\u003Ccode>c2c_get_random_post_custom()\u003C\u002Fcode> : Template tag for use to retrieve random custom field value(s) from a post when you know the ID of the post you’re interested in.\u003C\u002Fli>\n\u003Cli>\u003Ccode>c2c_get_recent_custom()\u003C\u002Fcode>      : Template tag for use outside “the loop” and applies for custom fields regardless of post.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>These are the hooks provided by the plugin:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>c2c_get_custom_field_values_shortcode\u003C\u002Fcode>  : Filter to customize the name of the plugin’s shortcode.\u003C\u002Fli>\n\u003Cli>\u003Ccode>c2c_get_custom_field_values_post_types\u003C\u002Fcode> : Filter to customize the post types that should support the shortcode builder metabox.\u003C\u002Fli>\n\u003Cli>\u003Ccode>get_custom_field_values\u002Fcan_author_use_shortcodes\u003C\u002Fcode> : Filter to customize if post author can make use of the ‘custom_field’ shortcode.\u003C\u002Fli>\n\u003Cli>\u003Ccode>get_custom_field_values\u002Fshow_metabox\u003C\u002Fcode>   : Filter to customize if the shortcode builder metabox is shown.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>The shortcode provided is \u003Ccode>[custom-field]\u003C\u002Fcode>, which has a number of attributes to customize its behavior and output.\u003C\u002Fp>\n","Use widgets, shortcodes, and\u002For template tags to easily retrieve and display custom field values for posts or pages.",1000,132121,4,"2023-10-10T04:37:00.000Z","6.3.8","3.6",[20,112,23,113,114],"meta","widget","widgets","https:\u002F\u002Fcoffee2code.com\u002Fwp-plugins\u002Fget-custom-field-values\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fget-custom-field-values.4.1.zip","2023-10-11 00:00:00",{"slug":119,"name":120,"version":121,"author":122,"author_profile":123,"description":124,"short_description":125,"active_installs":126,"downloaded":127,"rating":77,"num_ratings":128,"last_updated":129,"tested_up_to":130,"requires_at_least":131,"requires_php":132,"tags":133,"homepage":137,"download_link":138,"security_score":139,"vuln_count":140,"unpatched_count":13,"last_vuln_date":141,"fetched_at":28},"blog-in-blog","Blog-in-Blog","2.0.1","timhodson","https:\u002F\u002Fprofiles.wordpress.org\u002Ftimhodson\u002F","\u003Cp>Blog-in-Blog allows you to use the WordPress platform for it’s CMS features, but still have a blog page on your site. Posts selected by category, post_type, tag or any combination thereof, can be used to feed the ‘special’ blog page, and can optionally be hidden from the home page.\u003Cbr \u002F>\nYou can have more than one category hidden from the homepage (not post_types or tags).\u003C\u002Fp>\n\u003Cp>You can also use this plugin to show posts on the same page from different categories, post_types or tags, but in several different blocks and using different layout templates.\u003C\u002Fp>\n\u003Cp>If you find this plugin useful (especially if it gets you out of a fix in a commercial setting), please feel free to leave feedback via the donate button.\u003C\u002Fp>\n\u003Cp>I am grateful for those people who have already bought me a beer 🙂\u003C\u002Fp>\n\u003Cp>\u003Cem>Important:\u003C\u002Fem> In previous versions of the Blog-in-Blog plugin you might have edited bib_post_template.tpl. If you are upgrading, we will copy this to a textbox so you can edit the template from the plugin page. The bib_post_template.pl file is no longer used and may vanish in a future release.\u003C\u002Fp>\n","This plugin shows posts from a category on any page you like using shortcodes. Create multiple blogs within a blog using a category.",900,110772,16,"2026-01-26T08:36:00.000Z","6.7.5","5.0","8.0",[134,135,19,136,23],"blog","categories","hide","http:\u002F\u002Finformationtakesover.co.uk\u002Fblog-in-blog-wordpress-plugin\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fblog-in-blog.2.0.1.zip",99,2,"2023-05-30 00:00:00",{"attackSurface":143,"codeSignals":182,"taintFlows":298,"riskAssessment":460,"analyzedAt":473},{"hooks":144,"ajaxHandlers":174,"restRoutes":175,"shortcodes":176,"cronEvents":181,"entryPointCount":32,"unprotectedCount":13},[145,151,155,159,163,166,170],{"type":146,"name":147,"callback":148,"file":149,"line":150},"action","admin_print_scripts","enqueueJS","supple-forms.php",662,{"type":146,"name":152,"callback":153,"file":149,"line":154},"admin_menu","suppleFormsOptionsPage",665,{"type":146,"name":156,"callback":157,"file":149,"line":158},"activate_supple-forms\u002Fsupple-forms.php","init",669,{"type":146,"name":160,"callback":161,"file":149,"line":162},"admin_notices","checkTablesInstalled",672,{"type":146,"name":152,"callback":164,"file":149,"line":165},"attachMetaBox",676,{"type":146,"name":167,"callback":168,"file":149,"line":169},"save_post","saveMetaData",680,{"type":146,"name":171,"callback":172,"file":149,"line":173},"admin_head","addDatePickerCSS",683,[],[],[177],{"tag":178,"callback":179,"file":149,"line":180},"supple","shortCode",659,[],{"dangerousFunctions":183,"sqlUsage":184,"outputEscaping":212,"fileOperations":13,"externalRequests":13,"nonceChecks":296,"capabilityChecks":140,"bundledLibraries":297},[],{"prepared":185,"raw":11,"locations":186},38,[187,191,194,196,198,200,202,204,207,210],{"file":188,"line":189,"context":190},"supple-admin.php",32,"$wpdb->get_var() with variable interpolation",{"file":188,"line":192,"context":193},207,"$wpdb->get_row() with variable interpolation",{"file":188,"line":195,"context":190},302,{"file":149,"line":197,"context":193},73,{"file":149,"line":199,"context":193},607,{"file":201,"line":189,"context":190},"supple-write.php",{"file":201,"line":203,"context":190},150,{"file":201,"line":205,"context":206},156,"$wpdb->query() with variable interpolation",{"file":201,"line":208,"context":209},248,"$wpdb->get_results() with variable interpolation",{"file":201,"line":211,"context":193},601,{"escaped":32,"rawEcho":213,"locations":214},40,[215,218,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,256,259,261,263,265,267,269,271,273,275,277,278,280,282,284,286,288,290,292,294],{"file":188,"line":216,"context":217},515,"raw output",{"file":188,"line":219,"context":217},526,{"file":188,"line":221,"context":217},534,{"file":188,"line":223,"context":217},549,{"file":188,"line":225,"context":217},557,{"file":188,"line":227,"context":217},564,{"file":188,"line":229,"context":217},576,{"file":188,"line":231,"context":217},577,{"file":188,"line":233,"context":217},619,{"file":188,"line":235,"context":217},626,{"file":188,"line":237,"context":217},646,{"file":188,"line":239,"context":217},746,{"file":188,"line":241,"context":217},751,{"file":188,"line":243,"context":217},757,{"file":188,"line":245,"context":217},762,{"file":188,"line":247,"context":217},768,{"file":188,"line":249,"context":217},811,{"file":188,"line":251,"context":217},813,{"file":188,"line":253,"context":217},821,{"file":188,"line":255,"context":217},834,{"file":257,"line":258,"context":217},"supple-dbviewer.php",19,{"file":257,"line":260,"context":217},22,{"file":149,"line":262,"context":217},120,{"file":149,"line":264,"context":217},123,{"file":149,"line":266,"context":217},161,{"file":268,"line":262,"context":217},"supple-snips.php",{"file":268,"line":270,"context":217},126,{"file":268,"line":272,"context":217},137,{"file":268,"line":274,"context":217},142,{"file":268,"line":276,"context":217},143,{"file":268,"line":266,"context":217},{"file":268,"line":279,"context":217},169,{"file":268,"line":281,"context":217},175,{"file":268,"line":283,"context":217},224,{"file":201,"line":285,"context":217},260,{"file":201,"line":287,"context":217},270,{"file":201,"line":289,"context":217},296,{"file":201,"line":291,"context":217},300,{"file":201,"line":293,"context":217},309,{"file":201,"line":295,"context":217},319,5,[],[299,316,324,332,342,361,424,441],{"entryPoint":300,"graph":301,"unsanitizedCount":32,"severity":315},"printEditFieldsPage (supple-admin.php:490)",{"nodes":302,"edges":312},[303,307],{"id":304,"type":305,"label":306,"file":188,"line":216},"n0","source","$_SERVER['REQUEST_URI']",{"id":308,"type":309,"label":310,"file":188,"line":216,"wp_function":311},"n1","sink","echo() [XSS]","echo",[313],{"from":304,"to":308,"sanitized":314},false,"medium",{"entryPoint":317,"graph":318,"unsanitizedCount":32,"severity":315},"printAdminPage (supple-admin.php:741)",{"nodes":319,"edges":322},[320,321],{"id":304,"type":305,"label":306,"file":188,"line":239},{"id":308,"type":309,"label":310,"file":188,"line":239,"wp_function":311},[323],{"from":304,"to":308,"sanitized":314},{"entryPoint":325,"graph":326,"unsanitizedCount":32,"severity":315},"showSnipsForm (supple-snips.php:101)",{"nodes":327,"edges":330},[328,329],{"id":304,"type":305,"label":306,"file":268,"line":262},{"id":308,"type":309,"label":310,"file":268,"line":262,"wp_function":311},[331],{"from":304,"to":308,"sanitized":314},{"entryPoint":333,"graph":334,"unsanitizedCount":13,"severity":341},"\u003Csupple-snips> (supple-snips.php:0)",{"nodes":335,"edges":338},[336,337],{"id":304,"type":305,"label":306,"file":268,"line":262},{"id":308,"type":309,"label":310,"file":268,"line":262,"wp_function":311},[339],{"from":304,"to":308,"sanitized":340},true,"low",{"entryPoint":343,"graph":344,"unsanitizedCount":32,"severity":360},"saveFields (supple-admin.php:332)",{"nodes":345,"edges":357},[346,349,352],{"id":304,"type":305,"label":347,"file":188,"line":348},"$_POST",408,{"id":308,"type":350,"label":351,"file":188,"line":348},"transform","→ insertListValues()",{"id":353,"type":309,"label":354,"file":188,"line":355,"wp_function":356},"n2","query() [SQLi]",443,"query",[358,359],{"from":304,"to":308,"sanitized":314},{"from":308,"to":353,"sanitized":314},"high",{"entryPoint":362,"graph":363,"unsanitizedCount":32,"severity":360},"\u003Csupple-admin> (supple-admin.php:0)",{"nodes":364,"edges":413},[365,367,368,370,375,377,382,385,387,390,392,394,399,401,403,405,408,411],{"id":304,"type":305,"label":347,"file":188,"line":366},338,{"id":308,"type":309,"label":354,"file":188,"line":355,"wp_function":356},{"id":353,"type":305,"label":369,"file":188,"line":366},"$_POST (x2)",{"id":371,"type":309,"label":372,"file":188,"line":373,"wp_function":374},"n3","get_results() [SQLi]",472,"get_results",{"id":376,"type":305,"label":347,"file":188,"line":366},"n4",{"id":378,"type":309,"label":379,"file":188,"line":380,"wp_function":381},"n5","get_row() [SQLi]",495,"get_row",{"id":383,"type":305,"label":384,"file":188,"line":216},"n6","$_SERVER['REQUEST_URI'] (x2)",{"id":386,"type":309,"label":310,"file":188,"line":216,"wp_function":311},"n7",{"id":388,"type":305,"label":389,"file":188,"line":366},"n8","$_POST (x5)",{"id":391,"type":309,"label":310,"file":188,"line":223,"wp_function":311},"n9",{"id":393,"type":305,"label":347,"file":188,"line":366},"n10",{"id":395,"type":309,"label":396,"file":188,"line":397,"wp_function":398},"n11","get_var() [SQLi]",849,"get_var",{"id":400,"type":305,"label":347,"file":188,"line":348},"n12",{"id":402,"type":350,"label":351,"file":188,"line":348},"n13",{"id":404,"type":309,"label":354,"file":188,"line":355,"wp_function":356},"n14",{"id":406,"type":305,"label":347,"file":188,"line":407},"n15",497,{"id":409,"type":350,"label":410,"file":188,"line":407},"n16","→ getListValuesForEditor()",{"id":412,"type":309,"label":372,"file":188,"line":373,"wp_function":374},"n17",[414,415,416,417,418,419,420,421,422,423],{"from":304,"to":308,"sanitized":340},{"from":353,"to":371,"sanitized":340},{"from":376,"to":378,"sanitized":340},{"from":383,"to":386,"sanitized":340},{"from":388,"to":391,"sanitized":340},{"from":393,"to":395,"sanitized":340},{"from":400,"to":402,"sanitized":314},{"from":402,"to":404,"sanitized":314},{"from":406,"to":409,"sanitized":314},{"from":409,"to":412,"sanitized":340},{"entryPoint":425,"graph":426,"unsanitizedCount":140,"severity":360},"showMetaBox (supple-write.php:242)",{"nodes":427,"edges":437},[428,431,432,434,436],{"id":304,"type":305,"label":429,"file":201,"line":430},"$_REQUEST",245,{"id":308,"type":309,"label":310,"file":201,"line":291,"wp_function":311},{"id":353,"type":305,"label":429,"file":201,"line":433},256,{"id":371,"type":350,"label":435,"file":201,"line":433},"→ getDataStructure()",{"id":376,"type":309,"label":379,"file":201,"line":211,"wp_function":381},[438,439,440],{"from":304,"to":308,"sanitized":314},{"from":353,"to":371,"sanitized":314},{"from":371,"to":376,"sanitized":314},{"entryPoint":442,"graph":443,"unsanitizedCount":32,"severity":360},"\u003Csupple-write> (supple-write.php:0)",{"nodes":444,"edges":454},[445,446,447,448,449,450,451,452,453],{"id":304,"type":305,"label":429,"file":201,"line":430},{"id":308,"type":309,"label":310,"file":201,"line":291,"wp_function":311},{"id":353,"type":305,"label":429,"file":201,"line":430},{"id":371,"type":309,"label":372,"file":201,"line":231,"wp_function":374},{"id":376,"type":305,"label":429,"file":201,"line":430},{"id":378,"type":309,"label":379,"file":201,"line":211,"wp_function":381},{"id":383,"type":305,"label":429,"file":201,"line":433},{"id":386,"type":350,"label":435,"file":201,"line":433},{"id":388,"type":309,"label":379,"file":201,"line":211,"wp_function":381},[455,456,457,458,459],{"from":304,"to":308,"sanitized":340},{"from":353,"to":371,"sanitized":340},{"from":376,"to":378,"sanitized":340},{"from":383,"to":386,"sanitized":314},{"from":386,"to":388,"sanitized":314},{"summary":461,"deductions":462},"The supple-forms plugin v0.1.62 exhibits a mixed security posture. While it boasts no known CVEs and a generally low number of entry points, several concerning code signals warrant attention. The high percentage of flows with unsanitized paths, particularly those flagged as high severity in taint analysis, suggests potential for vulnerabilities if user input is not handled rigorously. Additionally, the extremely low rate of properly escaped output (2%) is a significant concern, indicating a high risk of Cross-Site Scripting (XSS) vulnerabilities. \n\nThe plugin's lack of documented vulnerabilities is a positive sign, suggesting either a history of secure development or a lack of widespread testing. However, the static analysis reveals underlying weaknesses that could lead to exploitable issues. The presence of numerous SQL queries (48) with only 79% using prepared statements also introduces a minor risk of SQL injection, though the taint analysis didn't flag these specifically. The strong use of nonce and capability checks on its limited entry points is a positive practice. \n\nIn conclusion, while the plugin has a clean vulnerability history and good intentions regarding authentication and nonces, the identified issues with unsanitized paths and especially output escaping pose considerable risks. These factors, if left unaddressed, could significantly undermine the plugin's security.",[463,466,469,471],{"reason":464,"points":465},"High percentage of unsanitized paths in taint analysis",12,{"reason":467,"points":468},"Very low rate of properly escaped output",15,{"reason":470,"points":107},"SQL queries not using prepared statements",{"reason":472,"points":11},"High severity taint flows identified","2026-03-16T23:41:05.806Z",{"wat":475,"direct":486},{"assetPaths":476,"generatorPatterns":481,"scriptPaths":482,"versionParams":485},[477,478,479,480],"\u002Fwp-content\u002Fplugins\u002Fsupple-forms\u002Fcss\u002Fui.core.css","\u002Fwp-content\u002Fplugins\u002Fsupple-forms\u002Fcss\u002Fui.datepicker.css","\u002Fwp-content\u002Fplugins\u002Fsupple-forms\u002Fjs\u002Fui.datepicker.js","\u002Fwp-content\u002Fplugins\u002Fsupple-forms\u002Fjs\u002Fsupple-admin.js",[],[483,484],"wp-content\u002Fplugins\u002Fsupple-forms\u002Fjs\u002Fui.datepicker.js","wp-content\u002Fplugins\u002Fsupple-forms\u002Fjs\u002Fsupple-admin.js",[],{"cssClasses":487,"htmlComments":488,"htmlAttributes":489,"restEndpoints":490,"jsGlobals":491,"shortcodeOutput":492},[4],[],[],[],[],[]]