HEX
Server: Apache
System: Linux c123.dattaweb.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User: c1190199 (57165)
PHP: 7.4.33
Disabled: mail, system, shell, exec, system_exec, shell_exec, mysql_pconnect, passthru, popen, proc_open, proc_close, proc_nice, proc_terminate, proc_get_status, escapeshellarg, escapeshellcmd, eval, dl, imap_mail, libvirt_connect, gnupg_init, unsetenv, apache_setenv, pcntl_exec, 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_get_handler, pcntl_signal_dispatch, pcntl_get_last_error, pcntl_strerror, pcntl_sigprocmask, pcntl_sigwaitinfo, pcntl_sigtimedwait, pcntl_getpriority, pcntl_setpriority, pcntl_async_signals, opcache_get_status, opcache_reset, opcache_get_configuration
Upload Files
File: /home/c1190199/public_html/wp-content/plugins/embed-iframe/embediframe.php
<?php
/*
Plugin Name: Embed Iframe
Plugin URI: https://www.deskera.com/blog/wordpress-plugin-embed-iframe/
Description: Allows the insertion of code to display an external webpage within an iframe. The tag to insert the code is: <code>[iframe url width height]</code>
Version: 1.2
Author: Deskera
Author URI: https://www.deskera.com

1.0	- Initial release
1.1	- PHP7 compatibility
1.2 - User input sanitization
*/

include (dirname (__FILE__).'/plugin.php');

class EIPD_EmbedIframe extends EIPD_Plugin
{
	function __construct ()
	{
		$this->register_plugin ('embediframe', __FILE__);
		
		$this->add_filter ('the_content');
		$this->add_action ('wp_head');
	}
	
	function wp_head ()
	{
		
	}
	
	function replace ($matches)
	{
		$tmp = strpos ($matches[1], ' ');
		if ($tmp)
		{
			// Because the regex is such a nuisance
			$url  = esc_url_raw (substr ($matches[1], 0, $tmp));
			$rest = substr ($matches[1], strlen ($url));

			$width  = 400;
			$height = 500;

			$parts = array_values (array_filter (explode (' ', $rest)));
			$width = intval (sanitize_text_field ($parts[0]));
	
			unset ($parts[0]);
			$height = intval (sanitize_text_field (implode (' ', $parts)));

			return $this->capture ('iframe', array ('url' => $url, 'width' => $width, 'height' => $height));
		}
		
		return '';
	}

	function the_content ($text)
	{
	  return preg_replace_callback ("@(?:<p>\s*)?\[iframe\s*(.*?)\](?:\s*</p>)?@", array (&$this, 'replace'), $text);
	}
}

$embediframe = new EIPD_EmbedIframe;
?>