| Server IP : 104.21.1.144 / Your IP : 104.23.197.97 Web Server : nginx/1.26.1 System : Linux HE9229 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 User : www ( 1000) PHP Version : 8.0.26 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /www/wwwroot/11ph_ph_com/wp-content/plugins/litespeed-cache/thirdparty/ |
Upload File : |
<?php
/**
* The Third Party integration with the bbPress plugin.
*
* @since 1.0.5
*/
namespace LiteSpeed\Thirdparty;
defined('WPINC') || exit();
use LiteSpeed\Router;
class BBPress {
/**
* Detect if bbPress is installed and if the page is a bbPress page.
*
* @since 1.0.5
* @access public
*/
public static function detect() {
if (function_exists('is_bbpress')) {
add_action('litespeed_api_purge_post', __CLASS__ . '::on_purge'); // todo
if (apply_filters('litespeed_esi_status', false)) {
// don't consider private cache yet (will do if any feedback)
add_action('litespeed_control_finalize', __CLASS__ . '::set_control');
}
}
}
/**
* This filter is used to let the cache know if a page is cacheable.
*
* @access public
* @since 1.2.0
*/
public static function set_control() {
if (!apply_filters('litespeed_control_cacheable', false)) {
return;
}
// set non ESI public
if (is_bbpress() && Router::is_logged_in()) {
do_action('litespeed_control_set_nocache', 'bbpress nocache due to loggedin');
}
}
/**
* When a bbPress page is purged, need to purge the forums list and
* any/all ancestor pages.
*
* @since 1.0.5
* @access public
* @param integer $post_id The post id of the page being purged.
*/
public static function on_purge( $post_id ) {
if (!is_bbpress()) {
if (!function_exists('bbp_is_forum') || !function_exists('bbp_is_topic') || !function_exists('bbp_is_reply')) {
return;
}
if (!bbp_is_forum($post_id) && !bbp_is_topic($post_id) && !bbp_is_reply($post_id)) {
return;
}
}
// Need to purge base forums page, bbPress page was updated.
do_action('litespeed_purge_posttype', bbp_get_forum_post_type());
$ancestors = get_post_ancestors($post_id);
// If there are ancestors, need to purge them as well.
if (!empty($ancestors)) {
foreach ($ancestors as $ancestor) {
do_action('litespeed_purge_post', $ancestor);
}
}
global $wp_widget_factory;
$replies_widget = $wp_widget_factory->get_widget_object('BBP_Replies_Widget');
if (bbp_is_reply($post_id) && $replies_widget) {
do_action('litespeed_purge_widget', $replies_widget->id);
}
$topic_widget = $wp_widget_factory->get_widget_object('BBP_Topics_Widget');
if (bbp_is_topic($post_id) && $topic_widget) {
do_action('litespeed_purge_widget', $topic_widget->id);
}
}
}