Changeset 2737282
- Timestamp:
- 06/04/2022 09:12:43 AM (2 years ago)
- Location:
- gowebp/trunk
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
gowebp/trunk/gowebp.php
r2725151 r2737282 4 4 * Plugin URI: https://gowebp.com 5 5 * Author: <a href="https://increaserev.com" target="_BLANK" > Increase Rev </a> 6 * Version: 1.0. 46 * Version: 1.0. 7 7 * Description: Using Go WebP,You can optimize your website to it's potential by optimizing all images. Optimizing images will drastically improved your site speed as images will load faster. 8 8 */ 9 9 if ( ! defined( 'ABSPATH' ) ) exit; 10 11 10 12 11 13 @ini_set( 'error_log', ABSPATH.'/log/php_error.log' ); … … 22 24 add_action('admin_menu', [$this, 'ir_mngr_menu_pages']); 23 25 add_action('activated_plugin', [$this, 'ir_webp_start']); 26 24 27 if($this->ir_check_active()){ 25 28 // these 3 will run in admin … … 96 99 // Gowebp Hooks 97 100 if($this->ir_check_active()){ 98 add_filter("the_content",[$this, "ir_add_lazyload"]);99 add_filter("post_thumbnail_html",[$this, "ir_add_lazyload_thumbnail "]);100 // add_filter( "wp_handle_upload",[$this, "ir_handle_upload"]);101 add_filter("the_content",[$this, "ir_add_lazyload"]); 102 add_filter("post_thumbnail_html",[$this, "ir_add_lazyload_thumbnail"]); 103 101 104 add_action('wp_footer', [$this, "ir_compiler_funcs"],10000000000); 102 105 if($this->ir_check_optStarted()){ 103 106 // add_action('wp_footer', [$this, "ir_compiler_funcs"],10000000000); 104 107 add_filter('wp_calculate_image_srcset',[$this, 'ir_update_post_images_url']); 105 add_filter( 'wp_get_attachment_image_src',[$this, 'ir_update_featured_images_url'], 10, 4);108 add_filter( 'wp_get_attachment_image_src',[$this, 'ir_update_featured_images_url'], 10, 4); 106 109 // add_filter( 'wp_get_attachment_image_src',[$this, 'ir_set_logo_img_src'], 10,4); 107 110 … … 114 117 } 115 118 119 120 116 121 117 $gowebp_ir = GoWEBP_IR::getInstance();118 remove_action('shutdown','wp_ob_end_flush_all',1); -
gowebp/trunk/gowebp_option2.php
r2721782 r2737282 62 62 $desktop_dimension = isset($ir_form_data["ir_desktop_dimension"][0])? 100-(int)$ir_form_data["ir_desktop_dimension"][0] : 0; 63 63 $tablet_dimension = isset($ir_form_data["ir_tablet_dimension"][0]) ? 100-(int)$ir_form_data["ir_tablet_dimension"][0] : 0; 64 $mobile_dimension = isset($ir_form_data["ir_mobile_dimension"][0]) ? 100-(int)$ir_form_data["ir_mobile_dimension"][0] : 0;64 $mobile_dimension = isset($ir_form_data["ir_mobile_dimension"][0]) ? 100-(int)$ir_form_data["ir_mobile_dimension"][0] : 0; 65 65 $thumbnail_dimension = isset($ir_form_data["ir_thumbnail_dimension"][0]) ? 100-(int)$ir_form_data["ir_thumbnail_dimension"][0] : 80; 66 66 … … 1219 1219 <script> 1220 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1221 1232 function convertToRGB(hex) { 1222 1233 var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex); … … 1630 1641 }else{ 1631 1642 // -here 1632 $("#total_images_opt").html(parseInt($("#total_images").html()));1643 $("#total_images_opt").html(parseInt($("#total_images").html())); 1633 1644 Swal.fire({ 1634 1645 title: 'Optimization Started!', … … 1682 1693 }); 1683 1694 }else{ 1684 $("#total_images_opt").html(parseInt($("#total_images").html()));1695 $("#total_images_opt").html(parseInt($("#total_images").html())); 1685 1696 Swal.fire({ 1686 1697 title: 'Optimization Started!', … … 1689 1700 confirmButtonColor:"#00d119" 1690 1701 }); 1691 $("#total_images_opt").html(response) 1702 $("#total_images_opt").html(response); 1703 document.cookie = "ir_cookie_stats=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 1704 document.cookie = "ir_cookie_stats2=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 1692 1705 console.log("Optimized Images: "+response); 1693 1706 } … … 1873 1886 }); 1874 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1875 1913 // Ajax Functions Start 1876 1914 function irGetImgStats(){ … … 1890 1928 let img_count = response.image_count; 1891 1929 let opt_img_count = response.optimized_image_count; 1892 1930 1931 let ir_cookie_stats = ir_getCookie("ir_cookie_stats"); 1932 if (ir_cookie_stats != "") { 1933 1934 if(parseInt(opt_img_count)>parseInt(ir_cookie_stats)){ 1935 opt_img_count=opt_img_count 1936 ir_setCookie("ir_cookie_stats", opt_img_count, 30); 1937 ir_setCookie("ir_cookie_stats2", img_count, 30); 1938 }else{ 1939 opt_img_count=ir_cookie_stats; 1940 } 1941 1942 } else { 1943 ir_setCookie("ir_cookie_stats", opt_img_count, 30); 1944 ir_setCookie("ir_cookie_stats2", img_count, 30); 1945 } 1946 1893 1947 before_img_size = response.total_size; 1894 1948 img_size_unit = "bytes"; -
gowebp/trunk/gowebp_worker.php
r2725151 r2737282 78 78 } 79 79 } 80 81 82 83 80 84 $img_name = substr($old_source,strrpos($old_source,"/")+1); 81 85 $ext = pathinfo($img_name, PATHINFO_EXTENSION); … … 90 94 $suffix = "lg"; 91 95 } 96 92 97 if($ir_progload_status == true){ 93 98 $img_name2 = str_replace("-holder","_".$suffix,$old_source2); 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 94 263 $i->setAttribute("src",plugin_dir_url( __FILE__) ."lib/img/emptyloader.png"); 95 $i->setAttribute("srcset",""); 96 $i->setAttribute("old-src",$old_source); 97 $i->setAttribute("data-original",$old_source2); 98 if($this->ir_check_exists($img_name2)) 99 $i->setAttribute("data-responsive",$img_name2); 264 $i->setAttribute("data-original_sssss",$old_source); 100 265 } 101 266 elseif($ir_viewport_status == true){ 102 267 $i->setAttribute("src",plugin_dir_url( __FILE__) ."lib/img/emptyloader.png"); 103 $i->setAttribute("srcset","");268 $i->setAttribute("srcset",""); 104 269 $i->setAttribute("old-src",$old_source); 105 $i->setAttribute("data-original",$old_source2); 270 $i->setAttribute("data-original",$old_source); 271 $i->setAttribute("data-original_ssssss",$old_source); 272 273 $i->setAttribute("src6",$old_source); 274 $i->setAttribute("src6s",$old_source2); 275 // $i->setAttribute("src6ss",$img_name2); 276 } 277 // Changes for Post Images 278 if($shadow_on_post==true ){ 279 $i->setAttribute("gowebp-shadow","on"); 280 } 281 if($border_on_post==true ){ 282 $i->setAttribute("gowebp-border","on"); 283 } 284 285 } 286 287 288 $newHtml = preg_replace('/^<!DOCTYPE.+?>/', '', str_replace( array('<html>', '</html>', '<body>', '</body>'), array('', '', '', ''), $dom->saveHTML())); 289 return $newHtml; 290 } 291 292 293 function ir_add_lazyload_thumbnail2($content){ 294 if(empty($content) || !$this->ir_check_js_status()){ 295 return $content; 296 } 297 298 $ir_form_data = get_user_meta(1); 299 $ir_viewport_status = $ir_form_data["ir_viewport_status"][0] ?? 0; 300 $ir_viewport_status = $ir_viewport_status == 0? false:true; 301 $ir_to_webp = $ir_form_data["ir_to_webp"][0] ?? 1; 302 $ir_to_webp = $ir_to_webp==1 ? true: false; 303 $shadow_on_post = $ir_form_data["shadow_on_post"][0] ?? 1; 304 $shadow_on_post = $shadow_on_post==1 ? true: false; 305 $border_on_post = $ir_form_data["border_on_post"][0] ?? 1; 306 $border_on_post = $border_on_post==1 ? true: false; 307 308 $ir_progload_status = $ir_form_data["ir_progload_status"][0] ?? 1; 309 $ir_progload_status = $ir_progload_status == 1 ? true: false; 310 311 $content = mb_convert_encoding($content, 'HTML-ENTITIES', "UTF-8"); 312 313 $dom = new DOMDocument(); 314 @$dom->loadHTML($content); 315 $img = $dom->getElementsByTagName("img"); 316 317 foreach($img as $i){ 318 $old_source = $i->getAttribute("src"); 319 $old_source2 = $i->getAttribute("srcset"); 320 $old_source2 = explode(", ",$old_source2); 321 if(is_array($old_source2)){ 322 $old_source2 = $old_source2[0]; 323 if(strpos($old_source2," ")!==false){ 324 $old_source2 = explode(" ",$old_source2); 325 $old_source2 = $old_source2[0]; 326 } 327 } 328 329 $img_name = $old_source; 330 $index = $this->ir_getExtIndex($img_name); 331 332 $img_name = substr($old_source,strrpos($old_source,"/")+1); 333 $ext = pathinfo($img_name, PATHINFO_EXTENSION); 334 if($ext == "gif") continue; 335 $suffix = "lg"; 336 [$is_mobile, $is_tablet] = $this->ir_is_mobile_tablet(); 337 if($is_mobile){ 338 $suffix = "sm"; 339 }elseif($is_tablet){ 340 $suffix = "md"; 341 }else{ 342 $suffix = "lg"; 343 } 344 $suffix="thu"; 345 // $ir_progload_status=false; 346 if($ir_progload_status == true){ 347 $img_name2 = str_replace("-holder","_".$suffix,$old_source2); 348 349 350 $str = substr(strrchr($old_source, '/'), 1); 351 $str1=explode(".",$str)[0]; 352 $str2=explode(".",$str)[1]; 353 $img_name1_ = explode("uploads/",$old_source)[0]; 354 $img_name1__ = explode("uploads/",$old_source)[1]; 355 // $img_name1__=explode(".",$img_name1__)[0]; 356 $img_name1__=str_replace($str,"",$img_name1__); 357 $img_name3=""; 358 $img_name4=""; 359 $img_name5=""; 360 $img_name6=""; 361 $img_name7=""; 362 $img_name8=""; 363 $img_name9=""; 364 $img_name10=""; 365 $img_name11=""; 366 $img_name12=""; 367 $img_name13=""; 368 $img_name14=""; 369 $img_name15=""; 370 $img_name16=""; 371 $img_name17=""; 372 $img_name18=""; 373 if($ir_to_webp){ 374 375 $img_name7=$img_name1_."_gowebp_/".$img_name1__."".$str1."_ir_img_".$suffix.".webp"; 376 $img_name8=$img_name1_."_gowebp_/".$img_name1__."".$str1."_ir_img_".$suffix.".jpg"; 377 $img_name9=$img_name1_."_gowebp_/".$img_name1__."".$str1."_ir_img_".$suffix.".png"; 378 $img_name10=$img_name1_."_gowebp_/".$img_name1__."".$str1."_ir_img_".$suffix.".".$str2; 379 380 $img_name15=$img_name1_."_gowebp_/".$img_name1__."".$str."_ir_img_".$suffix.".webp"; 381 $img_name16=$img_name1_."_gowebp_/".$img_name1__."".$str."_ir_img_".$suffix.".jpg"; 382 $img_name17=$img_name1_."_gowebp_/".$img_name1__."".$str."_ir_img_".$suffix.".png"; 383 $img_name18=$img_name1_."_gowebp_/".$img_name1__."".$str."_ir_img_".$suffix.".".$str2; 384 }else{ 385 386 $img_name7=$img_name1_."_gowebp_/".$img_name1__."".$str1."_ir_img_".$suffix.".".$str2; 387 $img_name8=$img_name1_."_gowebp_/".$img_name1__."".$str1."_ir_img_".$suffix.".jpg"; 388 $img_name9=$img_name1_."_gowebp_/".$img_name1__."".$str1."_ir_img_".$suffix.".png"; 389 390 $img_name13=$img_name1_."_gowebp_/".$img_name1__."".$str."_ir_img_".$suffix.".".$str2; 391 $img_name14=$img_name1_."_gowebp_/".$img_name1__."".$str."_ir_img_".$suffix.".jpg"; 392 $img_name15=$img_name1_."_gowebp_/".$img_name1__."".$str."_ir_img_".$suffix.".png"; 393 } 394 395 if($this->ir_check_exists2($img_name3) && $img_name3!=""){ 396 $i->setAttribute("newurl1_",$img_name3); 397 $i->setAttribute("data-responsive",$img_name3); 398 $i->setAttribute("data-original",$img_name3); 399 $i->setAttribute("data-original_s",$img_name3); 400 $i->setAttribute("srcset",$img_name3); 401 } 402 elseif($this->ir_check_exists2($img_name4) && $img_name4!=""){ 403 $i->setAttribute("newurl2_",$img_name4); 404 $i->setAttribute("data-responsive",$img_name4); 405 $i->setAttribute("data-original",$img_name4); 406 $i->setAttribute("data-original_ss",$img_name4); 407 $i->setAttribute("srcset",$img_name4); 408 } 409 elseif($this->ir_check_exists2($img_name5) && $img_name5!=""){ 410 $i->setAttribute("newurl3_",$img_name5); 411 $i->setAttribute("data-responsive",$img_name5); 412 $i->setAttribute("data-original",$img_name5); 413 $i->setAttribute("data-original_sss",$img_name5); 414 $i->setAttribute("srcset",$img_name5); 415 } 416 elseif($this->ir_check_exists2($img_name6) && $img_name6!=""){ 417 $i->setAttribute("newurl6_",$img_name6); 418 $i->setAttribute("data-responsive",$img_name6); 419 $i->setAttribute("data-original",$img_name6); 420 $i->setAttribute("data-original_sss",$img_name6); 421 $i->setAttribute("srcset",$img_name6); 422 } 423 elseif($this->ir_check_exists2($img_name7) && $img_name7!=""){ 424 $i->setAttribute("src",$img_name7); 425 $i->setAttribute("newurl7_",$img_name7); 426 $i->setAttribute("data-responsive",$img_name7); 427 $i->setAttribute("data-original",$img_name7); 428 $i->setAttribute("data-original_sss",$img_name7); 429 $i->setAttribute("srcset",$img_name7); 430 } 431 elseif($this->ir_check_exists2($img_name8) && $img_name8!=""){ 432 $i->setAttribute("newurl8_",$img_name8); 433 $i->setAttribute("data-responsive",$img_name8); 434 $i->setAttribute("data-original",$img_name8); 435 $i->setAttribute("data-original_sss",$img_name8); 436 $i->setAttribute("srcset",$img_name8); 437 } 438 elseif($this->ir_check_exists2($img_name9) && $img_name9!=""){ 439 $i->setAttribute("newurl9_",$img_name9); 440 $i->setAttribute("data-responsive",$img_name9); 441 $i->setAttribute("data-original",$img_name9); 442 $i->setAttribute("data-original_sss",$img_name9); 443 $i->setAttribute("srcset",$img_name9); 444 } 445 elseif($this->ir_check_exists2($img_name10) && $img_name10!=""){ 446 $i->setAttribute("newurl0_",$img_name10); 447 $i->setAttribute("data-responsive",$img_name10); 448 $i->setAttribute("data-original",$img_name10); 449 $i->setAttribute("data-original_sss",$img_name10); 450 $i->setAttribute("srcset",$img_name10); 451 } 452 elseif($this->ir_check_exists2($img_name11) && $img_name11!=""){ 453 $i->setAttribute("newurl0_",$img_name11); 454 $i->setAttribute("data-responsive",$img_name11); 455 $i->setAttribute("data-original",$img_name11); 456 $i->setAttribute("data-original_sss",$img_name11); 457 $i->setAttribute("srcset",$img_name11); 458 } 459 elseif($this->ir_check_exists2($img_name12) && $img_name12!=""){ 460 $i->setAttribute("newurl0_",$img_name12); 461 $i->setAttribute("data-responsive",$img_name12); 462 $i->setAttribute("data-original",$img_name12); 463 $i->setAttribute("data-original_sss",$img_name12); 464 $i->setAttribute("srcset",$img_name12); 465 } 466 elseif($this->ir_check_exists2($img_name13) && $img_name13!=""){ 467 $i->setAttribute("newurl0_",$img_name13); 468 $i->setAttribute("data-responsive",$img_name13); 469 $i->setAttribute("data-original",$img_name13); 470 $i->setAttribute("data-original_sss",$img_name13); 471 $i->setAttribute("srcset",$img_name13); 472 } 473 elseif($this->ir_check_exists2($img_name14) && $img_name14!=""){ 474 $i->setAttribute("newurl0_",$img_name14); 475 $i->setAttribute("data-responsive",$img_name14); 476 $i->setAttribute("data-original",$img_name14); 477 $i->setAttribute("data-original_sss",$img_name14); 478 $i->setAttribute("srcset",$img_name14); 479 } 480 elseif($this->ir_check_exists2($img_name15) && $img_name15!=""){ 481 $i->setAttribute("newurl0_",$img_name15); 482 $i->setAttribute("data-responsive",$img_name15); 483 $i->setAttribute("data-original",$img_name15); 484 $i->setAttribute("data-original_sss",$img_name15); 485 $i->setAttribute("srcset",$img_name15); 486 } 487 elseif($this->ir_check_exists2($img_name16) && $img_name16!=""){ 488 $i->setAttribute("newurl0_",$img_name16); 489 $i->setAttribute("data-responsive",$img_name16); 490 $i->setAttribute("data-original",$img_name16); 491 $i->setAttribute("data-original_sss",$img_name16); 492 $i->setAttribute("srcset",$img_name16); 493 } 494 elseif($this->ir_check_exists2($img_name17) && $img_name17!=""){ 495 $i->setAttribute("newurl0_",$img_name17); 496 $i->setAttribute("data-responsive",$img_name17); 497 $i->setAttribute("data-original",$img_name17); 498 $i->setAttribute("data-original_sss",$img_name17); 499 $i->setAttribute("srcset",$img_name17); 500 } 501 elseif($this->ir_check_exists2($img_name18) && $img_name18!=""){ 502 $i->setAttribute("newurl0_",$img_name18); 503 $i->setAttribute("data-responsive",$img_name18); 504 $i->setAttribute("data-original",$img_name18); 505 $i->setAttribute("data-original_sss",$img_name18); 506 $i->setAttribute("srcset",$img_name18); 507 } 508 else{ 509 $i->setAttribute("data-original",$old_source); 510 $i->setAttribute("srcset",$old_source); 511 } 512 $i->setAttribute("src",plugin_dir_url( __FILE__) ."lib/img/emptyloader.png"); 513 $i->setAttribute("data-original_sssss",$old_source); 514 } 515 elseif($ir_viewport_status == true){ 516 $i->setAttribute("src",plugin_dir_url( __FILE__) ."lib/img/emptyloader.png"); 517 // $i->setAttribute("srcset",""); 518 $i->setAttribute("old-src",$old_source); 519 $i->setAttribute("data-original",$old_source); 520 $i->setAttribute("data-original_ssssss",$old_source); 521 522 $i->setAttribute("src6",$old_source); 523 $i->setAttribute("src6s",$old_source2); 524 // $i->setAttribute("src6ss",$img_name2); 106 525 } 107 526 // Changes for Post Images … … 153 572 154 573 $old_source = $i->getAttribute("src"); 155 $old_source2 = $i->getAttribute("old-src"); 574 $old_source2 = $i->getAttribute("srcset"); 575 $old_source2 = explode(", ",$old_source2); 576 if(is_array($old_source2)){ 577 $old_source2 = $old_source2[0]; 578 if(strpos($old_source2," ")!==false){ 579 $old_source2 = explode(" ",$old_source2); 580 $old_source2 = $old_source2[0]; 581 } 582 } 156 583 157 584 $img_name = $old_source; 158 585 $index = $this->ir_getExtIndex($img_name); 159 586 160 $suffix = " lg";587 $suffix = ""; 161 588 [$is_mobile, $is_tablet] = $this->ir_is_mobile_tablet(); 162 589 // if mobile or if thumbnail image … … 166 593 $suffix = "md"; 167 594 }else{ 168 $suffix = " lg";595 $suffix = ""; 169 596 } 170 597 // $suffix = "sm"; … … 174 601 $img_name2 = str_replace("-holder","_".$suffix,$img_name); 175 602 $img_name3 = str_replace("_ir_img-holder","",$img_name); 176 // $i->setAttribute("loading","lazy"); 177 // $i->setAttribute("src",plugin_dir_url( __FILE__) ."lib/img/emptyloader.png"); 178 // $i->setAttribute("srcset",""); 603 179 604 $i->setAttribute("src",$img_name2); 180 // $i->setAttribute("data-original",$old_source2);181 $i->setAttribute(" data-original",$img_name2);182 // $i->setAttribute("data-original123",$old_source);183 // if($this->ir_check_exists($img_name2))184 // $i->setAttribute("data-responsive",$img_name2);605 e2); 606 $i->setAttribute("); 607 ); 608 609 e2); 185 610 186 611 }else{ … … 188 613 $i->setAttribute("loading","lazy"); 189 614 $i->setAttribute("src",plugin_dir_url( __FILE__) ."lib/img/emptyloader.png"); 190 $i->setAttribute("srcset","");191 // $i->setAttribute("data-original",$old_source2);615 $i->setAttribute("srcset",""); 616 ",$old_source2); 192 617 $i->setAttribute("data-original",$img_name2); 193 194 if($this->ir_check_exists($img_name2)) 195 $i->setAttribute("data-responsive",$img_name2); 196 } 197 // $img_name2 = str_replace("-holder","_".$suffix,$img_name); 198 // $i->setAttribute("loading","lazy"); 199 // $i->setAttribute("src",plugin_dir_url( __FILE__) ."lib/img/emptyloader.png"); 200 // $i->setAttribute("srcset",""); 201 // // $i->setAttribute("data-original",$old_source2); 202 // $i->setAttribute("data-original2",$img_name2); 203 204 // if($this->ir_check_exists($img_name2)) 205 // $i->setAttribute("data-responsive",$img_name2); 206 } 207 // if($ir_progload_status == true){ 208 // $img_name2 = str_replace("-holder","_".$suffix,$img_name); 209 // $i->setAttribute("src",plugin_dir_url( __FILE__) ."lib/img/emptyloader.png"); 210 // $i->setAttribute("srcset",""); 211 // $i->setAttribute("data-original",$old_source2); 212 // if($this->ir_check_exists($img_name2)) 213 // $i->setAttribute("data-responsive",$img_name2); 214 // } 618 $i->setAttribute("data-originalss",$old_source); 619 $i->setAttribute("src2",$old_source); 620 $i->setAttribute("src2s",$old_source2); 621 // if($this->ir_check_exists($img_name2)) 622 // $i->setAttribute("data-responsive",$img_name2); 623 } 624 } 215 625 elseif($ir_viewport_status == true){ 216 626 $i->setAttribute("src",plugin_dir_url( __FILE__) ."lib/img/emptyloader.png"); 217 $i->setAttribute("srcset", "");627 $i->setAttribute("srcset",); 218 628 $i->setAttribute("data-original",$old_source); 629 219 630 $i->setAttribute("loading","lazy"); 631 220 632 } 221 633 else{ 222 634 $i->setAttribute("src",$old_source); 223 635 $i->setAttribute("srcset",$old_source); 636 224 637 $i->setAttribute("loading","lazy"); 638 225 639 } 226 640 … … 249 663 250 664 function ir_check_exists($url, $gowebp=true){ 251 $server = $gowebp==true ?wp_upload_dir()["basedir"]."/_gowebp_/" : wp_upload_dir()["path"] ;252 $img_name = $gowebp==true ?substr($url, strrpos($url,"/")+1) :substr($url, strrpos($url,"uploads/")+7) ;253 $img_name = $server.$img_name;665 ."/_gowebp_/" : wp_upload_dir()["path"] ; 666 $img_name = $gowebp==true ?substr($url, strrpos($url,"/")+1) :substr($url, strrpos($url,"uploads/")+7) ; 667 $img_name = $server.$img_name; 254 668 if(file_exists($img_name)) return true; 255 669 … … 257 671 } 258 672 673 674 675 676 677 678 679 680 681 682 259 683 function ir_check_webpSupport(){ 260 684 $HTTP_ACCEPT = sanitize_text_field( $_SERVER["HTTP_ACCEPT"] ); … … 266 690 267 691 function ir_doOptimize($img_path=""){ 692 268 693 269 694 $limit = get_user_meta(1, "ir_limit_reached",true) ?? 0; … … 335 760 function ir_compressor($path,$name){ 336 761 // Create Directory if it does not exists 337 if(!is_file( wp_upload_dir()["basedir"]."/_gowebp_")){338 @mkdir( wp_upload_dir()["basedir"]."/_gowebp_");339 } 340 $ir_new_path = wp_upload_dir()["basedir"]."/_gowebp_";762 if(!is_file(."/_gowebp_")){ 763 @mkdir(."/_gowebp_"); 764 } 765 $ir_new_path = ."/_gowebp_"; 341 766 342 767 $imgDir = $path; 343 $ir_form_data = get_user_meta(1); 344 $ir_reset_status = $ir_form_data["ir_reOptimize"][0] ?? 0 ; 345 $ir_reset_status = $ir_reset_status == 1 ? true : false; 346 347 $ir_exif_status = $ir_form_data["ir_exif_status"][0] ?? 0 ; 348 $ir_exif_status = $ir_exif_status == 1 ? true : false; 349 350 $ir_optimize_level = isset($ir_form_data["ir_optimize_level"][0]) ? $ir_form_data["ir_optimize_level"][0] : 50; 351 $ir_optimize_level = (int) $ir_optimize_level; 352 $ir_to_webp = $ir_form_data["ir_to_webp"][0] ?? 1; 353 $ir_to_webp = $ir_to_webp==1 ? true: false; 354 355 if(!$this->ir_check_feature_pre()){ 356 $ir_to_webp = false; 357 } 358 359 $index = $this->ir_getExtIndex($name); 360 $newName = substr_replace($name,"_ir_img",$index,0); 361 $holderName = substr_replace($name,"_ir_img-holder",$index,0); 362 // For Webp 363 if($ir_to_webp){ 364 $arr = [".jpeg",".jpg",".png",".bmp"]; 365 $holderName2 = str_replace($arr,".webp",$holderName); 366 $name2 = str_replace($arr,".webp",$newName); 367 $this->resize_img_ir($imgDir."/".$name, $ir_new_path."/".$holderName2,$ir_optimize_level,50,50,true,$ir_exif_status); 368 $this->resize_img_ir($imgDir."/".$name, $ir_new_path."/".$holderName,$ir_optimize_level,50,50,false, $ir_exif_status); 369 }else{ // For Web End 370 $this->resize_img_ir($imgDir."/".$name, $ir_new_path."/".$holderName,$ir_optimize_level,50,50, false, $ir_exif_status); 768 $imgDir2 = str_replace(wp_upload_dir()["basedir"],wp_upload_dir()["basedir"]."/_gowebp_",$path); 769 770 771 772 if (strpos($imgDir2, 'uploads') !== false) { 773 $imgDir2=str_replace("uploads/","",$imgDir2); 774 775 if(!is_dir($imgDir2)){ 776 @mkdir($imgDir2, 0755, true); 777 778 } 779 // $ir_new_path=$imgDir2; 780 781 if (strpos($imgDir2, '_gowebp_') !== false) { 782 $ir_new_path=$imgDir2; 783 } 784 785 $ir_form_data = get_user_meta(1); 786 $ir_reset_status = $ir_form_data["ir_reOptimize"][0] ?? 0 ; 787 $ir_reset_status = $ir_reset_status == 1 ? true : false; 788 789 $ir_exif_status = $ir_form_data["ir_exif_status"][0] ?? 0 ; 790 $ir_exif_status = $ir_exif_status == 1 ? true : false; 791 792 $ir_optimize_level = isset($ir_form_data["ir_optimize_level"][0]) ? $ir_form_data["ir_optimize_level"][0] : 50; 793 $ir_optimize_level = (int) $ir_optimize_level; 794 $ir_to_webp = $ir_form_data["ir_to_webp"][0] ?? 1; 795 $ir_to_webp = $ir_to_webp==1 ? true: false; 796 797 798 799 800 if(!$this->ir_check_feature_pre()){ 801 $ir_to_webp = false; 802 } 803 804 $index = $this->ir_getExtIndex($name); 805 $newName = substr_replace($name,"_ir_img",$index,0); 806 $holderName = substr_replace($name,"_ir_img-holder",$index,0); 807 // file_put_contents(dirname(plugin_dir_path(__FILE__))."/gowebp/includes/status_opt123.txt",$imgDir."__IR__".$imgDir2); 808 // For Webp 809 if($ir_to_webp){ 810 $arr = [".jpeg",".jpg",".png",".bmp"]; 811 $holderName2 = str_replace($arr,".webp",$holderName); 812 $name2 = str_replace($arr,".webp",$newName); 813 if(!file_exists($ir_new_path."/".$holderName2)){ 814 $this->resize_img_ir($imgDir."/".$name, $ir_new_path."/".$holderName2,$ir_optimize_level,50,50,true,$ir_exif_status); 815 } 816 817 if(!file_exists($ir_new_path."/".$holderName)){ 818 $this->resize_img_ir($imgDir."/".$name, $ir_new_path."/".$holderName,$ir_optimize_level,50,50,false, $ir_exif_status); 819 } 820 821 822 }else{ // For Web End 823 824 if(!file_exists($ir_new_path."/".$holderName)){ 825 $this->resize_img_ir($imgDir."/".$name, $ir_new_path."/".$holderName,$ir_optimize_level,50,50, false, $ir_exif_status); 826 } 827 828 } 371 829 } 372 830 … … 469 927 $desktop_dimension = $ir_form_data["ir_desktop_dimension"][0] ?? 75; 470 928 $tablet_dimension = $ir_form_data["ir_tablet_dimension"][0] ?? 65; 471 $mobile_dimension = $ir_form_data["ir_mobile_dimension"][0] ?? 50;929 $mobile_dimension = $ir_form_data["ir_mobile_dimension"][0] ?? 0; 472 930 $thumbnail_dimension = $ir_form_data["ir_thumbnail_dimension"][0] ?? 20; 931 473 932 474 933 $img_resized_lg = imagescale($image,$original_width*($desktop_dimension/100),$original_height*($desktop_dimension/100)); 475 934 $img_resized_md = imagescale($image,$original_width*($tablet_dimension/100),$original_height*($tablet_dimension/100)); 476 935 $img_resized_sm = imagescale($image,$original_width*($mobile_dimension/100),$original_height*($mobile_dimension/100)); 477 $img_resized_xs = imagescale($image,self::$thumbnail_w,self::$thumbnail_h); 936 // $img_resized_xs = imagescale($image,self::$thumbnail_w,self::$thumbnail_h); 937 $img_resized_thumb = imagescale($image,$original_width*($thumbnail2_dimension/100),$original_height*($thumbnail2_dimension/100)); 478 938 479 939 $lg_destination = str_replace("-holder","_lg",$destination); 480 940 $md_destination = str_replace("-holder","_md",$destination); 481 941 $sm_destination = str_replace("-holder","_sm",$destination); 482 $xs_destination = str_replace("-holder","_xs",$destination); 942 // $thumb_destination = str_replace("-holder","_thumb",$destination); 943 $lg_destination2 = str_replace("-holder","_thu",$destination); 944 // $xs_destination = str_replace("-holder","_xs",$destination); 483 945 484 946 if(!$webp){ … … 487 949 // For Different Screen Size 488 950 @imagejpeg($img_resized_lg, $lg_destination, $ir_optimize_level); 951 489 952 @imagejpeg($img_resized_md, $md_destination, $ir_optimize_level); 490 953 @imagejpeg($img_resized_sm, $sm_destination, $ir_optimize_level); 491 @imagejpeg($img_resized_xs, $xs_destination, $ir_optimize_level); 954 // @imagejpeg($img_resized_xs, $xs_destination, $ir_optimize_level); 955 // @imagejpeg($img_resized_thumb, $thumb_destination, $ir_optimize_level); 492 956 493 957 } … … 497 961 $img_resized, 498 962 $img_resized_lg, 963 499 964 $img_resized_md, 500 $img_resized_sm, 501 $img_resized_xs 965 $img_resized_sm 502 966 ]; 503 967 $arr2 = [ 504 968 $destination, 505 969 $lg_destination, 970 506 971 $md_destination, 507 $sm_destination ,508 $xs_destination972 $sm_destination 973 _destination 509 974 ]; 510 975 // foreach($arr as $key => $value){ … … 525 990 // For Different Screen Size 526 991 imagewebp($img_resized_lg, $lg_destination, $ir_optimize_level); 992 527 993 imagewebp($img_resized_md, $md_destination, $ir_optimize_level); 528 994 imagewebp($img_resized_sm, $sm_destination, $ir_optimize_level); 529 imagewebp($img_resized_xs, $xs_destination, $ir_optimize_level);995 _destination, $ir_optimize_level); 530 996 } 531 997 elseif ($info['mime'] == 'image/bmp') { … … 533 999 // For Different Screen Size 534 1000 imagebmp($img_resized_lg, $lg_destination, $ir_optimize_level); 1001 535 1002 imagebmp($img_resized_md, $md_destination, $ir_optimize_level); 536 1003 imagebmp($img_resized_sm, $sm_destination, $ir_optimize_level); 537 imagebmp($img_resized_xs, $xs_destination, $ir_optimize_level);1004 _destination, $ir_optimize_level); 538 1005 } 539 1006 … … 544 1011 // Differenct raio for screen sizes w:h 545 1012 $w_lg=imagesx($img_resized_lg); 1013 546 1014 $w_md=imagesx($img_resized_md); 547 1015 $w_sm=imagesx($img_resized_sm); 548 $w_xs=imagesx($img_resized_xs);1016 ); 549 1017 $h_lg=imagesy($img_resized_lg); 1018 550 1019 $h_md=imagesy($img_resized_md); 551 1020 $h_sm=imagesy($img_resized_sm); 552 $h_xs=imagesy($img_resized_xs);1021 ); 553 1022 554 1023 $webp=imagecreatetruecolor($w,$h); 555 1024 $webp_lg=imagecreatetruecolor($w_lg,$h_lg); 1025 556 1026 $webp_md=imagecreatetruecolor($w_md,$h_md); 557 1027 $webp_sm=imagecreatetruecolor($w_sm,$h_sm); 558 $webp_xs=imagecreatetruecolor($w_xs,$h_xs);1028 ); 559 1029 560 1030 imagealphablending($webp,false); … … 562 1032 imagealphablending($webp_lg,false); 563 1033 imagesavealpha($webp_lg,true); 1034 1035 564 1036 imagealphablending($webp_md,false); 565 1037 imagesavealpha($webp_md,true); 566 1038 imagealphablending($webp_sm,false); 567 imagealphablending($webp_sm,false); 568 imagesavealpha($webp_xs,true); 1039 imagesavealpha($webp_sm,true); 1040 // imagealphablending($webp_thumb,false); 1041 // imagesavealpha($webp_thumb,true); 569 1042 570 1043 imagecopyresampled($webp,$img_resized,0,0,0,0,$w,$h,$w,$h); 571 1044 imagecopyresampled($webp_lg,$img_resized_lg,0,0,0,0,$w_lg,$h_lg,$w_lg,$h_lg); 1045 572 1046 imagecopyresampled($webp_md,$img_resized_md,0,0,0,0,$w_md,$h_md,$w_md,$h_md); 573 1047 imagecopyresampled($webp_sm,$img_resized_sm,0,0,0,0,$w_sm,$h_sm,$w_sm,$h_sm); 574 imagecopyresampled($webp_xs,$img_resized_xs,0,0,0,0,$w_xs,$h_xs,$w_xs,$h_xs);1048 ); 575 1049 576 1050 imagewebp($webp, $destination,$ir_optimize_level); 577 1051 imagewebp($webp_lg, $lg_destination,$ir_optimize_level); 1052 578 1053 imagewebp($webp_md, $md_destination,$ir_optimize_level); 579 1054 imagewebp($webp_sm, $sm_destination,$ir_optimize_level); 580 imagewebp($webp_xs, $xs_destination,$ir_optimize_level);1055 _destination,$ir_optimize_level); 581 1056 582 1057 imagedestroy($img_resized); 583 1058 imagedestroy($img_resized_lg); 1059 584 1060 imagedestroy($img_resized_md); 585 1061 imagedestroy($img_resized_sm); 586 imagedestroy($img_resized_xs);1062 ); 587 1063 imagedestroy($webp); 588 1064 imagedestroy($webp_lg); 1065 589 1066 imagedestroy($webp_md); 590 1067 imagedestroy($webp_sm); 591 imagedestroy($webp_xs);1068 ); 592 1069 } 593 1070 if($ir_exif_status){ 594 1071 595 $arr = [$destination,$lg_destination, $ md_destination,$sm_destination,$xs_destination];1072 $arr = [$destination,$lg_destination, $_destination]; 596 1073 foreach($arr as $a){ 597 1074 $this->ir_exif_save_data($source, $a); … … 816 1293 $image = $upload["url"]; 817 1294 $path = wp_upload_dir()["basedir"]; 1295 818 1296 if($this->ir_is_image($image)){ 819 1297 $img_path = $image; … … 923 1401 // Change url if it exists // fallback 924 1402 925 if($this->ir_check_exists( $path."/_gowebp_/".$img_name)) $source['url'] = $path."/_gowebp_/".$img_name;1403 if($this->ir_check_exists(."/_gowebp_/".$img_name; 926 1404 } 927 1405 } … … 1000 1478 1001 1479 1002 $img_name = $path."/_gowebp_/".$newSrc;1480 $img_name = ."/_gowebp_/".$newSrc; 1003 1481 1004 1482 if($img_to_webp_ir && $this->ir_check_feature_pre() && $this->ir_check_webpSupport()){ … … 1137 1615 } 1138 1616 1139 1140 1141 let lazyImg = document.querySelectorAll("img[data-src]"); 1142 let lazyImg2 = document.querySelectorAll("img[data-original]"); 1143 let lazyImg3 = document.querySelectorAll("img[data-original2]"); 1144 let divs = document.querySelectorAll("div"); 1617 var lazyImg = document.querySelectorAll("img[data-src]"); 1618 var lazyImg2 = document.querySelectorAll("img[data-original]"); 1619 var lazyImg3 = document.querySelectorAll("img[data-original2]"); 1620 irimgload_(); 1621 function irimgload_(){ 1622 // return false; 1623 var lazyImg = document.querySelectorAll("img[data-src]"); 1624 var lazyImg2 = document.querySelectorAll("img[data-original]"); 1625 var lazyImg3 = document.querySelectorAll("img[data-original2]"); 1626 var divs = document.querySelectorAll("div"); 1145 1627 // Progressive Image Load 1146 1628 if(progload_status == true){ … … 1158 1640 let loadImages = (image)=>{ 1159 1641 if(image.hasAttribute('data-responsive')){ 1642 1643 1644 1645 1646 1647 1648 1649 1650 1160 1651 1161 image.setAttribute("src",image.getAttribute("data-responsive"));1162 src = image.getAttribute("data-responsive");1163 // image.setAttribute("src",image.getAttribute("data-src"));1164 if(src!=null) image.setAttribute("srcset",src);1165 1652 if(src!=null) image.setAttribute("src",src); 1166 1653 image.onload = ()=>{ … … 1263 1750 } 1264 1751 } 1265 1752 } 1753 setTimeout(irimgload_, 1000); 1754 setTimeout(irimgload_, 2000); 1755 setTimeout(irimgload_, 3000); 1756 setTimeout(irimgload_, 4000); 1757 setTimeout(irimgload_, 5000); 1266 1758 let ir_change_viewport = (img) =>{ 1267 1759 source = img.getAttribute("data-original"); … … 1407 1899 $this->ir_insert_images_url($ir_images); 1408 1900 } 1409 $this->ir_start_optimization(); 1901 1902 // $this->ir_start_optimization(); 1410 1903 $optImageCounter = $this->ir_get_opt_img_count(); 1904 1905 1906 1411 1907 1412 1908 if($this->ir_check_optStarted() && $optImageCounter>$imageCounter){ … … 1421 1917 $optImageCounter = $imageCounter; 1422 1918 1423 $optImgCount = $ this->ir_get_opt_img_count();1919 $optImgCount = $; 1424 1920 $optImgCount =$optImgCount>$imageCounter ? $imageCounter:$optImgCount; 1425 1921 … … 1453 1949 } 1454 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1455 1960 return [ 1456 1961 "total_size"=>$totalsize, -
gowebp/trunk/includes/helper.php
r2721782 r2737282 7 7 function ir_revert_gowebp(){ 8 8 global $wpdb; 9 $dir = wp_upload_dir()["baseurl"].'/_gowebp_';9 $dir = .'/_gowebp_'; 10 10 if(file_exists($dir)){ 11 11 $this->ir_empty_dir($dir); … … 268 268 269 269 function ir_update_record($status, $date=""){ 270 if($status=="active" && $date!=""){ 271 update_user_meta(1, "ir_end_date",$date); 272 } 273 update_user_meta(1, "ir_gowebp_status", $status); 270 if(strtolower($status)=="active" && $date!=""){ 271 // update_user_meta(1, "ir_end_date",$date,"ir_end_date"); 272 global $wpdb; 273 $dbData = array(); 274 $dbData['meta_value'] = $date; 275 $wpdb->update($wpdb->prefix . 'usermeta', $dbData, array('user_id' => 1,"meta_key"=>"ir_end_date")); 276 } 277 //update_user_meta(1, "ir_gowebp_status", $status,"ir_gowebp_status"); 278 global $wpdb; 279 $dbData = array(); 280 $dbData['meta_value'] = $status; 281 $wpdb->update($wpdb->prefix . 'usermeta', $dbData, array('user_id' => 1,"meta_key"=>"ir_gowebp_status")); 274 282 } 275 283 … … 310 318 $wpdb->insert($table, $data4, $format); 311 319 320 321 322 323 312 324 $data5 = [ 313 325 "user_id"=>1, 314 326 "meta_key"=> "ir_to_webp", 315 "meta_value"=> 0327 "meta_value"=> 316 328 ]; 317 329 $wpdb->insert($table, $data5, $format); … … 376 388 $image = stripslashes($image); 377 389 // Checking if exists in json db 378 if($this->ir_check_url_exists_json($image)){ 379 continue; 390 391 if (strpos($image, 'uploads') !== false) { 392 393 if($this->ir_check_url_exists_json($image)){ 394 continue; 395 } 396 397 $this->update_data($image); 398 $add_arr = array( 399 'id' =>rand(), 400 'url' => $image, 401 'webp'=>0, 402 'legacy'=>0, 403 'legacy2'=>0 404 ); 405 $data[] = $add_arr; 380 406 } 381 382 $this->update_data($image);383 $add_arr = array(384 'id' =>rand(),385 'url' => $image,386 'webp'=>0,387 'legacy'=>0,388 'legacy2'=>0389 );390 $data[] = $add_arr;391 407 } 392 408 } -
gowebp/trunk/readme.txt
r2725151 r2737282 4 4 Tags: Optimize image, lazyload, image viewport, Progressive load, webP 5 5 Requires at least: 5.0 6 Tested up to: 5.9.37 Stable tag: 1.0. 46 Tested up to: 7 Stable tag: 1.0. 8 8 License: GPLv2 or later 9 9 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 81 81 == Changelog == 82 82 83 84 85 86 87 83 88 = Version 1.0.4 = 84 89 * Test log file removed -
gowebp/trunk/store.php
r2721782 r2737282 1 1 <?php 2 3 2 class GoWEBP_STORE extends GOWEBP_WORKER{ 4 3 … … 10 9 $prev_desktop_dimension = $previous_settings["ir_desktop_dimension"][0] ?? 0; 11 10 $prev_tablet_dimension = $previous_settings["ir_tablet_dimension"][0] ?? 0; 12 $prev_mobile_dimension = $previous_settings["ir_mobile_dimension"][0] ?? 0; 11 $prev_mobile_dimension = $previous_settings["ir_mobile_dimension"][0] ?? 20; 12 13 13 $prev_to_webp = $previous_settings["ir_to_webp"][0] ?? 0; 14 14 … … 115 115 116 116 117 file_put_contents(dirname(plugin_dir_path(__FILE__))."/gowebp/includes/gowebp_urls3.txt",""); 118 119 $this->gowebp_clear_cache2(); 120 $this->ir_start_optimization(); 121 $this->gowebp_clear_cache2(); 117 if($this->ir_check_feature_pre()){ 118 file_put_contents(dirname(plugin_dir_path(__FILE__))."/gowebp/includes/gowebp_urls3.txt",""); 119 $this->gowebp_clear_cache2(); 120 $this->ir_start_optimization(); 121 $this->gowebp_clear_cache2(); 122 } 123 124 125 126 122 127 $totalImgCount = get_user_meta(1,'ir_original_img_count',true); 123 128 $optImgCount = $this->ir_get_opt_img_count(); … … 207 212 } 208 213 209 function ir_proceed_key($response){ 210 $end = $response["end_date"]; 211 $feature = $response["feature_status"]; 212 $status = $response["active_status"]; 214 function ir_proceed_key($response){ $end = $response["end_date"]; $feature 215 = $response["feature_status"]; $status = $response["active_status"]; 213 216 // will remove below 3 214 217 $sub_id = $response["sub_id"]; -
gowebp/trunk/uninstall.php
r2714583 r2737282 8 8 function ir_revert_gowebp(){ 9 9 global $wpdb; 10 $dir = wp_upload_dir()["basedir"].'/_gowebp_/';10 $dir = .'/_gowebp_/'; 11 11 $dir2 = wp_upload_dir()["basedir"].'/litespeed/'; 12 12 $dir3=WP_CONTENT_DIR."/cache"; … … 18 18 $this->ir_delete_metas(); 19 19 $this->ir_revert_theme_images(); 20 21 20 22 21 23 } … … 32 34 }else{ 33 35 $this->ir_empty_dir($file->getPathname()); 34 rmdir($file->getPathname());36 rmdir($file->getPathname()); 35 37 } 36 38 }
Note: See TracChangeset
for help on using the changeset viewer.