[ SYSTEM ]: Linux wordpress 6.1.0-44-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.164-1 (2026-03-09) x86_64
[ SERVER ]: Apache/2.4.66 (Debian) | PHP: 8.2.30
[ USER ]: www-data | IP: 172.19.30.54
GEFORCE FILE MANAGER
/
var
/
www
/
html
/
wordpress
/
wp-content
/
plugins
/
elementor
/
modules
/
site-navigation
/
rest-fields
/
UPLOAD:
NAME
SIZE
QUICK PERMS
ACTIONS
📄 page-user-can.php
935 B
SET
[ EDIT ]
|
[ DEL ]
DELETE SELECTED
[ CLOSE ]
EDIT: page-user-can.php
<?php namespace Elementor\Modules\SiteNavigation\Rest_Fields; if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly. } class Page_User_Can { public function register_rest_field() { if ( ! isset( $_GET['_fields'] ) ) { return; } $fields = sanitize_text_field( wp_unslash( $_GET['_fields'] ) ); $array_fields = explode( ',', $fields ); if ( ! in_array( 'user_can', $array_fields ) ) { return; } register_rest_field( 'page', 'user_can', [ 'get_callback' => [ $this, 'get_callback' ], 'schema' => [ 'description' => __( 'Whether the current user can edit or delete this post', 'elementor' ), 'type' => 'array', ], ] ); } public function get_callback( $post ) { $can_edit = current_user_can( 'edit_post', $post['id'] ); $can_delete = current_user_can( 'delete_post', $post['id'] ); return [ 'edit' => $can_edit, 'delete' => $can_delete, ]; } }