| @@ 1702-1728 (lines=27) @@ | ||
| 1699 | } |
|
| 1700 | } |
|
| 1701 | ||
| 1702 | function is_post_type_allowed( $post_type ) { |
|
| 1703 | // if the post type is empty, that's fine, WordPress will default to post |
|
| 1704 | if ( empty( $post_type ) ) { |
|
| 1705 | return true; |
|
| 1706 | } |
|
| 1707 | ||
| 1708 | // allow special 'any' type |
|
| 1709 | if ( 'any' == $post_type ) { |
|
| 1710 | return true; |
|
| 1711 | } |
|
| 1712 | ||
| 1713 | // check for allowed types |
|
| 1714 | if ( in_array( $post_type, $this->_get_whitelisted_post_types() ) ) { |
|
| 1715 | return true; |
|
| 1716 | } |
|
| 1717 | ||
| 1718 | if ( $post_type_object = get_post_type_object( $post_type ) ) { |
|
| 1719 | if ( ! empty( $post_type_object->show_in_rest ) ) { |
|
| 1720 | return $post_type_object->show_in_rest; |
|
| 1721 | } |
|
| 1722 | if ( ! empty( $post_type_object->publicly_queryable ) ) { |
|
| 1723 | return $post_type_object->publicly_queryable; |
|
| 1724 | } |
|
| 1725 | } |
|
| 1726 | ||
| 1727 | return ! empty( $post_type_object->public ); |
|
| 1728 | } |
|
| 1729 | ||
| 1730 | /** |
|
| 1731 | * Gets the whitelisted post types that JP should allow access to. |
|
| @@ 216-242 (lines=27) @@ | ||
| 213 | } |
|
| 214 | ||
| 215 | // copied from class.json-api-endpoints.php |
|
| 216 | public function is_post_type_allowed( $post_type ) { |
|
| 217 | // if the post type is empty, that's fine, WordPress will default to post |
|
| 218 | if ( empty( $post_type ) ) { |
|
| 219 | return true; |
|
| 220 | } |
|
| 221 | ||
| 222 | // allow special 'any' type |
|
| 223 | if ( 'any' == $post_type ) { |
|
| 224 | return true; |
|
| 225 | } |
|
| 226 | ||
| 227 | // check for allowed types |
|
| 228 | if ( in_array( $post_type, $this->get_whitelisted_post_types() ) ) { |
|
| 229 | return true; |
|
| 230 | } |
|
| 231 | ||
| 232 | if ( $post_type_object = get_post_type_object( $post_type ) ) { |
|
| 233 | if ( ! empty( $post_type_object->show_in_rest ) ) { |
|
| 234 | return $post_type_object->show_in_rest; |
|
| 235 | } |
|
| 236 | if ( ! empty( $post_type_object->publicly_queryable ) ) { |
|
| 237 | return $post_type_object->publicly_queryable; |
|
| 238 | } |
|
| 239 | } |
|
| 240 | ||
| 241 | return ! empty( $post_type_object->public ); |
|
| 242 | } |
|
| 243 | ||
| 244 | // copied from class.json-api-endpoints.php |
|
| 245 | /** |
|