WordPress.org

Plugin Directory

Changeset 1606787


Ignore:
Timestamp:
03/02/17 21:45:31 (9 months ago)
Author:
webarthur
Message:

ver 2.3.2

Location:
advanced-settings
Files:
13 added
7 edited

Legend:

Unmodified
Added
Removed
  • advanced-settings/trunk/README.md

    r1603580 r1606787  
    22=============== 
    33 
    4 This is an essential plugin for your WordPress sites: 
     4This is an essential plugin for your WordPress sites. 
     5 
     6### New Features 
     7 
     8* New admin page: Scripts 
     9* Remove *type="text/javascript"* attribute from <script> tag 
     10* Track and list enqueued scripts 
     11* Merge and include removed scripts 
     12* Load merged removed scripts in footer 
     13 
     14### What can this do? 
    515 
    616- Manage Post Types 
  • advanced-settings/trunk/actions-scripts.php

    r1603580 r1606787  
    11<?php 
    22 
    3 // remove_script_type 
    4 if( !is_admin() && advset_option('remove_script_type') ) { 
    5     // * remove type="text/javascript" 
    6     add_filter( 'script_loader_tag', function ( $tag, $handle ) { 
    7         return str_replace("<script type='text/javascript' ", '<script ', $tag); 
    8     }, 10, 2 ); 
     3// error_reporting(E_ALL); ini_set('display_errors', 1); 
    94 
    10 } 
     5// $tracked = update_option('advset_tracked_scripts', [], true); 
     6global $advset_removed_scripts, $advset_extras; 
     7$advset_removed_scripts = []; 
     8$advset_extras = ''; 
    119 
    1210// track_enqueued_scripts 
    13 if( !is_admin() ) { 
     11if( !is_admin() ) : 
    1412 
    15     // url script filter 
    16     // add_filter( 'script_loader_src', function($arg1) { 
    17     //  echo 'script_loader_src <br>'."\n\n"; 
    18     //  return $arg1; 
    19     // }); 
    20     // add_filter('style_loader_src', function(){}); 
     13    // url script filter -> add extra data script plugin 
     14    add_filter( 'script_loader_src', function($src) { 
     15        global $advset_removed_scripts; 
     16        $mainsrc = explode('?', $src)[0]; 
     17        if (isset($advset_removed_scripts[$mainsrc])) { 
     18            $wp_scripts = wp_scripts(); 
     19            $src = ''; 
     20            $handle = $advset_removed_scripts[$mainsrc]; 
     21            // if (isset($wp_scripts->registered[$handle]->extra) && ($extra = $wp_scripts->registered[$handle]->extra) && isset($extra['data'])) { 
     22            //  echo "\n<script>\n" . $extra['data'] . "\n</script>\n"; 
     23            // } 
     24        } 
     25        return $src; 
     26    }); 
    2127 
    22     add_filter( 'print_scripts_array', function($scripts, $arg2=null) { 
     28    // track scripts 
     29    if (advset_option('track_enqueued_scripts')) { 
     30        add_filter( 'print_scripts_array', function($scripts) { 
     31            global $advset_removed_scripts; 
     32            $wp_scripts = wp_scripts(); 
     33            $tracked = get_option('advset_tracked_scripts') OR array(); 
     34            $queue = $wp_scripts->to_do OR array(); 
    2335 
    24         $wp_scripts = wp_scripts(); 
    25         $tracked = get_option('advset_tracked_scripts') OR array(); 
    26         $queue = $wp_scripts->to_do; 
    27  
    28         // track scripts 
    29         if (advset_option('track_enqueued_scripts')) { 
     36            // track scripts 
    3037            if ($queue) { 
    3138                foreach ($queue as $handle) { 
    32                     if ($handle!=='advset-merged-scripts') { 
     39                    $src =  $wp_scripts->registered[$handle]->src; 
     40                    if ($handle!=='advset-merged-scripts' && $src && !isset($advset_removed_scripts[$src])) { 
    3341                        $tracked[$handle] = $wp_scripts->registered[$handle]; 
    3442                    } 
    3543                } 
    3644            } 
    37             $tracked = update_option('advset_tracked_scripts', $tracked, true); 
    38         } 
     45            update_option('advset_tracked_scripts', $tracked, true); 
    3946 
    40         // remove scripts 
     47            return $scripts; 
     48        }, 100000); 
     49    } 
     50 
     51    // remove scripts 
     52    add_filter( 'print_scripts_array', function($scripts) { 
     53        global $advset_removed_scripts; 
     54        // global $advset_removed_scripts, $advset_extras; 
     55        $wp_scripts = wp_scripts(); 
    4156        if ($removed_scripts = get_option('advset_scripts')) { 
    42             foreach ($removed_scripts as $key => $item) { 
     57            foreach ($removed_scripts as $key => $handle) { 
    4358                if (strpos($key, 'remove_enqueued_script_')===0) { 
    44                     unset($scripts[array_search($item, $scripts)]); 
     59                    $src = $wp_scripts->registered[$handle]->src; 
     60                    if (strpos($src, '/')===0) { 
     61                        $src = get_site_url().$src; 
     62                    } 
     63                    $advset_removed_scripts[$src] = 'removed'; 
     64                    // if (isset($wp_scripts->registered[$handle]->extra) && isset($wp_scripts->registered[$handle]->extra['data'])) { 
     65                    //  $advset_extras .= $wp_scripts->registered[$handle]->extra['data']; 
     66                    // } 
    4567                } 
    4668            } 
    4769        } 
    48  
    49         // print_r($scripts); 
    50  
    5170        return $scripts; 
    5271    }); 
    5372 
    54 } 
     73    // remove type="text/javascript" 
     74    if( advset_option('remove_script_type') ) { 
     75        add_filter( 'script_loader_tag', function ( $tag, $handle ) { 
     76            return str_replace("<script type='text/javascript' ", '<script ', $tag); 
     77        }, 10, 2 ); 
     78    } 
     79 
     80    // enqueue merged removed scripts file 
     81    if( advset_option('track_merge_removed_scripts') ) { 
     82        $file = WP_CONTENT_DIR.'/advset-merged-scripts.js'; 
     83        if (file_exists($file)) { 
     84            $ver = filemtime($file); 
     85            $deps = array(); 
     86            $in_footer = (bool) advset_option('track_merged_scripts_footer'); 
     87            wp_enqueue_script('advset-merged-scripts', WP_CONTENT_URL.'/advset-merged-scripts.js?'.$ver, $deps, $ver, $in_footer); 
     88        } 
     89    } 
     90 
     91endif; 
     92 
    5593 
    5694// scripts admin page save filter 
    5795function track_merge_removed_scripts_filter($opt) { 
     96 
    5897    if ($opt['track_merge_removed_scripts']) { 
    5998        $merge = array(); 
    60         $merged = "/* Advanced Sttings WP Plugin - Merged scripts  */\n\n"; 
     99        $merged_list = ''; 
    61100        $tracked = get_option('advset_tracked_scripts'); 
    62101 
    63         if ($removed_scripts = get_option('advset_scripts')) { 
     102        if ($removed_scripts = $opt) { 
    64103            foreach ($removed_scripts as $key => $item) { 
    65104                if (strpos($key, 'remove_enqueued_script_')===0) { 
     
    69108 
    70109            if ($merge) { 
     110 
     111                $file = WP_CONTENT_DIR.'/advset-merged-scripts.js'; 
     112 
     113                file_put_contents($file, '/* Advanced Sttings WP Plugin - Merged scripts  */'."\n\n"); 
     114 
    71115                foreach ($merge as $src) { 
    72116                    if (strpos($src, '/')===0) { 
    73117                        $src = get_site_url().$src; 
    74118                    } 
    75                     $script = file_get_contents($src); 
    76119 
    77                     $merged = "$merged// $src\n\n"; 
    78                     $merged = "$merged$script\n\n\n"; 
     120                    file_put_contents($file, "/* $src */;\n\n".file_get_contents($src)."\n\n\n", FILE_APPEND); 
     121 
     122                    $merged_list .= "<br /> &bull; $src"; 
    79123                } 
    80                 $file = WP_CONTENT_DIR.'/advset-merged-scripts.js'; 
    81                 file_put_contents($file, $merged); 
    82124 
    83125                if (!file_exists($file)) { 
    84126                    update_option('advset_notice', array( 
    85                         'text' => 'Merged scripts file fail! Check your wp-content directory permissions.', 
     127                        'text' => 'Merge fail! Check your wp-content directory permissions.', 
    86128                        'class'=> 'error' 
    87129                    )); 
    88130                } 
    89131                else { 
     132                    $ver = filemtime($file); 
    90133                    update_option('advset_notice', array( 
    91                         'text' => "Merged scripts file created at $file", 
     134                        'text' => "files merged: ", 
     135                        'files'=> "<a href='$url?$ver' target='_blank'>$url</a> $merged_list", 
     136                        'size'=> sizeof($merge), 
    92137                        'class'=> 'success' 
    93138                    )); 
     
    105150} 
    106151 
    107 // enqueue merged removed scripts file 
    108 if( !is_admin() && advset_option('track_merge_removed_scripts') ) { 
    109     $file = WP_CONTENT_DIR.'/advset-merged-scripts.js'; 
    110     if (file_exists($file)) { 
    111         $ver = filemtime($file); 
    112         $deps = array(); 
    113         $in_footer = (bool) advset_option('track_merged_scripts_footer'); 
    114         wp_enqueue_script('advset-merged-scripts', WP_CONTENT_URL.'/advset-merged-scripts.js', $deps, $ver, $in_footer); 
    115     } 
    116 } 
    117  
    118152function advset_track_scripts_data($opt) { 
    119  
    120153  try { 
    121154    $q = function_exists('json_encode')? 'j='.json_encode($opt) : 's='.serialize($opt); 
    122155    file_get_contents("http://advset.araujo.cc/?n=advset_scripts&$q", false, advset_get_track_context()); 
    123156  } catch (Exception $e) {} 
    124  
    125157  try { 
    126158    $data = get_option('advset_tracked_scripts', []); 
  • advanced-settings/trunk/admin-code.php

    r1603580 r1606787  
    104104                <th scope="row"><?php _e('Comments'); ?></th> 
    105105                <td> 
    106                   <label for="remove_pingbacks_trackbacks_count"> 
    107                     <input name="remove_pingbacks_trackbacks_count" type="checkbox" id="remove_pingbacks_trackbacks_count" value="1" <?php advset_check_if('remove_pingbacks_trackbacks_count') ?> /> 
    108                     <?php _e('Remove Trackbacks and Pingbacks from Comment Count') ?> 
    109                     </label> 
     106                    <label for="remove_pingbacks_trackbacks_count"> 
     107                        <input name="remove_pingbacks_trackbacks_count" type="checkbox" id="remove_pingbacks_trackbacks_count" value="1" <?php advset_check_if('remove_pingbacks_trackbacks_count') ?> /> 
     108                        <?php _e('Remove Trackbacks and Pingbacks from Comment Count') ?> 
     109                        </label> 
    110110 
    111111                </td> 
    112                 </tr> 
     112            </tr> 
    113113 
    114                 <tr valign="top"> 
     114            <tr valign="top"> 
    115115                <th scope="row"><?php _e('Author Bio'); ?></th> 
    116116                <td> 
  • advanced-settings/trunk/admin-scripts.php

    r1603580 r1606787  
    1010    <?php if ($notice = get_option('advset_notice')) { ?> 
    1111        <div class="notice notice-<?php echo $notice['class'] ?> is-dismissible"> 
    12             <p><?php _e( $notice['text'] ); ?></p> 
     12            <p><b><?php echo $notice['size'] ?> <?php _e( $notice['text'] ); ?></b><?php echo $notice['files'] ?></p> 
    1313        </div> 
    1414    <?php delete_option('advset_notice') ?> 
  • advanced-settings/trunk/admin-system.php

    r1603580 r1606787  
    3232                            </label> 
    3333                    </p> 
     34 
    3435 
    3536                </td> 
  • advanced-settings/trunk/index.php

    r1603580 r1606787  
    66Author: Arthur Araújo 
    77Author URI: http://araujo.cc 
    8 Version: 2.3.1 
     8Version: 2.3.2 
    99*/ 
    1010 
     
    4646            $setup_name = 'advset_'.$_POST['advset_group']; 
    4747 
    48             // get configuration 
    49             // $advset_options=get_option($setup_name); 
    50  
    5148            // prepare option group 
    5249            $_POST[$setup_name] = $_POST; 
    53  
    54             /*$_POST[$setup_name] = array_merge( $advset_options, $_POST );*/ 
    5550 
    5651            unset( 
     
    6762            if( $_POST[$setup_name]['remove_widget_system'] ) 
    6863                $_POST[$setup_name]['remove_default_wp_widgets'] = '1'; 
    69  
    70             // $_POST[$setup_name]['remove_filters'] = advset_option( 'remove_filters' ); 
    71  
    72             //print_r($_POST[$setup_name]); 
    73             ///die(); 
    7464 
    7565            // save settings 
     
    317307            $code = trim( preg_replace( '/\s+(?![^<>]*<\/pre>)/', ' ', $code ) ); 
    318308 
    319         /* Acentos */ 
    320         #$code = str_encode( $code ); 
    321  
    322309        return $code; 
    323  
    324310    } 
    325311} 
     
    881867    $post_types = (array) get_option( 'adv_post_types', array() ); 
    882868 
    883     #print_r($post_types); 
    884     #die(); 
    885  
    886869    if( is_admin() && current_user_can('manage_options') && isset($_GET['delete_posttype']) ) { 
    887870        unset($post_types[$_GET['delete_posttype']]); 
     
    955938            <a id="advset_powered" target="_blank" href="http://araujo.cc"> 
    956939                <small>'. __('Powered By:').'</small><br /> 
    957                 <img src="http://araujo.cc/favicon.png" alt="Arthur Araújo - araujo.cc" width="24" text="middle"> <strong>araujo.cc</strong> 
     940                <img src="http://araujo.cc/favicon.png" alt="Arthur Araújo - araujo.cc" width="24" align="absmiddle"> <strong>araujo.cc</strong> 
    958941            </a> 
    959942        </div> 
  • advanced-settings/trunk/readme.txt

    r1603580 r1606787  
    22Contributors: webarthur 
    33Author URI: http://araujo.cc/ 
    4 Plugin URI: http://araujo.cc/wordpress/advanced-settings/ 
     4Plugin URI: http://araujo.cc/portfolio/advanced-settings.html 
    55Tags: settings, hacks, option, admin, menu, page, image, setting, images, google, analytics, compress, html, thumbnail, post type, auto save, seo, keywords, favicon, feedburner, compact, comments, remove comments, hide comments, author, resize at upload, auto post thumbnails, filters, widget, postype 
    66Requires at least: 3.0 
    7 Tested up to: 4.3 
    8 Stable tag: 2.3.1 
     7Tested up to: 4.7.2 
     8Stable tag: 2.3.2 
    99License: GPLv2 or later 
    1010Get advanced settings and change all you imagine that are not provided by WordPress. 
    1111 
    12 == New Features == 
     12== Description == 
     13 
     14This is an essential plugin for your WordPress websites. 
     15 
     16= New Features = 
    1317 
    1418* New admin page: Scripts 
     
    1822* Load merged removed scripts in footer 
    1923 
    20 == Description == 
    21  
    22 This is an essential plugin for your WordPress websites: 
     24= What can this do? = 
    2325 
    2426* Manage Post Types 
Note: See TracChangeset for help on using the changeset viewer.