当您想在主题文件中实现检查时,可以使用操作after_switch_theme
; 您可以猜到,这将激活您的主题以执行检查,但如有必要,将切换回上一个主题。
如果未满足要求,我们将通过管理员通知通知用户(通过操作admin_notices
) 并立即切换回上一个主题。您将通过以下方式检索上一主题的详细信息get_option(\'theme_switched\')
// Minimum required version.
define( \'THEME_REQUIRED_PHP_VERSION\', \'5.3.0\' );
add_action( \'after_switch_theme\', \'check_theme_setup\' );
function check_theme_setup(){
// Compare versions.
if ( version_compare(phpversion(), THEME_REQUIRED_PHP_VERSION, \'<\') ) :
// Theme not activated info message.
add_action( \'admin_notices\', \'my_admin_notice\' );
function my_admin_notice() {
?>
<div class="update-nag">
<?php _e( \'You need to update your PHP version to run Circle Theme.\', \'text-domain\' ); ?> <br />
<?php _e( \'Actual version is:\', \'text-domain\' ) ?> <strong><?php echo phpversion(); ?></strong>, <?php _e( \'required is\', \'text-domain\' ) ?> <strong><?php echo THEME_REQUIRED_PHP_VERSION; ?></strong>
</div>
<?php
}
// Switch back to previous theme.
switch_theme( $old_theme->stylesheet );
return false;
endif;
}
您可以在
functions.php
但也在一个额外的插件中。如果您在插件中使用它,则可以移动检查点
after_switch_theme
以避免主题激活。