Edit File by line
/home/zeestwma/richards.../wp-conte.../plugins/jetpack/sal
File: class.json-api-metadata.php
<?php // phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
[0] Fix | Delete
/**
[1] Fix | Delete
* WPCOM_JSON_API_Metadata class - Utility classes that don't necessarily have a home yet.
[2] Fix | Delete
*
[3] Fix | Delete
* @package automattic/jetpack
[4] Fix | Delete
*/
[5] Fix | Delete
[6] Fix | Delete
if ( ! defined( 'ABSPATH' ) ) {
[7] Fix | Delete
exit( 0 );
[8] Fix | Delete
}
[9] Fix | Delete
[10] Fix | Delete
/**
[11] Fix | Delete
* Base class for WPCOM_JSON_API_Metadata
[12] Fix | Delete
*/
[13] Fix | Delete
class WPCOM_JSON_API_Metadata {
[14] Fix | Delete
/**
[15] Fix | Delete
* Checks to see if a meta key is in the array of allowed public (and whitelisted) meta data.
[16] Fix | Delete
*
[17] Fix | Delete
* Additionally, if the key begins with 'geo_' or '_wpas_', true will also be returned.
[18] Fix | Delete
*
[19] Fix | Delete
* @param string $key A post metadata key value to check.
[20] Fix | Delete
* @return bool True or false depending on whether the key meets the defined criteria.
[21] Fix | Delete
**/
[22] Fix | Delete
public static function is_public( $key ) {
[23] Fix | Delete
if ( empty( $key ) ) {
[24] Fix | Delete
return false;
[25] Fix | Delete
}
[26] Fix | Delete
[27] Fix | Delete
// Default whitelisted meta keys.
[28] Fix | Delete
$whitelisted_meta = array( '_thumbnail_id' );
[29] Fix | Delete
[30] Fix | Delete
// whitelist of metadata that can be accessed.
[31] Fix | Delete
/** This filter is documented in json-endpoints/class.wpcom-json-api-post-endpoint.php */
[32] Fix | Delete
if ( in_array( $key, apply_filters( 'rest_api_allowed_public_metadata', $whitelisted_meta ), true ) ) {
[33] Fix | Delete
return true;
[34] Fix | Delete
}
[35] Fix | Delete
[36] Fix | Delete
if ( str_starts_with( $key, 'geo_' ) ) {
[37] Fix | Delete
return true;
[38] Fix | Delete
}
[39] Fix | Delete
[40] Fix | Delete
if ( str_starts_with( $key, '_wpas_' ) ) {
[41] Fix | Delete
return true;
[42] Fix | Delete
}
[43] Fix | Delete
[44] Fix | Delete
return false;
[45] Fix | Delete
}
[46] Fix | Delete
[47] Fix | Delete
/**
[48] Fix | Delete
* Checks to see if a meta key should be used internally only.
[49] Fix | Delete
*
[50] Fix | Delete
* @param string $key A post metadata key value to check.
[51] Fix | Delete
* @return bool True or false depending on whether the key meets the defined criteria.
[52] Fix | Delete
**/
[53] Fix | Delete
public static function is_internal_only( $key ) {
[54] Fix | Delete
// We want to always return the `_jetpack_blogging_prompt_key` key in post responses if it is available.
[55] Fix | Delete
if ( $key === '_jetpack_blogging_prompt_key' ) {
[56] Fix | Delete
return false;
[57] Fix | Delete
}
[58] Fix | Delete
[59] Fix | Delete
// We want to always return the `_jetpack_newsletter_access` key to
[60] Fix | Delete
// display the correct newsletter access in Calypso.
[61] Fix | Delete
$whitelist = array(
[62] Fix | Delete
'_jetpack_newsletter_access',
[63] Fix | Delete
'_jetpack_newsletter_tier_id',
[64] Fix | Delete
'_jetpack_dont_email_post_to_subs',
[65] Fix | Delete
);
[66] Fix | Delete
[67] Fix | Delete
if ( in_array( $key, $whitelist, true ) ) {
[68] Fix | Delete
return false;
[69] Fix | Delete
}
[70] Fix | Delete
[71] Fix | Delete
if ( str_starts_with( $key, '_jetpack_' ) ) {
[72] Fix | Delete
return true;
[73] Fix | Delete
}
[74] Fix | Delete
[75] Fix | Delete
if ( str_starts_with( $key, '_elasticsearch_' ) ) {
[76] Fix | Delete
return true;
[77] Fix | Delete
}
[78] Fix | Delete
[79] Fix | Delete
return false;
[80] Fix | Delete
}
[81] Fix | Delete
}
[82] Fix | Delete
[83] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function