plugin_dir_url( __FILE__ ), 'fullWidth' => (isset($options['fullWidth'])) ? $options['fullWidth'] : "960", 'columnStructure' => (isset($options['columnStructure'])) ? $options['columnStructure'] : "0", 'responsiveSupport' => (isset($options['responsiveSupport'])) ? $options['responsiveSupport'] : "on", 'containerClass' => (isset($options['containerClass'])) ? $options['containerClass'] : "", 'columnsClass' => (isset($options['columnsClass'])) ? $options['columnsClass'] : "", 'gutterClass' => (isset($options['gutterClass'])) ? $options['gutterClass'] : "" )); wp_enqueue_style("dry_awp_admin_style", plugins_url('assets/css/admin.css', __FILE__)); add_editor_style(plugins_url('assets/css/awp-editor.css', __FILE__)); add_filter( "plugin_action_links_".plugin_basename( __FILE__ ), array(&$this, 'advanced_wp_columns_settings_link') ); }else{ if((isset($options['responsiveSupport']) && $options['responsiveSupport'] == 'on') && (isset($options['wpautopDisabled']) && $options['wpautopDisabled'] == 'yes')){ remove_filter ('the_content', 'wpautop'); } add_action( 'wp_enqueue_scripts', array(&$this, 'get_wp_columns_styles') ); } if (!current_user_can('edit_posts') && !current_user_can('edit_pages')) { return; } if (get_user_option('rich_editing') == 'true') { add_filter('mce_external_plugins', array(&$this, 'register_dry_plugins')); add_filter('mce_buttons_2', array(&$this, 'register_dry_btns')); } } function register_dry_btns($buttons) { array_push($buttons, 'advanced_wp_columns'); return $buttons; } function drysc_add_defaults() { $arr = array( "fullWidth" => "960", "columnStructure" => "0", "responsiveSupport" => "on", "smallBreakPoint" => "1024", "smallBreakPointContentWidth" => "80%", "wpautopDisabled" => "no", "containerClass" => "", "columnsClass" => "", "gutterClass" => "" ); update_option( 'drysc_options', $arr ); } function register_dry_plugins($plgs) { $plgs['advanced_wp_columns'] = plugins_url('assets/js/plugins/columns.js', __FILE__); return $plgs; } function drysc_init() { register_setting('drysc_plugin_options', 'drysc_options'); } function advanced_wp_columns_add_options_page(){ add_options_page(__('Advanced WP Columns','awp_columns'), __('Advanced WP Columns','awp_columns'), 'manage_options', __FILE__, array(&$this, 'render_options_form')); } function render_options_form(){ $options = get_option('drysc_options'); $outputHTML = '
'; $outputHTML .= '
'; $outputHTML .= '

Advanced WP Columns

'; $outputHTML .= '

Main options related to the default settings and columns theming.

'; $outputHTML .= '
'; echo($outputHTML); settings_fields('drysc_plugin_options'); $outputHTML = ''; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= '
'; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= '

Full width of all of your columns, optimal is 960

'; $outputHTML .= '
'; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= '
'; $outputHTML .= ' Responsive layout'; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= '
'; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= '

Show one column per row when screen width
is smaller than specified, optimal is 1024

'; $outputHTML .= '
'; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= '

Define how much space in percentage will column occupy
in row after resolution break when is single, optimal is 80%

'; $outputHTML .= '
'; $outputHTML .= ' Empty paragraphs formating'; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' (follow this link for more details)'; $outputHTML .= '
'; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= '

CSS class which you want to apply to columns container

'; $outputHTML .= '
'; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= '

CSS class which you want to apply to all columns

'; $outputHTML .= '
'; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= ' '; $outputHTML .= '

CSS class which you want to apply to all gutters

'; $outputHTML .= '
'; $outputHTML .= ' If you need help or more details about this plugin configuration please follow this link.'; $outputHTML .= '

'; $outputHTML .= ' '; $outputHTML .= '

'; $outputHTML .= '
'; $outputHTML .= '
'; echo $outputHTML; wp_enqueue_style("awp_options_form_style", plugins_url('assets/css/awp-forms.css', __FILE__)); wp_enqueue_script('awp_options', plugins_url('assets/js/plugins/awp-options.js', __FILE__)); } function get_wp_columns_styles() { $options = get_option('drysc_options'); wp_enqueue_style("dry_awp_theme_style", plugins_url('assets/css/awp-columns.css', __FILE__)); if($options['responsiveSupport'] == 'on'){ $smallBreakPoint = preg_replace("/[^0-9]/","",$options["smallBreakPoint"]); $smallBreakPointContentWidth = preg_replace("/[^0-9]/","",$options["smallBreakPointContentWidth"]); $marginSpace = floor(((100 - $smallBreakPointContentWidth)/2) * 100)/100; $awp_css = ''; $awp_css .= '@media screen and (max-width: '.preg_replace("/[^0-9]/","",$smallBreakPoint).'px) {'; $awp_css .= ' .csColumn {'; $awp_css .= ' clear: both !important;'; $awp_css .= ' float: none !important;'; $awp_css .= ' text-align: center !important;'; $awp_css .= ' margin-left: '.$marginSpace.'% !important;'; $awp_css .= ' margin-right: '.$marginSpace.'% !important;'; $awp_css .= ' width: '.$smallBreakPointContentWidth.'% !important;'; $awp_css .= ' }'; $awp_css .= ' .csColumnGap {'; $awp_css .= ' display: none !important;'; $awp_css .= ' }'; $awp_css .= '}'; wp_add_inline_style( 'dry_awp_theme_style', $awp_css ); } } function advanced_wp_columns_settings_link( $links ) { $isSet=apply_filters('ebs_custom_option',false); if (!$isSet) { $settings_link = 'Settings'; array_push( $links, $settings_link ); } return $links; } } new AdvancedWPColumns();