Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/wp-conte.../plugins/sitepres.../inc
File: functions.php
$url_slugs = array_values( array_filter( $url_path_expl ) );
[500] Fix | Delete
$url_slugs_before = $url_slugs;
[501] Fix | Delete
$url_slugs = array_diff_assoc( $url_slugs, $subdir_slugs );
[502] Fix | Delete
$url = str_replace( '/' . join( '/', $url_slugs_before ), '/' . join( '/', $url_slugs ), $url );
[503] Fix | Delete
[504] Fix | Delete
return untrailingslashit( $url );
[505] Fix | Delete
}
[506] Fix | Delete
[507] Fix | Delete
/**
[508] Fix | Delete
* Changes array of items into string of items, separated by comma and sql-escaped
[509] Fix | Delete
*
[510] Fix | Delete
* @see https://coderwall.com/p/zepnaw
[511] Fix | Delete
* @global wpdb $wpdb
[512] Fix | Delete
*
[513] Fix | Delete
* @param mixed|array $items item(s) to be joined into string
[514] Fix | Delete
* @param string $format %s or %d
[515] Fix | Delete
*
[516] Fix | Delete
* @return string Items separated by comma and sql-escaped
[517] Fix | Delete
*/
[518] Fix | Delete
function wpml_prepare_in( $items, $format = '%s' ) {
[519] Fix | Delete
global $wpdb;
[520] Fix | Delete
[521] Fix | Delete
$items = (array) $items;
[522] Fix | Delete
$how_many = count( $items );
[523] Fix | Delete
if ( $how_many > 0 ) {
[524] Fix | Delete
$placeholders = array_fill( 0, $how_many, $format );
[525] Fix | Delete
$prepared_format = implode( ",", $placeholders );
[526] Fix | Delete
$prepared_in = $wpdb->prepare( $prepared_format, $items );
[527] Fix | Delete
} else {
[528] Fix | Delete
$prepared_in = "";
[529] Fix | Delete
}
[530] Fix | Delete
[531] Fix | Delete
return $prepared_in;
[532] Fix | Delete
}
[533] Fix | Delete
[534] Fix | Delete
function is_not_installing_plugins() {
[535] Fix | Delete
$checked = isset( $_REQUEST['checked'] ) ? (array) $_REQUEST['checked'] : array();
[536] Fix | Delete
[537] Fix | Delete
if ( ! isset( $_REQUEST['action'] ) ) {
[538] Fix | Delete
return true;
[539] Fix | Delete
} elseif ( $_REQUEST['action'] != 'activate' && $_REQUEST['action'] != 'activate-selected' ) {
[540] Fix | Delete
return true;
[541] Fix | Delete
} elseif ( ( ! isset( $_REQUEST['plugin'] ) || $_REQUEST['plugin'] != WPML_PLUGIN_FOLDER . '/' . basename( __FILE__ ) ) && ! in_array( WPML_PLUGIN_FOLDER . '/' . basename( __FILE__ ), $checked ) ) {
[542] Fix | Delete
return true;
[543] Fix | Delete
} elseif ( in_array( WPML_PLUGIN_FOLDER . '/' . basename( __FILE__ ), $checked ) && ! isset( $sitepress ) ) {
[544] Fix | Delete
return true;
[545] Fix | Delete
}
[546] Fix | Delete
[547] Fix | Delete
return false;
[548] Fix | Delete
}
[549] Fix | Delete
[550] Fix | Delete
function wpml_mb_strtolower( $string ) {
[551] Fix | Delete
if ( function_exists( 'mb_strtolower' ) ) {
[552] Fix | Delete
return mb_strtolower( $string );
[553] Fix | Delete
}
[554] Fix | Delete
[555] Fix | Delete
return strtolower( $string );
[556] Fix | Delete
}
[557] Fix | Delete
[558] Fix | Delete
function wpml_mb_strpos( $haystack, $needle, $offset = 0 ) {
[559] Fix | Delete
if ( function_exists( 'mb_strpos' ) ) {
[560] Fix | Delete
return mb_strpos( $haystack, $needle, $offset );
[561] Fix | Delete
}
[562] Fix | Delete
[563] Fix | Delete
return strpos( $haystack, $needle, $offset );
[564] Fix | Delete
}
[565] Fix | Delete
[566] Fix | Delete
function wpml_set_plugin_as_inactive() {
[567] Fix | Delete
global $icl_plugin_inactive;
[568] Fix | Delete
if ( ! defined( 'ICL_PLUGIN_INACTIVE' ) ) {
[569] Fix | Delete
define( 'ICL_PLUGIN_INACTIVE', true );
[570] Fix | Delete
}
[571] Fix | Delete
$icl_plugin_inactive = true;
[572] Fix | Delete
}
[573] Fix | Delete
[574] Fix | Delete
function wpml_version_is( $version_to_check, $comparison = '==' ) {
[575] Fix | Delete
return version_compare( ICL_SITEPRESS_VERSION, $version_to_check, $comparison ) && function_exists( 'wpml_site_uses_icl' );
[576] Fix | Delete
}
[577] Fix | Delete
[578] Fix | Delete
/**
[579] Fix | Delete
* Interrupts the plugin activation process if the WPML Core Plugin could not be activated
[580] Fix | Delete
*/
[581] Fix | Delete
function icl_suppress_activation() {
[582] Fix | Delete
$active_plugins = get_option( 'active_plugins' );
[583] Fix | Delete
$icl_sitepress_idx = array_search( WPML_PLUGIN_BASENAME, $active_plugins );
[584] Fix | Delete
if ( false !== $icl_sitepress_idx ) {
[585] Fix | Delete
unset( $active_plugins[ $icl_sitepress_idx ] );
[586] Fix | Delete
update_option( 'active_plugins', $active_plugins );
[587] Fix | Delete
unset( $_GET['activate'] );
[588] Fix | Delete
$recently_activated = get_option( 'recently_activated' );
[589] Fix | Delete
if ( ! isset( $recently_activated[ WPML_PLUGIN_BASENAME ] ) ) {
[590] Fix | Delete
$recently_activated[ WPML_PLUGIN_BASENAME ] = time();
[591] Fix | Delete
update_option( 'recently_activated', $recently_activated );
[592] Fix | Delete
}
[593] Fix | Delete
}
[594] Fix | Delete
}
[595] Fix | Delete
[596] Fix | Delete
/**
[597] Fix | Delete
* @param SitePress $sitepress
[598] Fix | Delete
*/
[599] Fix | Delete
function activate_installer( $sitepress = null ) {
[600] Fix | Delete
// installer hook - start
[601] Fix | Delete
include_once WPML_PLUGIN_PATH . '/vendor/otgs/installer/loader.php'; //produces global variable $wp_installer_instance
[602] Fix | Delete
$args = array(
[603] Fix | Delete
'plugins_install_tab' => 1,
[604] Fix | Delete
);
[605] Fix | Delete
[606] Fix | Delete
if ( $sitepress ) {
[607] Fix | Delete
$args['site_key_nags'] = array(
[608] Fix | Delete
array(
[609] Fix | Delete
'repository_id' => 'wpml',
[610] Fix | Delete
'product_name' => 'WPML',
[611] Fix | Delete
'condition_cb' => array( $sitepress, 'setup' )
[612] Fix | Delete
)
[613] Fix | Delete
);
[614] Fix | Delete
}
[615] Fix | Delete
/** @var WP_Installer $wp_installer_instance */
[616] Fix | Delete
WP_Installer_Setup( $wp_installer_instance, $args );
[617] Fix | Delete
// installer hook - end
[618] Fix | Delete
}
[619] Fix | Delete
[620] Fix | Delete
function wpml_missing_filter_input_notice() {
[621] Fix | Delete
?>
[622] Fix | Delete
<div class="message error">
[623] Fix | Delete
<h3><?php esc_html_e( "WPML can't be functional because it requires a disabled PHP extension!", 'sitepress' ); ?></h3>
[624] Fix | Delete
[625] Fix | Delete
<p><?php esc_html_e( "To ensure and improve the security of your website, WPML makes use of the ", 'sitepress' ); ?><a href="http://php.net/manual/en/book.filter.php">PHP Data Filtering</a> extension.<br><br>
[626] Fix | Delete
<?php esc_html_e( "The filter extension is enabled by default as of PHP 5.2.0. Before this time an experimental PECL extension was
[627] Fix | Delete
used, however, the PECL version is no longer recommended to be used or updated. (source: ", 'sitepress' ); ?><a href="http://php.net/manual/en/filter.installation.php">PHP Manual Function Reference Variable and
[628] Fix | Delete
Type Related Extensions Filter
[629] Fix | Delete
Installing/Configuring</a>)<br>
[630] Fix | Delete
<br>
[631] Fix | Delete
<?php esc_html_e( "The filter extension is enabled by default as of PHP 5.2, therefore it must have been disabled by either you or your host.", 'sitepress' ); ?>
[632] Fix | Delete
<br><?php esc_html_e( "To enable it, either you or your host will need to open your website's php.ini file and either:", 'sitepress' ); ?><br>
[633] Fix | Delete
<ol>
[634] Fix | Delete
<li><?php esc_html_e( "Remove the 'filter_var' string from the 'disable_functions' directive or...", 'sitepress' ); ?>
[635] Fix | Delete
</li>
[636] Fix | Delete
<li><?php esc_html_e( "Add the following line:", 'sitepress' ); ?> <code class="inline-code">extension=filter.so</code></li>
[637] Fix | Delete
</ol>
[638] Fix | Delete
<?php $ini_location = php_ini_loaded_file();
[639] Fix | Delete
if ( $ini_location !== false ) {
[640] Fix | Delete
?>
[641] Fix | Delete
<strong><?php esc_html_e( "Your php.ini file is located at", 'sitepress' ) . ' ' . esc_html( $ini_location ); ?>.</strong>
[642] Fix | Delete
<?php
[643] Fix | Delete
}
[644] Fix | Delete
?>
[645] Fix | Delete
</div>
[646] Fix | Delete
<?php
[647] Fix | Delete
}
[648] Fix | Delete
[649] Fix | Delete
function repair_el_type_collate() {
[650] Fix | Delete
global $wpdb;
[651] Fix | Delete
[652] Fix | Delete
$correct_collate = $wpdb->get_var(
[653] Fix | Delete
$wpdb->prepare(
[654] Fix | Delete
"SELECT collation_name
[655] Fix | Delete
FROM information_schema.COLUMNS
[656] Fix | Delete
WHERE TABLE_NAME = '%s'
[657] Fix | Delete
AND COLUMN_NAME = 'post_type'
[658] Fix | Delete
AND table_schema = (SELECT DATABASE())
[659] Fix | Delete
LIMIT 1",
[660] Fix | Delete
$wpdb->posts
[661] Fix | Delete
)
[662] Fix | Delete
);
[663] Fix | Delete
[664] Fix | Delete
// translations
[665] Fix | Delete
$table_name = $wpdb->prefix . 'icl_translations';
[666] Fix | Delete
$sql = $wpdb->prepare(
[667] Fix | Delete
"ALTER TABLE `$table_name` CHANGE `element_type` `element_type` VARCHAR( 36 ) NOT NULL DEFAULT 'post_post' COLLATE %s",
[668] Fix | Delete
$correct_collate
[669] Fix | Delete
);
[670] Fix | Delete
[671] Fix | Delete
if ( $wpdb->query( $sql ) === false ) {
[672] Fix | Delete
throw new Exception( $wpdb->last_error );
[673] Fix | Delete
}
[674] Fix | Delete
}
[675] Fix | Delete
[676] Fix | Delete
/**
[677] Fix | Delete
* Wrapper for `parse_url` using `wp_parse_url`
[678] Fix | Delete
*
[679] Fix | Delete
* @param $url
[680] Fix | Delete
* @param int $component
[681] Fix | Delete
*
[682] Fix | Delete
* @return array|string|int|null
[683] Fix | Delete
*/
[684] Fix | Delete
function wpml_parse_url( $url, $component = -1 ) {
[685] Fix | Delete
$ret = null;
[686] Fix | Delete
[687] Fix | Delete
$component_map = array(
[688] Fix | Delete
PHP_URL_SCHEME => 'scheme',
[689] Fix | Delete
PHP_URL_HOST => 'host',
[690] Fix | Delete
PHP_URL_PORT => 'port',
[691] Fix | Delete
PHP_URL_USER => 'user',
[692] Fix | Delete
PHP_URL_PASS => 'pass',
[693] Fix | Delete
PHP_URL_PATH => 'path',
[694] Fix | Delete
PHP_URL_QUERY => 'query',
[695] Fix | Delete
PHP_URL_FRAGMENT => 'fragment',
[696] Fix | Delete
);
[697] Fix | Delete
[698] Fix | Delete
if ( $component === -1 ) {
[699] Fix | Delete
$ret = wp_parse_url( $url );
[700] Fix | Delete
} else if ( isset( $component_map[ $component ] ) ) {
[701] Fix | Delete
$key = $component_map[ $component ];
[702] Fix | Delete
$parsed = wp_parse_url( $url );
[703] Fix | Delete
$ret = isset( $parsed[ $key ] ) ? $parsed[ $key ] : null;
[704] Fix | Delete
}
[705] Fix | Delete
[706] Fix | Delete
return $ret;
[707] Fix | Delete
}
[708] Fix | Delete
[709] Fix | Delete
// Add wp_parse_url function for versions of WP before 4.4
[710] Fix | Delete
[711] Fix | Delete
if ( ! function_exists( 'wp_parse_url' ) ) {
[712] Fix | Delete
function wp_parse_url( $url ) {
[713] Fix | Delete
$parts = @parse_url( $url );
[714] Fix | Delete
if ( ! $parts ) {
[715] Fix | Delete
// < PHP 5.4.7 compat, trouble with relative paths including a scheme break in the path
[716] Fix | Delete
if ( '/' == $url[0] && false !== strpos( $url, '://' ) ) {
[717] Fix | Delete
// Since we know it's a relative path, prefix with a scheme/host placeholder and try again
[718] Fix | Delete
if ( ! $parts = @parse_url( 'placeholder://placeholder' . $url ) ) {
[719] Fix | Delete
return $parts;
[720] Fix | Delete
}
[721] Fix | Delete
// Remove the placeholder values
[722] Fix | Delete
unset( $parts['scheme'], $parts['host'] );
[723] Fix | Delete
} else {
[724] Fix | Delete
return $parts;
[725] Fix | Delete
}
[726] Fix | Delete
}
[727] Fix | Delete
[728] Fix | Delete
// < PHP 5.4.7 compat, doesn't detect schemeless URL's host field
[729] Fix | Delete
if ( '//' == substr( $url, 0, 2 ) && ! isset( $parts['host'] ) ) {
[730] Fix | Delete
$path_parts = explode( '/', substr( $parts['path'], 2 ), 2 );
[731] Fix | Delete
$parts['host'] = $path_parts[0];
[732] Fix | Delete
if ( isset( $path_parts[1] ) ) {
[733] Fix | Delete
$parts['path'] = '/' . $path_parts[1];
[734] Fix | Delete
} else {
[735] Fix | Delete
unset( $parts['path'] );
[736] Fix | Delete
}
[737] Fix | Delete
}
[738] Fix | Delete
[739] Fix | Delete
return $parts;
[740] Fix | Delete
}
[741] Fix | Delete
}
[742] Fix | Delete
[743] Fix | Delete
/**
[744] Fix | Delete
* Wrapper function to prevent ampersand to be encoded (depending on some PHP versions)
[745] Fix | Delete
*
[746] Fix | Delete
* @link http://php.net/manual/en/function.http-build-query.php#102324
[747] Fix | Delete
*
[748] Fix | Delete
* @param array|object $query_data
[749] Fix | Delete
*
[750] Fix | Delete
* @return string
[751] Fix | Delete
*/
[752] Fix | Delete
function wpml_http_build_query( $query_data ) {
[753] Fix | Delete
return http_build_query( $query_data, '', '&' );
[754] Fix | Delete
}
[755] Fix | Delete
[756] Fix | Delete
/**
[757] Fix | Delete
* @param array $array
[758] Fix | Delete
* @param int $sort_flags
[759] Fix | Delete
*
[760] Fix | Delete
* @uses \wpml_array_unique_fallback
[761] Fix | Delete
*
[762] Fix | Delete
* @return array
[763] Fix | Delete
*/
[764] Fix | Delete
function wpml_array_unique( $array, $sort_flags = SORT_REGULAR ) {
[765] Fix | Delete
if ( version_compare( phpversion(), '5.2.9', '>=' ) ) {
[766] Fix | Delete
// phpcs:disable PHPCompatibility.FunctionUse.NewFunctionParameters.array_unique_sort_flagsFound -- This statement is preceded by a version check
[767] Fix | Delete
return array_unique( $array, $sort_flags );
[768] Fix | Delete
// phpcs:enable PHPCompatibility.FunctionUse.NewFunctionParameters.array_unique_sort_flagsFound
[769] Fix | Delete
}
[770] Fix | Delete
[771] Fix | Delete
return wpml_array_unique_fallback( $array, true );
[772] Fix | Delete
}
[773] Fix | Delete
[774] Fix | Delete
/**
[775] Fix | Delete
* @param $array
[776] Fix | Delete
* @param $keep_key_assoc
[777] Fix | Delete
*
[778] Fix | Delete
* @see \wpml_array_unique
[779] Fix | Delete
*
[780] Fix | Delete
* @return array
[781] Fix | Delete
*/
[782] Fix | Delete
function wpml_array_unique_fallback( $array, $keep_key_assoc ) {
[783] Fix | Delete
$duplicate_keys = array();
[784] Fix | Delete
$tmp = array();
[785] Fix | Delete
[786] Fix | Delete
foreach ( $array as $key => $val ) {
[787] Fix | Delete
// convert objects to arrays, in_array() does not support objects
[788] Fix | Delete
if ( is_object( $val ) ) {
[789] Fix | Delete
$val = (array) $val;
[790] Fix | Delete
}
[791] Fix | Delete
[792] Fix | Delete
if ( ! in_array( $val, $tmp ) ) {
[793] Fix | Delete
$tmp[] = $val;
[794] Fix | Delete
} else {
[795] Fix | Delete
$duplicate_keys[] = $key;
[796] Fix | Delete
}
[797] Fix | Delete
}
[798] Fix | Delete
[799] Fix | Delete
foreach ( $duplicate_keys as $key ) {
[800] Fix | Delete
unset( $array[ $key ] );
[801] Fix | Delete
}
[802] Fix | Delete
[803] Fix | Delete
return $keep_key_assoc ? $array : array_values( $array );
[804] Fix | Delete
}
[805] Fix | Delete
[806] Fix | Delete
/**
[807] Fix | Delete
* @return bool
[808] Fix | Delete
*/
[809] Fix | Delete
function wpml_is_rest_request() {
[810] Fix | Delete
return make( WPML_REST_Request_Analyze::class )->is_rest_request();
[811] Fix | Delete
}
[812] Fix | Delete
[813] Fix | Delete
/**
[814] Fix | Delete
* @return bool
[815] Fix | Delete
*/
[816] Fix | Delete
function wpml_is_rest_enabled() {
[817] Fix | Delete
return make( \WPML\Core\REST\Status::class )->isEnabled();
[818] Fix | Delete
}
[819] Fix | Delete
[820] Fix | Delete
function wpml_is_cli() {
[821] Fix | Delete
return defined( 'WP_CLI' ) && WP_CLI;
[822] Fix | Delete
}
[823] Fix | Delete
[824] Fix | Delete
function wpml_sticky_post_sync( Sitepress $sitepress = null ) {
[825] Fix | Delete
static $instance;
[826] Fix | Delete
[827] Fix | Delete
if ( ! $instance ) {
[828] Fix | Delete
global $wpml_post_translations;
[829] Fix | Delete
[830] Fix | Delete
if ( ! $sitepress ) {
[831] Fix | Delete
global $sitepress;
[832] Fix | Delete
}
[833] Fix | Delete
[834] Fix | Delete
$instance = new WPML_Sticky_Posts_Sync(
[835] Fix | Delete
$sitepress,
[836] Fix | Delete
$wpml_post_translations,
[837] Fix | Delete
new WPML_Sticky_Posts_Lang_Filter(
[838] Fix | Delete
$sitepress,
[839] Fix | Delete
$wpml_post_translations
[840] Fix | Delete
)
[841] Fix | Delete
);
[842] Fix | Delete
}
[843] Fix | Delete
[844] Fix | Delete
return $instance;
[845] Fix | Delete
}
[846] Fix | Delete
[847] Fix | Delete
/**
[848] Fix | Delete
* @return WP_Filesystem_Direct
[849] Fix | Delete
*/
[850] Fix | Delete
function wpml_get_filesystem_direct() {
[851] Fix | Delete
static $instance;
[852] Fix | Delete
[853] Fix | Delete
if ( ! $instance ) {
[854] Fix | Delete
$wp_api = new WPML_WP_API();
[855] Fix | Delete
$instance = $wp_api->get_wp_filesystem_direct();
[856] Fix | Delete
}
[857] Fix | Delete
[858] Fix | Delete
return $instance;
[859] Fix | Delete
}
[860] Fix | Delete
[861] Fix | Delete
/**
[862] Fix | Delete
* @param array $postarray It will be escaped inside the function
[863] Fix | Delete
* @param string|null $lang
[864] Fix | Delete
* @param bool $wp_error
[865] Fix | Delete
*
[866] Fix | Delete
* @return int|\WP_Error
[867] Fix | Delete
*/
[868] Fix | Delete
function wpml_update_escaped_post( array $postarray, $lang = null, $wp_error = false ) {
[869] Fix | Delete
return wpml_get_create_post_helper()->insert_post( $postarray, $lang, $wp_error );
[870] Fix | Delete
}
[871] Fix | Delete
[872] Fix | Delete
12
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function