├── assets ├── icon-256x256.png └── icon-256x256.svg ├── css └── optionsframework.css ├── images └── ico-delete.png ├── includes ├── class-options-framework-admin.php ├── class-options-framework.php ├── class-options-interface.php ├── class-options-media-uploader.php └── class-options-sanitization.php ├── js ├── media-uploader.js └── options-custom.js ├── languages ├── options-framework-da_DK.mo ├── options-framework-da_DK.po ├── options-framework-es_ES.mo ├── options-framework-es_ES.po ├── options-framework-fa_IR.mo ├── options-framework-fa_IR.po ├── options-framework-fr_FR.mo ├── options-framework-fr_FR.po ├── options-framework-hu_HU.po ├── options-framework-id_ID.mo ├── options-framework-id_ID.po ├── options-framework-it_IT.mo ├── options-framework-it_IT.po ├── options-framework-pt_BR.mo ├── options-framework-pt_BR.po ├── options-framework-pt_PT.mo ├── options-framework-pt_PT.po ├── options-framework-ru_RU.mo ├── options-framework-ru_RU.po ├── options-framework-sv_SE.mo ├── options-framework-sv_SE.po ├── options-framework-zh_CN.mo ├── options-framework-zh_CN.po └── options-framework.pot ├── options-check ├── footer.php ├── functions.php ├── header.php ├── images │ ├── 1col.png │ ├── 2cl.png │ └── 2cr.png ├── index.php ├── options.php ├── screenshot.png └── style.css ├── options-framework.php ├── options-theme-customizer ├── footer.php ├── functions.php ├── header.php ├── index.php ├── options.php ├── screenshot.png └── style.css ├── readme.md ├── readme.txt └── screenshot-1.png /assets/icon-256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/assets/icon-256x256.png -------------------------------------------------------------------------------- /assets/icon-256x256.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | background 6 | 7 | 8 | 9 | Layer 1 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /css/optionsframework.css: -------------------------------------------------------------------------------- 1 | /* Options Framework Admin Styles */ 2 | 3 | #optionsframework { 4 | max-width:840px; 5 | background:#fff; 6 | } 7 | #optionsframework h3 { 8 | cursor: default; 9 | background-color: #f1f1f1; 10 | border-bottom: 1px solid #ddd; 11 | padding: 12px 10px; 12 | margin: 0; 13 | } 14 | #optionsframework p { 15 | margin-bottom:0; 16 | padding-bottom:10px; 17 | } 18 | #optionsframework .section { 19 | padding:10px 10px 0; 20 | } 21 | #optionsframework .group { 22 | padding-bottom:40px; 23 | } 24 | #optionsframework .section .controls { 25 | float: left; 26 | min-width:350px; 27 | width: 54%; 28 | padding-right:2%; 29 | } 30 | #optionsframework .section .explain { 31 | max-width:38%; 32 | float: left; 33 | font-size: 12px; 34 | line-height:16px; 35 | color: #777; 36 | } 37 | #optionsframework .section-checkbox .controls { 38 | width: 98%; 39 | } 40 | #optionsframework .section-checkbox .explain { 41 | max-width:94%; 42 | } 43 | #optionsframework .controls input[type=text] { 44 | width:100%; 45 | } 46 | #optionsframework .controls input[type=text].wp-color-picker { 47 | width: 65px; 48 | } 49 | #optionsframework .controls select, #optionsframework .controls textarea { 50 | margin-bottom:10px; 51 | width:100%; 52 | } 53 | #optionsframework .section-radio label, #optionsframework .section-multicheck label { 54 | float:left; 55 | max-width:90%; 56 | line-height: 16px; 57 | margin-bottom: 5px; 58 | } 59 | #optionsframework input.checkbox, #optionsframework input.of-radio { 60 | margin: 0 10px 5px 0; 61 | float:left; 62 | clear:both; 63 | } 64 | #optionsframework .section-typography .controls { 65 | float:none; 66 | width:auto; 67 | } 68 | #optionsframework .section-typography .explain { 69 | float:none; 70 | width:auto; 71 | } 72 | #optionsframework .controls .of-typography-size { 73 | width:80px; 74 | float:left 75 | } 76 | #optionsframework .controls .of-typography-unit { 77 | width:50px; 78 | margin-left:5px; 79 | float:left 80 | } 81 | #optionsframework .controls .of-typography-face { 82 | width:100px; 83 | margin-left:5px; 84 | float:left 85 | } 86 | #optionsframework .controls .of-typography-style { 87 | width:80px; 88 | margin-left:5px; 89 | margin-right:5px; 90 | float:left 91 | } 92 | #optionsframework .section-typography .wp-picker-container { 93 | margin-top:2px; 94 | } 95 | #optionsframework .of-background-properties { 96 | clear:both; 97 | margin-top: 18px; 98 | } 99 | #optionsframework .controls .of-background-repeat { 100 | width:125px; 101 | margin-right:5px; 102 | float:left 103 | } 104 | #optionsframework .controls .of-background-position { 105 | width:125px; 106 | margin-right:5px; 107 | float:left 108 | } 109 | #optionsframework .controls .of-background-attachment { 110 | width:125px; 111 | margin-right:5px; 112 | float:left 113 | } 114 | #optionsframework .section-background .wp-picker-container { 115 | margin-bottom:10px; 116 | } 117 | #optionsframework .controls .of-radio-img-img { 118 | border:3px solid #f9f9f9; 119 | margin:0 5px 10px 0; 120 | display:none; 121 | cursor:pointer; 122 | float:left; 123 | } 124 | #optionsframework .controls .of-radio-img-selected { 125 | border:3px solid #ccc 126 | } 127 | #optionsframework .controls .of-radio-img-img:hover { 128 | opacity:.8; 129 | } 130 | #optionsframework .controls .of-border-width { 131 | width:80px; 132 | float:left 133 | } 134 | #optionsframework .controls .of-border-style { 135 | width:120px; 136 | float:left 137 | } 138 | #optionsframework .hide { 139 | display:none; 140 | } 141 | #optionsframework .of-option-image { 142 | max-width:340px; 143 | margin:3px 0 18px 0; 144 | } 145 | #optionsframework .mini .controls select, #optionsframework .section .mini .controls { 146 | width: 140px; 147 | } 148 | #optionsframework .mini .controls input, #optionsframework .mini .controls { 149 | min-width:140px; 150 | width: 140px; 151 | } 152 | #optionsframework .mini .explain { 153 | max-width:74%; 154 | } 155 | 156 | /* Editor */ 157 | 158 | #optionsframework .section-editor .explain { 159 | max-width: 98%; 160 | float:none; 161 | margin-bottom:5px; 162 | } 163 | 164 | /* Image Uploader */ 165 | 166 | #optionsframework .controls input.upload { 167 | width:80%; 168 | } 169 | #optionsframework .screenshot { 170 | float:left; 171 | margin-left:1px; 172 | position:relative; 173 | width:344px; 174 | margin-top:3px; 175 | } 176 | #optionsframework .screenshot img { 177 | background:#fafafa; 178 | border-color:#ccc #eee #eee #ccc; 179 | border-style:solid; 180 | border-width:1px; 181 | float:left; 182 | max-width:334px; 183 | padding:4px; 184 | margin-bottom:10px; 185 | } 186 | #optionsframework .screenshot .remove-image { 187 | background:url("../images/ico-delete.png") no-repeat; 188 | border:medium none; 189 | bottom:4px; 190 | display:block; 191 | float:left; 192 | height:16px; 193 | padding:0; 194 | position:absolute; 195 | left:-4px; 196 | text-indent:-9999px; 197 | width:16px; 198 | } 199 | #optionsframework .screenshot .no_image .file_link { 200 | margin-left: 20px; 201 | } 202 | #optionsframework .screenshot .no_image .remove-button { 203 | bottom: 0px; 204 | } 205 | #optionsframework .reset-button { 206 | float:left; 207 | cursor:pointer; 208 | } 209 | 210 | /* Bottom Section */ 211 | 212 | #optionsframework-submit { 213 | padding: 7px 10px; 214 | border-top: 1px solid #ddd; 215 | background-color: #f1f1f1; 216 | } 217 | #optionsframework .button-primary { 218 | float:right; 219 | } 220 | #optionsframework .section:after { 221 | content: ""; 222 | display: table; 223 | } 224 | #optionsframework .section:after { 225 | clear: both; 226 | } -------------------------------------------------------------------------------- /images/ico-delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/images/ico-delete.png -------------------------------------------------------------------------------- /includes/class-options-framework-admin.php: -------------------------------------------------------------------------------- 1 | 5 | * @license GPL-2.0+ 6 | * @link http://wptheming.com 7 | * @copyright 2010-2016 WP Theming 8 | */ 9 | 10 | class Options_Framework_Admin { 11 | 12 | /** 13 | * Page hook for the options screen 14 | * 15 | * @since 1.7.0 16 | * @type string 17 | */ 18 | protected $options_screen = null; 19 | 20 | /** 21 | * Hook in the scripts and styles 22 | * 23 | * @since 1.7.0 24 | */ 25 | public function init() { 26 | 27 | // Gets options to load 28 | $options = & Options_Framework::_optionsframework_options(); 29 | 30 | // Checks if options are available 31 | if ( $options ) { 32 | 33 | // Add the options page and menu item. 34 | add_action( 'admin_menu', array( $this, 'add_custom_options_page' ) ); 35 | 36 | // Add the required scripts and styles 37 | add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_styles' ) ); 38 | add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_scripts' ) ); 39 | 40 | // Settings need to be registered after admin_init 41 | add_action( 'admin_init', array( $this, 'settings_init' ) ); 42 | 43 | // Adds options menu to the admin bar 44 | add_action( 'wp_before_admin_bar_render', array( $this, 'optionsframework_admin_bar' ) ); 45 | 46 | } else { 47 | // Display a notice if options aren't present in the theme 48 | add_action( 'admin_notices', array( $this, 'options_notice' ) ); 49 | add_action( 'admin_init', array( $this, 'options_notice_ignore' ) ); 50 | } 51 | 52 | } 53 | 54 | /** 55 | * Let's the user know that options aren't available for their theme 56 | */ 57 | function options_notice() { 58 | global $pagenow; 59 | if ( !is_multisite() && ( $pagenow == 'plugins.php' || $pagenow == 'themes.php' ) ) { 60 | global $current_user ; 61 | $user_id = $current_user->ID; 62 | if ( ! get_user_meta($user_id, 'optionsframework_ignore_notice') ) { 63 | echo '

'; 64 | printf( __('Your current theme does not have support for the Options Framework plugin. Learn More | Hide Notice', 'options-framework' ), 'http://wptheming.com/options-framework-plugin', '?optionsframework_nag_ignore=0'); 65 | echo "

"; 66 | } 67 | } 68 | } 69 | 70 | /** 71 | * Allows the user to hide the options notice 72 | */ 73 | function options_notice_ignore() { 74 | global $current_user; 75 | $user_id = $current_user->ID; 76 | if ( isset( $_GET['optionsframework_nag_ignore'] ) && '0' == $_GET['optionsframework_nag_ignore'] ) { 77 | add_user_meta( $user_id, 'optionsframework_ignore_notice', 'true', true ); 78 | } 79 | } 80 | 81 | /** 82 | * Registers the settings 83 | * 84 | * @since 1.7.0 85 | */ 86 | function settings_init() { 87 | 88 | // Load Options Framework Settings 89 | $optionsframework_settings = get_option( 'optionsframework' ); 90 | 91 | // Registers the settings fields and callback 92 | register_setting( 'optionsframework', $optionsframework_settings['id'], array ( $this, 'validate_options' ) ); 93 | 94 | // Displays notice after options save 95 | add_action( 'optionsframework_after_validate', array( $this, 'save_options_notice' ) ); 96 | 97 | } 98 | 99 | /* 100 | * Define menu options (still limited to appearance section) 101 | * 102 | * Examples usage: 103 | * 104 | * add_filter( 'optionsframework_menu', function( $menu ) { 105 | * $menu['page_title'] = 'The Options'; 106 | * $menu['menu_title'] = 'The Options'; 107 | * return $menu; 108 | * }); 109 | * 110 | * @since 1.7.0 111 | * 112 | */ 113 | static function menu_settings() { 114 | 115 | $menu = array( 116 | 117 | // Modes: submenu, menu 118 | 'mode' => 'submenu', 119 | 120 | // Submenu default settings 121 | 'page_title' => __( 'Theme Options', 'options-framework'), 122 | 'menu_title' => __('Theme Options', 'options-framework'), 123 | 'capability' => 'edit_theme_options', 124 | 'menu_slug' => 'options-framework', 125 | 'parent_slug' => 'themes.php', 126 | 127 | // Menu default settings 128 | 'icon_url' => 'dashicons-admin-generic', 129 | 'position' => '61' 130 | 131 | ); 132 | 133 | return apply_filters( 'optionsframework_menu', $menu ); 134 | } 135 | 136 | /** 137 | * Add a subpage called "Theme Options" to the appearance menu. 138 | * 139 | * @since 1.7.0 140 | */ 141 | function add_custom_options_page() { 142 | 143 | $menu = $this->menu_settings(); 144 | 145 | switch( $menu['mode'] ) { 146 | 147 | case 'menu': 148 | // http://codex.wordpress.org/Function_Reference/add_menu_page 149 | $this->options_screen = add_menu_page( 150 | $menu['page_title'], 151 | $menu['menu_title'], 152 | $menu['capability'], 153 | $menu['menu_slug'], 154 | array( $this, 'options_page' ), 155 | $menu['icon_url'], 156 | $menu['position'] 157 | ); 158 | break; 159 | 160 | default: 161 | // http://codex.wordpress.org/Function_Reference/add_submenu_page 162 | $this->options_screen = add_submenu_page( 163 | $menu['parent_slug'], 164 | $menu['page_title'], 165 | $menu['menu_title'], 166 | $menu['capability'], 167 | $menu['menu_slug'], 168 | array( $this, 'options_page' ) ); 169 | break; 170 | } 171 | } 172 | 173 | /** 174 | * Loads the required stylesheets 175 | * 176 | * @since 1.7.0 177 | */ 178 | function enqueue_admin_styles( $hook ) { 179 | 180 | if ( $this->options_screen != $hook ) { 181 | return; 182 | } 183 | 184 | wp_enqueue_style( 185 | 'optionsframework', 186 | plugin_dir_url( dirname(__FILE__) ) . 'css/optionsframework.css', 187 | array(), 188 | Options_Framework::VERSION 189 | ); 190 | wp_enqueue_style( 'wp-color-picker' ); 191 | } 192 | 193 | /** 194 | * Loads the required javascript 195 | * 196 | * @since 1.7.0 197 | */ 198 | function enqueue_admin_scripts( $hook ) { 199 | 200 | if ( $this->options_screen != $hook ) { 201 | return; 202 | } 203 | 204 | // Enqueue custom option panel JS 205 | wp_enqueue_script( 206 | 'options-custom', 207 | plugin_dir_url( dirname(__FILE__) ) . 'js/options-custom.js', 208 | array( 'jquery','wp-color-picker' ), 209 | Options_Framework::VERSION 210 | ); 211 | 212 | // Inline scripts from options-interface.php 213 | add_action( 'admin_head', array( $this, 'of_admin_head' ) ); 214 | } 215 | 216 | function of_admin_head() { 217 | // Hook to add custom scripts 218 | do_action( 'optionsframework_custom_scripts' ); 219 | } 220 | 221 | /** 222 | * Builds out the options panel. 223 | * 224 | * If we were using the Settings API as it was intended we would use 225 | * do_settings_sections here. But as we don't want the settings wrapped in a table, 226 | * we'll call our own custom optionsframework_fields. See options-interface.php 227 | * for specifics on how each individual field is generated. 228 | * 229 | * Nonces are provided using the settings_fields() 230 | * 231 | * @since 1.7.0 232 | */ 233 | function options_page() { ?> 234 | 235 |
236 | 237 | menu_settings(); ?> 238 |

