Overview

Classes

  • Papi_Admin
  • Papi_Admin_Ajax
  • Papi_Admin_Assets
  • Papi_Admin_Management_Pages
  • Papi_Admin_Menu
  • Papi_Admin_Meta_Box
  • Papi_Admin_Meta_Box_Tabs
  • Papi_Admin_Option_Handler
  • Papi_Admin_Post_Handler
  • Papi_Admin_View
  • Papi_Attachment_Type
  • Papi_Conditional_Rules
  • Papi_Container
  • Papi_Core_Autoload
  • Papi_Core_Conditional
  • Papi_Core_Conditional_Rule
  • Papi_Core_Data_Handler
  • Papi_Core_Page
  • Papi_Core_Property
  • Papi_Core_Type
  • Papi_Loader
  • Papi_Option_Page
  • Papi_Option_Type
  • Papi_Page_Type
  • Papi_Page_Type_Meta
  • Papi_Porter
  • Papi_Porter_Driver
  • Papi_Porter_Driver_Core
  • Papi_Post_Page
  • Papi_Property
  • Papi_Property_Bool
  • Papi_Property_Checkbox
  • Papi_Property_Color
  • Papi_Property_Datetime
  • Papi_Property_Divider
  • Papi_Property_Dropdown
  • Papi_Property_Editor
  • Papi_Property_Email
  • Papi_Property_File
  • Papi_Property_Flexible
  • Papi_Property_Gallery
  • Papi_Property_Hidden
  • Papi_Property_Html
  • Papi_Property_Image
  • Papi_Property_Link
  • Papi_Property_Number
  • Papi_Property_Post
  • Papi_Property_Radio
  • Papi_Property_Reference
  • Papi_Property_Relationship
  • Papi_Property_Repeater
  • Papi_Property_String
  • Papi_Property_Term
  • Papi_Property_Text
  • Papi_Property_Url
  • Papi_Property_User

