at path:
ROOT
/
wp-content
/
plugins
/
meta-box
/
inc
/
core.php
run:
R
W
Run
fields
DIR
2026-03-30 21:13:33
R
W
Run
helpers
DIR
2026-03-30 21:13:33
R
W
Run
interfaces
DIR
2026-03-30 21:13:33
R
W
Run
storages
DIR
2026-03-30 21:13:33
R
W
Run
walkers
DIR
2026-03-30 21:13:33
R
W
Run
autoloader.php
1.49 KB
2023-06-23 06:08:34
R
W
Run
Delete
Rename
clone.php
3.51 KB
2025-11-07 08:15:16
R
W
Run
Delete
Rename
core.php
2.82 KB
2026-03-24 11:25:32
R
W
Run
Delete
Rename
field-registry.php
1.63 KB
2025-11-07 08:15:16
R
W
Run
Delete
Rename
field.php
17.9 KB
2025-11-07 08:15:16
R
W
Run
Delete
Rename
functions.php
9.5 KB
2024-08-20 12:05:08
R
W
Run
Delete
Rename
loader.php
4.03 KB
2026-03-30 07:34:18
R
W
Run
Delete
Rename
media-modal.php
3.09 KB
2024-02-02 06:30:44
R
W
Run
Delete
Rename
meta-box-registry.php
1.27 KB
2025-11-07 08:15:16
R
W
Run
Delete
Rename
meta-box.php
12.38 KB
2025-11-07 08:15:16
R
W
Run
Delete
Rename
request.php
2.36 KB
2026-03-24 11:25:32
R
W
Run
Delete
Rename
sanitizer.php
8.38 KB
2026-03-05 12:31:14
R
W
Run
Delete
Rename
shortcode.php
2.54 KB
2025-11-07 08:15:16
R
W
Run
Delete
Rename
storage-registry.php
418 By
2022-12-05 07:03:04
R
W
Run
Delete
Rename
validation.php
2.59 KB
2024-01-22 12:51:48
R
W
Run
Delete
Rename
error_log
up
📄
core.php
Save
<?php class RWMB_Core { public function init() { add_filter( 'plugin_action_links_meta-box/meta-box.php', [ $this, 'plugin_links' ], 20 ); // Uses priority 20 to support custom post types registered using the default priority. add_action( 'init', [ $this, 'register_meta_boxes' ], 20 ); add_action( 'edit_page_form', [ $this, 'fix_page_template' ] ); $this->add_context_hooks(); } public function plugin_links( array $links ): array { $links[] = '<a href="https://docs.metabox.io?utm_source=plugin_links&utm_medium=link&utm_campaign=meta_box" target="_blank">' . esc_html__( 'Docs', 'meta-box' ) . '</a>'; $utc_timezone = new DateTimeZone( 'UTC' ); $now = new DateTime( 'now', $utc_timezone ); $sale_end = new DateTime( '2025-12-02 00:00:00', $utc_timezone ); if ( $now < $sale_end ) { $links[] = '<a href="https://metabox.io/black-friday/?utm_source=plugin_links&utm_medium=link&utm_campaign=black_friday" target="_blank" style="color: #39b54a; font-weight: bold">' . esc_html__( 'Black Friday Sale', 'meta-box' ) . '</a>'; } return $links; } public function register_meta_boxes() { $configs = apply_filters( 'rwmb_meta_boxes', [] ); $registry = rwmb_get_registry( 'meta_box' ); foreach ( $configs as $config ) { if ( ! is_array( $config ) || empty( $config ) ) { continue; } $meta_box = $registry->make( $config ); $meta_box->register_fields(); } } /** * WordPress will prevent post data saving if a page template has been selected that does not exist. * This is especially a problem when switching themes, and old page templates are in the post data. * Unset the page template if the page does not exist to allow the post to save. */ public function fix_page_template( WP_Post $post ) { $template = get_post_meta( $post->ID, '_wp_page_template', true ); $page_templates = wp_get_theme()->get_page_templates(); // If the template doesn't exists, remove the data to allow WordPress to save. if ( ! isset( $page_templates[ $template ] ) ) { delete_post_meta( $post->ID, '_wp_page_template' ); } } /** * Get registered meta boxes via a filter. * @deprecated No longer used. Keep for backward-compatibility with extensions. */ public static function get_meta_boxes(): array { $meta_boxes = rwmb_get_registry( 'meta_box' )->all(); return wp_list_pluck( $meta_boxes, 'meta_box' ); } public function add_context_hooks() { $hooks = [ 'edit_form_top', 'edit_form_after_title', 'edit_form_after_editor', 'edit_form_before_permalink', ]; foreach ( $hooks as $hook ) { add_action( $hook, [ $this, 'render_meta_boxes_for_context' ] ); } } public function render_meta_boxes_for_context( $post ) { $hook = current_filter(); $context = 'edit_form_top' === $hook ? 'form_top' : substr( $hook, 10 ); do_meta_boxes( null, $context, $post ); } }