Support » Plugin: WordPress HTTPS (SSL) » Partial fix for plugin

  • Like a lot of others here, I was naturally having a ton of issue with the plugin, but needed a quick fix for a client that needs to be up and running with a customized payment solution yesterday.

    The following works, but you’ll lose the secure login functionality. I only needed ssl for the pages associated with the form and the returns from Paypal (Paypal Payments Pro, using Payflow):

    ////////////////////////
    
    The problem (the error):
    
    Notice: force_ssl_login is deprecated since version 4.4! Use force_ssl_admin() instead. in /home/aghall5/public_html/wp-includes/functions.php on line 3573
    
    The filter associated with 3573 reads as follows:
    
    	/**
    	 * Filter whether to trigger an error for deprecated functions.
    	 *
    	 * @since 2.5.0
    	 *
    	 * @param bool $trigger Whether to trigger the error for deprecated functions. Default true.
    	 */
    	if ( WP_DEBUG && apply_filters( 'deprecated_function_trigger_error', true ) ) {
    		if ( function_exists( '__' ) ) {
    			if ( ! is_null( $replacement ) )
    				trigger_error( sprintf( __('%1$s is <strong>deprecated</strong> since version %2$s! Use %3$s instead.'), $function, $version, $replacement ) );
    
    ... end excerpt from wp-includes/functions.php
    
    If you comment out the following lines in wordpress-https/lib/wordpresshttps/module/core.php, it prevents the error noted above. As mentioned, you'll lose that functionality associated with the plugin, but the rest should work, and the assignmentof ssl to the individual page does work:
    
    	/**
    	 * Secure Login
    	 * WordPress HTTPS Filter - force_ssl
    	 *
    	 * @param boolean $force_ssl
    	 * @param int $post_id
    	 * @param string $url
    	 * @return boolean $force_ssl
    
    	public function secure_login( $force_ssl, $post_id = 0, $url = '' ) {
    		if ( $url != '' && $this->getPlugin()->isUrlLocal($url) ) {
    			if ( force_ssl_login() && preg_match('/wp-login\.php$/', $url) === 1 ) {
    				$force_ssl = true;
    			}
    		}
    		return $force_ssl;
    	}
    **/
    
    You might also want to comment out the add for the filter in the same file:
    
    /*		add_filter('force_ssl', array(&$this, 'secure_login'), 30, 3); */
    
    ////////////////////////
    
    That's the fix, at least for what I needed for the time being.

    https://wordpress.org/plugins/wordpress-https/

  • The topic ‘Partial fix for plugin’ is closed to new replies.