239 | 240 | 243 | 244 | 245 | 246 |
247 |
248 |
249 | 250 | 251 |
252 | 253 | 254 |
255 |
256 |
257 |
258 |
259 | 260 |
261 | 262 | get_default_values(); 291 | } 292 | 293 | /* 294 | * Update Settings 295 | * 296 | * This used to check for $_POST['update'], but has been updated 297 | * to be compatible with the theme customizer introduced in WordPress 3.4 298 | */ 299 | 300 | $clean = array(); 301 | $options = & Options_Framework::_optionsframework_options(); 302 | foreach ( $options as $option ) { 303 | 304 | if ( ! isset( $option['id'] ) ) { 305 | continue; 306 | } 307 | 308 | if ( ! isset( $option['type'] ) ) { 309 | continue; 310 | } 311 | 312 | $id = preg_replace( '/[^a-zA-Z0-9._\-]/', '', strtolower( $option['id'] ) ); 313 | 314 | // Set checkbox to false if it wasn't sent in the $_POST 315 | if ( 'checkbox' == $option['type'] && ! isset( $input[$id] ) ) { 316 | $input[$id] = false; 317 | } 318 | 319 | // Set each item in the multicheck to false if it wasn't sent in the $_POST 320 | if ( 'multicheck' == $option['type'] && ! isset( $input[$id] ) ) { 321 | foreach ( $option['options'] as $key => $value ) { 322 | $input[$id][$key] = false; 323 | } 324 | } 325 | 326 | // For a value to be submitted to database it must pass through a sanitization filter 327 | if ( has_filter( 'of_sanitize_' . $option['type'] ) ) { 328 | $clean[$id] = apply_filters( 'of_sanitize_' . $option['type'], $input[$id], $option ); 329 | } 330 | } 331 | 332 | // Hook to run after validation 333 | do_action( 'optionsframework_after_validate', $clean ); 334 | 335 | return $clean; 336 | } 337 | 338 | /** 339 | * Display message when options have been saved 340 | */ 341 | 342 | function save_options_notice() { 343 | add_settings_error( 344 | 'options-framework', 345 | 'save_options', 346 | __( 'Options saved.', 'options-framework' ), 347 | 'updated fade' 348 | ); 349 | } 350 | 351 | /** 352 | * Get the default values for all the theme options 353 | * 354 | * Get an array of all default values as set in 355 | * options.php. The 'id','std' and 'type' keys need 356 | * to be defined in the configuration array. In the 357 | * event that these keys are not present the option 358 | * will not be included in this function's output. 359 | * 360 | * @return array Re-keyed options configuration array. 361 | * 362 | */ 363 | 364 | function get_default_values() { 365 | $output = array(); 366 | $config = & Options_Framework::_optionsframework_options(); 367 | foreach ( (array) $config as $option ) { 368 | if ( ! isset( $option['id'] ) ) { 369 | continue; 370 | } 371 | if ( ! isset( $option['std'] ) ) { 372 | continue; 373 | } 374 | if ( ! isset( $option['type'] ) ) { 375 | continue; 376 | } 377 | if ( has_filter( 'of_sanitize_' . $option['type'] ) ) { 378 | $output[$option['id']] = apply_filters( 'of_sanitize_' . $option['type'], $option['std'], $option ); 379 | } 380 | } 381 | return $output; 382 | } 383 | 384 | /** 385 | * Add options menu item to admin bar 386 | */ 387 | 388 | function optionsframework_admin_bar() { 389 | 390 | $menu = $this->menu_settings(); 391 | 392 | global $wp_admin_bar; 393 | 394 | if ( 'menu' == $menu['mode'] ) { 395 | $href = admin_url( 'admin.php?page=' . $menu['menu_slug'] ); 396 | } else { 397 | $href = admin_url( 'themes.php?page=' . $menu['menu_slug'] ); 398 | } 399 | 400 | $args = array( 401 | 'parent' => 'appearance', 402 | 'id' => 'of_theme_options', 403 | 'title' => $menu['menu_title'], 404 | 'href' => $href 405 | ); 406 | 407 | $wp_admin_bar->add_menu( apply_filters( 'optionsframework_admin_bar', $args ) ); 408 | } 409 | 410 | } 411 | -------------------------------------------------------------------------------- /includes/class-options-framework.php: -------------------------------------------------------------------------------- 1 | 5 | * @license GPL-2.0+ 6 | * @link http://wptheming.com 7 | * @copyright 2010-2016 WP Theming 8 | */ 9 | 10 | class Options_Framework { 11 | 12 | /** 13 | * Plugin version, used for cache-busting of style and script file references. 14 | * 15 | * @since 1.7.0 16 | * @type string 17 | */ 18 | const VERSION = '1.8.6'; 19 | 20 | /** 21 | * Initialize the plugin. 22 | * 23 | * @since 1.7.0 24 | */ 25 | public function init() { 26 | 27 | // Needs to run every time in case theme has been changed 28 | add_action( 'admin_init', array( $this, 'set_theme_option' ) ); 29 | 30 | } 31 | 32 | /** 33 | * Sets option defaults 34 | * 35 | * @since 1.7.0 36 | */ 37 | function set_theme_option() { 38 | 39 | // Load settings 40 | $optionsframework_settings = get_option( 'optionsframework' ); 41 | 42 | // Updates the unique option id in the database if it has changed 43 | if ( function_exists( 'optionsframework_option_name' ) ) { 44 | optionsframework_option_name(); 45 | } 46 | elseif ( has_action( 'optionsframework_option_name' ) ) { 47 | do_action( 'optionsframework_option_name' ); 48 | } 49 | // If the developer hasn't explicitly set an option id, we'll use a default 50 | else { 51 | $default_themename = get_option( 'stylesheet' ); 52 | $default_themename = preg_replace( "/\W/", "_", strtolower($default_themename ) ); 53 | $default_themename = 'optionsframework_' . $default_themename; 54 | if ( isset( $optionsframework_settings['id'] ) ) { 55 | if ( $optionsframework_settings['id'] == $default_themename ) { 56 | // All good, using default theme id 57 | } else { 58 | $optionsframework_settings['id'] = $default_themename; 59 | update_option( 'optionsframework', $optionsframework_settings ); 60 | } 61 | } 62 | else { 63 | $optionsframework_settings['id'] = $default_themename; 64 | update_option( 'optionsframework', $optionsframework_settings ); 65 | } 66 | } 67 | 68 | } 69 | 70 | /** 71 | * Wrapper for optionsframework_options() 72 | * 73 | * Allows for manipulating or setting options via 'of_options' filter 74 | * For example: 75 | * 76 | * 77 | * add_filter( 'of_options', function( $options ) { 78 | * $options[] = array( 79 | * 'name' => 'Input Text Mini', 80 | * 'desc' => 'A mini text input field.', 81 | * 'id' => 'example_text_mini', 82 | * 'std' => 'Default', 83 | * 'class' => 'mini', 84 | * 'type' => 'text' 85 | * ); 86 | * 87 | * return $options; 88 | * }); 89 | * 90 | * 91 | * Also allows for setting options via a return statement in the 92 | * options.php file. For example (in options.php): 93 | * 94 | * 95 | * return array(...); 96 | * 97 | * 98 | * @return array (by reference) 99 | */ 100 | static function &_optionsframework_options() { 101 | static $options = null; 102 | 103 | if ( ! $options ) { 104 | // Load options from options.php file (if it exists) 105 | $location = apply_filters( 'options_framework_location', array( 'options.php' ) ); 106 | if ( $optionsfile = locate_template( $location ) ) { 107 | $maybe_options = require_once $optionsfile; 108 | if ( is_array( $maybe_options ) ) { 109 | $options = $maybe_options; 110 | } else if ( function_exists( 'optionsframework_options' ) ) { 111 | $options = optionsframework_options(); 112 | } 113 | } 114 | 115 | // Allow setting/manipulating options via filters 116 | $options = apply_filters( 'of_options', $options ); 117 | } 118 | 119 | return $options; 120 | } 121 | 122 | } 123 | -------------------------------------------------------------------------------- /includes/class-options-interface.php: -------------------------------------------------------------------------------- 1 | 5 | * @license GPL-2.0+ 6 | * @link http://wptheming.com 7 | * @copyright 2010-2016 WP Theming 8 | */ 9 | 10 | class Options_Framework_Interface { 11 | 12 | /** 13 | * Generates the tabs that are used in the options menu 14 | */ 15 | static function optionsframework_tabs() { 16 | $counter = 0; 17 | $options = & Options_Framework::_optionsframework_options(); 18 | $menu = ''; 19 | 20 | foreach ( $options as $value ) { 21 | // Heading for Navigation 22 | if ( $value['type'] == "heading" ) { 23 | $counter++; 24 | $class = ''; 25 | $class = ! empty( $value['id'] ) ? $value['id'] : $value['name']; 26 | $class = preg_replace( '/[^a-zA-Z0-9._\-]/', '', strtolower($class) ) . '-tab'; 27 | $menu .= '' . esc_html( $value['name'] ) . ''; 28 | } 29 | } 30 | 31 | return $menu; 32 | } 33 | 34 | /** 35 | * Generates the options fields that are used in the form. 36 | */ 37 | static function optionsframework_fields() { 38 | 39 | global $allowedtags; 40 | $optionsframework_settings = get_option( 'optionsframework' ); 41 | 42 | // Gets the unique option id 43 | if ( isset( $optionsframework_settings['id'] ) ) { 44 | $option_name = $optionsframework_settings['id']; 45 | } 46 | else { 47 | $option_name = 'optionsframework'; 48 | }; 49 | 50 | $settings = get_option($option_name); 51 | $options = & Options_Framework::_optionsframework_options(); 52 | 53 | $counter = 0; 54 | $menu = ''; 55 | 56 | foreach ( $options as $value ) { 57 | 58 | $val = ''; 59 | $select_value = ''; 60 | $output = ''; 61 | 62 | // Wrap all options 63 | if ( ( $value['type'] != "heading" ) && ( $value['type'] != "info" ) ) { 64 | 65 | // Keep all ids lowercase with no spaces 66 | $value['id'] = preg_replace('/[^a-zA-Z0-9._\-]/', '', strtolower($value['id']) ); 67 | 68 | $id = 'section-' . $value['id']; 69 | 70 | $class = 'section'; 71 | if ( isset( $value['type'] ) ) { 72 | $class .= ' section-' . $value['type']; 73 | } 74 | if ( isset( $value['class'] ) ) { 75 | $class .= ' ' . $value['class']; 76 | } 77 | 78 | $output .= '
'."\n"; 79 | if ( isset( $value['name'] ) ) { 80 | $output .= '

' . esc_html( $value['name'] ) . '

' . "\n"; 81 | } 82 | if ( $value['type'] != 'editor' ) { 83 | $output .= '
' . "\n" . '
' . "\n"; 84 | } 85 | else { 86 | $output .= '
' . "\n" . '
' . "\n"; 87 | } 88 | } 89 | 90 | // Set default value to $val 91 | if ( isset( $value['std'] ) ) { 92 | $val = $value['std']; 93 | } 94 | 95 | // If the option is already saved, override $val 96 | if ( ( $value['type'] != 'heading' ) && ( $value['type'] != 'info') ) { 97 | if ( isset( $settings[$value['id']]) ) { 98 | $val = $settings[$value['id']]; 99 | // Striping slashes of non-array options 100 | if ( ! is_array( $val ) ) { 101 | $val = stripslashes( $val ); 102 | } 103 | } 104 | } 105 | 106 | // If there is a description save it for labels 107 | $explain_value = ''; 108 | if ( isset( $value['desc'] ) ) { 109 | $explain_value = $value['desc']; 110 | } 111 | 112 | if ( has_filter( 'optionsframework_' . $value['type'] ) ) { 113 | $output .= apply_filters( 'optionsframework_' . $value['type'], $option_name, $value, $val ); 114 | } 115 | 116 | 117 | switch ( $value['type'] ) { 118 | 119 | // Basic text input 120 | case 'text': 121 | $output .= ''; 122 | break; 123 | 124 | // Password input 125 | case 'password': 126 | $output .= ''; 127 | break; 128 | 129 | // Textarea 130 | case 'textarea': 131 | $rows = '8'; 132 | 133 | if ( isset( $value['settings']['rows'] ) ) { 134 | $custom_rows = $value['settings']['rows']; 135 | if ( is_numeric( $custom_rows ) ) { 136 | $rows = $custom_rows; 137 | } 138 | } 139 | 140 | $val = stripslashes( $val ); 141 | $output .= ''; 142 | break; 143 | 144 | // Select Box 145 | case 'select': 146 | $output .= ''; 152 | break; 153 | 154 | 155 | // Radio Box 156 | case "radio": 157 | $name = $option_name .'['. $value['id'] .']'; 158 | foreach ($value['options'] as $key => $option) { 159 | $id = $option_name . '-' . $value['id'] .'-'. $key; 160 | $output .= ''; 161 | } 162 | break; 163 | 164 | // Image Selectors 165 | case "images": 166 | $name = $option_name .'['. $value['id'] .']'; 167 | foreach ( $value['options'] as $key => $option ) { 168 | $selected = ''; 169 | if ( $val != '' && ($val == $key) ) { 170 | $selected = ' of-radio-img-selected'; 171 | } 172 | $output .= ''; 173 | $output .= '
' . esc_html( $key ) . '
'; 174 | $output .= '' . $option .''; 175 | } 176 | break; 177 | 178 | // Checkbox 179 | case "checkbox": 180 | $output .= ''; 181 | $output .= ''; 182 | break; 183 | 184 | // Multicheck 185 | case "multicheck": 186 | foreach ($value['options'] as $key => $option) { 187 | $checked = ''; 188 | $label = $option; 189 | $option = preg_replace('/[^a-zA-Z0-9._\-]/', '', strtolower($key)); 190 | 191 | $id = $option_name . '-' . $value['id'] . '-'. $option; 192 | $name = $option_name . '[' . $value['id'] . '][' . $option .']'; 193 | 194 | if ( isset($val[$option]) ) { 195 | $checked = checked($val[$option], 1, false); 196 | } 197 | 198 | $output .= ''; 199 | } 200 | break; 201 | 202 | // Color picker 203 | case "color": 204 | $default_color = ''; 205 | if ( isset($value['std']) ) { 206 | if ( $val != $value['std'] ) 207 | $default_color = ' data-default-color="' .$value['std'] . '" '; 208 | } 209 | $output .= ''; 210 | 211 | break; 212 | 213 | // Uploader 214 | case "upload": 215 | $output .= Options_Framework_Media_Uploader::optionsframework_uploader( $value['id'], $val, null ); 216 | 217 | break; 218 | 219 | // Typography 220 | case 'typography': 221 | 222 | unset( $font_size, $font_style, $font_face, $font_color ); 223 | 224 | $typography_defaults = array( 225 | 'size' => '', 226 | 'face' => '', 227 | 'style' => '', 228 | 'color' => '' 229 | ); 230 | 231 | $typography_stored = wp_parse_args( $val, $typography_defaults ); 232 | 233 | $typography_options = array( 234 | 'sizes' => of_recognized_font_sizes(), 235 | 'faces' => of_recognized_font_faces(), 236 | 'styles' => of_recognized_font_styles(), 237 | 'color' => true 238 | ); 239 | 240 | if ( isset( $value['options'] ) ) { 241 | $typography_options = wp_parse_args( $value['options'], $typography_options ); 242 | } 243 | 244 | // Font Size 245 | if ( $typography_options['sizes'] ) { 246 | $font_size = ''; 253 | } 254 | 255 | // Font Face 256 | if ( $typography_options['faces'] ) { 257 | $font_face = ''; 263 | } 264 | 265 | // Font Styles 266 | if ( $typography_options['styles'] ) { 267 | $font_style = ''; 273 | } 274 | 275 | // Font Color 276 | if ( $typography_options['color'] ) { 277 | $default_color = ''; 278 | if ( isset($value['std']['color']) ) { 279 | if ( $val != $value['std']['color'] ) 280 | $default_color = ' data-default-color="' .$value['std']['color'] . '" '; 281 | } 282 | $font_color = ''; 283 | } 284 | 285 | // Allow modification/injection of typography fields 286 | $typography_fields = compact( 'font_size', 'font_face', 'font_style', 'font_color' ); 287 | $typography_fields = apply_filters( 'of_typography_fields', $typography_fields, $typography_stored, $option_name, $value ); 288 | $output .= implode( '', $typography_fields ); 289 | 290 | break; 291 | 292 | // Background 293 | case 'background': 294 | 295 | $background = $val; 296 | 297 | // Background Color 298 | $default_color = ''; 299 | if ( isset( $value['std']['color'] ) ) { 300 | if ( $val != $value['std']['color'] ) 301 | $default_color = ' data-default-color="' .$value['std']['color'] . '" '; 302 | } 303 | $output .= ''; 304 | 305 | // Background Image 306 | if ( !isset($background['image']) ) { 307 | $background['image'] = ''; 308 | } 309 | 310 | $output .= Options_Framework_Media_Uploader::optionsframework_uploader( $value['id'], $background['image'], null, esc_attr( $option_name . '[' . $value['id'] . '][image]' ) ); 311 | 312 | $class = 'of-background-properties'; 313 | if ( '' == $background['image'] ) { 314 | $class .= ' hide'; 315 | } 316 | $output .= '
'; 317 | 318 | // Background Repeat 319 | $output .= ''; 326 | 327 | // Background Position 328 | $output .= ''; 335 | 336 | // Background Attachment 337 | $output .= ''; 344 | $output .= '
'; 345 | 346 | break; 347 | 348 | // Editor 349 | case 'editor': 350 | $output .= '
' . wp_kses( $explain_value, $allowedtags ) . '
'."\n"; 351 | echo $output; 352 | $textarea_name = esc_attr( $option_name . '[' . $value['id'] . ']' ); 353 | $default_editor_settings = array( 354 | 'textarea_name' => $textarea_name, 355 | 'media_buttons' => false, 356 | 'tinymce' => array( 'plugins' => 'wordpress,wplink' ) 357 | ); 358 | $editor_settings = array(); 359 | if ( isset( $value['settings'] ) ) { 360 | $editor_settings = $value['settings']; 361 | } 362 | $editor_settings = array_merge( $default_editor_settings, $editor_settings ); 363 | wp_editor( $val, $value['id'], $editor_settings ); 364 | $output = ''; 365 | break; 366 | 367 | // Info 368 | case "info": 369 | $id = ''; 370 | $class = 'section'; 371 | if ( isset( $value['id'] ) ) { 372 | $id = 'id="' . esc_attr( $value['id'] ) . '" '; 373 | } 374 | if ( isset( $value['type'] ) ) { 375 | $class .= ' section-' . $value['type']; 376 | } 377 | if ( isset( $value['class'] ) ) { 378 | $class .= ' ' . $value['class']; 379 | } 380 | 381 | $output .= '
' . "\n"; 382 | if ( isset($value['name']) ) { 383 | $output .= '

' . esc_html( $value['name'] ) . '

' . "\n"; 384 | } 385 | if ( isset( $value['desc'] ) ) { 386 | $output .= $value['desc'] . "\n"; 387 | } 388 | $output .= '
' . "\n"; 389 | break; 390 | 391 | // Heading for Navigation 392 | case "heading": 393 | $counter++; 394 | if ( $counter >= 2 ) { 395 | $output .= '
'."\n"; 396 | } 397 | $class = ''; 398 | $class = ! empty( $value['id'] ) ? $value['id'] : $value['name']; 399 | $class = preg_replace('/[^a-zA-Z0-9._\-]/', '', strtolower($class) ); 400 | $output .= '
'; 401 | $output .= '

' . esc_html( $value['name'] ) . '

' . "\n"; 402 | break; 403 | } 404 | 405 | if ( ( $value['type'] != "heading" ) && ( $value['type'] != "info" ) ) { 406 | $output .= '
'; 407 | if ( ( $value['type'] != "checkbox" ) && ( $value['type'] != "editor" ) ) { 408 | $output .= '
' . wp_kses( $explain_value, $allowedtags) . '
'."\n"; 409 | } 410 | $output .= '
'."\n"; 411 | } 412 | 413 | echo $output; 414 | } 415 | 416 | // Outputs closing div if there tabs 417 | if ( Options_Framework_Interface::optionsframework_tabs() != '' ) { 418 | echo '
'; 419 | } 420 | } 421 | 422 | } 423 | -------------------------------------------------------------------------------- /includes/class-options-media-uploader.php: -------------------------------------------------------------------------------- 1 | 5 | * @license GPL-2.0+ 6 | * @link http://wptheming.com 7 | * @copyright 2010-2016 WP Theming 8 | */ 9 | 10 | class Options_Framework_Media_Uploader { 11 | 12 | /** 13 | * Initialize the media uploader class 14 | * 15 | * @since 1.7.0 16 | */ 17 | public function init() { 18 | add_action( 'admin_enqueue_scripts', array( $this, 'optionsframework_media_scripts' ) ); 19 | } 20 | 21 | /** 22 | * Media Uploader Using the WordPress Media Library. 23 | * 24 | * Parameters: 25 | * 26 | * string $_id - A token to identify this field (the name). 27 | * string $_value - The value of the field, if present. 28 | * string $_desc - An optional description of the field. 29 | * 30 | */ 31 | 32 | static function optionsframework_uploader( $_id, $_value, $_desc = '', $_name = '' ) { 33 | 34 | $optionsframework_settings = get_option( 'optionsframework' ); 35 | 36 | // Gets the unique option id 37 | $option_name = $optionsframework_settings['id']; 38 | 39 | $output = ''; 40 | $id = ''; 41 | $class = ''; 42 | $int = ''; 43 | $value = ''; 44 | $name = ''; 45 | 46 | $id = strip_tags( strtolower( $_id ) ); 47 | 48 | // If a value is passed and we don't have a stored value, use the value that's passed through. 49 | if ( $_value != '' && $value == '' ) { 50 | $value = $_value; 51 | } 52 | 53 | if ($_name != '') { 54 | $name = $_name; 55 | } 56 | else { 57 | $name = $option_name.'['.$id.']'; 58 | } 59 | 60 | if ( $value ) { 61 | $class = ' has-file'; 62 | } 63 | 64 | $output .= '' . "\n"; 65 | if ( function_exists( 'wp_enqueue_media' ) ) { 66 | if ( ( $value == '' ) ) { 67 | $output .= '' . "\n"; 68 | } else { 69 | $output .= '' . "\n"; 70 | } 71 | } else { 72 | $output .= '

' . __( 'Upgrade your version of WordPress for full media support.', 'options-framework' ) . '

'; 73 | } 74 | 75 | if ( $_desc != '' ) { 76 | $output .= '' . $_desc . '' . "\n"; 77 | } 78 | 79 | $output .= '
' . "\n"; 80 | 81 | if ( $value != '' ) { 82 | $remove = 'Remove'; 83 | $image = preg_match( '/(^.*\.jpg|jpeg|png|gif|ico*)/i', $value ); 84 | if ( $image ) { 85 | $output .= '' . $remove; 86 | } else { 87 | $parts = explode( "/", $value ); 88 | for( $i = 0; $i < sizeof( $parts ); ++$i ) { 89 | $title = $parts[$i]; 90 | } 91 | 92 | // No output preview if it's not an image. 93 | $output .= ''; 94 | 95 | // Standard generic output if it's not an image. 96 | $title = __( 'View File', 'options-framework' ); 97 | $output .= ''; 98 | } 99 | } 100 | $output .= '
' . "\n"; 101 | return $output; 102 | } 103 | 104 | /** 105 | * Enqueue scripts for file uploader 106 | */ 107 | function optionsframework_media_scripts( $hook ) { 108 | 109 | $menu = Options_Framework_Admin::menu_settings(); 110 | 111 | if ( substr( $hook, -strlen( $menu['menu_slug'] ) ) !== $menu['menu_slug'] ) { 112 | return; 113 | } 114 | 115 | if ( function_exists( 'wp_enqueue_media' ) ) { 116 | wp_enqueue_media(); 117 | } 118 | 119 | wp_register_script( 120 | 'of-media-uploader', 121 | plugin_dir_url( dirname(__FILE__) ) .'js/media-uploader.js', 122 | array( 'jquery' ), 123 | Options_Framework::VERSION 124 | ); 125 | 126 | wp_enqueue_script( 'of-media-uploader' ); 127 | wp_localize_script( 'of-media-uploader', 'optionsframework_l10n', array( 128 | 'upload' => __( 'Upload', 'options-framework' ), 129 | 'remove' => __( 'Remove', 'options-framework' ) 130 | ) ); 131 | } 132 | } 133 | -------------------------------------------------------------------------------- /includes/class-options-sanitization.php: -------------------------------------------------------------------------------- 1 | 5 | * @license GPL-2.0+ 6 | * @link http://wptheming.com 7 | * @copyright 2010-2016 WP Theming 8 | */ 9 | 10 | /** 11 | * Sanitization for text input 12 | * 13 | * @link http://developer.wordpress.org/reference/functions/sanitize_text_field/ 14 | */ 15 | add_filter( 'of_sanitize_text', 'sanitize_text_field' ); 16 | 17 | /** 18 | * Sanitization for password input 19 | * 20 | * @link http://developer.wordpress.org/reference/functions/sanitize_text_field/ 21 | */ 22 | add_filter( 'of_sanitize_password', 'sanitize_text_field' ); 23 | 24 | /** 25 | * Sanitization for select input 26 | * 27 | * Validates that the selected option is a valid option. 28 | */ 29 | add_filter( 'of_sanitize_select', 'of_sanitize_enum', 10, 2 ); 30 | 31 | /** 32 | * Sanitization for radio input 33 | * 34 | * Validates that the selected option is a valid option. 35 | */ 36 | add_filter( 'of_sanitize_radio', 'of_sanitize_enum', 10, 2 ); 37 | 38 | /** 39 | * Sanitization for image selector 40 | * 41 | * Validates that the selected option is a valid option. 42 | */ 43 | add_filter( 'of_sanitize_images', 'of_sanitize_enum', 10, 2 ); 44 | 45 | /** 46 | * Sanitization for textarea field 47 | * 48 | * @param $input string 49 | * @return $output sanitized string 50 | */ 51 | function of_sanitize_textarea( $input ) { 52 | global $allowedposttags; 53 | $output = wp_kses( $input, $allowedposttags ); 54 | return $output; 55 | } 56 | add_filter( 'of_sanitize_textarea', 'of_sanitize_textarea' ); 57 | 58 | /** 59 | * Sanitization for checkbox input 60 | * 61 | * @param $input string (1 or empty) checkbox state 62 | * @return $output '1' or false 63 | */ 64 | function of_sanitize_checkbox( $input ) { 65 | if ( $input ) { 66 | return '1'; 67 | } 68 | return false; 69 | } 70 | add_filter( 'of_sanitize_checkbox', 'of_sanitize_checkbox' ); 71 | 72 | /** 73 | * Sanitization for multicheck 74 | * 75 | * @param array of checkbox values 76 | * @return array of sanitized values ('1' or false) 77 | */ 78 | function of_sanitize_multicheck( $input, $option ) { 79 | $output = array(); 80 | if ( is_array( $input ) ) { 81 | foreach( $option['options'] as $key => $value ) { 82 | $output[$key] = false; 83 | } 84 | foreach( $input as $key => $value ) { 85 | if ( array_key_exists( $key, $option['options'] ) && $value ) { 86 | $output[$key] = '1'; 87 | } 88 | } 89 | } 90 | return $output; 91 | } 92 | add_filter( 'of_sanitize_multicheck', 'of_sanitize_multicheck', 10, 2 ); 93 | 94 | /** 95 | * File upload sanitization. 96 | * 97 | * Returns a sanitized filepath if it has a valid extension. 98 | * 99 | * @param string $input filepath 100 | * @returns string $output filepath 101 | */ 102 | function of_sanitize_upload( $input ) { 103 | $output = ''; 104 | $filetype = wp_check_filetype( $input ); 105 | if ( $filetype["ext"] ) { 106 | $output = esc_url( $input ); 107 | } 108 | return $output; 109 | } 110 | add_filter( 'of_sanitize_upload', 'of_sanitize_upload' ); 111 | 112 | /** 113 | * Sanitization for editor input. 114 | * 115 | * Returns unfiltered HTML if user has permissions. 116 | * 117 | * @param string $input 118 | * @returns string $output 119 | */ 120 | function of_sanitize_editor( $input ) { 121 | if ( current_user_can( 'unfiltered_html' ) ) { 122 | $output = $input; 123 | } 124 | else { 125 | global $allowedposttags; 126 | $output = wp_kses( $input, $allowedposttags ); 127 | } 128 | return $output; 129 | } 130 | add_filter( 'of_sanitize_editor', 'of_sanitize_editor' ); 131 | 132 | /** 133 | * Sanitization of input with allowed tags and wpautotop. 134 | * 135 | * Allows allowed tags in html input and ensures tags close properly. 136 | * 137 | * @param string $input 138 | * @returns string $output 139 | */ 140 | function of_sanitize_allowedtags( $input ) { 141 | global $allowedtags; 142 | $output = wpautop( wp_kses( $input, $allowedtags ) ); 143 | return $output; 144 | } 145 | 146 | /** 147 | * Sanitization of input with allowed post tags and wpautotop. 148 | * 149 | * Allows allowed post tags in html input and ensures tags close properly. 150 | * 151 | * @param string $input 152 | * @returns string $output 153 | */ 154 | function of_sanitize_allowedposttags( $input ) { 155 | global $allowedposttags; 156 | $output = wpautop( wp_kses( $input, $allowedposttags) ); 157 | return $output; 158 | } 159 | 160 | /** 161 | * Validates that the $input is one of the avilable choices 162 | * for that specific option. 163 | * 164 | * @param string $input 165 | * @returns string $output 166 | */ 167 | function of_sanitize_enum( $input, $option ) { 168 | $output = ''; 169 | if ( array_key_exists( $input, $option['options'] ) ) { 170 | $output = $input; 171 | } 172 | return $output; 173 | } 174 | 175 | /** 176 | * Sanitization for background option. 177 | * 178 | * @returns array $output 179 | */ 180 | function of_sanitize_background( $input ) { 181 | 182 | $output = wp_parse_args( $input, array( 183 | 'color' => '', 184 | 'image' => '', 185 | 'repeat' => 'repeat', 186 | 'position' => 'top center', 187 | 'attachment' => 'scroll' 188 | ) ); 189 | 190 | $output['color'] = apply_filters( 'of_sanitize_hex', $input['color'] ); 191 | $output['image'] = apply_filters( 'of_sanitize_upload', $input['image'] ); 192 | $output['repeat'] = apply_filters( 'of_background_repeat', $input['repeat'] ); 193 | $output['position'] = apply_filters( 'of_background_position', $input['position'] ); 194 | $output['attachment'] = apply_filters( 'of_background_attachment', $input['attachment'] ); 195 | 196 | return $output; 197 | } 198 | add_filter( 'of_sanitize_background', 'of_sanitize_background' ); 199 | 200 | /** 201 | * Sanitization for background repeat 202 | * 203 | * @returns string $value if it is valid 204 | */ 205 | function of_sanitize_background_repeat( $value ) { 206 | $recognized = of_recognized_background_repeat(); 207 | if ( array_key_exists( $value, $recognized ) ) { 208 | return $value; 209 | } 210 | return apply_filters( 'of_default_background_repeat', current( $recognized ) ); 211 | } 212 | add_filter( 'of_background_repeat', 'of_sanitize_background_repeat' ); 213 | 214 | /** 215 | * Sanitization for background position 216 | * 217 | * @returns string $value if it is valid 218 | */ 219 | function of_sanitize_background_position( $value ) { 220 | $recognized = of_recognized_background_position(); 221 | if ( array_key_exists( $value, $recognized ) ) { 222 | return $value; 223 | } 224 | return apply_filters( 'of_default_background_position', current( $recognized ) ); 225 | } 226 | add_filter( 'of_background_position', 'of_sanitize_background_position' ); 227 | 228 | /** 229 | * Sanitization for background attachment 230 | * 231 | * @returns string $value if it is valid 232 | */ 233 | function of_sanitize_background_attachment( $value ) { 234 | $recognized = of_recognized_background_attachment(); 235 | if ( array_key_exists( $value, $recognized ) ) { 236 | return $value; 237 | } 238 | return apply_filters( 'of_default_background_attachment', current( $recognized ) ); 239 | } 240 | add_filter( 'of_background_attachment', 'of_sanitize_background_attachment' ); 241 | 242 | /** 243 | * Sanitization for typography option. 244 | */ 245 | function of_sanitize_typography( $input, $option ) { 246 | 247 | $output = wp_parse_args( $input, array( 248 | 'size' => '', 249 | 'face' => '', 250 | 'style' => '', 251 | 'color' => '' 252 | ) ); 253 | 254 | if ( isset( $option['options']['faces'] ) && isset( $input['face'] ) ) { 255 | if ( !( array_key_exists( $input['face'], $option['options']['faces'] ) ) ) { 256 | $output['face'] = ''; 257 | } 258 | } 259 | else { 260 | $output['face'] = apply_filters( 'of_font_face', $output['face'] ); 261 | } 262 | 263 | $output['size'] = apply_filters( 'of_font_size', $output['size'] ); 264 | $output['style'] = apply_filters( 'of_font_style', $output['style'] ); 265 | $output['color'] = apply_filters( 'of_sanitize_color', $output['color'] ); 266 | return $output; 267 | } 268 | add_filter( 'of_sanitize_typography', 'of_sanitize_typography', 10, 2 ); 269 | 270 | /** 271 | * Sanitization for font size 272 | */ 273 | function of_sanitize_font_size( $value ) { 274 | $recognized = of_recognized_font_sizes(); 275 | $value_check = preg_replace('/px/','', $value); 276 | if ( in_array( (int) $value_check, $recognized ) ) { 277 | return $value; 278 | } 279 | return apply_filters( 'of_default_font_size', current( $recognized ) ); 280 | } 281 | add_filter( 'of_font_size', 'of_sanitize_font_size' ); 282 | 283 | /** 284 | * Sanitization for font style 285 | */ 286 | function of_sanitize_font_style( $value ) { 287 | $recognized = of_recognized_font_styles(); 288 | if ( array_key_exists( $value, $recognized ) ) { 289 | return $value; 290 | } 291 | return apply_filters( 'of_default_font_style', current( $recognized ) ); 292 | } 293 | add_filter( 'of_font_style', 'of_sanitize_font_style' ); 294 | 295 | /** 296 | * Sanitization for font face 297 | */ 298 | function of_sanitize_font_face( $value ) { 299 | $recognized = of_recognized_font_faces(); 300 | if ( array_key_exists( $value, $recognized ) ) { 301 | return $value; 302 | } 303 | return apply_filters( 'of_default_font_face', current( $recognized ) ); 304 | } 305 | add_filter( 'of_font_face', 'of_sanitize_font_face' ); 306 | 307 | /** 308 | * Get recognized background repeat settings 309 | * 310 | * @return array 311 | */ 312 | function of_recognized_background_repeat() { 313 | $default = array( 314 | 'no-repeat' => __( 'No Repeat', 'options-framework' ), 315 | 'repeat-x' => __( 'Repeat Horizontally', 'options-framework' ), 316 | 'repeat-y' => __( 'Repeat Vertically', 'options-framework' ), 317 | 'repeat' => __( 'Repeat All', 'options-framework' ), 318 | ); 319 | return apply_filters( 'of_recognized_background_repeat', $default ); 320 | } 321 | 322 | /** 323 | * Get recognized background positions 324 | * 325 | * @return array 326 | */ 327 | function of_recognized_background_position() { 328 | $default = array( 329 | 'top left' => __( 'Top Left', 'options-framework' ), 330 | 'top center' => __( 'Top Center', 'options-framework' ), 331 | 'top right' => __( 'Top Right', 'options-framework' ), 332 | 'center left' => __( 'Middle Left', 'options-framework' ), 333 | 'center center' => __( 'Middle Center', 'options-framework' ), 334 | 'center right' => __( 'Middle Right', 'options-framework' ), 335 | 'bottom left' => __( 'Bottom Left', 'options-framework' ), 336 | 'bottom center' => __( 'Bottom Center', 'options-framework' ), 337 | 'bottom right' => __( 'Bottom Right', 'options-framework') 338 | ); 339 | return apply_filters( 'of_recognized_background_position', $default ); 340 | } 341 | 342 | /** 343 | * Get recognized background attachment 344 | * 345 | * @return array 346 | */ 347 | function of_recognized_background_attachment() { 348 | $default = array( 349 | 'scroll' => __( 'Scroll Normally', 'options-framework' ), 350 | 'fixed' => __( 'Fixed in Place', 'options-framework') 351 | ); 352 | return apply_filters( 'of_recognized_background_attachment', $default ); 353 | } 354 | 355 | /** 356 | * Sanitize a color represented in hexidecimal notation. 357 | * 358 | * @param string Color in hexidecimal notation. "#" may or may not be prepended to the string. 359 | * @param string The value that this function should return if it cannot be recognized as a color. 360 | * @return string 361 | */ 362 | 363 | function of_sanitize_hex( $hex, $default = '' ) { 364 | if ( of_validate_hex( $hex ) ) { 365 | return $hex; 366 | } 367 | return $default; 368 | } 369 | add_filter( 'of_sanitize_color', 'of_sanitize_hex' ); 370 | 371 | /** 372 | * Get recognized font sizes. 373 | * 374 | * Returns an indexed array of all recognized font sizes. 375 | * Values are integers and represent a range of sizes from 376 | * smallest to largest. 377 | * 378 | * @return array 379 | */ 380 | 381 | function of_recognized_font_sizes() { 382 | $sizes = range( 9, 71 ); 383 | $sizes = apply_filters( 'of_recognized_font_sizes', $sizes ); 384 | $sizes = array_map( 'absint', $sizes ); 385 | return $sizes; 386 | } 387 | 388 | /** 389 | * Get recognized font faces. 390 | * 391 | * Returns an array of all recognized font faces. 392 | * Keys are intended to be stored in the database 393 | * while values are ready for display in in html. 394 | * 395 | * @return array 396 | */ 397 | function of_recognized_font_faces() { 398 | $default = array( 399 | 'arial' => 'Arial', 400 | 'verdana' => 'Verdana, Geneva', 401 | 'trebuchet' => 'Trebuchet', 402 | 'georgia' => 'Georgia', 403 | 'times' => 'Times New Roman', 404 | 'tahoma' => 'Tahoma, Geneva', 405 | 'palatino' => 'Palatino', 406 | 'helvetica' => 'Helvetica*' 407 | ); 408 | return apply_filters( 'of_recognized_font_faces', $default ); 409 | } 410 | 411 | /** 412 | * Get recognized font styles. 413 | * 414 | * Returns an array of all recognized font styles. 415 | * Keys are intended to be stored in the database 416 | * while values are ready for display in in html. 417 | * 418 | * @return array 419 | */ 420 | function of_recognized_font_styles() { 421 | $default = array( 422 | 'normal' => __( 'Normal', 'options-framework' ), 423 | 'italic' => __( 'Italic', 'options-framework' ), 424 | 'bold' => __( 'Bold', 'options-framework' ), 425 | 'bold italic' => __( 'Bold Italic', 'options-framework' ) 426 | ); 427 | return apply_filters( 'of_recognized_font_styles', $default ); 428 | } 429 | 430 | /** 431 | * Is a given string a color formatted in hexidecimal notation? 432 | * 433 | * @param string Color in hexidecimal notation. "#" may or may not be prepended to the string. 434 | * @return bool 435 | */ 436 | function of_validate_hex( $hex ) { 437 | $hex = trim( $hex ); 438 | /* Strip recognized prefixes. */ 439 | if ( 0 === strpos( $hex, '#' ) ) { 440 | $hex = substr( $hex, 1 ); 441 | } 442 | elseif ( 0 === strpos( $hex, '%23' ) ) { 443 | $hex = substr( $hex, 3 ); 444 | } 445 | /* Regex match. */ 446 | if ( 0 === preg_match( '/^[0-9a-fA-F]{6}$/', $hex ) ) { 447 | return false; 448 | } 449 | else { 450 | return true; 451 | } 452 | } 453 | -------------------------------------------------------------------------------- /js/media-uploader.js: -------------------------------------------------------------------------------- 1 | jQuery(document).ready(function($){ 2 | 3 | var optionsframework_upload; 4 | var optionsframework_selector; 5 | 6 | function optionsframework_add_file(event, selector) { 7 | 8 | var upload = $(".uploaded-file"), frame; 9 | var $el = $(this); 10 | optionsframework_selector = selector; 11 | 12 | event.preventDefault(); 13 | 14 | // If the media frame already exists, reopen it. 15 | if ( optionsframework_upload ) { 16 | optionsframework_upload.open(); 17 | } else { 18 | // Create the media frame. 19 | optionsframework_upload = wp.media.frames.optionsframework_upload = wp.media({ 20 | // Set the title of the modal. 21 | title: $el.data('choose'), 22 | 23 | // Customize the submit button. 24 | button: { 25 | // Set the text of the button. 26 | text: $el.data('update'), 27 | // Tell the button not to close the modal, since we're 28 | // going to refresh the page when the image is selected. 29 | close: false 30 | } 31 | }); 32 | 33 | // When an image is selected, run a callback. 34 | optionsframework_upload.on( 'select', function() { 35 | // Grab the selected attachment. 36 | var attachment = optionsframework_upload.state().get('selection').first(); 37 | optionsframework_upload.close(); 38 | optionsframework_selector.find('.upload').val(attachment.attributes.url); 39 | if ( attachment.attributes.type == 'image' ) { 40 | optionsframework_selector.find('.screenshot').empty().hide().append('Remove').slideDown('fast'); 41 | } 42 | optionsframework_selector.find('.upload-button').unbind().addClass('remove-file').removeClass('upload-button').val(optionsframework_l10n.remove); 43 | optionsframework_selector.find('.of-background-properties').slideDown(); 44 | optionsframework_selector.find('.remove-image, .remove-file').on('click', function() { 45 | optionsframework_remove_file( $(this).parents('.section') ); 46 | }); 47 | }); 48 | 49 | } 50 | 51 | // Finally, open the modal. 52 | optionsframework_upload.open(); 53 | } 54 | 55 | function optionsframework_remove_file(selector) { 56 | selector.find('.remove-image').hide(); 57 | selector.find('.upload').val(''); 58 | selector.find('.of-background-properties').hide(); 59 | selector.find('.screenshot').slideUp(); 60 | selector.find('.remove-file').unbind().addClass('upload-button').removeClass('remove-file').val(optionsframework_l10n.upload); 61 | // We don't display the upload button if .upload-notice is present 62 | // This means the user doesn't have the WordPress 3.5 Media Library Support 63 | if ( $('.section-upload .upload-notice').length > 0 ) { 64 | $('.upload-button').remove(); 65 | } 66 | selector.find('.upload-button').on('click', function(event) { 67 | optionsframework_add_file(event, $(this).parents('.section')); 68 | }); 69 | } 70 | 71 | $('.remove-image, .remove-file').on('click', function() { 72 | optionsframework_remove_file( $(this).parents('.section') ); 73 | }); 74 | 75 | $('.upload-button').click( function( event ) { 76 | optionsframework_add_file(event, $(this).parents('.section')); 77 | }); 78 | 79 | }); -------------------------------------------------------------------------------- /js/options-custom.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Custom scripts needed for the colorpicker, image button selectors, 3 | * and navigation tabs. 4 | */ 5 | 6 | jQuery(document).ready(function($) { 7 | 8 | // Loads the color pickers 9 | $('.of-color').wpColorPicker(); 10 | 11 | // Image Options 12 | $('.of-radio-img-img').click(function(){ 13 | $(this).parent().parent().find('.of-radio-img-img').removeClass('of-radio-img-selected'); 14 | $(this).addClass('of-radio-img-selected'); 15 | }); 16 | 17 | $('.of-radio-img-label').hide(); 18 | $('.of-radio-img-img').show(); 19 | $('.of-radio-img-radio').hide(); 20 | 21 | // Loads tabbed sections if they exist 22 | if ( $('.nav-tab-wrapper').length > 0 ) { 23 | options_framework_tabs(); 24 | } 25 | 26 | function options_framework_tabs() { 27 | 28 | var $group = $('.group'), 29 | $navtabs = $('.nav-tab-wrapper a'), 30 | active_tab = ''; 31 | 32 | // Hides all the .group sections to start 33 | $group.hide(); 34 | 35 | // Find if a selected tab is saved in localStorage 36 | if ( typeof(localStorage) != 'undefined' ) { 37 | active_tab = localStorage.getItem('active_tab'); 38 | } 39 | 40 | // If active tab is saved and exists, load it's .group 41 | if ( active_tab != '' && $(active_tab).length ) { 42 | $(active_tab).fadeIn(); 43 | $(active_tab + '-tab').addClass('nav-tab-active'); 44 | } else { 45 | $('.group:first').fadeIn(); 46 | $('.nav-tab-wrapper a:first').addClass('nav-tab-active'); 47 | } 48 | 49 | // Bind tabs clicks 50 | $navtabs.click(function(e) { 51 | 52 | e.preventDefault(); 53 | 54 | // Remove active class from all tabs 55 | $navtabs.removeClass('nav-tab-active'); 56 | 57 | $(this).addClass('nav-tab-active').blur(); 58 | 59 | if (typeof(localStorage) != 'undefined' ) { 60 | localStorage.setItem('active_tab', $(this).attr('href') ); 61 | } 62 | 63 | var selected = $(this).attr('href'); 64 | 65 | $group.hide(); 66 | $(selected).fadeIn(); 67 | 68 | }); 69 | } 70 | 71 | }); -------------------------------------------------------------------------------- /languages/options-framework-da_DK.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/languages/options-framework-da_DK.mo -------------------------------------------------------------------------------- /languages/options-framework-da_DK.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2013 2 | # This file is distributed under the same license as the package. 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: options-framework\n" 6 | "Report-Msgid-Bugs-To: http://wordpress.org/tag/options-framework-plugin\n" 7 | "POT-Creation-Date: 2013-11-26 23:01:08+00:00\n" 8 | "MIME-Version: 1.0\n" 9 | "Content-Type: text/plain; charset=UTF-8\n" 10 | "Content-Transfer-Encoding: 8bit\n" 11 | "PO-Revision-Date: 2014-03-06 12:26+0100\n" 12 | "Last-Translator: \n" 13 | "Language-Team: \n" 14 | "X-Generator: Poedit 1.5.4\n" 15 | 16 | #: includes/class-options-framework-admin.php:64 17 | msgid "" 18 | "Your current theme does not have support for the Options Framework plugin. " 19 | "Learn More | Hide " 20 | "Notice" 21 | msgstr "" 22 | "Dit nuværende tema understøtter ikke Options Framework pluginen. Lær mere | Fjern besked" 24 | 25 | #: includes/class-options-framework-admin.php:116 26 | #: includes/class-options-framework-admin.php:117 27 | #: includes/class-options-framework-admin.php:336 28 | msgid "Theme Options" 29 | msgstr "Temaindstillinger" 30 | 31 | #: includes/class-options-framework-admin.php:202 32 | msgid "Save Options" 33 | msgstr "Gem indstillinger" 34 | 35 | #: includes/class-options-framework-admin.php:203 36 | msgid "Restore Defaults" 37 | msgstr "Nulstil indstillinger" 38 | 39 | #: includes/class-options-framework-admin.php:203 40 | msgid "Click OK to reset. Any theme settings will be lost!" 41 | msgstr "Klik OK for at nulstille. Alle temaindstillinger vil gå tabt!" 42 | 43 | #: includes/class-options-framework-admin.php:234 44 | msgid "Default options restored." 45 | msgstr "Standardindstillinger nulstillet." 46 | 47 | #: includes/class-options-framework-admin.php:288 48 | msgid "Options saved." 49 | msgstr "Indstillinger gemt." 50 | 51 | #: includes/class-options-media-uploader.php:63 52 | msgid "No file chosen" 53 | msgstr "Ingen fil valgt" 54 | 55 | #: includes/class-options-media-uploader.php:66 56 | #: includes/class-options-media-uploader.php:119 57 | msgid "Upload" 58 | msgstr "Upload" 59 | 60 | #: includes/class-options-media-uploader.php:68 61 | #: includes/class-options-media-uploader.php:120 62 | msgid "Remove" 63 | msgstr "Fjern" 64 | 65 | #: includes/class-options-media-uploader.php:71 66 | msgid "Upgrade your version of WordPress for full media support." 67 | msgstr "Opgrader din WordPress version for at få fuld medie understøttelse." 68 | 69 | #: includes/class-options-media-uploader.php:95 70 | msgid "View File" 71 | msgstr "Se fil" 72 | 73 | #: includes/class-options-sanitization.php:241 74 | msgid "No Repeat" 75 | msgstr "Gentag ikke" 76 | 77 | #: includes/class-options-sanitization.php:242 78 | msgid "Repeat Horizontally" 79 | msgstr "Gentag vandred" 80 | 81 | #: includes/class-options-sanitization.php:243 82 | msgid "Repeat Vertically" 83 | msgstr "Gentag lodret" 84 | 85 | #: includes/class-options-sanitization.php:244 86 | msgid "Repeat All" 87 | msgstr "Gentag alle" 88 | 89 | #: includes/class-options-sanitization.php:257 90 | msgid "Top Left" 91 | msgstr "Top Venstre" 92 | 93 | #: includes/class-options-sanitization.php:258 94 | msgid "Top Center" 95 | msgstr "Top Center" 96 | 97 | #: includes/class-options-sanitization.php:259 98 | msgid "Top Right" 99 | msgstr "Top Højre" 100 | 101 | #: includes/class-options-sanitization.php:260 102 | msgid "Middle Left" 103 | msgstr "Midt Venstre" 104 | 105 | #: includes/class-options-sanitization.php:261 106 | msgid "Middle Center" 107 | msgstr "Midt Center" 108 | 109 | #: includes/class-options-sanitization.php:262 110 | msgid "Middle Right" 111 | msgstr "Midt Højre" 112 | 113 | #: includes/class-options-sanitization.php:263 114 | msgid "Bottom Left" 115 | msgstr "Bund Venstre" 116 | 117 | #: includes/class-options-sanitization.php:264 118 | msgid "Bottom Center" 119 | msgstr "Bund Center" 120 | 121 | #: includes/class-options-sanitization.php:265 122 | msgid "Bottom Right" 123 | msgstr "Bund Højre" 124 | 125 | #: includes/class-options-sanitization.php:278 126 | msgid "Scroll Normally" 127 | msgstr "Scroll normalt" 128 | 129 | #: includes/class-options-sanitization.php:279 130 | msgid "Fixed in Place" 131 | msgstr "Fast position" 132 | 133 | #: includes/class-options-sanitization.php:353 134 | msgid "Normal" 135 | msgstr "Normal" 136 | 137 | #: includes/class-options-sanitization.php:354 138 | msgid "Italic" 139 | msgstr "Kursiv" 140 | 141 | #: includes/class-options-sanitization.php:355 142 | msgid "Bold" 143 | msgstr "Fed" 144 | 145 | #: includes/class-options-sanitization.php:356 146 | msgid "Bold Italic" 147 | msgstr "Fed kursiv" 148 | 149 | #: options-check/options.php:32 150 | msgid "One" 151 | msgstr "En" 152 | 153 | #: options-check/options.php:33 154 | msgid "Two" 155 | msgstr "To" 156 | 157 | #: options-check/options.php:34 158 | msgid "Three" 159 | msgstr "Tre" 160 | 161 | #: options-check/options.php:35 162 | msgid "Four" 163 | msgstr "Fire" 164 | 165 | #: options-check/options.php:36 166 | msgid "Five" 167 | msgstr "Fem" 168 | 169 | #: options-check/options.php:41 170 | msgid "French Toast" 171 | msgstr "Fransk Toast" 172 | 173 | #: options-check/options.php:42 174 | msgid "Pancake" 175 | msgstr "Pandekage" 176 | 177 | #: options-check/options.php:43 178 | msgid "Omelette" 179 | msgstr "Omelet" 180 | 181 | #: options-check/options.php:44 182 | msgid "Crepe" 183 | msgstr "Crepe" 184 | 185 | #: options-check/options.php:45 186 | msgid "Waffle" 187 | msgstr "Vaffel" 188 | 189 | #: options-check/options.php:105 190 | msgid "Basic Settings" 191 | msgstr "Basisindstillinger" 192 | 193 | #: options-check/options.php:109 194 | msgid "Input Text Mini" 195 | msgstr "Input Tekst Mini" 196 | 197 | #: options-check/options.php:110 198 | msgid "A mini text input field." 199 | msgstr "Et mini tekstinput felt" 200 | 201 | #: options-check/options.php:117 202 | msgid "Input Text" 203 | msgstr "Inputtekst" 204 | 205 | #: options-check/options.php:118 206 | msgid "A text input field." 207 | msgstr "Et tekstinput felt" 208 | 209 | #: options-check/options.php:124 210 | msgid "Textarea" 211 | msgstr "Textarea" 212 | 213 | #: options-check/options.php:125 214 | msgid "Textarea description." 215 | msgstr "Textarea beskrivelse" 216 | 217 | #: options-check/options.php:131 218 | msgid "Input Select Small" 219 | msgstr "Inout Vælg Lille" 220 | 221 | #: options-check/options.php:132 222 | msgid "Small Select Box." 223 | msgstr "Lille Select Boks" 224 | 225 | #: options-check/options.php:140 226 | msgid "Input Select Wide" 227 | msgstr "Inout Select Bred" 228 | 229 | #: options-check/options.php:141 230 | msgid "A wider select box." 231 | msgstr "En bredere select boks." 232 | 233 | #: options-check/options.php:148 234 | msgid "Select a Category" 235 | msgstr "Vælg en kategori" 236 | 237 | #: options-check/options.php:149 238 | msgid "Passed an array of categories with cat_ID and cat_name" 239 | msgstr "Sendte et array med kategorier med cat_ID og cat_name" 240 | 241 | #: options-check/options.php:156 242 | msgid "Select a Tag" 243 | msgstr "Vælg et Tag" 244 | 245 | #: options-check/options.php:157 246 | msgid "Passed an array of tags with term_id and term_name" 247 | msgstr "Sendte et array med tags med term_id og term_name" 248 | 249 | #: options-check/options.php:164 250 | msgid "Select a Page" 251 | msgstr "Vælg en Side" 252 | 253 | #: options-check/options.php:165 254 | msgid "Passed an array of pages with ID and post_title" 255 | msgstr "Sendte et array med sider med ID og post_title" 256 | 257 | #: options-check/options.php:171 258 | msgid "Input Radio (one)" 259 | msgstr "Input Radio (en)" 260 | 261 | #: options-check/options.php:172 262 | msgid "Radio select with default options \"one\"." 263 | msgstr "Radio select med standard indstillingen \"en\"." 264 | 265 | #: options-check/options.php:179 266 | msgid "Example Info" 267 | msgstr "Eksempel info" 268 | 269 | #: options-check/options.php:180 270 | msgid "This is just some example information you can put in the panel." 271 | msgstr "Dette er bare noget eksempelinformation you kan " 272 | 273 | #: options-check/options.php:184 274 | msgid "Input Checkbox" 275 | msgstr "Input Checkbox" 276 | 277 | #: options-check/options.php:185 278 | msgid "Example checkbox, defaults to true." 279 | msgstr "Eksempel checkbox, standard er true" 280 | 281 | #: options-check/options.php:191 282 | msgid "Advanced Settings" 283 | msgstr "Avancerede indstillinger" 284 | 285 | #: options-check/options.php:195 286 | msgid "Check to Show a Hidden Text Input" 287 | msgstr "Klik for at vise et skjult Tekst input" 288 | 289 | #: options-check/options.php:196 290 | msgid "Click here and see what happens." 291 | msgstr "klik her og se hvad der sker" 292 | 293 | #: options-check/options.php:201 294 | msgid "Hidden Text Input" 295 | msgstr "Skjult Tekst Input" 296 | 297 | #: options-check/options.php:202 298 | msgid "This option is hidden unless activated by a checkbox click." 299 | msgstr "" 300 | "Denne valgmulithed er skjult medmindre den bliver aktiveret med et checkbox " 301 | "klik" 302 | 303 | #: options-check/options.php:209 304 | msgid "Uploader Test" 305 | msgstr "Uploader Test" 306 | 307 | #: options-check/options.php:210 308 | msgid "This creates a full size uploader that previews the image." 309 | msgstr "Dette skaber en fuldstørrelse uploader der forhåndsviser billedet." 310 | 311 | #: options-check/options.php:227 312 | msgid "Example Background" 313 | msgstr "Eksempel baggrund" 314 | 315 | #: options-check/options.php:228 316 | msgid "Change the background CSS." 317 | msgstr "Rediger baggrundens CSS" 318 | 319 | #: options-check/options.php:234 320 | msgid "Multicheck" 321 | msgstr "Multicheck" 322 | 323 | #: options-check/options.php:235 324 | msgid "Multicheck description." 325 | msgstr "Multicheck beskrivelse" 326 | 327 | #: options-check/options.php:242 328 | msgid "Colorpicker" 329 | msgstr "Farvevælger" 330 | 331 | #: options-check/options.php:243 332 | msgid "No color selected by default." 333 | msgstr "Ingen farve valgt som standard" 334 | 335 | #: options-check/options.php:248 336 | msgid "Typography" 337 | msgstr "Typografi" 338 | 339 | #: options-check/options.php:249 340 | msgid "Example typography." 341 | msgstr "Eksempel typografi" 342 | 343 | #: options-check/options.php:255 344 | msgid "Custom Typography" 345 | msgstr "Egen typografi" 346 | 347 | #: options-check/options.php:256 348 | msgid "Custom typography options." 349 | msgstr "Egen typografi valgmuligheder" 350 | 351 | #: options-check/options.php:263 352 | msgid "Text Editor" 353 | msgstr "Tekst Editor" 354 | 355 | #: options-check/options.php:281 356 | msgid "Default Text Editor" 357 | msgstr "Standard Tekst Editor" 358 | 359 | #: options-check/options.php:282 360 | msgid "" 361 | "You can also pass settings to the editor. Read more about wp_editor in the WordPress codex" 363 | msgstr "" 364 | "Du kan også sende indstillinger til editoren. Læs mere om wp_editor i WordPress codexet" 366 | 367 | #: options-check/options.php:294 368 | msgid "Additional Text Editor" 369 | msgstr "Ekstra Tekst Editor" 370 | 371 | #: options-check/options.php:295 372 | msgid "This editor includes media button." 373 | msgstr "Denne editor inkluderer media knap." 374 | 375 | #: options-theme-customizer/options.php:101 376 | msgid "Basic" 377 | msgstr "Standard" 378 | 379 | #: options-theme-customizer/options.php:158 380 | msgid "Extended" 381 | msgstr "Udvidet" 382 | -------------------------------------------------------------------------------- /languages/options-framework-es_ES.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/languages/options-framework-es_ES.mo -------------------------------------------------------------------------------- /languages/options-framework-es_ES.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: Options Framework Plugin\n" 4 | "Report-Msgid-Bugs-To: \n" 5 | "POT-Creation-Date: 2012-04-22 19:13-0300\n" 6 | "PO-Revision-Date: 2012-04-22 19:17-0300\n" 7 | "Last-Translator: Matt Varone \n" 8 | "Language-Team: Matt Varone \n" 9 | "MIME-Version: 1.0\n" 10 | "Content-Type: text/plain; charset=UTF-8\n" 11 | "Content-Transfer-Encoding: 8bit\n" 12 | "X-Poedit-KeywordsList: _;gettext;gettext_noop;_e;_x;__;esc_attr_e\n" 13 | "X-Poedit-Basepath: ../\n" 14 | "X-Poedit-Language: Spanish\n" 15 | "X-Poedit-SearchPath-0: .\n" 16 | 17 | #: options-framework.php:71 18 | #, php-format 19 | msgid "Your current theme does not have support for the Options Framework plugin. Learn More | Hide Notice" 20 | msgstr "Su tema actual no tiene suporte para el Options Framework Plugin. Mas informacion | Esconder" 21 | 22 | #: options-framework.php:254 23 | #: options-framework.php:456 24 | msgid "Theme Options" 25 | msgstr "Opciones del Tema" 26 | 27 | #: options-framework.php:323 28 | msgid "Save Options" 29 | msgstr "Guardar Opciones" 30 | 31 | #: options-framework.php:324 32 | msgid "Restore Defaults" 33 | msgstr "Restaurar Ajustes" 34 | 35 | #: options-framework.php:324 36 | msgid "Click OK to reset. Any theme settings will be lost!" 37 | msgstr "Click OK para restablecer los ajustes iniciales. Se perderán los ajustes realizados!" 38 | 39 | #: options-framework.php:358 40 | msgid "Default options restored." 41 | msgstr "Opciones predeterminadas restauradas." 42 | 43 | #: options-framework.php:400 44 | msgid "Options saved." 45 | msgstr "Opciones Guardadas." 46 | 47 | #: options-medialibrary-uploader.php:26 48 | msgid "Options Framework Internal Container" 49 | msgstr "Contenedor Interno de Options Framework" 50 | 51 | #: options-medialibrary-uploader.php:128 52 | msgid "Upload" 53 | msgstr "Cargar" 54 | 55 | #: options-medialibrary-uploader.php:151 56 | msgid "View File" 57 | msgstr "Ver Archivo" 58 | 59 | #: options-medialibrary-uploader.php:288 60 | msgid "Gallery" 61 | msgstr "Galería" 62 | 63 | #: options-medialibrary-uploader.php:288 64 | msgid "Previously Uploaded" 65 | msgstr "Cargado Previamente" 66 | 67 | #: options-sanitize.php:232 68 | msgid "No Repeat" 69 | msgstr "No Repetir" 70 | 71 | #: options-sanitize.php:233 72 | msgid "Repeat Horizontally" 73 | msgstr "Repetir Horizontalmente" 74 | 75 | #: options-sanitize.php:234 76 | msgid "Repeat Vertically" 77 | msgstr "Repetir Verticalmente" 78 | 79 | #: options-sanitize.php:235 80 | msgid "Repeat All" 81 | msgstr "Repetir Todos" 82 | 83 | #: options-sanitize.php:248 84 | msgid "Top Left" 85 | msgstr "Arriba a la Izquierda" 86 | 87 | #: options-sanitize.php:249 88 | msgid "Top Center" 89 | msgstr "Arriba al Centro" 90 | 91 | #: options-sanitize.php:250 92 | msgid "Top Right" 93 | msgstr "Arriba a la Derecha" 94 | 95 | #: options-sanitize.php:251 96 | msgid "Middle Left" 97 | msgstr "Medio a la Izquierda" 98 | 99 | #: options-sanitize.php:252 100 | msgid "Middle Center" 101 | msgstr "Medio al Centro" 102 | 103 | #: options-sanitize.php:253 104 | msgid "Middle Right" 105 | msgstr "Medio a la Derecha" 106 | 107 | #: options-sanitize.php:254 108 | msgid "Bottom Left" 109 | msgstr "Abajo a la Izquierda" 110 | 111 | #: options-sanitize.php:255 112 | msgid "Bottom Center" 113 | msgstr "Abajo al Centro" 114 | 115 | #: options-sanitize.php:256 116 | msgid "Bottom Right" 117 | msgstr "Abajo a la Derecha" 118 | 119 | #: options-sanitize.php:269 120 | msgid "Scroll Normally" 121 | msgstr "Desplazar Normalmente" 122 | 123 | #: options-sanitize.php:270 124 | msgid "Fixed in Place" 125 | msgstr "Fijo en el Lugar" 126 | 127 | #: options-sanitize.php:344 128 | msgid "Normal" 129 | msgstr "Normal" 130 | 131 | #: options-sanitize.php:345 132 | msgid "Italic" 133 | msgstr "Cursiva" 134 | 135 | #: options-sanitize.php:346 136 | msgid "Bold" 137 | msgstr "Negrita" 138 | 139 | #: options-sanitize.php:347 140 | msgid "Bold Italic" 141 | msgstr "Negrita Cursiva" 142 | 143 | -------------------------------------------------------------------------------- /languages/options-framework-fa_IR.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/languages/options-framework-fa_IR.mo -------------------------------------------------------------------------------- /languages/options-framework-fa_IR.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: \n" 4 | "Report-Msgid-Bugs-To: \n" 5 | "POT-Creation-Date: 2016-12-25 15:51-0300\n" 6 | "PO-Revision-Date: 2016-12-25 07:03+0330\n" 7 | "Last-Translator: va \n" 8 | "Language-Team: \n" 9 | "MIME-Version: 1.0\n" 10 | "Content-Type: text/plain; charset=UTF-8\n" 11 | "Content-Transfer-Encoding: 8bit\n" 12 | "X-Poedit-KeywordsList: _;gettext;gettext_noop;__;_e;esc_attr_e\n" 13 | "X-Poedit-Basepath: /Users/weslly/Desktop/options-framework-plugin\n" 14 | "X-Poedit-SearchPath-0: .\n" 15 | 16 | #: options-framework.php:71 17 | #, php-format 18 | msgid "Your current theme does not have support for the Options Framework plugin. Learn More | Hide Notice" 19 | msgstr "قالب فعلی شما با پلاگین فریم ورک قالب سازگار نیست. بیشتر یاد بگیرید | مخفی کردن این نکته" 20 | 21 | #: options-framework.php:254 22 | #: options-framework.php:456 23 | msgid "Theme Options" 24 | msgstr "تنظیمات قالب" 25 | 26 | #: options-framework.php:323 27 | msgid "Save Options" 28 | msgstr "ذخیره تنظیمات" 29 | 30 | #: options-framework.php:324 31 | msgid "Restore Defaults" 32 | msgstr "بازگرداندن به پیش‌فرض" 33 | 34 | #: options-framework.php:324 35 | msgid "Click OK to reset. Any theme settings will be lost!" 36 | msgstr "برای بازنشانی روی OK کلیک کنید. تمام تنظیمات پوسته از بین خواهد رفت!" 37 | 38 | #: options-framework.php:358 39 | msgid "Default options restored." 40 | msgstr "تنظیمات پیشفرض بازگردانی شدند." 41 | 42 | #: options-framework.php:400 43 | msgid "Options saved." 44 | msgstr "تنظیمات ذخیره شدند." 45 | 46 | #: options-medialibrary-uploader.php:26 47 | msgid "Options Framework Internal Container" 48 | msgstr "فضای داخلی Options Framework" 49 | 50 | #: options-medialibrary-uploader.php:128 51 | msgid "Upload" 52 | msgstr "آپلود" 53 | 54 | #: options-medialibrary-uploader.php:151 55 | msgid "View File" 56 | msgstr "مشاهده فایل" 57 | 58 | #: options-medialibrary-uploader.php:288 59 | msgid "Gallery" 60 | msgstr "گالری" 61 | 62 | #: options-medialibrary-uploader.php:288 63 | msgid "Previously Uploaded" 64 | msgstr "آپلود شده ها" 65 | 66 | #: options-sanitize.php:232 67 | msgid "No Repeat" 68 | msgstr "بدون تکرار" 69 | 70 | #: options-sanitize.php:233 71 | msgid "Repeat Horizontally" 72 | msgstr "تکرار افقی" 73 | 74 | #: options-sanitize.php:234 75 | msgid "Repeat Vertically" 76 | msgstr "تکرار عمودی" 77 | 78 | #: options-sanitize.php:235 79 | msgid "Repeat All" 80 | msgstr "تکرار" 81 | 82 | #: options-sanitize.php:248 83 | msgid "Top Left" 84 | msgstr "بالا چپ" 85 | 86 | #: options-sanitize.php:249 87 | msgid "Top Center" 88 | msgstr "بالا وسط" 89 | 90 | #: options-sanitize.php:250 91 | msgid "Top Right" 92 | msgstr "بالا راست" 93 | 94 | #: options-sanitize.php:251 95 | msgid "Middle Left" 96 | msgstr "وسط چپ" 97 | 98 | #: options-sanitize.php:252 99 | msgid "Middle Center" 100 | msgstr "وسط وسط" 101 | 102 | #: options-sanitize.php:253 103 | msgid "Middle Right" 104 | msgstr "وسط راست" 105 | 106 | #: options-sanitize.php:254 107 | msgid "Bottom Left" 108 | msgstr "پایین چپ " 109 | 110 | #: options-sanitize.php:255 111 | msgid "Bottom Center" 112 | msgstr "پایین وسط" 113 | 114 | #: options-sanitize.php:256 115 | msgid "Bottom Right" 116 | msgstr "پایین راست" 117 | 118 | #: options-sanitize.php:269 119 | msgid "Scroll Normally" 120 | msgstr "اسکرول" 121 | 122 | #: options-sanitize.php:270 123 | msgid "Fixed in Place" 124 | msgstr "مکان ثابت" 125 | 126 | #: options-sanitize.php:344 127 | msgid "Normal" 128 | msgstr "عادی" 129 | 130 | #: options-sanitize.php:345 131 | msgid "Italic" 132 | msgstr "کج" 133 | 134 | #: options-sanitize.php:346 135 | msgid "Bold" 136 | msgstr "بُلد" 137 | 138 | #: options-sanitize.php:347 139 | msgid "Bold Italic" 140 | msgstr "بُلد و کج" 141 | 142 | -------------------------------------------------------------------------------- /languages/options-framework-fr_FR.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/languages/options-framework-fr_FR.mo -------------------------------------------------------------------------------- /languages/options-framework-fr_FR.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: Options Framework Plugin\n" 4 | "Report-Msgid-Bugs-To: \n" 5 | "POT-Creation-Date: 2012-04-22 19:13-0300\n" 6 | "PO-Revision-Date: 2013-03-28 13:13+0100\n" 7 | "Last-Translator: MBA Multimedia \n" 8 | "Language-Team: Julien LE THUAUT \n" 9 | "MIME-Version: 1.0\n" 10 | "Content-Type: text/plain; charset=UTF-8\n" 11 | "Content-Transfer-Encoding: 8bit\n" 12 | "X-Poedit-KeywordsList: _;gettext;gettext_noop;_e;_x;__;esc_attr_e\n" 13 | "X-Poedit-Basepath: ../\n" 14 | "Language: fr\n" 15 | "X-Generator: Poedit 1.5.5\n" 16 | "X-Poedit-SearchPath-0: .\n" 17 | 18 | #: options-framework.php:71 19 | #, php-format 20 | msgid "" 21 | "Your current theme does not have support for the Options Framework plugin. " 22 | "Learn More | Hide " 23 | "Notice" 24 | msgstr "" 25 | "Votre thème actuel ne permet pas l'utilisation du plugin Options Framework. " 26 | "En savoir plus | Masquer cette note" 28 | 29 | #: options-framework.php:254 options-framework.php:456 30 | msgid "Theme Options" 31 | msgstr "Options du thème" 32 | 33 | #: options-framework.php:323 34 | msgid "Save Options" 35 | msgstr "Sauvegarder options" 36 | 37 | #: options-framework.php:324 38 | msgid "Restore Defaults" 39 | msgstr "Restaurer les valeurs par défaut" 40 | 41 | #: options-framework.php:324 42 | msgid "Click OK to reset. Any theme settings will be lost!" 43 | msgstr "" 44 | "Cliquer sur OK pour faire une remise à zero. Toutes les options du thèmes " 45 | "seront perdues !" 46 | 47 | #: options-framework.php:358 48 | msgid "Default options restored." 49 | msgstr "Options par défaut restaurées." 50 | 51 | #: options-framework.php:400 52 | msgid "Options saved." 53 | msgstr "Options sauvegardées" 54 | 55 | #: options-medialibrary-uploader.php:26 56 | msgid "Options Framework Internal Container" 57 | msgstr "Conteneur interne de l'Options Framework" 58 | 59 | #: options-medialibrary-uploader.php:128 60 | msgid "Upload" 61 | msgstr "Upload" 62 | 63 | #: options-medialibrary-uploader.php:151 64 | msgid "View File" 65 | msgstr "Voir fichier" 66 | 67 | #: options-medialibrary-uploader.php:288 68 | msgid "Gallery" 69 | msgstr "Galerie" 70 | 71 | #: options-medialibrary-uploader.php:288 72 | msgid "Previously Uploaded" 73 | msgstr "Uploadé précédemment" 74 | 75 | #: options-sanitize.php:232 76 | msgid "No Repeat" 77 | msgstr "Ne pas répéter" 78 | 79 | #: options-sanitize.php:233 80 | msgid "Repeat Horizontally" 81 | msgstr "Répéter horizontalement" 82 | 83 | #: options-sanitize.php:234 84 | msgid "Repeat Vertically" 85 | msgstr "Répéter verticalement" 86 | 87 | #: options-sanitize.php:235 88 | msgid "Repeat All" 89 | msgstr "Répéter" 90 | 91 | #: options-sanitize.php:248 92 | msgid "Top Left" 93 | msgstr "Haut Gauche" 94 | 95 | #: options-sanitize.php:249 96 | msgid "Top Center" 97 | msgstr "Haut Centre" 98 | 99 | #: options-sanitize.php:250 100 | msgid "Top Right" 101 | msgstr "Haut Droite" 102 | 103 | #: options-sanitize.php:251 104 | msgid "Middle Left" 105 | msgstr "Milieu Gauche" 106 | 107 | #: options-sanitize.php:252 108 | msgid "Middle Center" 109 | msgstr "Milieu Centre" 110 | 111 | #: options-sanitize.php:253 112 | msgid "Middle Right" 113 | msgstr "Milieu Droite" 114 | 115 | #: options-sanitize.php:254 116 | msgid "Bottom Left" 117 | msgstr "Bas Gauche" 118 | 119 | #: options-sanitize.php:255 120 | msgid "Bottom Center" 121 | msgstr "Bas Centre" 122 | 123 | #: options-sanitize.php:256 124 | msgid "Bottom Right" 125 | msgstr "Bas Droite" 126 | 127 | #: options-sanitize.php:269 128 | msgid "Scroll Normally" 129 | msgstr "Scroll normal" 130 | 131 | #: options-sanitize.php:270 132 | msgid "Fixed in Place" 133 | msgstr "Position fixe" 134 | 135 | #: options-sanitize.php:344 136 | msgid "Normal" 137 | msgstr "Normal" 138 | 139 | #: options-sanitize.php:345 140 | msgid "Italic" 141 | msgstr "Italique" 142 | 143 | #: options-sanitize.php:346 144 | msgid "Bold" 145 | msgstr "Gras" 146 | 147 | #: options-sanitize.php:347 148 | msgid "Bold Italic" 149 | msgstr "Gras italique" 150 | -------------------------------------------------------------------------------- /languages/options-framework-hu_HU.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2014 2 | # This file is distributed under the same license as the package. 3 | # Translators: 4 | # Laszlo Espadas , 2014 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: Options Framework plugin\n" 8 | "Report-Msgid-Bugs-To: http://wordpress.org/tag/options-framework-plugin\n" 9 | "POT-Creation-Date: 2014-04-22 15:02:20+00:00\n" 10 | "PO-Revision-Date: 2014-04-23 06:45+0000\n" 11 | "Last-Translator: Laszlo Espadas \n" 12 | "Language-Team: Hungarian (Hungary) (http://www.transifex.com/projects/p/options-framework-plugin/language/hu_HU/)\n" 13 | "MIME-Version: 1.0\n" 14 | "Content-Type: text/plain; charset=UTF-8\n" 15 | "Content-Transfer-Encoding: 8bit\n" 16 | "Language: hu_HU\n" 17 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 18 | 19 | #: includes/class-options-framework-admin.php:64 20 | msgid "" 21 | "Your current theme does not have support for the Options Framework plugin. " 22 | "Learn More | Hide " 23 | "Notice" 24 | msgstr "A jelenlegi sablon nem támogatja az Options Framework bővítményt. Bővebben | Elrejtés" 25 | 26 | #: includes/class-options-framework-admin.php:121 27 | #: includes/class-options-framework-admin.php:122 28 | #: includes/class-options-framework-admin.php:374 29 | msgid "Theme Options" 30 | msgstr "Sablon beállítások" 31 | 32 | #: includes/class-options-framework-admin.php:240 33 | msgid "Save Options" 34 | msgstr "Beállítások mentése" 35 | 36 | #: includes/class-options-framework-admin.php:241 37 | msgid "Restore Defaults" 38 | msgstr "Alapértékek visszaállítása" 39 | 40 | #: includes/class-options-framework-admin.php:241 41 | msgid "Click OK to reset. Any theme settings will be lost!" 42 | msgstr "Kattintsunk az OK gombra az alapértékek visszaállításához. Minden jelenlegi beállítás elvész!" 43 | 44 | #: includes/class-options-framework-admin.php:272 45 | msgid "Default options restored." 46 | msgstr "Alapértékek visszaállítása." 47 | 48 | #: includes/class-options-framework-admin.php:326 49 | msgid "Options saved." 50 | msgstr "Sikeres mentés." 51 | 52 | #: includes/class-options-media-uploader.php:63 53 | msgid "No file chosen" 54 | msgstr "Nincs fájl kiválasztva" 55 | 56 | #: includes/class-options-media-uploader.php:66 57 | #: includes/class-options-media-uploader.php:119 58 | msgid "Upload" 59 | msgstr "Feltőltés" 60 | 61 | #: includes/class-options-media-uploader.php:68 62 | #: includes/class-options-media-uploader.php:120 63 | msgid "Remove" 64 | msgstr "Törlés" 65 | 66 | #: includes/class-options-media-uploader.php:71 67 | msgid "Upgrade your version of WordPress for full media support." 68 | msgstr "Frissítsük a WordPress rendszerünket a jobb media támogatásért." 69 | 70 | #: includes/class-options-media-uploader.php:95 71 | msgid "View File" 72 | msgstr "Fájl megtekintése" 73 | 74 | #: includes/class-options-sanitization.php:241 75 | msgid "No Repeat" 76 | msgstr "Ne ismétlődjön" 77 | 78 | #: includes/class-options-sanitization.php:242 79 | msgid "Repeat Horizontally" 80 | msgstr "Vízszintes ismétlődés" 81 | 82 | #: includes/class-options-sanitization.php:243 83 | msgid "Repeat Vertically" 84 | msgstr "Függőleges ismétlődés" 85 | 86 | #: includes/class-options-sanitization.php:244 87 | msgid "Repeat All" 88 | msgstr "Mindegyik ismétlődjön" 89 | 90 | #: includes/class-options-sanitization.php:257 91 | msgid "Top Left" 92 | msgstr "Bal felső" 93 | 94 | #: includes/class-options-sanitization.php:258 95 | msgid "Top Center" 96 | msgstr "Középen fent" 97 | 98 | #: includes/class-options-sanitization.php:259 99 | msgid "Top Right" 100 | msgstr "Jobb felső" 101 | 102 | #: includes/class-options-sanitization.php:260 103 | msgid "Middle Left" 104 | msgstr "Közép bal" 105 | 106 | #: includes/class-options-sanitization.php:261 107 | msgid "Middle Center" 108 | msgstr "Közép középen" 109 | 110 | #: includes/class-options-sanitization.php:262 111 | msgid "Middle Right" 112 | msgstr "Közép jobb" 113 | 114 | #: includes/class-options-sanitization.php:263 115 | msgid "Bottom Left" 116 | msgstr "Bal alsó" 117 | 118 | #: includes/class-options-sanitization.php:264 119 | msgid "Bottom Center" 120 | msgstr "Középen alul" 121 | 122 | #: includes/class-options-sanitization.php:265 123 | msgid "Bottom Right" 124 | msgstr "Jobb alsó" 125 | 126 | #: includes/class-options-sanitization.php:278 127 | msgid "Scroll Normally" 128 | msgstr "Normál lapozás" 129 | 130 | #: includes/class-options-sanitization.php:279 131 | msgid "Fixed in Place" 132 | msgstr "Hely javítása" 133 | 134 | #: includes/class-options-sanitization.php:353 135 | msgid "Normal" 136 | msgstr "Normál" 137 | 138 | #: includes/class-options-sanitization.php:354 139 | msgid "Italic" 140 | msgstr "Dőlt" 141 | 142 | #: includes/class-options-sanitization.php:355 143 | msgid "Bold" 144 | msgstr "Félkövér" 145 | 146 | #: includes/class-options-sanitization.php:356 147 | msgid "Bold Italic" 148 | msgstr "Félkövér dőlt" 149 | -------------------------------------------------------------------------------- /languages/options-framework-id_ID.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/languages/options-framework-id_ID.mo -------------------------------------------------------------------------------- /languages/options-framework-id_ID.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: Options Framework Plugin\n" 4 | "Report-Msgid-Bugs-To: \n" 5 | "POT-Creation-Date: 2012-04-22 19:13-0300\n" 6 | "PO-Revision-Date: 2014-03-16 20:20+0700\n" 7 | "Last-Translator: Andrea Bersi\n" 8 | "Language-Team: Arya Prakasa \n" 9 | "MIME-Version: 1.0\n" 10 | "Content-Type: text/plain; charset=UTF-8\n" 11 | "Content-Transfer-Encoding: 8bit\n" 12 | "X-Poedit-KeywordsList: _;gettext;gettext_noop;_e;_x;__;esc_attr_e\n" 13 | "X-Poedit-Basepath: ../\n" 14 | "Language: id\n" 15 | "X-Generator: Poedit 1.6.3\n" 16 | "Plural-Forms: nplurals=1; plural=0;\n" 17 | "X-Poedit-SearchPath-0: .\n" 18 | 19 | #: options-framework.php:71 20 | #, php-format 21 | msgid "" 22 | "Your current theme does not have support for the Options Framework plugin. " 23 | "Learn More | Hide " 24 | "Notice" 25 | msgstr "" 26 | "Tema Anda saat ini tidak memiliki dukungan untuk plugin Options Framework. " 27 | "Pelajari Lebih Lanjut | Sembunyikan Pemberitahuan" 29 | 30 | #: options-framework.php:254 options-framework.php:456 31 | msgid "Theme Options" 32 | msgstr "Opsi Tema" 33 | 34 | #: options-framework.php:323 35 | msgid "Save Options" 36 | msgstr "Simpan Opsi" 37 | 38 | #: options-framework.php:324 39 | msgid "Restore Defaults" 40 | msgstr "Kembali ke Awal" 41 | 42 | #: options-framework.php:324 43 | msgid "Click OK to reset. Any theme settings will be lost!" 44 | msgstr "Klik OK untuk me-reset. Setiap pengaturan tema akan hilang!" 45 | 46 | #: options-framework.php:358 47 | msgid "Default options restored." 48 | msgstr "Opsi dikembalikan ke awal." 49 | 50 | #: options-framework.php:400 51 | msgid "Options saved." 52 | msgstr "Opsi tersimpan." 53 | 54 | #: options-medialibrary-uploader.php:26 55 | msgid "Options Framework Internal Container" 56 | msgstr "Options Framework Internal Kontainer" 57 | 58 | #: options-medialibrary-uploader.php:128 59 | msgid "Upload" 60 | msgstr "Unggah" 61 | 62 | #: options-medialibrary-uploader.php:151 63 | msgid "View File" 64 | msgstr "Tampilkan Berkas" 65 | 66 | #: options-medialibrary-uploader.php:288 67 | msgid "Gallery" 68 | msgstr "Galeri" 69 | 70 | #: options-medialibrary-uploader.php:288 71 | msgid "Previously Uploaded" 72 | msgstr "Unggahan Sebelumnya" 73 | 74 | #: options-sanitize.php:232 75 | msgid "No Repeat" 76 | msgstr "Tidak Berulang" 77 | 78 | #: options-sanitize.php:233 79 | msgid "Repeat Horizontally" 80 | msgstr "Pengulanagan Horizontal" 81 | 82 | #: options-sanitize.php:234 83 | msgid "Repeat Vertically" 84 | msgstr "Pengulangan Vertikal" 85 | 86 | #: options-sanitize.php:235 87 | msgid "Repeat All" 88 | msgstr "Pengulangan Semua" 89 | 90 | #: options-sanitize.php:248 91 | msgid "Top Left" 92 | msgstr "Puncak Kiri" 93 | 94 | #: options-sanitize.php:249 95 | msgid "Top Center" 96 | msgstr "Puncak Pusat" 97 | 98 | #: options-sanitize.php:250 99 | msgid "Top Right" 100 | msgstr "Puncak Kanan" 101 | 102 | #: options-sanitize.php:251 103 | msgid "Middle Left" 104 | msgstr "Tengah Kiri" 105 | 106 | #: options-sanitize.php:252 107 | msgid "Middle Center" 108 | msgstr "Tengah Pusat" 109 | 110 | #: options-sanitize.php:253 111 | msgid "Middle Right" 112 | msgstr "Tengah Kanan" 113 | 114 | #: options-sanitize.php:254 115 | msgid "Bottom Left" 116 | msgstr "Dasar Kiri" 117 | 118 | #: options-sanitize.php:255 119 | msgid "Bottom Center" 120 | msgstr "Dasar Pusat" 121 | 122 | #: options-sanitize.php:256 123 | msgid "Bottom Right" 124 | msgstr "Dasar Kanan" 125 | 126 | #: options-sanitize.php:269 127 | msgid "Scroll Normally" 128 | msgstr "Gulir Normal" 129 | 130 | #: options-sanitize.php:270 131 | msgid "Fixed in Place" 132 | msgstr "Tetap di Tempat" 133 | 134 | #: options-sanitize.php:344 135 | msgid "Normal" 136 | msgstr "Normal" 137 | 138 | #: options-sanitize.php:345 139 | msgid "Italic" 140 | msgstr "Cetak Miring" 141 | 142 | #: options-sanitize.php:346 143 | msgid "Bold" 144 | msgstr "Cetak Tebal" 145 | 146 | #: options-sanitize.php:347 147 | msgid "Bold Italic" 148 | msgstr "Cetak Tebal Miring" 149 | -------------------------------------------------------------------------------- /languages/options-framework-it_IT.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/languages/options-framework-it_IT.mo -------------------------------------------------------------------------------- /languages/options-framework-it_IT.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: Options Framework Plugin\n" 4 | "Report-Msgid-Bugs-To: \n" 5 | "POT-Creation-Date: 2012-04-22 19:13-0300\n" 6 | "PO-Revision-Date: 2012-12-08 17:55+0100\n" 7 | "Last-Translator: Andrea Bersi\n" 8 | "Language-Team: Matt Varone \n" 9 | "MIME-Version: 1.0\n" 10 | "Content-Type: text/plain; charset=UTF-8\n" 11 | "Content-Transfer-Encoding: 8bit\n" 12 | "X-Poedit-KeywordsList: _;gettext;gettext_noop;_e;_x;__;esc_attr_e\n" 13 | "X-Poedit-Basepath: ../\n" 14 | "X-Poedit-Language: Spanish\n" 15 | "X-Poedit-SearchPath-0: .\n" 16 | 17 | #: options-framework.php:71 18 | #, php-format 19 | msgid "Your current theme does not have support for the Options Framework plugin. Learn More | Hide Notice" 20 | msgstr "SIl tema corrente non supporta Options Framework. Leggi info | Nascondi avviso" 21 | 22 | #: options-framework.php:254 23 | #: options-framework.php:456 24 | msgid "Theme Options" 25 | msgstr "Opzioni tema" 26 | 27 | #: options-framework.php:323 28 | msgid "Save Options" 29 | msgstr "Salva Opzioni" 30 | 31 | #: options-framework.php:324 32 | msgid "Restore Defaults" 33 | msgstr "Ripristina default" 34 | 35 | #: options-framework.php:324 36 | msgid "Click OK to reset. Any theme settings will be lost!" 37 | msgstr "Clicca su OK. Tutte le impostazioni verranno perse!" 38 | 39 | #: options-framework.php:358 40 | msgid "Default options restored." 41 | msgstr "Impostazioni default ripristinate." 42 | 43 | #: options-framework.php:400 44 | msgid "Options saved." 45 | msgstr "Opzioni salvate." 46 | 47 | #: options-medialibrary-uploader.php:26 48 | msgid "Options Framework Internal Container" 49 | msgstr "Options Framework contenitore interno" 50 | 51 | #: options-medialibrary-uploader.php:128 52 | msgid "Upload" 53 | msgstr "Upload" 54 | 55 | #: options-medialibrary-uploader.php:151 56 | msgid "View File" 57 | msgstr "Vedi file" 58 | 59 | #: options-medialibrary-uploader.php:288 60 | msgid "Gallery" 61 | msgstr "Galleria" 62 | 63 | #: options-medialibrary-uploader.php:288 64 | msgid "Previously Uploaded" 65 | msgstr "caricato in precedenza" 66 | 67 | #: options-sanitize.php:232 68 | msgid "No Repeat" 69 | msgstr "Non ripetere" 70 | 71 | #: options-sanitize.php:233 72 | msgid "Repeat Horizontally" 73 | msgstr "Ripeti orizzontalmente" 74 | 75 | #: options-sanitize.php:234 76 | msgid "Repeat Vertically" 77 | msgstr "Ripeti verticalmente" 78 | 79 | #: options-sanitize.php:235 80 | msgid "Repeat All" 81 | msgstr "Ripeti tutto" 82 | 83 | #: options-sanitize.php:248 84 | msgid "Top Left" 85 | msgstr "Alto sinistra" 86 | 87 | #: options-sanitize.php:249 88 | msgid "Top Center" 89 | msgstr "Alto centro" 90 | 91 | #: options-sanitize.php:250 92 | msgid "Top Right" 93 | msgstr "Alto destra" 94 | 95 | #: options-sanitize.php:251 96 | msgid "Middle Left" 97 | msgstr "Centro sinistra" 98 | 99 | #: options-sanitize.php:252 100 | msgid "Middle Center" 101 | msgstr "Allineato al centro" 102 | 103 | #: options-sanitize.php:253 104 | msgid "Middle Right" 105 | msgstr "Centro destra" 106 | 107 | #: options-sanitize.php:254 108 | msgid "Bottom Left" 109 | msgstr "Basso sinistra" 110 | 111 | #: options-sanitize.php:255 112 | msgid "Bottom Center" 113 | msgstr "Basso centro" 114 | 115 | #: options-sanitize.php:256 116 | msgid "Bottom Right" 117 | msgstr "Basso destra" 118 | 119 | #: options-sanitize.php:269 120 | msgid "Scroll Normally" 121 | msgstr "Scrolla normalmente" 122 | 123 | #: options-sanitize.php:270 124 | msgid "Fixed in Place" 125 | msgstr "Blocca nella posizione" 126 | 127 | #: options-sanitize.php:344 128 | msgid "Normal" 129 | msgstr "Normalw" 130 | 131 | #: options-sanitize.php:345 132 | msgid "Italic" 133 | msgstr "Italico" 134 | 135 | #: options-sanitize.php:346 136 | msgid "Bold" 137 | msgstr "Grassetto" 138 | 139 | #: options-sanitize.php:347 140 | msgid "Bold Italic" 141 | msgstr "Grassetto italico" 142 | 143 | -------------------------------------------------------------------------------- /languages/options-framework-pt_BR.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/languages/options-framework-pt_BR.mo -------------------------------------------------------------------------------- /languages/options-framework-pt_BR.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: Options Framework\n" 4 | "Report-Msgid-Bugs-To: http://wordpress.org/tag/options-framework-plugin\n" 5 | "POT-Creation-Date: 2013-11-26 23:01:08+00:00\n" 6 | "PO-Revision-Date: 2014-03-05 20:44-0300\n" 7 | "Last-Translator: Weslly Honorato \n" 8 | "Language-Team: \n" 9 | "Language: pt_BR\n" 10 | "MIME-Version: 1.0\n" 11 | "Content-Type: text/plain; charset=UTF-8\n" 12 | "Content-Transfer-Encoding: 8bit\n" 13 | "X-Poedit-KeywordsList: _;gettext;gettext_noop;__;_e;esc_attr_e\n" 14 | "X-Generator: Poedit 1.6.3\n" 15 | "X-Poedit-Basepath: .\n" 16 | "X-Poedit-SearchPath-0: .\n" 17 | 18 | #: includes/class-options-framework-admin.php:64 19 | msgid "" 20 | "Your current theme does not have support for the Options Framework plugin. " 21 | "Learn More | Hide " 22 | "Notice" 23 | msgstr "" 24 | "Seu tema atual não suporta o plugin Options Framework. Saiba Mais | Esconder Alerta" 26 | 27 | #: includes/class-options-framework-admin.php:116 28 | #: includes/class-options-framework-admin.php:117 29 | #: includes/class-options-framework-admin.php:336 30 | msgid "Theme Options" 31 | msgstr "Opções do Tema" 32 | 33 | #: includes/class-options-framework-admin.php:202 34 | msgid "Save Options" 35 | msgstr "Salvar Opções" 36 | 37 | #: includes/class-options-framework-admin.php:203 38 | msgid "Restore Defaults" 39 | msgstr "Restaurar Padrões" 40 | 41 | #: includes/class-options-framework-admin.php:203 42 | msgid "Click OK to reset. Any theme settings will be lost!" 43 | msgstr "" 44 | "Clique em OK para restaurar. As configurações feitas anteriormente serão " 45 | "perdidas!" 46 | 47 | #: includes/class-options-framework-admin.php:234 48 | msgid "Default options restored." 49 | msgstr "Opções padrão restauradas." 50 | 51 | #: includes/class-options-framework-admin.php:288 52 | msgid "Options saved." 53 | msgstr "Opções salvas." 54 | 55 | #: includes/class-options-media-uploader.php:63 56 | msgid "No file chosen" 57 | msgstr "Nenhum arquivo escolhido" 58 | 59 | #: includes/class-options-media-uploader.php:66 60 | #: includes/class-options-media-uploader.php:119 61 | msgid "Upload" 62 | msgstr "Upload" 63 | 64 | #: includes/class-options-media-uploader.php:68 65 | #: includes/class-options-media-uploader.php:120 66 | msgid "Remove" 67 | msgstr "Remover" 68 | 69 | #: includes/class-options-media-uploader.php:71 70 | msgid "Upgrade your version of WordPress for full media support." 71 | msgstr "Atualize sua versão do Wordpress para suporte completo de mídia." 72 | 73 | #: includes/class-options-media-uploader.php:95 74 | msgid "View File" 75 | msgstr "Visualizar Arquivo" 76 | 77 | #: includes/class-options-sanitization.php:241 78 | msgid "No Repeat" 79 | msgstr "Sem Repetição" 80 | 81 | #: includes/class-options-sanitization.php:242 82 | msgid "Repeat Horizontally" 83 | msgstr "Repetir Horizontalmente" 84 | 85 | #: includes/class-options-sanitization.php:243 86 | msgid "Repeat Vertically" 87 | msgstr "Repetir Verticalmente" 88 | 89 | #: includes/class-options-sanitization.php:244 90 | msgid "Repeat All" 91 | msgstr "Repetir" 92 | 93 | #: includes/class-options-sanitization.php:257 94 | msgid "Top Left" 95 | msgstr "Superior Esquerda" 96 | 97 | #: includes/class-options-sanitization.php:258 98 | msgid "Top Center" 99 | msgstr "Superior Centro" 100 | 101 | #: includes/class-options-sanitization.php:259 102 | msgid "Top Right" 103 | msgstr "Superior Direita" 104 | 105 | #: includes/class-options-sanitization.php:260 106 | msgid "Middle Left" 107 | msgstr "Meio Esquerda" 108 | 109 | #: includes/class-options-sanitization.php:261 110 | msgid "Middle Center" 111 | msgstr "Meio Centro" 112 | 113 | #: includes/class-options-sanitization.php:262 114 | msgid "Middle Right" 115 | msgstr "Meio Direita" 116 | 117 | #: includes/class-options-sanitization.php:263 118 | msgid "Bottom Left" 119 | msgstr "Inferior Esquerda" 120 | 121 | #: includes/class-options-sanitization.php:264 122 | msgid "Bottom Center" 123 | msgstr "Inferior Centro" 124 | 125 | #: includes/class-options-sanitization.php:265 126 | msgid "Bottom Right" 127 | msgstr "Inferior Direita" 128 | 129 | #: includes/class-options-sanitization.php:278 130 | msgid "Scroll Normally" 131 | msgstr "Rolar Normalmente" 132 | 133 | #: includes/class-options-sanitization.php:279 134 | msgid "Fixed in Place" 135 | msgstr "Fixado no Local" 136 | 137 | #: includes/class-options-sanitization.php:353 138 | msgid "Normal" 139 | msgstr "Normal" 140 | 141 | #: includes/class-options-sanitization.php:354 142 | msgid "Italic" 143 | msgstr "Itálico" 144 | 145 | #: includes/class-options-sanitization.php:355 146 | msgid "Bold" 147 | msgstr "Negrito" 148 | 149 | #: includes/class-options-sanitization.php:356 150 | msgid "Bold Italic" 151 | msgstr "Negrito e Itálico" 152 | 153 | #: options-check/options.php:32 154 | msgid "One" 155 | msgstr "Um" 156 | 157 | #: options-check/options.php:33 158 | msgid "Two" 159 | msgstr "Dois" 160 | 161 | #: options-check/options.php:34 162 | msgid "Three" 163 | msgstr "Três" 164 | 165 | #: options-check/options.php:35 166 | msgid "Four" 167 | msgstr "Quatro" 168 | 169 | #: options-check/options.php:36 170 | msgid "Five" 171 | msgstr "Cinco" 172 | 173 | #: options-check/options.php:41 174 | msgid "French Toast" 175 | msgstr "Torrada" 176 | 177 | #: options-check/options.php:42 178 | msgid "Pancake" 179 | msgstr "Panqueca" 180 | 181 | #: options-check/options.php:43 182 | msgid "Omelette" 183 | msgstr "Omelete" 184 | 185 | #: options-check/options.php:44 186 | msgid "Crepe" 187 | msgstr "Crepe" 188 | 189 | #: options-check/options.php:45 190 | msgid "Waffle" 191 | msgstr "Waffle" 192 | 193 | #: options-check/options.php:105 194 | msgid "Basic Settings" 195 | msgstr "Configurações Básicas" 196 | 197 | #: options-check/options.php:109 198 | msgid "Input Text Mini" 199 | msgstr "Mini Campo de Texto" 200 | 201 | #: options-check/options.php:110 202 | msgid "A mini text input field." 203 | msgstr "Um mini campo de texto." 204 | 205 | #: options-check/options.php:117 206 | msgid "Input Text" 207 | msgstr "Campo de Texto" 208 | 209 | #: options-check/options.php:118 210 | msgid "A text input field." 211 | msgstr "Um campo de texto." 212 | 213 | #: options-check/options.php:124 214 | msgid "Textarea" 215 | msgstr "Área de Texto" 216 | 217 | #: options-check/options.php:125 218 | msgid "Textarea description." 219 | msgstr "Descrição da área de texto" 220 | 221 | #: options-check/options.php:131 222 | msgid "Input Select Small" 223 | msgstr "Campo de Seleção Pequeno" 224 | 225 | #: options-check/options.php:132 226 | msgid "Small Select Box." 227 | msgstr "Caixa de Seleção Pequena" 228 | 229 | #: options-check/options.php:140 230 | msgid "Input Select Wide" 231 | msgstr "Campo de Seleção Largo" 232 | 233 | #: options-check/options.php:141 234 | msgid "A wider select box." 235 | msgstr "Uma caixa de seleção mais larga" 236 | 237 | #: options-check/options.php:148 238 | msgid "Select a Category" 239 | msgstr "Selecione a Categoria" 240 | 241 | #: options-check/options.php:149 242 | msgid "Passed an array of categories with cat_ID and cat_name" 243 | msgstr "Passa uma array de categorias com cat_ID e cat_name" 244 | 245 | #: options-check/options.php:156 246 | msgid "Select a Tag" 247 | msgstr "Selecione a Tag" 248 | 249 | #: options-check/options.php:157 250 | msgid "Passed an array of tags with term_id and term_name" 251 | msgstr "Passa uma array de tags com term_ID e term_name" 252 | 253 | #: options-check/options.php:164 254 | msgid "Select a Page" 255 | msgstr "Selecione a Página" 256 | 257 | #: options-check/options.php:165 258 | msgid "Passed an array of pages with ID and post_title" 259 | msgstr "Passa uma array de páginas com ID e post_title" 260 | 261 | #: options-check/options.php:171 262 | msgid "Input Radio (one)" 263 | msgstr "Campo de Radio (um)" 264 | 265 | #: options-check/options.php:172 266 | msgid "Radio select with default options \"one\"." 267 | msgstr "Campo de Radio com a opção padrão \"um\"." 268 | 269 | #: options-check/options.php:179 270 | msgid "Example Info" 271 | msgstr "Informação de Exemplo" 272 | 273 | #: options-check/options.php:180 274 | msgid "This is just some example information you can put in the panel." 275 | msgstr "" 276 | "Isto é apenas um exemplo de informação que você pode colocar no painel." 277 | 278 | #: options-check/options.php:184 279 | msgid "Input Checkbox" 280 | msgstr "Campo de Checkbox" 281 | 282 | #: options-check/options.php:185 283 | msgid "Example checkbox, defaults to true." 284 | msgstr "Exemplo de checkbox, selecionada por padrão." 285 | 286 | #: options-check/options.php:191 287 | msgid "Advanced Settings" 288 | msgstr "Configurações Avançadas" 289 | 290 | #: options-check/options.php:195 291 | msgid "Check to Show a Hidden Text Input" 292 | msgstr "Marque para mostrar um campo de texto oculto" 293 | 294 | #: options-check/options.php:196 295 | msgid "Click here and see what happens." 296 | msgstr "Clique aqui para saber o que acontece." 297 | 298 | #: options-check/options.php:201 299 | msgid "Hidden Text Input" 300 | msgstr "Campo de texto oculto" 301 | 302 | #: options-check/options.php:202 303 | msgid "This option is hidden unless activated by a checkbox click." 304 | msgstr "Esta opção fica oculta até ser ativada por um clique na checkbox" 305 | 306 | #: options-check/options.php:209 307 | msgid "Uploader Test" 308 | msgstr "Teste de Upload" 309 | 310 | #: options-check/options.php:210 311 | msgid "This creates a full size uploader that previews the image." 312 | msgstr "Isto cria um campo de upload com visualização prévia da imagem." 313 | 314 | #: options-check/options.php:227 315 | msgid "Example Background" 316 | msgstr "Exemplo de Fundo" 317 | 318 | #: options-check/options.php:228 319 | msgid "Change the background CSS." 320 | msgstr "Trocar o CSS do fundo." 321 | 322 | #: options-check/options.php:234 323 | msgid "Multicheck" 324 | msgstr "Multicheck" 325 | 326 | #: options-check/options.php:235 327 | msgid "Multicheck description." 328 | msgstr "Descrição do Multicheck" 329 | 330 | #: options-check/options.php:242 331 | msgid "Colorpicker" 332 | msgstr "Escolha de cores" 333 | 334 | #: options-check/options.php:243 335 | msgid "No color selected by default." 336 | msgstr "Nenhuma cor selecionada por padrão." 337 | 338 | #: options-check/options.php:248 339 | msgid "Typography" 340 | msgstr "Tipografia" 341 | 342 | #: options-check/options.php:249 343 | msgid "Example typography." 344 | msgstr "Exemplo de tipografia." 345 | 346 | #: options-check/options.php:255 347 | msgid "Custom Typography" 348 | msgstr "Tipografia personalizada" 349 | 350 | #: options-check/options.php:256 351 | msgid "Custom typography options." 352 | msgstr "Opções de personalização de tipografia." 353 | 354 | #: options-check/options.php:263 355 | msgid "Text Editor" 356 | msgstr "Editor de Texto" 357 | 358 | #: options-check/options.php:281 359 | msgid "Default Text Editor" 360 | msgstr "Editor de Texto Padrão" 361 | 362 | #: options-check/options.php:282 363 | msgid "" 364 | "You can also pass settings to the editor. Read more about wp_editor in the WordPress codex" 366 | msgstr "" 367 | "Você também pode passar configurações para o editor. Leia mais sobre o " 368 | "wp_editor no codex do Wordpress" 369 | 370 | #: options-check/options.php:294 371 | msgid "Additional Text Editor" 372 | msgstr "Editor de Texto Adicional" 373 | 374 | #: options-check/options.php:295 375 | msgid "This editor includes media button." 376 | msgstr "Este editor inclui um botão de mídia." 377 | 378 | #: options-theme-customizer/options.php:101 379 | msgid "Basic" 380 | msgstr "Básico" 381 | 382 | #: options-theme-customizer/options.php:158 383 | msgid "Extended" 384 | msgstr "Extendido" 385 | 386 | #~ msgid "Options Framework Internal Container" 387 | #~ msgstr "Container Interno do Options Framework" 388 | 389 | #~ msgid "Gallery" 390 | #~ msgstr "Galeria" 391 | 392 | #~ msgid "Previously Uploaded" 393 | #~ msgstr "Enviado Anteriormente" 394 | -------------------------------------------------------------------------------- /languages/options-framework-pt_PT.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/languages/options-framework-pt_PT.mo -------------------------------------------------------------------------------- /languages/options-framework-pt_PT.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2013 2 | # This file is distributed under the same license as the package. 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: Options Framework Plugin em português\n" 6 | "Report-Msgid-Bugs-To: http://wordpress.org/tag/options-framework-plugin\n" 7 | "POT-Creation-Date: 2014-04-22 15:02:20+00:00\n" 8 | "PO-Revision-Date: 2014-04-22 18:54-0000\n" 9 | "Last-Translator: Pedro Mendonça \n" 10 | "Language-Team: Pedro Mendonça \n" 11 | "Language: pt_PT\n" 12 | "MIME-Version: 1.0\n" 13 | "Content-Type: text/plain; charset=UTF-8\n" 14 | "Content-Transfer-Encoding: 8bit\n" 15 | "X-Generator: Poedit 1.6.4\n" 16 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 17 | 18 | #: includes/class-options-framework-admin.php:64 19 | msgid "" 20 | "Your current theme does not have support for the Options Framework plugin. " 21 | "Learn More | Hide " 22 | "Notice" 23 | msgstr "" 24 | "O seu tema actual não suporta o plugin Options Framework. Saber Mais | Esconder notificação" 26 | 27 | #: includes/class-options-framework-admin.php:121 28 | #: includes/class-options-framework-admin.php:122 29 | #: includes/class-options-framework-admin.php:374 30 | msgid "Theme Options" 31 | msgstr "Opções do tema" 32 | 33 | #: includes/class-options-framework-admin.php:240 34 | msgid "Save Options" 35 | msgstr "Guardar opções" 36 | 37 | #: includes/class-options-framework-admin.php:241 38 | msgid "Restore Defaults" 39 | msgstr "Restaurar predefinições" 40 | 41 | #: includes/class-options-framework-admin.php:241 42 | msgid "Click OK to reset. Any theme settings will be lost!" 43 | msgstr "Clique em OK para restaurar. Todas as opções do tema serão perdidas!" 44 | 45 | #: includes/class-options-framework-admin.php:272 46 | msgid "Default options restored." 47 | msgstr "Opções predefinidas restauradas." 48 | 49 | #: includes/class-options-framework-admin.php:326 50 | msgid "Options saved." 51 | msgstr "Opções guardadas." 52 | 53 | #: includes/class-options-media-uploader.php:63 54 | msgid "No file chosen" 55 | msgstr "Nenhum ficheiro escolhido." 56 | 57 | #: includes/class-options-media-uploader.php:66 58 | #: includes/class-options-media-uploader.php:119 59 | msgid "Upload" 60 | msgstr "Carregar" 61 | 62 | #: includes/class-options-media-uploader.php:68 63 | #: includes/class-options-media-uploader.php:120 64 | msgid "Remove" 65 | msgstr "Remover" 66 | 67 | #: includes/class-options-media-uploader.php:71 68 | msgid "Upgrade your version of WordPress for full media support." 69 | msgstr "" 70 | "Actualize a sua versão do WordPress para suporte completo de multimédia." 71 | 72 | #: includes/class-options-media-uploader.php:95 73 | msgid "View File" 74 | msgstr "Ver ficheiro" 75 | 76 | #: includes/class-options-sanitization.php:241 77 | msgid "No Repeat" 78 | msgstr "Não repetir" 79 | 80 | #: includes/class-options-sanitization.php:242 81 | msgid "Repeat Horizontally" 82 | msgstr "Repetir horizontalmente" 83 | 84 | #: includes/class-options-sanitization.php:243 85 | msgid "Repeat Vertically" 86 | msgstr "Repetir verticalmente" 87 | 88 | #: includes/class-options-sanitization.php:244 89 | msgid "Repeat All" 90 | msgstr "Repetir todos" 91 | 92 | #: includes/class-options-sanitization.php:257 93 | msgid "Top Left" 94 | msgstr "Topo à esquerda" 95 | 96 | #: includes/class-options-sanitization.php:258 97 | msgid "Top Center" 98 | msgstr "Topo ao centro" 99 | 100 | #: includes/class-options-sanitization.php:259 101 | msgid "Top Right" 102 | msgstr "Topo à direita" 103 | 104 | #: includes/class-options-sanitization.php:260 105 | msgid "Middle Left" 106 | msgstr "Meio à esquerda" 107 | 108 | #: includes/class-options-sanitization.php:261 109 | msgid "Middle Center" 110 | msgstr "Meio ao centro" 111 | 112 | #: includes/class-options-sanitization.php:262 113 | msgid "Middle Right" 114 | msgstr "Meio à direita" 115 | 116 | #: includes/class-options-sanitization.php:263 117 | msgid "Bottom Left" 118 | msgstr "Fundo à esquerda" 119 | 120 | #: includes/class-options-sanitization.php:264 121 | msgid "Bottom Center" 122 | msgstr "Fundo ao centro" 123 | 124 | #: includes/class-options-sanitization.php:265 125 | msgid "Bottom Right" 126 | msgstr "Fundo à direita" 127 | 128 | #: includes/class-options-sanitization.php:278 129 | msgid "Scroll Normally" 130 | msgstr "Fluir normalmente" 131 | 132 | #: includes/class-options-sanitization.php:279 133 | msgid "Fixed in Place" 134 | msgstr "Fixo" 135 | 136 | #: includes/class-options-sanitization.php:353 137 | msgid "Normal" 138 | msgstr "Normal" 139 | 140 | #: includes/class-options-sanitization.php:354 141 | msgid "Italic" 142 | msgstr "Itálico" 143 | 144 | #: includes/class-options-sanitization.php:355 145 | msgid "Bold" 146 | msgstr "Negrito" 147 | 148 | #: includes/class-options-sanitization.php:356 149 | msgid "Bold Italic" 150 | msgstr "Itálico Negrito" 151 | 152 | #~ msgid "One" 153 | #~ msgstr "Um" 154 | 155 | #~ msgid "Two" 156 | #~ msgstr "Dois" 157 | 158 | #~ msgid "Three" 159 | #~ msgstr "Três" 160 | 161 | #~ msgid "Four" 162 | #~ msgstr "Quatro" 163 | 164 | #~ msgid "Five" 165 | #~ msgstr "Cinco" 166 | 167 | #~ msgid "French Toast" 168 | #~ msgstr "Tosta" 169 | 170 | #~ msgid "Pancake" 171 | #~ msgstr "Panqueca" 172 | 173 | #~ msgid "Omelette" 174 | #~ msgstr "Omolete" 175 | 176 | #~ msgid "Crepe" 177 | #~ msgstr "Crepe" 178 | 179 | #~ msgid "Waffle" 180 | #~ msgstr "Waffle" 181 | 182 | #~ msgid "Basic Settings" 183 | #~ msgstr "Definições básicas" 184 | 185 | #~ msgid "Input Text Mini" 186 | #~ msgstr "Campo de texto pequeno" 187 | 188 | #~ msgid "A mini text input field." 189 | #~ msgstr "Um pequeno campo de texto." 190 | 191 | #~ msgid "Input Text" 192 | #~ msgstr "Campo de texto" 193 | 194 | #~ msgid "A text input field." 195 | #~ msgstr "Um campo de texto." 196 | 197 | #~ msgid "Textarea" 198 | #~ msgstr "Área de Texto" 199 | 200 | #~ msgid "Textarea description." 201 | #~ msgstr "Descrição da área de texto." 202 | 203 | #~ msgid "Input Select Small" 204 | #~ msgstr "Campo de selecção pequeno" 205 | 206 | #~ msgid "Small Select Box." 207 | #~ msgstr "Caixa de selecção pequena." 208 | 209 | #~ msgid "Input Select Wide" 210 | #~ msgstr "Campo de selecção grande" 211 | 212 | #~ msgid "A wider select box." 213 | #~ msgstr "Caixa de selecção mais larga." 214 | 215 | #~ msgid "Select a Category" 216 | #~ msgstr "Seleccione uma categoria" 217 | 218 | #~ msgid "Passed an array of categories with cat_ID and cat_name" 219 | #~ msgstr "Passou uma série de categorias com cat_ID e cat_name" 220 | 221 | #~ msgid "Select a Tag" 222 | #~ msgstr "Seleccione uma etiqueta" 223 | 224 | #~ msgid "Passed an array of tags with term_id and term_name" 225 | #~ msgstr "Passou uma série de etiquetas com term_id e term_name" 226 | 227 | #~ msgid "Select a Page" 228 | #~ msgstr "Seleccione uma página" 229 | 230 | #~ msgid "Passed an array of pages with ID and post_title" 231 | #~ msgstr "Passou uma série de categorias com cat_ID e cat_name" 232 | 233 | #~ msgid "Input Radio (one)" 234 | #~ msgstr "Selector de opção" 235 | 236 | #~ msgid "Radio select with default options \"one\"." 237 | #~ msgstr "Selector de opção, seleccionado por omissão." 238 | 239 | #~ msgid "Example Info" 240 | #~ msgstr "Informação de exemplo" 241 | 242 | #~ msgid "This is just some example information you can put in the panel." 243 | #~ msgstr "Isto é apenas informação de exemplo que pode colocar no painel." 244 | 245 | #~ msgid "Input Checkbox" 246 | #~ msgstr "Caixa de verificação" 247 | 248 | #~ msgid "Example checkbox, defaults to true." 249 | #~ msgstr "Caixa de verificação de exemplo, seleccionada por omissão." 250 | 251 | #~ msgid "Advanced Settings" 252 | #~ msgstr "Definições avançadas" 253 | 254 | #~ msgid "Check to Show a Hidden Text Input" 255 | #~ msgstr "Seleccionar para mostrar um campo de texto escondido" 256 | 257 | #~ msgid "Click here and see what happens." 258 | #~ msgstr "Click aqui e veja o que acontece." 259 | 260 | #~ msgid "Hidden Text Input" 261 | #~ msgstr "Campo de texto escondido" 262 | 263 | #~ msgid "This option is hidden unless activated by a checkbox click." 264 | #~ msgstr "" 265 | #~ "Esta opção encontra-se escondida a não ser que seja activada por uma " 266 | #~ "caixa de verificação." 267 | 268 | #~ msgid "Uploader Test" 269 | #~ msgstr "Texte de carregamento" 270 | 271 | #~ msgid "This creates a full size uploader that previews the image." 272 | #~ msgstr "Isto cria um campo de carregamento com pré-visualização da imagem." 273 | 274 | #~ msgid "Example Background" 275 | #~ msgstr "Fundo de exemplo" 276 | 277 | #~ msgid "Change the background CSS." 278 | #~ msgstr "Modificar o CSS do fundo." 279 | 280 | #~ msgid "Multicheck" 281 | #~ msgstr "Multi-verificação" 282 | 283 | #~ msgid "Multicheck description." 284 | #~ msgstr "Descrição da multi-verificação." 285 | 286 | #~ msgid "Colorpicker" 287 | #~ msgstr "Selector de Cor" 288 | 289 | #~ msgid "No color selected by default." 290 | #~ msgstr "Sem cor seleccionada por defeito." 291 | 292 | #~ msgid "Typography" 293 | #~ msgstr "Tipografia" 294 | 295 | #~ msgid "Example typography." 296 | #~ msgstr "Exemplo de tipografia." 297 | 298 | #~ msgid "Custom Typography" 299 | #~ msgstr "Tipografia personalizada." 300 | 301 | #~ msgid "Custom typography options." 302 | #~ msgstr "Opções de tipografia personalizada." 303 | 304 | #~ msgid "Text Editor" 305 | #~ msgstr "Editor de texto" 306 | 307 | #~ msgid "Default Text Editor" 308 | #~ msgstr "Editor de texto padrão" 309 | 310 | #~ msgid "" 311 | #~ "You can also pass settings to the editor. Read more about wp_editor in " 312 | #~ "the WordPress codex" 313 | #~ msgstr "" 314 | #~ "Também é possível passar opções para o editor. Ler mais sobre wp_editor " 315 | #~ "no codex do WordPress" 316 | 317 | #~ msgid "Additional Text Editor" 318 | #~ msgstr "Editor de texto adicional" 319 | 320 | #~ msgid "This editor includes media button." 321 | #~ msgstr "Este editor inclui um botão de multimédia." 322 | 323 | #~ msgid "Basic" 324 | #~ msgstr "Básico" 325 | 326 | #~ msgid "Extended" 327 | #~ msgstr "Avançado" 328 | 329 | #~ msgid "Clear" 330 | #~ msgstr "Limpar" 331 | 332 | #~ msgid "Default" 333 | #~ msgstr "Padrão" 334 | 335 | #~ msgid "Select Color" 336 | #~ msgstr "Seleccionar Cor" 337 | -------------------------------------------------------------------------------- /languages/options-framework-ru_RU.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/languages/options-framework-ru_RU.mo -------------------------------------------------------------------------------- /languages/options-framework-ru_RU.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: Options Framework\n" 4 | "Report-Msgid-Bugs-To: \n" 5 | "POT-Creation-Date: 2012-04-22 15:51-0300\n" 6 | "PO-Revision-Date: 2012-12-07 21:40+0400\n" 7 | "Last-Translator: evgeny \n" 8 | "Language-Team: Evgeny Vlasov \n" 9 | "MIME-Version: 1.0\n" 10 | "Content-Type: text/plain; charset=UTF-8\n" 11 | "Content-Transfer-Encoding: 8bit\n" 12 | "X-Poedit-KeywordsList: _;gettext;gettext_noop;__;_e;esc_attr_e\n" 13 | "X-Poedit-Basepath: /Users/weslly/Desktop/options-framework-plugin\n" 14 | "X-Poedit-Language: Russian\n" 15 | "X-Poedit-Country: RUSSIAN FEDERATION\n" 16 | "X-Poedit-SearchPath-0: .\n" 17 | 18 | #: options-framework.php:71 19 | #, php-format 20 | msgid "Your current theme does not have support for the Options Framework plugin. Learn More | Hide Notice" 21 | msgstr "Ваша текущая тема не поддерживает плагин Options Framework. Подробности | Скрыть уведомление" 22 | 23 | #: options-framework.php:254 24 | #: options-framework.php:456 25 | msgid "Theme Options" 26 | msgstr "Настройки темы" 27 | 28 | #: options-framework.php:323 29 | msgid "Save Options" 30 | msgstr "Сохранить настройки" 31 | 32 | #: options-framework.php:324 33 | msgid "Restore Defaults" 34 | msgstr "Восстановить значения по умолчанию" 35 | 36 | #: options-framework.php:324 37 | msgid "Click OK to reset. Any theme settings will be lost!" 38 | msgstr "Нажмите ОК для сброса настроек. Произведнные ранее настройки темы будут удалены." 39 | 40 | #: options-framework.php:358 41 | msgid "Default options restored." 42 | msgstr "Значения по умолчанию восстановлены." 43 | 44 | #: options-framework.php:400 45 | msgid "Options saved." 46 | msgstr "Настройки сохранены." 47 | 48 | #: options-medialibrary-uploader.php:26 49 | msgid "Options Framework Internal Container" 50 | msgstr "Внутренний контейнер Options Framework" 51 | 52 | #: options-medialibrary-uploader.php:128 53 | msgid "Upload" 54 | msgstr "Обзор" 55 | 56 | #: options-medialibrary-uploader.php:151 57 | msgid "View File" 58 | msgstr "Просмотреть файл" 59 | 60 | #: options-medialibrary-uploader.php:288 61 | msgid "Gallery" 62 | msgstr "Галерея" 63 | 64 | #: options-medialibrary-uploader.php:288 65 | msgid "Previously Uploaded" 66 | msgstr "Ранее загруженный" 67 | 68 | #: options-sanitize.php:232 69 | msgid "No Repeat" 70 | msgstr "Без повтора" 71 | 72 | #: options-sanitize.php:233 73 | msgid "Repeat Horizontally" 74 | msgstr "Повторить по горизонтали" 75 | 76 | #: options-sanitize.php:234 77 | msgid "Repeat Vertically" 78 | msgstr "Повторить по вертикали" 79 | 80 | #: options-sanitize.php:235 81 | msgid "Repeat All" 82 | msgstr "Повторить во всех направлениях" 83 | 84 | #: options-sanitize.php:248 85 | msgid "Top Left" 86 | msgstr "Сверху слева" 87 | 88 | #: options-sanitize.php:249 89 | msgid "Top Center" 90 | msgstr "Сверху по центру" 91 | 92 | #: options-sanitize.php:250 93 | msgid "Top Right" 94 | msgstr "Сверху справа" 95 | 96 | #: options-sanitize.php:251 97 | msgid "Middle Left" 98 | msgstr "По центру слева" 99 | 100 | #: options-sanitize.php:252 101 | msgid "Middle Center" 102 | msgstr "Центровать по горизонтали и вертикали" 103 | 104 | #: options-sanitize.php:253 105 | msgid "Middle Right" 106 | msgstr "По центру справа" 107 | 108 | #: options-sanitize.php:254 109 | msgid "Bottom Left" 110 | msgstr "Снизу слева" 111 | 112 | #: options-sanitize.php:255 113 | msgid "Bottom Center" 114 | msgstr "Снизу по центру" 115 | 116 | #: options-sanitize.php:256 117 | msgid "Bottom Right" 118 | msgstr "Снизу справа" 119 | 120 | #: options-sanitize.php:269 121 | msgid "Scroll Normally" 122 | msgstr "Обычное поведение" 123 | 124 | #: options-sanitize.php:270 125 | msgid "Fixed in Place" 126 | msgstr "Фиксировать фон" 127 | 128 | #: options-sanitize.php:344 129 | msgid "Normal" 130 | msgstr "Нормальный" 131 | 132 | #: options-sanitize.php:345 133 | msgid "Italic" 134 | msgstr "Курсив" 135 | 136 | #: options-sanitize.php:346 137 | msgid "Bold" 138 | msgstr "Полужирный" 139 | 140 | #: options-sanitize.php:347 141 | msgid "Bold Italic" 142 | msgstr "Полужирный курсив" 143 | 144 | -------------------------------------------------------------------------------- /languages/options-framework-sv_SE.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/languages/options-framework-sv_SE.mo -------------------------------------------------------------------------------- /languages/options-framework-sv_SE.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: Options Framework 1.4\n" 4 | "Report-Msgid-Bugs-To: \n" 5 | "POT-Creation-Date: 2012-04-22 15:51-0300\n" 6 | "PO-Revision-Date: 2012-12-20 08:33+0100\n" 7 | "Last-Translator: Kjeell.se \n" 8 | "Language-Team: Kjeell.se \n" 9 | "MIME-Version: 1.0\n" 10 | "Content-Type: text/plain; charset=UTF-8\n" 11 | "Content-Transfer-Encoding: 8bit\n" 12 | "X-Generator: Poedit 1.5.4\n" 13 | "X-Poedit-KeywordsList: _;gettext;gettext_noop\n" 14 | "X-Poedit-Basepath: .\n" 15 | "Language: sv_SE\n" 16 | 17 | #: options-framework.php:71 18 | #, php-format 19 | msgid "" 20 | "Your current theme does not have support for the Options Framework plugin. " 21 | "Learn More | Hide " 22 | "Notice" 23 | msgstr "" 24 | "Ditt nuvarande tema stödjer inte Options Framework Plugin. Mer information | Dölj meddelande" 26 | 27 | #: options-framework.php:254 options-framework.php:456 28 | msgid "Theme Options" 29 | msgstr "Tema inställningar" 30 | 31 | #: options-framework.php:323 32 | msgid "Save Options" 33 | msgstr "Spara Inställningar" 34 | 35 | #: options-framework.php:324 36 | msgid "Restore Defaults" 37 | msgstr "Återställ standardinställningar" 38 | 39 | #: options-framework.php:324 40 | msgid "Click OK to reset. Any theme settings will be lost!" 41 | msgstr "" 42 | "Klicka OK för att återställa. Alla temainställningar kommer att gå förlorade!" 43 | 44 | #: options-framework.php:358 45 | msgid "Default options restored." 46 | msgstr "Standardinställningar återställda." 47 | 48 | #: options-framework.php:400 49 | msgid "Options saved." 50 | msgstr "Inställningar sparade." 51 | 52 | #: options-medialibrary-uploader.php:26 53 | msgid "Options Framework Internal Container" 54 | msgstr "Options Framework internt" 55 | 56 | #: options-medialibrary-uploader.php:128 57 | msgid "Upload" 58 | msgstr "Ladda upp" 59 | 60 | #: options-medialibrary-uploader.php:151 61 | msgid "View File" 62 | msgstr "Visa fil" 63 | 64 | #: options-medialibrary-uploader.php:288 65 | msgid "Gallery" 66 | msgstr "Galleri" 67 | 68 | #: options-medialibrary-uploader.php:288 69 | msgid "Previously Uploaded" 70 | msgstr "Tidigare uppladdad" 71 | 72 | #: options-sanitize.php:232 73 | msgid "No Repeat" 74 | msgstr "Upprepa inte" 75 | 76 | #: options-sanitize.php:233 77 | msgid "Repeat Horizontally" 78 | msgstr "Upprepa horizontalt" 79 | 80 | #: options-sanitize.php:234 81 | msgid "Repeat Vertically" 82 | msgstr "Upprepa vertikalt" 83 | 84 | #: options-sanitize.php:235 85 | msgid "Repeat All" 86 | msgstr "Upprepa alla" 87 | 88 | #: options-sanitize.php:248 89 | msgid "Top Left" 90 | msgstr "Vänster topp" 91 | 92 | #: options-sanitize.php:249 93 | msgid "Top Center" 94 | msgstr "Centrerat topp" 95 | 96 | #: options-sanitize.php:250 97 | msgid "Top Right" 98 | msgstr "Höger topp" 99 | 100 | #: options-sanitize.php:251 101 | msgid "Middle Left" 102 | msgstr "Vänster Mitt" 103 | 104 | #: options-sanitize.php:252 105 | msgid "Middle Center" 106 | msgstr "Centrerat Mitt" 107 | 108 | #: options-sanitize.php:253 109 | msgid "Middle Right" 110 | msgstr "Höger Mitt" 111 | 112 | #: options-sanitize.php:254 113 | msgid "Bottom Left" 114 | msgstr "Vänster nederkant" 115 | 116 | #: options-sanitize.php:255 117 | msgid "Bottom Center" 118 | msgstr "Centrerad nederkant" 119 | 120 | #: options-sanitize.php:256 121 | msgid "Bottom Right" 122 | msgstr "Höger nederkant" 123 | 124 | #: options-sanitize.php:269 125 | msgid "Scroll Normally" 126 | msgstr "Scrolla normalt" 127 | 128 | #: options-sanitize.php:270 129 | msgid "Fixed in Place" 130 | msgstr "Fixerad placering" 131 | 132 | #: options-sanitize.php:344 133 | msgid "Normal" 134 | msgstr "Normal" 135 | 136 | #: options-sanitize.php:345 137 | msgid "Italic" 138 | msgstr "Kursiv" 139 | 140 | #: options-sanitize.php:346 141 | msgid "Bold" 142 | msgstr "Fet" 143 | 144 | #: options-sanitize.php:347 145 | msgid "Bold Italic" 146 | msgstr "Fet Kursiv" 147 | -------------------------------------------------------------------------------- /languages/options-framework-zh_CN.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/languages/options-framework-zh_CN.mo -------------------------------------------------------------------------------- /languages/options-framework-zh_CN.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: \n" 4 | "Report-Msgid-Bugs-To: \n" 5 | "POT-Creation-Date: 2012-04-22 15:51-0300\n" 6 | "PO-Revision-Date: 2013-05-11 21:40+0800\n" 7 | "Last-Translator: Amos Lee <470266798@qq.com>\n" 8 | "Language-Team: \n" 9 | "MIME-Version: 1.0\n" 10 | "Content-Type: text/plain; charset=UTF-8\n" 11 | "Content-Transfer-Encoding: 8bit\n" 12 | "X-Poedit-KeywordsList: _;gettext;gettext_noop;__;_e;esc_attr_e\n" 13 | "X-Poedit-Basepath: /Users/weslly/Desktop/options-framework-plugin\n" 14 | "X-Generator: Poedit 1.5.5\n" 15 | "X-Poedit-SearchPath-0: .\n" 16 | 17 | #: options-framework.php:71 18 | #, php-format 19 | msgid "" 20 | "Your current theme does not have support for the Options Framework plugin. " 21 | "Learn More | Hide " 22 | "Notice" 23 | msgstr "" 24 | "您当前的主题不支持选项框架插件。 了解更多" 25 | " | 隐藏通知" 26 | 27 | #: options-framework.php:254 options-framework.php:456 28 | msgid "Theme Options" 29 | msgstr "主题选项" 30 | 31 | #: options-framework.php:323 32 | msgid "Save Options" 33 | msgstr "保存选项" 34 | 35 | #: options-framework.php:324 36 | msgid "Restore Defaults" 37 | msgstr "重置选项" 38 | 39 | #: options-framework.php:324 40 | msgid "Click OK to reset. Any theme settings will be lost!" 41 | msgstr "点击OK重置,所有主题设置将丢失!" 42 | 43 | #: options-framework.php:358 44 | msgid "Default options restored." 45 | msgstr "默认选项已恢复。" 46 | 47 | #: options-framework.php:400 48 | msgid "Options saved." 49 | msgstr "选项已保存。" 50 | 51 | #: options-medialibrary-uploader.php:26 52 | msgid "Options Framework Internal Container" 53 | msgstr "选项框架内部包装" 54 | 55 | #: options-medialibrary-uploader.php:128 56 | msgid "Upload" 57 | msgstr "上传" 58 | 59 | #: options-medialibrary-uploader.php:151 60 | msgid "View File" 61 | msgstr "查看文件" 62 | 63 | #: options-medialibrary-uploader.php:288 64 | msgid "Gallery" 65 | msgstr "相册" 66 | 67 | #: options-medialibrary-uploader.php:288 68 | msgid "Previously Uploaded" 69 | msgstr "先前上传" 70 | 71 | #: options-sanitize.php:232 72 | msgid "No Repeat" 73 | msgstr "不重复" 74 | 75 | #: options-sanitize.php:233 76 | msgid "Repeat Horizontally" 77 | msgstr "垂直重复" 78 | 79 | #: options-sanitize.php:234 80 | msgid "Repeat Vertically" 81 | msgstr "水平重复" 82 | 83 | #: options-sanitize.php:235 84 | msgid "Repeat All" 85 | msgstr "全部重复" 86 | 87 | #: options-sanitize.php:248 88 | msgid "Top Left" 89 | msgstr "上左" 90 | 91 | #: options-sanitize.php:249 92 | msgid "Top Center" 93 | msgstr "上中" 94 | 95 | #: options-sanitize.php:250 96 | msgid "Top Right" 97 | msgstr "上右" 98 | 99 | #: options-sanitize.php:251 100 | msgid "Middle Left" 101 | msgstr "中左" 102 | 103 | #: options-sanitize.php:252 104 | msgid "Middle Center" 105 | msgstr "中中" 106 | 107 | #: options-sanitize.php:253 108 | msgid "Middle Right" 109 | msgstr "中右" 110 | 111 | #: options-sanitize.php:254 112 | msgid "Bottom Left" 113 | msgstr "下左" 114 | 115 | #: options-sanitize.php:255 116 | msgid "Bottom Center" 117 | msgstr "下中" 118 | 119 | #: options-sanitize.php:256 120 | msgid "Bottom Right" 121 | msgstr "下右" 122 | 123 | #: options-sanitize.php:269 124 | msgid "Scroll Normally" 125 | msgstr "普通滚动" 126 | 127 | #: options-sanitize.php:270 128 | msgid "Fixed in Place" 129 | msgstr "固定位置" 130 | 131 | #: options-sanitize.php:344 132 | msgid "Normal" 133 | msgstr "普通" 134 | 135 | #: options-sanitize.php:345 136 | msgid "Italic" 137 | msgstr "斜体" 138 | 139 | #: options-sanitize.php:346 140 | msgid "Bold" 141 | msgstr "加粗" 142 | 143 | #: options-sanitize.php:347 144 | msgid "Bold Italic" 145 | msgstr "加粗斜体" 146 | -------------------------------------------------------------------------------- /languages/options-framework.pot: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2014 2 | # This file is distributed under the same license as the package. 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: \n" 6 | "Report-Msgid-Bugs-To: https://github.com/devinsays/options-framework-plugin\n" 7 | "POT-Creation-Date: 2014-05-07 20:06:42+00:00\n" 8 | "MIME-Version: 1.0\n" 9 | "Content-Type: text/plain; charset=UTF-8\n" 10 | "Content-Transfer-Encoding: 8bit\n" 11 | "PO-Revision-Date: 2014-MO-DA HO:MI+ZONE\n" 12 | "Last-Translator: FULL NAME \n" 13 | "Language-Team: LANGUAGE \n" 14 | 15 | #: includes/class-options-framework-admin.php:64 16 | msgid "Your current theme does not have support for the Options Framework plugin. Learn More | Hide Notice" 17 | msgstr "" 18 | 19 | #: includes/class-options-framework-admin.php:121 20 | #: includes/class-options-framework-admin.php:122 21 | msgid "Theme Options" 22 | msgstr "" 23 | 24 | #: includes/class-options-framework-admin.php:240 25 | msgid "Save Options" 26 | msgstr "" 27 | 28 | #: includes/class-options-framework-admin.php:241 29 | msgid "Restore Defaults" 30 | msgstr "" 31 | 32 | #: includes/class-options-framework-admin.php:241 33 | msgid "Click OK to reset. Any theme settings will be lost!" 34 | msgstr "" 35 | 36 | #: includes/class-options-framework-admin.php:272 37 | msgid "Default options restored." 38 | msgstr "" 39 | 40 | #: includes/class-options-framework-admin.php:326 41 | msgid "Options saved." 42 | msgstr "" 43 | 44 | #: includes/class-options-media-uploader.php:63 45 | msgid "No file chosen" 46 | msgstr "" 47 | 48 | #: includes/class-options-media-uploader.php:66 49 | #: includes/class-options-media-uploader.php:119 50 | msgid "Upload" 51 | msgstr "" 52 | 53 | #: includes/class-options-media-uploader.php:68 54 | #: includes/class-options-media-uploader.php:120 55 | msgid "Remove" 56 | msgstr "" 57 | 58 | #: includes/class-options-media-uploader.php:71 59 | msgid "Upgrade your version of WordPress for full media support." 60 | msgstr "" 61 | 62 | #: includes/class-options-media-uploader.php:95 63 | msgid "View File" 64 | msgstr "" 65 | 66 | #: includes/class-options-sanitization.php:241 67 | msgid "No Repeat" 68 | msgstr "" 69 | 70 | #: includes/class-options-sanitization.php:242 71 | msgid "Repeat Horizontally" 72 | msgstr "" 73 | 74 | #: includes/class-options-sanitization.php:243 75 | msgid "Repeat Vertically" 76 | msgstr "" 77 | 78 | #: includes/class-options-sanitization.php:244 79 | msgid "Repeat All" 80 | msgstr "" 81 | 82 | #: includes/class-options-sanitization.php:257 83 | msgid "Top Left" 84 | msgstr "" 85 | 86 | #: includes/class-options-sanitization.php:258 87 | msgid "Top Center" 88 | msgstr "" 89 | 90 | #: includes/class-options-sanitization.php:259 91 | msgid "Top Right" 92 | msgstr "" 93 | 94 | #: includes/class-options-sanitization.php:260 95 | msgid "Middle Left" 96 | msgstr "" 97 | 98 | #: includes/class-options-sanitization.php:261 99 | msgid "Middle Center" 100 | msgstr "" 101 | 102 | #: includes/class-options-sanitization.php:262 103 | msgid "Middle Right" 104 | msgstr "" 105 | 106 | #: includes/class-options-sanitization.php:263 107 | msgid "Bottom Left" 108 | msgstr "" 109 | 110 | #: includes/class-options-sanitization.php:264 111 | msgid "Bottom Center" 112 | msgstr "" 113 | 114 | #: includes/class-options-sanitization.php:265 115 | msgid "Bottom Right" 116 | msgstr "" 117 | 118 | #: includes/class-options-sanitization.php:278 119 | msgid "Scroll Normally" 120 | msgstr "" 121 | 122 | #: includes/class-options-sanitization.php:279 123 | msgid "Fixed in Place" 124 | msgstr "" 125 | 126 | #: includes/class-options-sanitization.php:353 127 | msgid "Normal" 128 | msgstr "" 129 | 130 | #: includes/class-options-sanitization.php:354 131 | msgid "Italic" 132 | msgstr "" 133 | 134 | #: includes/class-options-sanitization.php:355 135 | msgid "Bold" 136 | msgstr "" 137 | 138 | #: includes/class-options-sanitization.php:356 139 | msgid "Bold Italic" 140 | msgstr "" -------------------------------------------------------------------------------- /options-check/footer.php: -------------------------------------------------------------------------------- 1 | 12 | 13 |
14 | 15 | 17 | * tag of your theme, or you will break many plugins, which 18 | * generally use this hook to reference JavaScript files. 19 | */ 20 | 21 | wp_footer(); 22 | ?> 23 | 24 | 25 | -------------------------------------------------------------------------------- /options-check/functions.php: -------------------------------------------------------------------------------- 1 | 37 | 38 | 51 | 52 | 9 | > 10 | 11 | 12 | Options Check 13 | 14 | 15 | 16 | 17 | > 18 | 19 |
-------------------------------------------------------------------------------- /options-check/images/1col.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/options-check/images/1col.png -------------------------------------------------------------------------------- /options-check/images/2cl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/options-check/images/2cl.png -------------------------------------------------------------------------------- /options-check/images/2cr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/options-check/images/2cr.png -------------------------------------------------------------------------------- /options-check/index.php: -------------------------------------------------------------------------------- 1 | 12 | 13 |
14 | 15 |
16 |

Options Check

17 |

Use of_get_option($id,$default) to return option values.

18 |
19 | 20 |
21 | 22 |

Basic Options

23 | 24 |
25 |
type: text (mini)
26 |
of_get_option('example_text_mini'):
27 |
28 | 29 |
30 |
type: text
31 |
of_get_option('example_text'):
32 |
33 | 34 |
35 |
type: textarea
36 |
of_get_option('example_textarea'):
37 |
38 | 39 |
40 |
type: select (mini)
41 |
of_get_option('example_select'):
42 |
43 | 44 |
45 |
type: select2 (wide)
46 |
of_get_option('example_select_wide'):
47 |
48 | 49 |
50 |
type: select
51 |
of_get_option('example_select_categories'): category id =
52 |
53 | 54 |
55 |
type: select
56 |
of_get_option('example_select_tags'): term id =
57 |
58 | 59 |
60 |
type: select
61 |
of_get_option('example_select_pages'): page id =
62 |
63 | 64 |
65 |
type: radio
66 |
of_get_option('example_radio'):
67 |
68 | 69 |
70 |
type: checkbox
71 |
of_get_option('example_checkbox'):
72 |
73 | 74 |
75 | 76 |

Advanced Options

77 | 78 |
79 |
type: uploader
80 |
of_get_option('example_uploader'):
81 | 82 | 83 | 84 |
85 | 86 |
87 |
type: image
88 |
of_get_option('images'):
89 |
90 | 91 |
92 |
type: multicheck
93 |
of_get_option('multicheck'): 94 | 95 | 96 |
97 |
98 | 99 |

The array sent in the options panel was defined as:
100 | "French Toast","two" => "Pancake","three" => "Omelette","four" => "Crepe","five" => "Waffle"); 102 | print_r($test_array_jr); 103 | ?> 104 |

