Changeset 1524934
- Timestamp:
- 10/30/2016 07:47:04 PM (9 years ago)
- Location:
- no-function-language-widget/trunk
- Files:
-
- 2 edited
-
no-function-language-widget.php (modified) (11 diffs)
-
readme.txt (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
no-function-language-widget/trunk/no-function-language-widget.php
r1302872 r1524934 5 5 Description: It produces an output of a language changing widget but has no additional features behind it. 6 6 Author: wp-plugin-dev.com 7 Version: 1. 57 Version: 1.6 8 8 License: CC-BY-SA 4.0 9 9 License URI: https://creativecommons.org/licenses/by-sa/4.0/ 10 10 Author URI: http://www.wp-plugin-dev.com/ 11 11 You are free to use it or modify it for clients, as long as you keep the name wp-plugin-dev.com . 12 13 12 It is now using https://cdnjs.com/libraries/flag-icon-css Flags 14 13 */ 15 16 17 18 14 // class no_function_language_widget 19 15 add_action( 'widgets_init', create_function( '', 'register_widget( "no_function_language_widget" );' ) ); 20 16 21 22 function contains($substring, $string){17 function contains($substring, $string) 18 { 23 19 $pos = strpos($string, $substring); 24 20 25 26 if ($pos === false){21 if ($pos === false) 22 { 27 23 // string needle NOT found in haystack 28 24 return false; 29 25 } 30 else { 26 else 27 { 31 28 // string needle found in haystack 32 29 return true; 33 30 34 31 } 35 36 32 } 37 33 38 34 class no_function_language_widget extends WP_Widget { 39 40 public function __construct(){35 public function __construct() 36 { 41 37 parent::__construct( 42 38 'no_function_language_widget', // Base ID 43 __('No ')." ".__("Function")." ".__("Language")." ".__("Widget"), // Name39 __('None')." ".__("Function")." ".__("Language")." ".__("Widget"), // Name 44 40 array( 'description' => __( 'A No Function Language Changer', 'text_domain' ), ) // Args 45 41 ); … … 47 43 } 48 44 49 50 public function widget( $args, $instance ) { 51 52 53 // https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/0.8.5/css/flag-icon.min.css 45 public function widget( $args, $instance ) 46 { 54 47 wp_enqueue_style( 'flag-icons', "https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/0.8.5/css/flag-icon.min.css" ); 55 48 … … 63 56 64 57 $langbase= $instance['nflw_language_base']; 65 66 67 68 58 echo $before_widget; 69 59 … … 71 61 echo $before_title . $title . $after_title; 72 62 73 74 63 $lansum=count($nflw_languages); 75 64 76 65 $i=0; 77 66 78 if ($langbase=="?lang=") { 79 80 while ($i<$lansum ) { 67 if ($langbase=="?lang=") 68 { 69 while ($i<$lansum ) 70 { 81 71 ?><a class="flag-icon flag-icon-<?php echo $nflw_languages[$i]; 82 72 ?>" href="?lang=<?php echo $nflw_languages[$i]; … … 85 75 } 86 76 } 87 else { 88 while ($i<$lansum ) { 89 77 else 78 { 79 while ($i<$lansum ) 80 { 90 81 $this_wp = ''.get_bloginfo('wpurl').''; 91 82 … … 97 88 $j=0; 98 89 99 while ($j<$lansum) { 90 while ($j<$lansum) 91 { 100 92 $this_url_lang=''.$this_wp.'/'.$nflw_languages[$j].'/'; 101 93 102 103 if ($this_url_lang==$this_url){$language_set=true;104 } 105 else {$language_set=false;106 }107 94 if ($this_url_lang==$this_url) 95 {$language_set=true; 96 } 97 else 98 {$language_set=false; 99 } 108 100 $current_language = "/".$nflw_languages[$j]."/"; 109 101 110 if (contains($current_language, $this_url)) {$language_set=true; 111 } 112 else {$language_set=false; 113 } 114 115 if ($language_set==true) {$choozen_language_URL==""; 102 if (contains($current_language, $this_url)) 103 {$language_set=true; 104 } 105 else 106 {$language_set=false; 107 } 108 if ($language_set==true) 109 {$choozen_language_URL==""; 116 110 117 111 $this_post = str_replace($this_url_lang , "", $this_url); 118 112 119 120 113 $this_post = str_replace($current_language , "", $this_post); 121 114 122 115 } 123 else {} 116 else 117 {} 124 118 $j++; 125 119 126 120 } 127 if ($nflw_languages[$i]==$nflw_languages[0]) { 121 if ($nflw_languages[$i]==$nflw_languages[0]) 122 { 128 123 $choozen_language_URL=''.get_bloginfo('wpurl').'/'; 129 124 130 125 //default language hack 131 126 } 132 else {133 127 else 128 { 134 129 // If you want it directly to the current site uncomment $this_post 135 130 $choozen_language_URL=''.get_bloginfo('wpurl').'/'.$nflw_languages[$i]; … … 139 134 $language_set=false; 140 135 141 142 136 ?><a class="flag-icon flag-icon-<?php echo $nflw_languages[$i]; 143 137 ?>" href="<?php echo $choozen_language_URL ?>"> </a> <?php 144 138 $i++; 145 139 } 146 147 140 } 148 141 //echo ' -> your url '.$this_post.''; 149 142 echo $after_widget; 150 143 151 152 } 153 154 public function update( $new_instance, $old_instance ){144 } 145 146 public function update( $new_instance, $old_instance ) 147 { 155 148 $instance = array(); 156 149 … … 165 158 } 166 159 167 168 public function form( $instance ) { 169 if ( isset( $instance[ 'title' ] )) { 160 public function form( $instance ) 161 { 162 if ( isset( $instance[ 'title' ] )) 163 { 170 164 $title = __($instance[ 'title' ]); 171 165 … … 175 169 176 170 } 177 else { 171 else 172 { 178 173 $title = __( 'New title', 'text_domain' ); 179 174 … … 208 203 <input id="<?php echo $this->get_field_id( 'nflw_language_base' ); 209 204 ?>" name="<?php echo $this->get_field_name( 'nflw_language_base' ); 210 ?>" type="radio" value="/" <?php if ($nflw_language_base=="/") {echo ' checked'; 205 ?>" type="radio" value="/" <?php if ($nflw_language_base=="/") 206 {echo ' checked'; 211 207 }?>/> /de <br> 212 208 <input id="<?php echo $this->get_field_id( 'nflw_language_base' ); 213 209 ?>" name="<?php echo $this->get_field_name( 'nflw_language_base' ); 214 ?>" type="radio" value="?lang=" <?php if ($nflw_language_base=="?lang=") {echo ' checked'; 210 ?>" type="radio" value="?lang=" <?php if ($nflw_language_base=="?lang=") 211 {echo ' checked'; 215 212 }?>/> ?lang=de 216 213 </p> … … 218 215 } 219 216 220 } 217 } 221 218 222 219 ?> -
no-function-language-widget/trunk/readme.txt
r1302872 r1524934 4 4 Tags: language, multilingual, widget, flags 5 5 Requires at least: 3.0 6 Tested up to: 4. 47 Stable tag: 1. 56 Tested up to: 4.7 7 Stable tag: 1.6 8 8 License: CC-BY-SA 4.0 9 9 License URI: https://creativecommons.org/licenses/by-sa/4.0/
Note: See TracChangeset
for help on using the changeset viewer.