PluginProbe
Boxzilla – WordPress Popup Builder / 3.2.21
Boxzilla – WordPress Popup Builder v3.2.21
3.4.11 3.4.10 3.4.9 3.4.3 3.4.4 3.4.5 3.4.6 3.4.7 3.4.8 trunk 3.0 3.0.1 3.0.2 3.0.3 3.1 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.17 3.1.18 All 72 releases
← All changes | src/default-actions.php +70 -25 3.1.103.2.21 View file →
@@ -4,30 +4,75 @@
4 4
5 5 $boxzilla = boxzilla();
6 6
7 7 // Register custom post type
8 -add_action( 'init', function() use( $boxzilla ){
9 - $args = array(
10 - 'public' => false,
11 - 'labels' => array(
12 - 'name' => __( 'Boxzilla', 'boxzilla' ),
13 - 'singular_name' => __( 'Box', 'boxzilla' ),
14 - 'add_new' => __( 'Add New', 'boxzilla' ),
15 - 'add_new_item' => __( 'Add New Box', 'boxzilla' ),
16 - 'edit_item' => __( 'Edit Box', 'boxzilla' ),
17 - 'new_item' => __( 'New Box', 'boxzilla' ),
18 - 'all_items' => __( 'All Boxes', 'boxzilla' ),
19 - 'view_item' => __( 'View Box', 'boxzilla' ),
20 - 'search_items' => __( 'Search Boxes', 'boxzilla' ),
21 - 'not_found' => __( 'No Boxes found', 'boxzilla' ),
22 - 'not_found_in_trash' => __( 'No Boxes found in Trash', 'boxzilla' ),
23 - 'parent_item_colon' => '',
24 - 'menu_name' => __( 'Boxzilla', 'boxzilla' )
25 - ),
26 - 'show_ui' => true,
27 - 'menu_position' => '108.1337133',
28 - 'menu_icon' => $boxzilla->plugin->url( '/assets/img/menu-icon.png' ),
29 - 'query_var' => false
30 - );
8 +add_action(
9 + 'init',
10 + function () use ( $boxzilla ) {
11 + $args = array(
12 + 'public' => false,
13 + 'labels' => array(
14 + 'name' => __( 'Boxzilla', 'boxzilla' ),
15 + 'singular_name' => __( 'Box', 'boxzilla' ),
16 + 'add_new' => __( 'Add New', 'boxzilla' ),
17 + 'add_new_item' => __( 'Add New Box', 'boxzilla' ),
18 + 'edit_item' => __( 'Edit Box', 'boxzilla' ),
19 + 'new_item' => __( 'New Box', 'boxzilla' ),
20 + 'all_items' => __( 'All Boxes', 'boxzilla' ),
21 + 'view_item' => __( 'View Box', 'boxzilla' ),
22 + 'search_items' => __( 'Search Boxes', 'boxzilla' ),
23 + 'not_found' => __( 'No Boxes found', 'boxzilla' ),
24 + 'not_found_in_trash' => __( 'No Boxes found in Trash', 'boxzilla' ),
25 + 'parent_item_colon' => '',
26 + 'menu_name' => __( 'Boxzilla', 'boxzilla' ),
27 + ),
28 + 'show_ui' => true,
29 + 'menu_position' => '108.1337133',
30 + 'menu_icon' => 'data:image/svg+xml;base64,' . base64_encode( '<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="xMidYMid meet" viewBox="0 0 16 16" width="16" height="16"><defs><path d="M0 0L16 0L16 16L0 16L0 16L0 0ZM6.72 13.59L6.72 12.47L7.71 13.28L8.94 13.59L10.17 13.28L11.17 12.46L11.85 11.25L12.1 9.76L11.85 8.27L11.17 7.05L10.17 6.23L8.94 5.93L7.71 6.23L6.72 7.04L6.72 2.27L4.16 2.27L4.16 13.59L4.16 13.59L6.72 13.59ZM9.93 9.03L10.06 9.76L9.93 10.49L9.56 11.08L9.01 11.48L8.35 11.63L7.68 11.48L7.13 11.08L6.76 10.49L6.72 10.26L6.72 9.25L6.76 9.03L7.13 8.43L7.68 8.03L8.35 7.88L9.01 8.03L9.56 8.43L9.56 8.43L9.93 9.03Z" id="c1kAiZqIlD"></path></defs><g><g><g><use xlink:href="#c1kAiZqIlD" opacity="1" fill="#a0a5aa" fill-opacity="1"></use></g></g></g></svg>' ),
31 + 'query_var' => false,
32 + 'capability_type' => 'box',
33 + 'capabilities' => array(
34 + 'edit_post' => 'edit_box',
35 + 'edit_posts' => 'edit_boxes',
36 + 'edit_others_posts' => 'edit_other_boxes',
37 + 'publish_posts' => 'publish_boxes',
38 + 'read_post' => 'read_box',
39 + 'read_private_posts' => 'read_private_box',
40 + 'delete_posts' => 'delete_box',
41 + ),
42 + );
31 43
32 - register_post_type( 'boxzilla-box', $args );
33 -});
44 + register_post_type( 'boxzilla-box', $args );
45 +
46 + add_shortcode( 'boxzilla_link', 'boxzilla_get_link_html' );
47 + }
48 +);
49 +
50 +add_action(
51 + 'admin_init',
52 + function () {
53 + $admins = get_role( 'administrator' );
54 +
55 + if ( ! $admins->has_cap( 'edit_box' ) ) {
56 + $admins->add_cap( 'edit_box' );
57 + $admins->add_cap( 'edit_boxes' );
58 + $admins->add_cap( 'edit_other_boxes' );
59 + $admins->add_cap( 'publish_boxes' );
60 + $admins->add_cap( 'read_box' );
61 + $admins->add_cap( 'read_private_box' );
62 + $admins->add_cap( 'delete_box' );
63 + }
64 + }
65 +);
66 +
67 +function boxzilla_get_link_html( $args = array(), $content = '' ) {
68 + $valid_actions = array(
69 + 'show',
70 + 'toggle',
71 + 'hide',
72 + 'dismiss',
73 + );
74 + $box_id = empty( $args['box'] ) ? '' : absint( $args['box'] );
75 + $class_attr = empty( $args['class'] ) ? '' : esc_attr( $args['class'] );
76 + $action = empty( $args['action'] ) || ! in_array( $args['action'], $valid_actions, true ) ? 'show' : $args['action'];
77 + return sprintf( '<a href="javascript:Boxzilla.%s(%s)" class="%s">', $action, $box_id, $class_attr ) . $content . '</a>';
78 +}