Functions

  • current_page
  • papi
  • papi_action_delete_value
  • papi_action_include
  • papi_append_post_type_query
  • papi_body_class
  • papi_cache_delete
  • papi_cache_get
  • papi_cache_key
  • papi_cache_set
  • papi_camel_case
  • papi_cast_string_value
  • papi_convert_to_string
  • papi_current_user_is_allowed
  • papi_dashify
  • papi_delete_field
  • papi_delete_option
  • papi_delete_property_meta_value
  • papi_display_page_type
  • papi_doing_ajax
  • papi_esc_html
  • papi_f
  • papi_field
  • papi_field_shortcode
  • papi_field_value
  • papi_fields
  • papi_filter_conditional_rule_allowed
  • papi_filter_core_load_one_type_on
  • papi_filter_format_value
  • papi_filter_load_value
  • papi_filter_settings_directories
  • papi_filter_settings_only_page_type
  • papi_filter_settings_page_type_column_title
  • papi_filter_settings_show_page_type
  • papi_filter_settings_show_standard_page_type
  • papi_filter_settings_show_standard_page_type_in_filter
  • papi_filter_settings_sort_order
  • papi_filter_settings_standard_page_description
  • papi_filter_settings_standard_page_name
  • papi_filter_settings_standard_page_thumbnail
  • papi_filter_update_value
  • papi_from_property_array_slugs
  • papi_get_all_files_in_directory
  • papi_get_all_page_type_files
  • papi_get_all_page_types
  • papi_get_box_property
  • papi_get_class_name
  • papi_get_field
  • papi_get_file_path
  • papi_get_number_of_pages
  • papi_get_only_objects
  • papi_get_option
  • papi_get_options_and_properties
  • papi_get_or_post
  • papi_get_page
  • papi_get_page_new_url
  • papi_get_page_query_strings
  • papi_get_page_type
  • papi_get_page_type_base_path
  • papi_get_page_type_by_id
  • papi_get_page_type_by_post_id
  • papi_get_page_type_id
  • papi_get_page_type_key
  • papi_get_page_type_meta_value
  • papi_get_page_type_name
  • papi_get_page_type_template
  • papi_get_parent_post_id
  • papi_get_post_id
  • papi_get_post_type
  • papi_get_post_type_label
  • papi_get_post_types
  • papi_get_property_class_name
  • papi_get_property_meta_value
  • papi_get_property_options
  • papi_get_property_type
  • papi_get_property_type_key
  • papi_get_property_type_key_f
  • papi_get_qs
  • papi_get_sanitized_post
  • papi_get_slugs
  • papi_get_tab_options
  • papi_html_name
  • papi_html_tag
  • papi_include_template
  • papi_is_empty
  • papi_is_json
  • papi_is_method
  • papi_is_option_page
  • papi_is_option_type
  • papi_is_page_type
  • papi_is_property
  • papi_is_property_type_key
  • papi_is_rule
  • papi_management_page_type_render_box
  • papi_maybe_convert_to_array
  • papi_maybe_convert_to_object
  • papi_maybe_get_callable_value
  • papi_maybe_json_decode
  • papi_maybe_json_encode
  • papi_nl2br
  • papi_option_shortcode
  • papi_option_type_exists
  • papi_page_type_exists
  • papi_populate_properties
  • papi_property
  • papi_remove_papi
  • papi_remove_trailing_quotes
  • papi_render_html_tag
  • papi_render_properties
  • papi_render_property
  • papi_require_text
  • papi_required_html
  • papi_rule
  • papi_santize_data
  • papi_set_page_type_id
  • papi_setup_tabs
  • papi_slugify
  • papi_sort_order
  • papi_tab
  • papi_template
  • papi_template_include
  • papi_to_array
  • papi_to_property_array_slugs
  • papi_translate_keys
  • papi_underscorify
  • papi_update_field
  • papi_update_option
  • papi_update_property_meta_value
  • papi_with
  • papify
  • the_papi_field
  • the_papi_option
  • the_papi_page_type_name
  • Overview
  • Class
  1: <?php
  2: 
  3: /**
  4:  * Get conditional rule value.
  5:  *
  6:  * @param  array|Papi_Core_Conditional_Rule $rule
  7:  *
  8:  * @return bool
  9:  */
 10: function papi_filter_conditional_rule_allowed( $rule ) {
 11:     $rule = papi_rule( $rule );
 12: 
 13:     if ( ! papi_is_rule( $rule ) ) {
 14:         return false;
 15:     }
 16: 
 17:     $result = apply_filters(
 18:         'papi/conditional/rule/' . $rule->operator,
 19:         $rule
 20:     );
 21: 
 22:     if ( $result === true || $result === false ) {
 23:         return $result;
 24:     }
 25: 
 26:     return false;
 27: }
 28: 
 29: /**
 30:  * This filter will return all post types that should load only one page type.
 31:  *
 32:  * @return array
 33:  */
 34: function papi_filter_core_load_one_type_on() {
 35:     $default = ['attachment'];
 36:     $result  = apply_filters(
 37:         'papi/core/load_one_type_on',
 38:         $default
 39:     );
 40: 
 41:     return is_array( $result ) ? $result : $default;
 42: }
 43: 
 44: /**
 45:  * Format the value of the property before it's returned to WordPress admin or the site.
 46:  *
 47:  * @param  string $type
 48:  * @param  mixed  $value
 49:  * @param  string $slug
 50:  * @param  int    $post_id
 51:  *
 52:  * @return mixed
 53:  */
 54: function papi_filter_format_value( $type, $value, $slug, $post_id ) {
 55:     return apply_filters(
 56:         'papi/format_value/' . $type,
 57:         $value,
 58:         $slug,
 59:         $post_id
 60:     );
 61: }
 62: 
 63: /**
 64:  * This filter is applied after the value is loaded in the database.
 65:  *
 66:  * @param  string $type
 67:  * @param  mixed  $value
 68:  * @param  string $slug
 69:  * @param  int    $post_id
 70:  *
 71:  * @return mixed
 72:  */
 73: function papi_filter_load_value( $type, $value, $slug, $post_id ) {
 74:     return apply_filters(
 75:         'papi/load_value/' . $type,
 76:         $value,
 77:         $slug,
 78:         $post_id
 79:     );
 80: }
 81: 
 82: /**
 83:  * Get all registered page type directories.
 84:  *
 85:  * @return array
 86:  */
 87: function papi_filter_settings_directories() {
 88:     $directories = apply_filters(
 89:         'papi/settings/directories',
 90:         []
 91:     );
 92: 
 93:     if ( is_string( $directories ) ) {
 94:         return [$directories];
 95:     }
 96: 
 97:     if ( ! is_array( $directories ) ) {
 98:         return [];
 99:     }
100: 
101:     return array_filter( $directories, function ( $directory ) {
102:         return is_string( $directory );
103:     } );
104: }
105: 
106: /**
107:  * Get the only page type that will be used for the given post type.
108:  *
109:  * @param  string $post_type
110:  *
111:  * @return string
112:  */
113: function papi_filter_settings_only_page_type( $post_type ) {
114:     $page_type = apply_filters(
115:         'papi/settings/only_page_type_' . $post_type,
116:         ''
117:     );
118: 
119:     if ( ! is_string( $page_type ) ) {
120:         return '';
121:     }
122: 
123:     return str_replace( '.php', '', $page_type );
124: }
125: 
126: /**
127:  * Change column title for page type column.
128:  *
129:  * @param  string $post_type
130:  *
131:  * @return string
132:  */
133: function papi_filter_settings_page_type_column_title( $post_type ) {
134:     return apply_filters(
135:         'papi/settings/column_title_' . $post_type,
136:         __( 'Type', 'papi' )
137:     );
138: }
139: 
140: /**
141:  * Show page type in add new page view for the given post type.
142:  *
143:  * @param string        $post_type
144:  * @param string|object $page_type
145:  *
146:  * @return bool
147:  */
148: function papi_filter_settings_show_page_type( $post_type, $page_type ) {
149:     if ( is_object( $page_type ) && method_exists( $page_type, 'get_id' ) ) {
150:         $page_type = $page_type->get_id();
151:     }
152: 
153:     $value = apply_filters(
154:         'papi/settings/show_page_type_' . $post_type,
155:         $page_type
156:     );
157: 
158:     if ( $value === $page_type ) {
159:         return true;
160:     }
161: 
162:     if ( ! is_bool( $value ) ) {
163:         return false;
164:     }
165: 
166:     return $value;
167: }
168: 
169: /**
170:  * Get standard page description for the given post type.
171:  *
172:  * @param  string $post_type
173:  *
174:  * @return string
175:  */
176: function papi_filter_settings_standard_page_description( $post_type ) {
177:     $name = papi_get_post_type_label( $post_type, 'singular_name', 'Page' );
178: 
179:     return apply_filters(
180:         'papi/settings/standard_page_description_' . $post_type,
181:         sprintf( __( '%s with WordPress standard fields', 'papi' ), $name )
182:     );
183: }
184: 
185: /**
186:  * Get standard page name for the given post type.
187:  *
188:  * @param  string $post_type
189:  *
190:  * @return string
191:  */
192: function papi_filter_settings_standard_page_name( $post_type ) {
193:     $name = papi_get_post_type_label( $post_type, 'singular_name', 'Page' );
194: 
195:     return apply_filters(
196:         'papi/settings/standard_page_name_' . $post_type,
197:         sprintf( __( 'Standard %s', 'papi' ), $name )
198:     );
199: }
200: 
201: /**
202:  * Show standard page type on the given post type.
203:  *
204:  * @param  string $post_type
205:  *
206:  * @return bool
207:  */
208: function papi_filter_settings_show_standard_page_type( $post_type ) {
209:     return ! apply_filters(
210:         'papi/settings/show_standard_page_type_' . $post_type,
211:         false
212:     ) === false;
213: }
214: 
215: /**
216:  * Show standard page type in filter dropdown on the given post type.
217:  *
218:  * @param  string $post_type
219:  *
220:  * @return bool
221:  */
222: function papi_filter_settings_show_standard_page_type_in_filter( $post_type ) {
223:     return ! apply_filters(
224:         'papi/settings/show_standard_page_type_in_filter_' . $post_type,
225:         papi_filter_settings_show_standard_page_type( $post_type )
226:     ) === false;
227: }
228: 
229: /**
230:  * Get standard page thumbnail for the given post type.
231:  *
232:  * @param  string $post_type
233:  *
234:  * @return string
235:  */
236: function papi_filter_settings_standard_page_thumbnail( $post_type ) {
237:     return apply_filters(
238:         'papi/settings/standard_page_thumbnail_' . $post_type,
239:         ''
240:     );
241: }
242: 
243: /**
244:  * Get the default sort order that is 1000.
245:  *
246:  * @return int
247:  */
248: function papi_filter_settings_sort_order() {
249:     return intval( apply_filters( 'papi/settings/sort_order', 1000 ) );
250: }
251: 
252: /**
253:  * This filter is applied before the value is saved in the database.
254:  *
255:  * @param  string $type
256:  * @param  mixed  $value
257:  * @param  string $slug
258:  * @param  int    $post_id
259:  *
260:  * @return mixed
261:  */
262: function papi_filter_update_value( $type, $value, $slug, $post_id ) {
263:     return apply_filters(
264:         'papi/update_value/' . $type,
265:         $value,
266:         $slug,
267:         $post_id
268:     );
269: }
270: 
API documentation generated by ApiGen