105 | 106 |

You can get the value of all items in the checkbox array:

107 |
    108 | $value) { 111 | // If you need the option's name rather than the key you can get that 112 | $name = $test_array_jr[$key]; 113 | // Prints out each of the values 114 | echo '
  • ' . $key . ' (' . $name . ') = ' . $value . '
  • '; 115 | } 116 | } 117 | else { 118 | echo '
  • There are no saved values yet.
  • '; 119 | } 120 | ?> 121 |
122 | 123 |

You can also get an individual checkbox value if you know what you are looking for. In this example, I'll check for the key "one", which is an item I sent in the array for checkboxes:

124 | 125 |

The value of the multicheck box "one" of example_multicheck is: 126 | 127 | 134 | 135 |

136 | 137 |
138 |
type: background
139 |
of_get_option('background'): 140 | '; 144 | echo '
    '; 145 | foreach ($background as $i=>$param){ 146 | echo '
  • '.$i . ' = ' . $param.'
  • '; 147 | } 148 | echo '
'; 149 | } else { 150 | echo ''; 151 | echo '
    '; 152 | echo '
  • '.$background['color'].'
  • '; 153 | echo '
'; 154 | } 155 | } else { 156 | echo "no entry"; 157 | }; ?> 158 | 159 |
160 |
161 | 162 |
163 |
type: colorpicker
164 |
of_get_option('colorpicker'): 165 | 166 | 167 | 168 |
169 |
170 | 171 |
172 |
type: typography
173 |
of_get_option('typography'): 174 | '; 177 | foreach ($typography as $i=>$param) { 178 | echo '
  • '.$i . ' = ' . $param.'
  • '; 179 | } 180 | echo ''; 181 | echo 'Some sample text in your style'; 182 | } else { 183 | echo "no entry"; 184 | } ?> 185 |
    186 |
    187 | 188 |
    189 | 190 |

    Editor

    191 | 192 |
    193 |
    type: editor
    194 |
    of_get_option('example_editor'):
    195 | 196 |
    197 |
    198 | 199 |
    200 |
    201 | 202 | -------------------------------------------------------------------------------- /options-check/options.php: -------------------------------------------------------------------------------- 1 | __('One', 'options_check'), 33 | 'two' => __('Two', 'options_check'), 34 | 'three' => __('Three', 'options_check'), 35 | 'four' => __('Four', 'options_check'), 36 | 'five' => __('Five', 'options_check') 37 | ); 38 | 39 | // Multicheck Array 40 | $multicheck_array = array( 41 | 'one' => __('French Toast', 'options_check'), 42 | 'two' => __('Pancake', 'options_check'), 43 | 'three' => __('Omelette', 'options_check'), 44 | 'four' => __('Crepe', 'options_check'), 45 | 'five' => __('Waffle', 'options_check') 46 | ); 47 | 48 | // Multicheck Defaults 49 | $multicheck_defaults = array( 50 | 'one' => '1', 51 | 'five' => '1' 52 | ); 53 | 54 | // Background Defaults 55 | $background_defaults = array( 56 | 'color' => '', 57 | 'image' => '', 58 | 'repeat' => 'repeat', 59 | 'position' => 'top center', 60 | 'attachment'=>'scroll' ); 61 | 62 | // Typography Defaults 63 | $typography_defaults = array( 64 | 'size' => '15px', 65 | 'face' => 'georgia', 66 | 'style' => 'bold', 67 | 'color' => '#bada55' ); 68 | 69 | // Typography Options 70 | $typography_options = array( 71 | 'sizes' => array( '12','14','16','20' ), 72 | 'faces' => array( 'Helvetica Neue' => 'Helvetica Neue', 'georgia' => 'Georgia' ), 73 | 'styles' => array( 'normal' => 'Normal','bold' => 'Bold' ), 74 | 'color' => false 75 | ); 76 | 77 | // Pull all the categories into an array 78 | $options_categories = array(); 79 | $options_categories_obj = get_categories(); 80 | foreach ($options_categories_obj as $category) { 81 | $options_categories[$category->cat_ID] = $category->cat_name; 82 | } 83 | 84 | // Pull all tags into an array 85 | $options_tags = array(); 86 | $options_tags_obj = get_tags(); 87 | foreach ( $options_tags_obj as $tag ) { 88 | $options_tags[$tag->term_id] = $tag->name; 89 | } 90 | 91 | // Pull all the pages into an array 92 | $options_pages = array(); 93 | $options_pages_obj = get_pages('sort_column=post_parent,menu_order'); 94 | $options_pages[''] = 'Select a page:'; 95 | foreach ($options_pages_obj as $page) { 96 | $options_pages[$page->ID] = $page->post_title; 97 | } 98 | 99 | // If using image radio buttons, define a directory path 100 | $imagepath = get_template_directory_uri() . '/images/'; 101 | 102 | $options = array(); 103 | 104 | $options[] = array( 105 | 'name' => __('Basic Settings', 'options_check'), 106 | 'type' => 'heading'); 107 | 108 | $options[] = array( 109 | 'name' => __('Input Text Mini', 'options_check'), 110 | 'desc' => __('A mini text input field.', 'options_check'), 111 | 'id' => 'example_text_mini', 112 | 'std' => 'Default', 113 | 'class' => 'mini', 114 | 'type' => 'text'); 115 | 116 | $options[] = array( 117 | 'name' => __('Input Text', 'options_check'), 118 | 'desc' => __('A text input field.', 'options_check'), 119 | 'id' => 'example_text', 120 | 'std' => 'Default Value', 121 | 'type' => 'text'); 122 | 123 | $options[] = array( 124 | 'name' => __('Textarea', 'options_check'), 125 | 'desc' => __('Textarea description.', 'options_check'), 126 | 'id' => 'example_textarea', 127 | 'std' => 'Default Text', 128 | 'type' => 'textarea'); 129 | 130 | $options[] = array( 131 | 'name' => __('Input Select Small', 'options_check'), 132 | 'desc' => __('Small Select Box.', 'options_check'), 133 | 'id' => 'example_select', 134 | 'std' => 'three', 135 | 'type' => 'select', 136 | 'class' => 'mini', //mini, tiny, small 137 | 'options' => $test_array); 138 | 139 | $options[] = array( 140 | 'name' => __('Input Select Wide', 'options_check'), 141 | 'desc' => __('A wider select box.', 'options_check'), 142 | 'id' => 'example_select_wide', 143 | 'std' => 'two', 144 | 'type' => 'select', 145 | 'options' => $test_array); 146 | 147 | $options[] = array( 148 | 'name' => __('Select a Category', 'options_check'), 149 | 'desc' => __('Passed an array of categories with cat_ID and cat_name', 'options_check'), 150 | 'id' => 'example_select_categories', 151 | 'type' => 'select', 152 | 'options' => $options_categories); 153 | 154 | if ( $options_tags ) { 155 | $options[] = array( 156 | 'name' => __('Select a Tag', 'options_check'), 157 | 'desc' => __('Passed an array of tags with term_id and term_name', 'options_check'), 158 | 'id' => 'example_select_tags', 159 | 'type' => 'select', 160 | 'options' => $options_tags); 161 | } 162 | 163 | $options[] = array( 164 | 'name' => __('Select a Page', 'options_check'), 165 | 'desc' => __('Passed an array of pages with ID and post_title', 'options_check'), 166 | 'id' => 'example_select_pages', 167 | 'type' => 'select', 168 | 'options' => $options_pages); 169 | 170 | $options[] = array( 171 | 'name' => __('Input Radio (one)', 'options_check'), 172 | 'desc' => __('Radio select with default options "one".', 'options_check'), 173 | 'id' => 'example_radio', 174 | 'std' => 'one', 175 | 'type' => 'radio', 176 | 'options' => $test_array); 177 | 178 | $options[] = array( 179 | 'name' => __('Example Info', 'options_check'), 180 | 'desc' => __('This is just some example information you can put in the panel.', 'options_check'), 181 | 'type' => 'info'); 182 | 183 | $options[] = array( 184 | 'name' => __('Input Checkbox', 'options_check'), 185 | 'desc' => __('Example checkbox, defaults to true.', 'options_check'), 186 | 'id' => 'example_checkbox', 187 | 'std' => '1', 188 | 'type' => 'checkbox'); 189 | 190 | $options[] = array( 191 | 'name' => __('Advanced Settings', 'options_check'), 192 | 'type' => 'heading'); 193 | 194 | $options[] = array( 195 | 'name' => __('Check to Show a Hidden Text Input', 'options_check'), 196 | 'desc' => __('Click here and see what happens.', 'options_check'), 197 | 'id' => 'example_showhidden', 198 | 'type' => 'checkbox'); 199 | 200 | $options[] = array( 201 | 'name' => __('Hidden Text Input', 'options_check'), 202 | 'desc' => __('This option is hidden unless activated by a checkbox click.', 'options_check'), 203 | 'id' => 'example_text_hidden', 204 | 'std' => 'Hello', 205 | 'class' => 'hidden', 206 | 'type' => 'text'); 207 | 208 | $options[] = array( 209 | 'name' => __('Uploader Test', 'options_check'), 210 | 'desc' => __('This creates a full size uploader that previews the image.', 'options_check'), 211 | 'id' => 'example_uploader', 212 | 'type' => 'upload'); 213 | 214 | $options[] = array( 215 | 'name' => "Example Image Selector", 216 | 'desc' => "Images for layout.", 217 | 'id' => "example_images", 218 | 'std' => "2c-l-fixed", 219 | 'type' => "images", 220 | 'options' => array( 221 | '1col-fixed' => $imagepath . '1col.png', 222 | '2c-l-fixed' => $imagepath . '2cl.png', 223 | '2c-r-fixed' => $imagepath . '2cr.png') 224 | ); 225 | 226 | $options[] = array( 227 | 'name' => __('Example Background', 'options_check'), 228 | 'desc' => __('Change the background CSS.', 'options_check'), 229 | 'id' => 'example_background', 230 | 'std' => $background_defaults, 231 | 'type' => 'background' ); 232 | 233 | $options[] = array( 234 | 'name' => __('Multicheck', 'options_check'), 235 | 'desc' => __('Multicheck description.', 'options_check'), 236 | 'id' => 'example_multicheck', 237 | 'std' => $multicheck_defaults, // These items get checked by default 238 | 'type' => 'multicheck', 239 | 'options' => $multicheck_array); 240 | 241 | $options[] = array( 242 | 'name' => __('Colorpicker', 'options_check'), 243 | 'desc' => __('No color selected by default.', 'options_check'), 244 | 'id' => 'example_colorpicker', 245 | 'std' => '', 246 | 'type' => 'color' ); 247 | 248 | $options[] = array( 'name' => __('Typography', 'options_check'), 249 | 'desc' => __('Example typography.', 'options_check'), 250 | 'id' => "example_typography", 251 | 'std' => $typography_defaults, 252 | 'type' => 'typography' ); 253 | 254 | $options[] = array( 255 | 'name' => __('Custom Typography', 'options_check'), 256 | 'desc' => __('Custom typography options.', 'options_check'), 257 | 'id' => "custom_typography", 258 | 'std' => $typography_defaults, 259 | 'type' => 'typography', 260 | 'options' => $typography_options ); 261 | 262 | $options[] = array( 263 | 'name' => __('Text Editor', 'options_check'), 264 | 'type' => 'heading' ); 265 | 266 | /** 267 | * For $settings options see: 268 | * http://codex.wordpress.org/Function_Reference/wp_editor 269 | * 270 | * 'media_buttons' are not supported as there is no post to attach items to 271 | * 'textarea_name' is set by the 'id' you choose 272 | */ 273 | 274 | $wp_editor_settings = array( 275 | 'wpautop' => true, // Default 276 | 'textarea_rows' => 5, 277 | 'tinymce' => array( 'plugins' => 'wordpress,wplink' ) 278 | ); 279 | 280 | $options[] = array( 281 | 'name' => __('Default Text Editor', 'options_check'), 282 | 'desc' => sprintf( __( 'You can also pass settings to the editor. Read more about wp_editor in the WordPress codex', 'options_check' ), 'http://codex.wordpress.org/Function_Reference/wp_editor' ), 283 | 'id' => 'example_editor', 284 | 'type' => 'editor', 285 | 'settings' => $wp_editor_settings ); 286 | 287 | $wp_editor_settings = array( 288 | 'wpautop' => true, // Default 289 | 'textarea_rows' => 5, 290 | 'media_buttons' => true 291 | ); 292 | 293 | $options[] = array( 294 | 'name' => __('Additional Text Editor', 'options_check'), 295 | 'desc' => sprintf( __( 'This editor includes media button.', 'options_check' ), 'http://codex.wordpress.org/Function_Reference/wp_editor' ), 296 | 'id' => 'example_editor_media', 297 | 'type' => 'editor', 298 | 'settings' => $wp_editor_settings ); 299 | 300 | return $options; 301 | } 302 | -------------------------------------------------------------------------------- /options-check/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/options-check/screenshot.png -------------------------------------------------------------------------------- /options-check/style.css: -------------------------------------------------------------------------------- 1 | /* 2 | Theme Name: Options Check 3 | Theme URI: http://wptheming.com 4 | Description: A example/test theme to make sure all the options work in the Options Framework plugin. 5 | Author: Devin Price 6 | Author URI: http://wptheming.com 7 | Version: 1.7 8 | */ 9 | 10 | body { 11 | background:#eee; 12 | } 13 | 14 | body, input, textarea { 15 | color: #373737; 16 | font: 15px "Helvetica Neue", Helvetica, Arial, sans-serif; 17 | font-weight: 300; 18 | line-height: 1.625; 19 | } 20 | 21 | p { 22 | margin:0 0 10px 0; 23 | } 24 | 25 | h1, h2, h3 { 26 | margin:0 0 10px 0; 27 | } 28 | 29 | #page { 30 | background:#fff; 31 | min-width:440px; 32 | max-width:740px; 33 | width:60%; 34 | margin:20px auto; 35 | } 36 | 37 | header { 38 | background:#dedede; 39 | padding:30px 40px; 40 | } 41 | 42 | .entry-content { 43 | padding:20px 40px; 44 | } -------------------------------------------------------------------------------- /options-framework.php: -------------------------------------------------------------------------------- 1 | 7 | * @license GPL-2.0+ 8 | * @link http://wptheming.com 9 | * @copyright 2010-2016 WP Theming 10 | * 11 | * @wordpress-plugin 12 | * Plugin Name: Options Framework 13 | * Plugin URI: http://wptheming.com 14 | * Description: A framework for building theme options. 15 | * Version: 1.8.6 16 | * Author: Devin Price 17 | * Author URI: http://wptheming.com 18 | * License: GPL-2.0+ 19 | * License URI: http://www.gnu.org/licenses/gpl-2.0.txt 20 | * Text Domain: options-framework 21 | * Domain Path: /languages 22 | */ 23 | 24 | // If this file is called directly, abort. 25 | if ( ! defined( 'WPINC' ) ) { 26 | die; 27 | } 28 | 29 | function optionsframework_init() { 30 | 31 | // If user can't edit theme options, exit 32 | if ( !current_user_can( 'edit_theme_options' ) ) 33 | return; 34 | 35 | // Load translation files 36 | load_plugin_textdomain( 'options-framework', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' ); 37 | 38 | // Loads the required Options Framework classes. 39 | require plugin_dir_path( __FILE__ ) . 'includes/class-options-framework.php'; 40 | require plugin_dir_path( __FILE__ ) . 'includes/class-options-framework-admin.php'; 41 | require plugin_dir_path( __FILE__ ) . 'includes/class-options-interface.php'; 42 | require plugin_dir_path( __FILE__ ) . 'includes/class-options-media-uploader.php'; 43 | require plugin_dir_path( __FILE__ ) . 'includes/class-options-sanitization.php'; 44 | 45 | // Instantiate the main plugin class. 46 | $options_framework = new Options_Framework; 47 | $options_framework->init(); 48 | 49 | // Instantiate the options page. 50 | $options_framework_admin = new Options_Framework_Admin; 51 | $options_framework_admin->init(); 52 | 53 | // Instantiate the media uploader class 54 | $options_framework_media_uploader = new Options_Framework_Media_Uploader; 55 | $options_framework_media_uploader->init(); 56 | 57 | } 58 | add_action( 'init', 'optionsframework_init', 20 ); 59 | 60 | /** 61 | * Helper function to return the theme option value. 62 | * If no value has been saved, it returns $default. 63 | * Needed because options are saved as serialized strings. 64 | * 65 | * Not in a class to support backwards compatibility in themes. 66 | */ 67 | 68 | if ( ! function_exists( 'of_get_option' ) ) : 69 | 70 | function of_get_option( $name, $default = false ) { 71 | $config = get_option( 'optionsframework' ); 72 | 73 | if ( ! isset( $config['id'] ) ) { 74 | return $default; 75 | } 76 | 77 | $options = get_option( $config['id'] ); 78 | 79 | if ( isset( $options[$name] ) ) { 80 | return $options[$name]; 81 | } 82 | 83 | return $default; 84 | } 85 | 86 | endif; 87 | -------------------------------------------------------------------------------- /options-theme-customizer/footer.php: -------------------------------------------------------------------------------- 1 | 12 | 13 |
    14 | 15 | 17 | * tag of your theme, or you will break many plugins, which 18 | * generally use this hook to reference JavaScript files. 19 | */ 20 | 21 | wp_footer(); 22 | ?> 23 | 24 | 25 | -------------------------------------------------------------------------------- /options-theme-customizer/functions.php: -------------------------------------------------------------------------------- 1 | 9 | > 10 | 11 | 12 | Options Check 13 | 14 | 15 | 16 | 17 | > 18 | 19 |
    -------------------------------------------------------------------------------- /options-theme-customizer/index.php: -------------------------------------------------------------------------------- 1 | 12 | 13 |
    14 | 15 |
    16 |

    Options Theme Customizer

    17 |
    18 | 19 |
    20 | 21 |
    22 |
    type: text
    23 |
    24 |
    25 | 26 |
    27 |
    type: select
    28 |
    29 |
    30 | 31 |
    32 |
    type: radio
    33 |
    34 |
    35 | 36 |
    37 |
    type: checkbox (work in progress, little bug here)
    38 |
    39 |
    40 | 41 |
    42 |
    type: uploader
    43 |
    44 | 45 | 46 | 47 |
    48 | 49 |
    50 |
    type: colorpicker
    51 |
    52 |
    53 |

    54 |
    55 |
    56 | 57 |
    58 |
    59 | 60 | -------------------------------------------------------------------------------- /options-theme-customizer/options.php: -------------------------------------------------------------------------------- 1 | "First Option", 30 | "Second" => "Second Option", 31 | "Third" => "Third Option" ); 32 | 33 | $options = array(); 34 | 35 | $options[] = array( "name" => "Example Settings", 36 | "type" => "heading" ); 37 | 38 | $options['example_text'] = array( 39 | "name" => "Text", 40 | "id" => "example_text", 41 | "std" => "Default Value", 42 | "type" => "text" ); 43 | 44 | $options['example_select'] = array( 45 | "name" => "Select Box", 46 | "id" => "example_select", 47 | "std" => "First", 48 | "type" => "select", 49 | "options" => $test_array ); 50 | 51 | $options['example_radio'] = array( 52 | "name" => "Radio Buttons", 53 | "id" => "example_radio", 54 | "std" => "Third", 55 | "type" => "radio", 56 | "options" => $test_array ); 57 | 58 | $options['example_checkbox'] = array( 59 | "name" => "Input Checkbox", 60 | "desc" => "This is a work in progress. There is are some issues with how the front end customizer saves checkbox options, and how the Options Framework does. Bear with me a bit while I work on a solution.", 61 | "id" => "example_checkbox", 62 | "std" => "1", 63 | "type" => "checkbox" ); 64 | 65 | $options['example_uploader'] = array( 66 | "name" => "Uploader Test", 67 | "desc" => "This creates a full size uploader that previews the image.", 68 | "id" => "example_uploader", 69 | "type" => "upload" ); 70 | 71 | $options['example_colorpicker'] = array( 72 | "name" => "Colorpicker", 73 | "id" => "example_colorpicker", 74 | "std" => "#666666", 75 | "type" => "color" ); 76 | 77 | return $options; 78 | } 79 | 80 | /** 81 | * Front End Customizer 82 | * 83 | * WordPress 3.4 Required 84 | */ 85 | 86 | add_action( 'customize_register', 'options_theme_customizer_register' ); 87 | 88 | function options_theme_customizer_register($wp_customize) { 89 | 90 | /** 91 | * This is optional, but if you want to reuse some of the defaults 92 | * or values you already have built in the options panel, you 93 | * can load them into $options for easy reference 94 | */ 95 | 96 | $options = optionsframework_options(); 97 | 98 | /* Basic */ 99 | 100 | $wp_customize->add_section( 'options_theme_customizer_basic', array( 101 | 'title' => __( 'Basic', 'options_theme_customizer' ), 102 | 'priority' => 100 103 | ) ); 104 | 105 | $wp_customize->add_setting( 'options_theme_customizer[example_text]', array( 106 | 'default' => $options['example_text']['std'], 107 | 'type' => 'option' 108 | ) ); 109 | 110 | $wp_customize->add_control( 'options_theme_customizer_example_text', array( 111 | 'label' => $options['example_text']['name'], 112 | 'section' => 'options_theme_customizer_basic', 113 | 'settings' => 'options_theme_customizer[example_text]', 114 | 'type' => $options['example_text']['type'] 115 | ) ); 116 | 117 | $wp_customize->add_setting( 'options_theme_customizer[example_select]', array( 118 | 'default' => $options['example_select']['std'], 119 | 'type' => 'option' 120 | ) ); 121 | 122 | $wp_customize->add_control( 'options_theme_customizer_example_select', array( 123 | 'label' => $options['example_select']['name'], 124 | 'section' => 'options_theme_customizer_basic', 125 | 'settings' => 'options_theme_customizer[example_select]', 126 | 'type' => $options['example_select']['type'], 127 | 'choices' => $options['example_select']['options'] 128 | ) ); 129 | 130 | $wp_customize->add_setting( 'options_theme_customizer[example_radio]', array( 131 | 'default' => $options['example_radio']['std'], 132 | 'type' => 'option' 133 | ) ); 134 | 135 | $wp_customize->add_control( 'options_theme_customizer_example_radio', array( 136 | 'label' => $options['example_radio']['name'], 137 | 'section' => 'options_theme_customizer_basic', 138 | 'settings' => 'options_theme_customizer[example_radio]', 139 | 'type' => $options['example_radio']['type'], 140 | 'choices' => $options['example_radio']['options'] 141 | ) ); 142 | 143 | $wp_customize->add_setting( 'options_theme_customizer[example_checkbox]', array( 144 | 'default' => $options['example_checkbox']['std'], 145 | 'type' => 'option' 146 | ) ); 147 | 148 | $wp_customize->add_control( 'options_theme_customizer_example_checkbox', array( 149 | 'label' => $options['example_checkbox']['name'], 150 | 'section' => 'options_theme_customizer_basic', 151 | 'settings' => 'options_theme_customizer[example_checkbox]', 152 | 'type' => $options['example_checkbox']['type'] 153 | ) ); 154 | 155 | /* Extended */ 156 | 157 | $wp_customize->add_section( 'options_theme_customizer_extended', array( 158 | 'title' => __( 'Extended', 'options_theme_customizer' ), 159 | 'priority' => 110 160 | ) ); 161 | 162 | $wp_customize->add_setting( 'options_theme_customizer[example_uploader]', array( 163 | 'type' => 'option' 164 | ) ); 165 | 166 | $wp_customize->add_control( new WP_Customize_Image_Control( $wp_customize, 'example_uploader', array( 167 | 'label' => $options['example_uploader']['name'], 168 | 'section' => 'options_theme_customizer_extended', 169 | 'settings' => 'options_theme_customizer[example_uploader]' 170 | ) ) ); 171 | 172 | $wp_customize->add_setting( 'options_theme_customizer[example_colorpicker]', array( 173 | 'default' => $options['example_colorpicker']['std'], 174 | 'type' => 'option' 175 | ) ); 176 | 177 | $wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'link_color', array( 178 | 'label' => $options['example_colorpicker']['name'], 179 | 'section' => 'options_theme_customizer_extended', 180 | 'settings' => 'options_theme_customizer[example_colorpicker]' 181 | ) ) ); 182 | } -------------------------------------------------------------------------------- /options-theme-customizer/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/options-theme-customizer/screenshot.png -------------------------------------------------------------------------------- /options-theme-customizer/style.css: -------------------------------------------------------------------------------- 1 | /* 2 | Theme Name: Options Theme Customizer 3 | Theme URI: http://wptheming.com 4 | Description: A demo theme that shows how the front-end theme customizer works. 5 | Author: Devin Price 6 | Author URI: http://wptheming.com 7 | Version: 1.6 8 | */ 9 | 10 | body { 11 | background:#eee; 12 | } 13 | 14 | body, input, textarea { 15 | color: #222; 16 | font: 15px "Helvetica Neue", Helvetica, Arial, sans-serif; 17 | font-weight: 300; 18 | line-height: 1.625; 19 | } 20 | 21 | p { 22 | margin:0 0 10px 0; 23 | } 24 | 25 | h1, h2, h3 { 26 | margin:0 0 10px 0; 27 | } 28 | 29 | #page { 30 | background:#fff; 31 | min-width:440px; 32 | max-width:740px; 33 | margin:20px auto; 34 | } 35 | 36 | header { 37 | background:#dedede; 38 | padding:30px 40px; 39 | } 40 | 41 | .entry-content { 42 | padding:20px 40px; 43 | } 44 | 45 | dt { 46 | color:#666; 47 | margin-bottom:5px; 48 | } 49 | dd { 50 | clear:both; 51 | margin:0; 52 | font-size:1.2em; 53 | } -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | ## Options Framework 2 | 3 | **Tags:** options, theme options 4 | **Requires at least:** 3.6 5 | **Tested up to:** 4.9.4 6 | **Stable tag:** 1.8.5 7 | **License:** GPLv2 8 | **Donate link:** http://bit.ly/options-donate-2 9 | 10 | ## Screenshot 11 | 12 | ![An example of the "Advanced Options" tag in the "Options Check" theme using this plugin.](https://github.com/devinsays/options-framework-plugin/raw/master/screenshot-1.png) 13 | 14 | ## Description 15 | 16 | The Options Framework Plugin makes it easy to include an options panel in any WordPress theme. It was built so developers can concentrate on making the actual theme rather than spending time creating an options panel from scratch. It's free to use in both commercial and personal projects, just like WordPress itself. 17 | 18 | ### Options Include: 19 | 20 | * text input 21 | * textarea 22 | * checkbox 23 | * select 24 | * radio buttons 25 | * upload (image/file uploader) 26 | * images (use images instead of radio buttons) 27 | * background (a set of options to define a background) 28 | * multicheck 29 | * colorpicker 30 | * typography (a set of options to define typography) 31 | * editor 32 | 33 | ### Learn More 34 | 35 | Please visit [https://wptheming.com/options-framework-plugin](https://wptheming.com/options-framework-plugin) for a full description of how to define and use the theme options. 36 | 37 | ### Installation 38 | 39 | If your theme already has options enabled, they will show up under the appearance menu. 40 | 41 | If your theme doesn't have options, you can define them to options.php of your theme and they will instantly show up. For more on how to do this, visit [https://wptheming.com/options-framework-plugin](https://wptheming.com/options-framework-plugin). 42 | 43 | ## Frequently Asked Questions 44 | 45 | ### How do I build options for my own theme? 46 | 47 | Download the development version from GitHub [https://github.com/devinsays/options-framework-plugin](https://github.com/devinsays/options-framework-plugin) and copy the "options-check" folder into your themes directory. 48 | 49 | The "Options Check" theme is a blueprint for how to work with options. It includes an example of every option available in the panel and sample output in the theme. 50 | 51 | You can also watch the video screencast I have at [https://wptheming.com/options-framework-plugin](https://wptheming.com/options-framework-plugin). 52 | 53 | ## Changelog 54 | 55 | #### 1.8.6 56 | 57 | * Fix: of_sanitize_multicheck should return an array 58 | * Fix: Typography size should returns a string rather than array 59 | * Fix: Fix isset notices in custom typography field for Options Check 60 | 61 | #### 1.8.5 62 | 63 | * Update: Style headers to look nice in WordPress 4.4 64 | 65 | #### 1.8.4 66 | 67 | * Update: Include link button in tinyMCE (props @rosswintle) 68 | 69 | #### 1.8.3 70 | 71 | * Update: sanitization of info option and description field 72 | * Update: Sanitization of editor field 73 | 74 | #### 1.8.2 75 | 76 | * Fix for translation textdomain 77 | 78 | #### 1.8.1 79 | 80 | * Fix for colorpicker spacing 81 | * Better sanitization of upload option 82 | * Update translation .pot 83 | * Updated Portuguese translations by @pedro-mendonca 84 | * Indonesian translations props @aryaprakasa) 85 | * Use filtered values for optionsframework_admin_bar 86 | 87 | #### 1.8.0 88 | 89 | * Increase default width of text inputs 90 | * Rename add_options_page function to resolve automatic theme check conflicts 91 | * Check isset for $value['desc'] in info option 92 | * Only load styles on options page (props @AndorChen) 93 | * Fix loading of translation files (props @weslly) 94 | * Update Portuguese (BR) translations (props @weslly) 95 | * Add Danish translations (props @Tosak) 96 | * Allow menu parent to be filtered (props @nvsnkv) 97 | 98 | #### 1.7.1 99 | 100 | * Fix to use option name if set in options.php 101 | 102 | #### 1.7.0 103 | 104 | * Update to class based plugin (large code refactor) 105 | * Drop color picker support for older versions of WordPress 106 | * Better support for new admin interface in WordPress 3.8 107 | * Allow option pages without tabs 108 | 109 | #### 1.6.1 110 | 111 | * Fix for update notice location 112 | * Use selected and checked functions more consistently 113 | * Reuse media modal for uploads 114 | * Portuguese translations (props @xipasduarte) 115 | 116 | #### 1.6.0 117 | 118 | * Allow media buttons in the editor option 119 | * JS/CSS should only load on options page 120 | * Menu tabs should be filterable 121 | * Menu settings filter 122 | * Fix js bindings for upload modal (props @themeblvd) 123 | 124 | #### 1.5.2 125 | 126 | * Removed update routine to remove "optionsframework" post type 127 | 128 | #### 1.5.1 129 | 130 | * Temporarily removed update routine 131 | 132 | #### 1.5.0 133 | 134 | * Updated width of text input 135 | * New media uploader 136 | * Dropped custom post types for file attachments 137 | * Update routine to remove unused 'optionsframework' post types 138 | * Updated IDs for .tabs and .groups 139 | * Italian translations (andreabersi.com) 140 | * Russian translations (verha.net) 141 | * Swedish translations (kjeell.se) 142 | 143 | #### 1.4.0 144 | 145 | * Add missing sanitization to typography color (@weplantmedia) 146 | * New colorpicker (props @mattweibe for getting this in WordPress core) 147 | * Farsi translations (@vahidd.com) 148 | * Added password option type (props @neojp) 149 | * Allow ids to passed to tabs (props @themeblvd) 150 | * Added optionsframework_after_validate hook (h/t @vanpop and @pryley) 151 | 152 | #### 1.3.0 153 | 154 | * Allow options to save when set by theme customizer 155 | * Save checkbox options to boolean false rather than "0" 156 | * Added optionsframework_after hook 157 | * Hungarian translations by kardiweb.org 158 | 159 | #### 1.2.0 160 | 161 | * Fix for font_size santization 162 | * Added internationalization support (@weslly) 163 | * Portuguese translations (@weslly) 164 | * Spanish translations (@sksmatt) 165 | * Make uploader post type non-public (@samargulies) 166 | * ID can now be passed on info option for styling purposes 167 | 168 | #### 1.1.0 169 | 170 | * Added support for wp_editor 171 | * Updated textarea settings to allow rows parameter 172 | * Updated cursor:default for h3 metabox, props @yurifedorov 173 | * Filtering of typography options (@mattwiebe) 174 | * Updated methods for typography options 175 | 176 | #### 1.0.0 177 | 178 | * Added filters for entire options array (props @inxilpro) 179 | * Added a filter for options.php location (props @mattwiebe) 180 | * Option header (h4) will not display in panel if name !isset (props @alepee) 181 | 182 | #### 0.9.0 183 | 184 | * Load thickbox using site_url() to allow for https (props @samargulies) 185 | * Change santization to use $allowedposttags for textarea and info 186 | * Display notice if theme doesn't support the Options Framework 187 | * Single checkboxes now use labels 188 | * CSS updates for formatting long labels 189 | * Allows dashes in the options id (props @mantone) 190 | * Uses add_theme_page over add_submenu_page (props @enile8) 191 | 192 | #### 0.8.0 193 | 194 | * Saves tab states using local storage 195 | * Style updates WordPress 3.2 release 196 | * Added sanitization filter for info (of_sanitize_allowedtags) 197 | 198 | #### 0.7.0 199 | 200 | * Added filtering for recognized arrays (like Font Face) 201 | * Using isset rather than !empty to return of_get_option 202 | * Significant updates for setting and restoring defaults 203 | * Background option outputs no-repeat rather than none 204 | 205 | #### 0.6.0 206 | 207 | * Introduces validation filters (props @_mfields) 208 | * Better data sanitization and escaping (props @_mfields) 209 | * Updates labels in options-interface.php 210 | * Changes how checkboxes saved in database ("0" or "1") 211 | * Stores typography, backgrounds and multichecks directly as arrays 212 | * For full description, see: http://wptheming.com/2011/05/options-framework-0-6/ 213 | 214 | #### 0.5.0 215 | 216 | * Fixed errors when more than one multicheck options is used 217 | * Updated optionsframework_setdefaults so defaults actually save on first run 218 | * Require that all options have lowercase alphanumeric ids 219 | * Added link to options from the WordPress admin bar 220 | 221 | #### 0.4.0 222 | 223 | * Updated multicheck option to save keys rather than values 224 | * Unset default array options after each output in optionsframework_setdefaults 225 | 226 | #### 0.3.0 227 | 228 | * White listed options for increased security 229 | * Fixed errors with checkbox and select boxes 230 | * Improved the multicheck option and changed format 231 | 232 | #### 0.2.0 233 | 234 | * Uploaded to the WordPress repository 235 | 236 | #### 0.1.0 237 | 238 | * Initial release 239 | -------------------------------------------------------------------------------- /readme.txt: -------------------------------------------------------------------------------- 1 | === Options Framework === 2 | 3 | Contributors: downstairsdev 4 | Tags: options, theme options 5 | Donate link: http://bit.ly/options-donate-2 6 | Requires at least: 3.6 7 | Tested up to: 4.9.4 8 | Stable tag: 1.8.5 9 | License: GPLv2 10 | 11 | == Description == 12 | 13 | The Options Framework Plugin makes it easy to include an options panel in any WordPress theme. It was built so developers can concentrate on making the actual theme rather than spending time creating an options panel from scratch. It's free to use in both commercial and personal projects, just like WordPress itself. 14 | 15 | = Options Include = 16 | 17 | * text input 18 | * textarea 19 | * checkbox 20 | * select 21 | * radio button 22 | * upload (image uploader) 23 | * images (use images instead of radio buttons) 24 | * background (a set of options to define a background) 25 | * multicheck 26 | * color (a jquery color picker) 27 | * typography (a set of options to define typography) 28 | * editor 29 | 30 | = Learn More = 31 | 32 | Please visit [https://wptheming.com/options-framework-plugin](https://wptheming.com/options-framework-plugin) for a full description of how to define and use the theme options. 33 | 34 | == Installation == 35 | 36 | If your theme already has options enabled, they will show up under the appearance menu. 37 | 38 | If your theme doesn't have options, you can define them to options.php of your theme and they will instantly show up. For more on how to do this, visit [https://wptheming.com/options-framework-plugin](https://wptheming.com/options-framework-plugin). 39 | 40 | == Frequently Asked Questions == 41 | 42 | = How do I build options for my own theme? = 43 | 44 | Download the development version from GitHub [https://github.com/devinsays/options-framework-plugin](https://github.com/devinsays/options-framework-plugin) and copy the "options-check" folder into your themes directory. 45 | 46 | The "Options Check" theme is a blueprint for how to work with options. It includes an example of every option available in the panel and sample output in the theme. 47 | 48 | You can also watch the video screencast I have at [https://wptheming.com/options-framework-plugin](https://wptheming.com/options-framework-plugin). 49 | 50 | = What options are available to use? = 51 | 52 | * text input 53 | * textarea 54 | * checkbox 55 | * select 56 | * radio buttons 57 | * upload (image/file uploader) 58 | * images (use images instead of radio buttons) 59 | * background (a set of options to define a background) 60 | * multicheck 61 | * colorpicker 62 | * typography (a set of options to define typography) 63 | * editor 64 | 65 | == Screenshots == 66 | 67 | 1. An example of the "Advanced Options" tab in the "Options Check" theme using this plugin. 68 | 69 | == Changelog == 70 | 71 | = 1.8.6 = 72 | 73 | * Fix: of_sanitize_multicheck should return an array 74 | * Fix: Typography size should returns a string rather than array 75 | * Fix: Fix isset notices in custom typography field for Options Check 76 | 77 | = 1.8.5 = 78 | 79 | * Update: Style headers to look nice in WordPress 4.4 80 | 81 | = 1.8.4 = 82 | 83 | * Update: Include link button in tinyMCE (props @rosswintle) 84 | 85 | = 1.8.3 = 86 | 87 | * Update: sanitization of info option and description field 88 | * Update: Sanitization of editor field 89 | 90 | = 1.8.2 = 91 | 92 | * Fix for translation textdomain 93 | 94 | = 1.8.1 = 95 | 96 | * Fix for colorpicker spacing 97 | * Better sanitization of upload option 98 | * Update translation .pot 99 | * Updated Portuguese translations by @pedro-mendonca 100 | * Indonesian translations props @aryaprakasa) 101 | * Use filtered values for optionsframework_admin_bar 102 | 103 | = 1.8.0 = 104 | 105 | * Increase default width of text inputs 106 | * Rename add_options_page function to resolve automatic theme check conflicts 107 | * Check isset for $value['desc'] in info option 108 | * Only load styles on options page (props @AndorChen) 109 | * Fix loading of translation files (props @weslly) 110 | * Update Portuguese (BR) translations (props @weslly) 111 | * Add Danish translations (props @Tosak) 112 | * Allow menu parent to be filtered (props @nvsnkv) 113 | 114 | = 1.7.1 = 115 | 116 | * Fix to use option name if set in options.php 117 | 118 | = 1.7.0 = 119 | 120 | * Update to class based plugin (large code refactor) 121 | * Drop color picker support for older versions of WordPress 122 | * Better support for new admin interface in WordPress 3.8 123 | * Allow option pages without tabs 124 | 125 | = 1.6.1 = 126 | 127 | * Fix for update notice location 128 | * Use selected and checked functions more consistently 129 | * Reuse media modal for uploads 130 | * Portuguese translations (props @xipasduarte) 131 | 132 | = 1.6.0 = 133 | 134 | * Allow media buttons in the editor option 135 | * JS/CSS should only load on options page 136 | * Menu tabs should be filterable 137 | * Menu settings filter 138 | * Fix js bindings for upload modal (props @themeblvd) 139 | 140 | = 1.5.2 = 141 | 142 | * Removed update routine to remove "optionsframework" post type 143 | 144 | = 1.5.1 = 145 | 146 | * Temporarily removed update routine 147 | 148 | = 1.5.0 = 149 | 150 | * Updated width of text input 151 | * New media uploader 152 | * Dropped custom post types for file attachments 153 | * Update routine to remove unused 'optionsframework' post types 154 | * Updated IDs for .tabs and .groups 155 | * Italian translations (andreabersi.com) 156 | * Russian translations (verha.net) 157 | * Swedish translations (kjeell.se) 158 | 159 | = 1.4.0 = 160 | 161 | * Add missing sanitization to typography color (@weplantmedia) 162 | * New colorpicker (props @mattweibe for getting this in WordPress core) 163 | * Farsi translations (@vahidd.com) 164 | * Added password option type (props @neojp) 165 | * Allow ids to passed to tabs (props @themeblvd) 166 | * Added optionsframework_after_validate hook (h/t @vanpop and @pryley) 167 | 168 | = 1.3.0 = 169 | 170 | * Allow options to save when set by theme customizer 171 | * Save checkbox options to boolean false rather than "0" 172 | * Added optionsframework_after hook 173 | * Hungarian translations by kardiweb.org 174 | 175 | = 1.2.0 = 176 | 177 | * Fix for font_size santization 178 | * Added internationalization support (@weslly) 179 | * Portuguese translations (@weslly) 180 | * Spanish translations (@sksmatt) 181 | * Make uploader post type non-public (@samargulies) 182 | * ID can now be passed on info option for styling purposes 183 | 184 | = 1.1.0 = 185 | 186 | * Added support for wp_editor 187 | * Updated textarea settings to allow rows parameter 188 | * Updated cursor:default for h3 metabox, props @yurifedorov 189 | * Filtering of typography options (@mattwiebe) 190 | * Updated methods for typography options 191 | 192 | = 1.0.0 = 193 | 194 | * Added filters for entire options array (props @inxilpro) 195 | * Added a filter for options.php location (props @mattwiebe) 196 | * Option header (h4) will not display in panel if name !isset (props @alepee) 197 | 198 | = 0.9.0 = 199 | 200 | * Load thickbox using site_url() to allow for https (props @samargulies) 201 | * Change santization to use $allowedposttags for textarea and info 202 | * Display notice if theme doesn't support the Options Framework 203 | * Single checkboxes now use labels 204 | * CSS updates for formatting long labels 205 | * Allows dashes in the options id (props @mantone) 206 | * Uses add_theme_page over add_submenu_page (props @enile8) 207 | 208 | = 0.8.0 = 209 | 210 | * Saves tab states using local storage 211 | * Style updates WordPress 3.2 release 212 | * Added sanitization filter for info (of_sanitize_allowedtags) 213 | 214 | = 0.7.0 = 215 | 216 | * Added filtering for recognized arrays (like Font Face) 217 | * Using isset rather than !empty to return of_get_option 218 | * Significant updates for setting and restoring defaults 219 | * Background option outputs no-repeat rather than none 220 | 221 | = 0.6.0 = 222 | 223 | * Introduces validation filters (props @_mfields) 224 | * Better data sanitization and escaping (props @_mfields) 225 | * Updates labels in options-interface.php 226 | * Changes how checkboxes saved in database ("0" or "1") 227 | * Stores typography, backgrounds and multichecks directly as arrays 228 | * For full description, see: https://wptheming.com/2011/05/options-framework-0-6/ 229 | 230 | = 0.5.0 = 231 | 232 | * Fixed errors when more than one multicheck options is used 233 | * Updated optionsframework_setdefaults so defaults actually save on first run 234 | * Require that all options have lowercase alphanumeric ids 235 | * Added link to options from the WordPress admin bar 236 | 237 | = 0.4.0 = 238 | 239 | * Updated multicheck option to save keys rather than values 240 | * Unset default array options after each output in optionsframework_setdefaults 241 | 242 | = 0.3.0 = 243 | 244 | * White listed options for increased security 245 | * Fixed errors with checkbox and select boxes 246 | * Improved the multicheck option and changed format 247 | 248 | = 0.2.0 = 249 | 250 | * Uploaded to the WordPress repository 251 | 252 | = 0.1.0 = 253 | 254 | * Initial release 255 | -------------------------------------------------------------------------------- /screenshot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/devinsays/options-framework-plugin/c39cb3074a11e7b6b833ae23501444fd58f37f07/screenshot-1.png --------------------------------------------------------------------------------