| Server IP : 130.225.57.55 / Your IP : 216.73.216.60 Web Server : Apache System : Linux wp-vhost07 5.15.0-173-generic #183-Ubuntu SMP Fri Mar 6 13:29:34 UTC 2026 x86_64 User : root ( 0) PHP Version : 8.1.2-1ubuntu2.25 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /srv/www/reco2st.eu/https/wp-content/plugins/w3-total-cache/ |
Upload File : |
<?php
/**
* File: Generic_Plugin_AdminRowActions.php
*
* @package W3TC
*/
namespace W3TC;
/**
* Class Generic_Plugin_AdminRowActions
*/
class Generic_Plugin_AdminRowActions {
/**
* Runs plugin
*
* @return void
*/
public function run() {
add_filter( 'post_row_actions', array( $this, 'post_row_actions' ), 0, 2 );
add_filter( 'page_row_actions', array( $this, 'page_row_actions' ), 0, 2 );
add_action( 'post_submitbox_start', array( $this, 'post_submitbox_start' ) );
}
/**
* Filter for post_row_actions
*
* @param array $actions Actions.
* @param object $post Post.
*
* @return array
*/
public function post_row_actions( $actions, $post ) {
$capability = apply_filters( 'w3tc_capability_row_action_w3tc_flush_post', 'manage_options' );
/**
* Floor the filterable cap at manage_options to prevent a
* downstream filter from exposing the row action to non-admins
*.
*
* @since 2.10.0
*/
if ( empty( $capability ) || ! \current_user_can( 'manage_options' ) ) {
return $actions;
}
if ( current_user_can( $capability ) ) {
$actions = array_merge(
$actions,
array(
'w3tc_flush_post' => sprintf(
'<a href="%s">' . __( 'Purge from cache', 'w3-total-cache' ) . '</a>',
Util_Nonce::admin_nonce_url(
sprintf(
'admin.php?page=w3tc_dashboard&w3tc_flush_post&post_id=%d&force=true',
$post->ID
),
'w3tc_flush_post'
)
),
)
);
}
return $actions;
}
/**
* Filter for page_row_actions
*
* @param array $actions Actions.
* @param object $post Post.
*
* @return array
*/
public function page_row_actions( $actions, $post ) {
$capability = apply_filters( 'w3tc_capability_row_action_w3tc_flush_post', 'manage_options' );
/**
* Floor the filterable cap at manage_options to prevent a
* downstream filter from exposing the row action to non-admins
*.
*
* @since 2.10.0
*/
if ( empty( $capability ) || ! \current_user_can( 'manage_options' ) ) {
return $actions;
}
if ( current_user_can( $capability ) ) {
$actions = array_merge(
$actions,
array(
'w3tc_flush_post' => sprintf(
'<a href="%s">' . __( 'Purge from cache', 'w3-total-cache' ) . '</a>',
Util_Nonce::admin_nonce_url(
sprintf(
'admin.php?page=w3tc_dashboard&w3tc_flush_post&post_id=%d&force=true',
$post->ID
),
'w3tc_flush_post'
)
),
)
);
}
return $actions;
}
/**
* Display Purge from cache on Page/Post post.php.
*
* @return void
*/
public function post_submitbox_start() {
if ( current_user_can( 'manage_options' ) ) {
global $post;
if ( ! is_null( $post ) ) {
$w3tc_url = Util_Ui::url(
array(
'page' => 'w3tc_dashboard',
'w3tc_flush_post' => 'y',
'post_id' => $post->ID,
'force' => true,
)
);
printf(
'<div><a href="%s">%s</a></div>',
esc_url( $w3tc_url ),
esc_html__( 'Purge from cache', 'w3-total-cache' )
);
}
}
}
}