wenpai.org/wp-content/plugins/single-sign-on-client/includes/rewrites.php
2024-06-21 23:57:39 +08:00

43 lines
No EOL
1 KiB
PHP

<?php
/**
* File: rewrites.php
*
* @author Justin Greer <justin@justin-greer.com
* @package WP Single Sign On Client
*/
defined( 'ABSPATH' ) or die( 'No script kiddies please!' );
/**
* Class WPOSSO_Rewrites
*
*/
class WPOSSO_Rewrites {
function create_rewrite_rules( $rules ) {
global $wp_rewrite;
$newRule = array( 'auth/(.+)' => 'index.php?auth=' . $wp_rewrite->preg_index( 1 ) );
$newRules = $newRule + $rules;
return $newRules;
}
function add_query_vars( $qvars ) {
$qvars[] = 'auth';
return $qvars;
}
function flush_rewrite_rules() {
global $wp_rewrite;
$wp_rewrite->flush_rules();
}
}
$WPOSSO_Rewrites = new WPOSSO_Rewrites();
add_filter( 'rewrite_rules_array', array( $WPOSSO_Rewrites, 'create_rewrite_rules' ) );
add_filter( 'query_vars', array( $WPOSSO_Rewrites, 'add_query_vars' ) );
add_filter( 'wp_loaded', array( $WPOSSO_Rewrites, 'flush_rewrite_rules' ) );
if ( isset( $_GET['auth'] ) && $_GET['auth'] == 'sso' ) {
require_once( dirname( dirname( __FILE__ ) ) . '/includes/callback.php' );
exit;
}