<?php class Redux_Validation_url extends ReduxFramework {	
	
	/**
	 * Field Constructor.
	 *
	 * Required - must call the parent constructor, then assign field and value to vars, and obviously call the render field function
	 *
	 * @since ReduxFramework 1.0.0
	*/
	function __construct($field, $value, $current) {
		
		parent::__construct();
		$this->field = $field;
		$this-&gt;field['msg'] = (isset($this-&gt;field['msg']))?$this-&gt;field['msg']:__('You must provide a valid URL for this option.', 'redux');
		$this-&gt;value = $value;
		$this-&gt;current = $current;
		$this-&gt;validate();
		
	}//function
	
	
	
	/**
	 * Field Render Function.
	 *
	 * Takes the vars and validates them
	 *
	 * @since ReduxFramework 1.0.0
	*/
	function validate() {
		
		if (filter_var($this-&gt;value, FILTER_VALIDATE_URL) == false) {
			$this-&gt;value = (isset($this-&gt;current))?$this-&gt;current:'';
			$this-&gt;error = $this-&gt;field;
		}else{
			$this-&gt;value = esc_url_raw($this-&gt;value);
		}
				
	}//function
	
}//class