WP Meta SEO - Version 1.5.0

Version Description

  • Add help tooltip to explain on page validation SEO criteria
  • Add help tooltip to explain dashboard SEO parameters
  • Put snippet preview title in a column on SEO bulk view edition
  • Add SEO and check notification for robot.txt that lock search engine
  • Update EN and FR language files
Download this release

Release Info

Developer JoomUnited
Plugin Icon 128x128 WP Meta SEO
Version 1.5.0
Comparing to
See all releases

Code changes from version 1.4.0 to 1.5.0

css/google-chart-dashboard.css DELETED
@@ -1,23 +0,0 @@
1
- .form-left{
2
- width: 450px;
3
- border-radius: 10px;
4
- border: #CCC 1px solid;
5
- margin: 20px 0px 0px 20px;
6
- float: left;
7
- padding: 20px 35px 20px 35px;
8
- position: relative;
9
- }
10
-
11
- .form-right{
12
- width: 450px;
13
- border-radius: 10px;
14
- border: #CCC 1px solid;
15
- margin: 20px 20px 0px 0px;
16
- float: right;
17
- padding: 20px 35px 20px 35px;
18
- position: relative;
19
- }
20
- .form-left .report{width: 100%; height: 300px}
21
- .form-right .report{width: 100%; height: 300px}
22
- .form-left .title{position: absolute; left: 30px; top:-10px; font-weight: bold; background:#eff3ef; padding: 0px 20px 0px 20px }
23
- .form-right .title{position: absolute; left: 30px; top:-10px; font-weight: bold; background:#eff3ef; padding: 0px 20px 0px 20px }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
css/jquery.qtip.css CHANGED
@@ -204,11 +204,17 @@
204
  }
205
 
206
  /*! Blue tooltip style */
207
- .qtip-blue {
208
  border: none;
209
- color: #fafafa;
210
- border-color: #23282D;
211
- background-color: #23282D;
 
 
 
 
 
 
212
  }
213
 
214
  .qtip-blue .qtip-titlebar {
@@ -555,3 +561,7 @@ x:-o-prefocus,
555
  .qtipmodal-ie6fix {
556
  position: absolute !important;
557
  }
 
 
 
 
204
  }
205
 
206
  /*! Blue tooltip style */
207
+ .metaseo-qtip {
208
  border: none;
209
+ color: #fafafa !important;
210
+ border-color : #23282D !important;
211
+ background-color: #23282D !important;
212
+ }
213
+
214
+ .metaseo-qtip-000{
215
+ border: none;
216
+ color: #000 !important;
217
+ background-color: #fff !important;
218
  }
219
 
220
  .qtip-blue .qtip-titlebar {
561
  .qtipmodal-ie6fix {
562
  position: absolute !important;
563
  }
564
+
565
+ .metaseo-qtip-dashboard .qtip-tip{
566
+ display: none !important;
567
+ }
css/metabox-tabs.css CHANGED
@@ -389,7 +389,7 @@ div.wpmseo-tab-content {
389
  }
390
 
391
  .metaseo_analysis{
392
- width: 100%;
393
  padding: 8px 10px 8px 0px;
394
  line-height: 20px;
395
  float: left;
389
  }
390
 
391
  .metaseo_analysis{
392
+ width: 60%;
393
  padding: 8px 10px 8px 0px;
394
  line-height: 20px;
395
  float: left;
css/metaseo-quirk.css CHANGED
@@ -724,7 +724,7 @@ pre code {
724
 
725
  .col-sm-6 {
726
  width: 50%;
727
- max-height: 170px;
728
  }
729
 
730
  .col-sm-5 {
@@ -2341,3 +2341,12 @@ a.text-danger:focus {
2341
  .toplevel_page_metaseo_dashboard div.progress div.progress-bar span.sr-only {
2342
  display: none;
2343
  }
 
 
 
 
 
 
 
 
 
724
 
725
  .col-sm-6 {
726
  width: 50%;
727
+ max-height: 180px;
728
  }
729
 
730
  .col-sm-5 {
2341
  .toplevel_page_metaseo_dashboard div.progress div.progress-bar span.sr-only {
2342
  display: none;
2343
  }
2344
+
2345
+ .metaseo-qtip {
2346
+ font-size: 14px !important;
2347
+ line-height: 18px !important;
2348
+ }
2349
+
2350
+ .metaseo-qtip-dashboard{
2351
+ max-width: 450px !important;
2352
+ }
css/metaseo_admin.css CHANGED
@@ -49,7 +49,7 @@ and open the template in the editor.
49
  /* Snippet */
50
  .snippet {
51
  border:none;
52
- padding: 4px;
53
  margin-top: 2px;
54
  }
55
 
@@ -77,7 +77,8 @@ a.snippet_metatitle:hover {
77
 
78
  a.info-content {
79
  outline:none;
80
- padding-right: 10px;
 
81
  }
82
 
83
  a.info-content:hover {
@@ -140,9 +141,10 @@ a.info-content .tooltip-metacontent
140
  float:left;
141
  }
142
  .snippet-wrapper{
143
- width:60%;
144
  float:left;
145
- margin-left:2%
 
146
  }
147
 
148
  @media all and (max-width:768px){
49
  /* Snippet */
50
  .snippet {
51
  border:none;
52
+ /* padding: 4px;*/
53
  margin-top: 2px;
54
  }
55
 
77
 
78
  a.info-content {
79
  outline:none;
80
+ /* padding-right: 10px;*/
81
+ margin-left: 10px;
82
  }
83
 
84
  a.info-content:hover {
141
  float:left;
142
  }
143
  .snippet-wrapper{
144
+ width:100%;
145
  float:left;
146
+ /* margin-left:2%*/
147
+ margin-top: 20px;
148
  }
149
 
150
  @media all and (max-width:768px){
inc/class.metaseo-admin.php CHANGED
@@ -51,7 +51,57 @@ class MetaSeo_Admin {
51
  add_action('admin_init', array($this,'metaseo_field_settings'));
52
  add_action('init', array($this,'wpms_load_langguage'));
53
  add_action('wp_ajax_metaseo_reload_analysis',array($this,'metaseo_reload_analysis'));
54
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
55
  }
56
 
57
  function wpms_load_langguage(){
@@ -59,6 +109,15 @@ class MetaSeo_Admin {
59
  }
60
 
61
  function metaseo_reload_analysis() {
 
 
 
 
 
 
 
 
 
62
  if(empty($_POST['datas'])){
63
  wp_send_json(false);
64
  }
@@ -74,6 +133,7 @@ class MetaSeo_Admin {
74
  foreach ($words_meta_title as $mtitle){
75
  if(in_array($mtitle, $words_post_title) && $mtitle != ''){
76
  $test = true;
 
77
  }
78
  }
79
  }else{
@@ -81,14 +141,14 @@ class MetaSeo_Admin {
81
  }
82
 
83
  if($test){
84
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page title word in content heading','wpms').'</div>';
85
  $check ++;
86
  }else{
87
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Page title word in content heading','wpms').'</div>';
88
  }
89
 
90
  }else{
91
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page title word in content heading','wpms').'</div>';
92
  $check ++;
93
  }
94
 
@@ -101,6 +161,7 @@ class MetaSeo_Admin {
101
  foreach ($words_title as $mtitle){
102
  if(in_array($mtitle, $words_post_content) && $mtitle != ''){
103
  $test1 = true;
 
104
  }
105
  }
106
  }else{
@@ -108,41 +169,41 @@ class MetaSeo_Admin {
108
  }
109
 
110
  if($test1){
111
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page title word in content','wpms').'</div>';
112
  $check ++;
113
  }else{
114
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Page title word in content','wpms').'</div>';
115
  }
116
 
117
  // page url matches page title
118
  $mtitle = $_POST['datas']['title'];
119
  if($_POST['datas']['mpageurl'] == sanitize_title($mtitle)){
120
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page url matches with page title','wpms').'</div>';
121
  $check ++;
122
  }else{
123
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Page url matches with page title','wpms').'</div>';
124
  }
125
 
126
  // meta title filled
127
  if($_POST['datas']['meta_title'] != '' && strlen($_POST['datas']['meta_title']) <= self::$title_length){
128
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Meta title filled','wpms').'</div>';
129
  $check++;
130
  }else{
131
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Meta title filled','wpms').'</div>';
132
  }
133
 
134
  // desc filled
135
  if($_POST['datas']['meta_desc'] != '' && strlen($_POST['datas']['meta_desc']) <= self::$desc_length){
136
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Meta description filled','wpms').'</div>';
137
  $check++;
138
  }else{
139
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Meta description filled','wpms').'</div>';
140
  }
141
 
142
  // image resize
143
  if($_POST['datas']['content'] == '') {
144
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Wrong image resize','wpms').'</div>';
145
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Image have meta title or alt','wpms').'</div>';
146
  $check += 2;
147
  }else{
148
  $dom = new DOMDocument;
@@ -172,21 +233,21 @@ class MetaSeo_Admin {
172
  }
173
 
174
  if($img_wrong){
175
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Wrong image resize','wpms').'</div>';
176
  }else{
177
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Wrong image resize','wpms').'</div>';
178
  $check++;
179
  }
180
 
181
  if($img_wrong_alt){
182
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Image have meta title or alt','wpms').'</div>';
183
  }else{
184
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Image have meta title or alt','wpms').'</div>';
185
  $check++;
186
  }
187
 
188
  }else{
189
- $output .= '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Wrong image resize','wpms').'</div>';
190
  }
191
  }
192
 
@@ -346,6 +407,8 @@ class MetaSeo_Admin {
346
  wp_enqueue_script('metaseo-dashboard', plugins_url('js/dashboard.js', dirname(__FILE__)), array('jquery'), WPMSEO_VERSION, true);
347
  wp_enqueue_style('chart', plugins_url('/css/chart.css', dirname(__FILE__) ) );
348
  wp_enqueue_style('metaseo-quirk', plugins_url('/css/metaseo-quirk.css', dirname(__FILE__) ) );
 
 
349
  }
350
 
351
  if($current_screen->base == 'wp-meta-seo_page_metaseo_image_meta'){
51
  add_action('admin_init', array($this,'metaseo_field_settings'));
52
  add_action('init', array($this,'wpms_load_langguage'));
53
  add_action('wp_ajax_metaseo_reload_analysis',array($this,'metaseo_reload_analysis'));
54
+
55
+ if(!get_option('wpms_set_ignore', false)){
56
+ add_option('wpms_set_ignore', 1, '', 'yes' );
57
+ }
58
+
59
+ add_action('wp_ajax_wpms_set_ignore',array($this,'wpms_set_ignore'));
60
+ if ( '0' == get_option( 'blog_public' )) {
61
+ add_action( 'admin_footer', array( $this, 'wpms_public_warning' ) );
62
+ }
63
+ }
64
+
65
+ function wpms_set_ignore(){
66
+ update_option('wpms_set_ignore', 0);
67
+ wp_send_json(true);
68
+ }
69
+
70
+ function wpms_public_warning() {
71
+ if ( ( function_exists( 'is_network_admin' ) && is_network_admin() ) ) {
72
+ return;
73
+ }
74
+
75
+ if(get_option('wpms_set_ignore') == 0){
76
+ return;
77
+ }
78
+
79
+ echo '<script type="text/javascript">'.PHP_EOL
80
+ . 'function wpmsSetIgnore(option, hide, nonce){'.PHP_EOL
81
+ .'jQuery.post( ajaxurl, {'.PHP_EOL
82
+ .'action: "wpms_set_ignore"'.PHP_EOL
83
+ .'}, function( data ) {'.PHP_EOL
84
+ .'if ( data ) {'.PHP_EOL
85
+ .'jQuery( "#" + hide ).hide();'.PHP_EOL
86
+ . '}'.PHP_EOL
87
+ . '}'.PHP_EOL
88
+ . ');'.PHP_EOL
89
+ . '}'.PHP_EOL
90
+ . '</script>';
91
+
92
+ printf( '
93
+ <div id="robotsmessage" class="error">
94
+ <p>
95
+ <strong>%1$s</strong>
96
+ %2$s
97
+ <a href="javascript:wpmsSetIgnore(\'wpms_public_warning\',\'robotsmessage\',\'%3$s\');" class="button">%4$s</a>
98
+ </p>
99
+ </div>',
100
+ __( 'Your website is not indexed by search engine because of your WordPress settings.', 'wpms' ),
101
+ sprintf( __( '%sFix it now%s', 'wpms' ), sprintf( '<a href="%s">', esc_url( admin_url( 'options-reading.php' ) ) ), '</a>' ),
102
+ esc_js( wp_create_nonce( 'wpseo-ignore' ) ),
103
+ __( 'OK I know that.', 'wpms' )
104
+ );
105
  }
106
 
107
  function wpms_load_langguage(){
109
  }
110
 
111
  function metaseo_reload_analysis() {
112
+ $tooltip_page = array();
113
+ $tooltip_page['title_in_heading'] = __('Check if a word of this content title is also in a title heading (h1, h2...)','wpms');
114
+ $tooltip_page['title_in_content'] = __('Check if a word of this content title is also in the text','wpms');
115
+ $tooltip_page['page_url'] = __('Does the page title match with the permalink (URL structure)','wpms');
116
+ $tooltip_page['meta_title'] = __('Is the meta title of this page filled?','wpms');
117
+ $tooltip_page['meta_desc'] = __('Is the meta description of this page filled?','wpms');
118
+ $tooltip_page['image_resize'] = __('Check for image HTML resizing in content (usually image resized using handles)','wpms');
119
+ $tooltip_page['image_alt'] = __('Check for image Alt text and title','wpms');
120
+
121
  if(empty($_POST['datas'])){
122
  wp_send_json(false);
123
  }
133
  foreach ($words_meta_title as $mtitle){
134
  if(in_array($mtitle, $words_post_title) && $mtitle != ''){
135
  $test = true;
136
+ break;
137
  }
138
  }
139
  }else{
141
  }
142
 
143
  if($test){
144
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['title_in_heading'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page title word in content heading','wpms').'</div>';
145
  $check ++;
146
  }else{
147
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['title_in_heading'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Page title word in content heading','wpms').'</div>';
148
  }
149
 
150
  }else{
151
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['title_in_heading'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page title word in content heading','wpms').'</div>';
152
  $check ++;
153
  }
154
 
161
  foreach ($words_title as $mtitle){
162
  if(in_array($mtitle, $words_post_content) && $mtitle != ''){
163
  $test1 = true;
164
+ break;
165
  }
166
  }
167
  }else{
169
  }
170
 
171
  if($test1){
172
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['title_in_content'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page title word in content','wpms').'</div>';
173
  $check ++;
174
  }else{
175
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['title_in_content'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Page title word in content','wpms').'</div>';
176
  }
177
 
178
  // page url matches page title
179
  $mtitle = $_POST['datas']['title'];
180
  if($_POST['datas']['mpageurl'] == sanitize_title($mtitle)){
181
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['page_url'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page url matches with page title','wpms').'</div>';
182
  $check ++;
183
  }else{
184
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['page_url'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Page url matches with page title','wpms').'</div>';
185
  }
186
 
187
  // meta title filled
188
  if($_POST['datas']['meta_title'] != '' && strlen($_POST['datas']['meta_title']) <= self::$title_length){
189
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['meta_title'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Meta title filled','wpms').'</div>';
190
  $check++;
191
  }else{
192
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['meta_title'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Meta title filled','wpms').'</div>';
193
  }
194
 
195
  // desc filled
196
  if($_POST['datas']['meta_desc'] != '' && strlen($_POST['datas']['meta_desc']) <= self::$desc_length){
197
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['meta_desc'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Meta description filled','wpms').'</div>';
198
  $check++;
199
  }else{
200
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['meta_desc'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Meta description filled','wpms').'</div>';
201
  }
202
 
203
  // image resize
204
  if($_POST['datas']['content'] == '') {
205
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['image_resize'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Wrong image resize','wpms').'</div>';
206
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['image_alt'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Image have meta title or alt','wpms').'</div>';
207
  $check += 2;
208
  }else{
209
  $dom = new DOMDocument;
233
  }
234
 
235
  if($img_wrong){
236
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['image_resize'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Wrong image resize','wpms').'</div>';
237
  }else{
238
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['image_resize'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Wrong image resize','wpms').'</div>';
239
  $check++;
240
  }
241
 
242
  if($img_wrong_alt){
243
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['image_alt'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Image have meta title or alt','wpms').'</div>';
244
  }else{
245
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['image_alt'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Image have meta title or alt','wpms').'</div>';
246
  $check++;
247
  }
248
 
249
  }else{
250
+ $output .= '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['image_resize'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Wrong image resize','wpms').'</div>';
251
  }
252
  }
253
 
407
  wp_enqueue_script('metaseo-dashboard', plugins_url('js/dashboard.js', dirname(__FILE__)), array('jquery'), WPMSEO_VERSION, true);
408
  wp_enqueue_style('chart', plugins_url('/css/chart.css', dirname(__FILE__) ) );
409
  wp_enqueue_style('metaseo-quirk', plugins_url('/css/metaseo-quirk.css', dirname(__FILE__) ) );
410
+ wp_enqueue_style('m-style-qtip', plugins_url('css/jquery.qtip.css', WPMSEO_FILE), array(), WPMSEO_VERSION);
411
+ wp_enqueue_script('jquery-qtip', plugins_url('js/jquery.qtip.min.js', WPMSEO_FILE), array('jquery'), '2.2.1', true);
412
  }
413
 
414
  if($current_screen->base == 'wp-meta-seo_page_metaseo_image_meta'){
inc/class.metaseo-content-list-table.php CHANGED
@@ -125,10 +125,17 @@ class MetaSeo_Content_List_Table extends WP_List_Table {
125
  }
126
 
127
  function get_columns() {
 
 
 
 
 
 
128
  return $columns = array(
129
  'cb' => '<input id="cb-select-all-1" type="checkbox" style="margin:0">',
130
  'col_id' => __('', 'wpms'),
131
  'col_title' => __('Title', 'wpms'),
 
132
  'col_meta_title' => __('Meta Title', 'wpms'),
133
  'col_meta_desc' => __('Meta Description', 'wpms')
134
  );
@@ -320,32 +327,20 @@ class MetaSeo_Content_List_Table extends WP_List_Table {
320
  }
321
 
322
  echo $this->row_actions($actions);
323
- echo '</div><div class="snippet-wrapper">';
324
- $preview = __(" This is a rendering of what this post might look like in Google's search results.", 'wpms');
325
- $info = sprintf('<a class="info-content"><img src=' . WPMETASEO_PLUGIN_URL . 'img/info.png href="#">'
326
- . '<p class="tooltip-metacontent">'
327
- .$preview
328
- .'</p></a>');
329
-
330
- echo '<div><strong>' . __('Snippet Preview', 'wpms') . '</strong> ' . $info. '</div>';
331
 
332
- echo '<div class="snippet">
333
- <a id="snippet_title'.$rec->ID . '" class="snippet_metatitle">'.(!empty($rec->metatitle) ? $rec->metatitle : $rec->post_title).'</a>';
334
-
335
- echo '
336
- <span class="snippet_metalink" id="snippet_metalink_'.$rec->ID.'">'.$rec->link.'</span>';
337
-
338
- echo '
339
- <p id="snippet_desc'.$rec->ID . '" class="snippet_metades">'.$rec->metadesc.'</p>
340
- </div>';
341
- echo '
342
- <span id="savedInfo'.$rec->ID.'" style="position: relative; display: block;float:right" class="saved-info metaseo-msg-success"><span style="position:absolute; float:right" class="meta-update"></span></span>';
343
- //echo '<span id="savedInfo'.$rec->ID.'" class="savedInfo" style="display:none;"></span>';
344
- echo '</div>';
345
- // echo sprintf('<div %2$s>%1$s</div>', $info, $attributes);
346
-
347
-
348
 
 
 
 
 
 
 
 
 
 
 
349
  break;
350
  case 'col_page_slug':
351
  $permalink = get_permalink($rec->ID);
125
  }
126
 
127
  function get_columns() {
128
+ $preview = __(" This is a rendering of what this post might look like in Google's search results.", 'wpms');
129
+ $info = sprintf('<a class="info-content"><img src=' . WPMETASEO_PLUGIN_URL . 'img/info.png href="#">'
130
+ . '<p class="tooltip-metacontent">'
131
+ .$preview
132
+ .'</p></a>');
133
+
134
  return $columns = array(
135
  'cb' => '<input id="cb-select-all-1" type="checkbox" style="margin:0">',
136
  'col_id' => __('', 'wpms'),
137
  'col_title' => __('Title', 'wpms'),
138
+ 'col_snippet' => __('Snippet Preview'.$info, 'wpms'),
139
  'col_meta_title' => __('Meta Title', 'wpms'),
140
  'col_meta_desc' => __('Meta Description', 'wpms')
141
  );
327
  }
328
 
329
  echo $this->row_actions($actions);
330
+ echo '</div></td>';
 
 
 
 
 
 
 
331
 
332
+ break;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
333
 
334
+ case 'col_snippet':
335
+ echo '<td><div class="snippet-wrapper">';
336
+ echo '<div class="snippet">
337
+ <a id="snippet_title' . $rec->ID . '" class="snippet_metatitle">' . (!empty($rec->metatitle) ? $rec->metatitle : $rec->post_title) . '</a>';
338
+
339
+ echo '<span class="snippet_metalink" id="snippet_metalink_' . $rec->ID . '">' . $rec->link . '</span>';
340
+
341
+ echo '<p id="snippet_desc' . $rec->ID . '" class="snippet_metades">' . $rec->metadesc . '</p></div>';
342
+ echo '<span id="savedInfo' . $rec->ID . '" style="position: relative; display: block;float:right" class="saved-info metaseo-msg-success"><span style="position:absolute; float:right" class="meta-update"></span></span>';
343
+ echo '</div></td>';
344
  break;
345
  case 'col_page_slug':
346
  $permalink = get_permalink($rec->ID);
inc/class.metaseo-metabox.php CHANGED
@@ -259,7 +259,7 @@ class WPMSEO_Metabox extends WPMSEO_Meta {
259
  echo '</div>';
260
  }
261
 
262
- function metaseo_check_headingtitle($post,$meta_title){
263
  if($meta_title != ''){
264
  $words_meta_title = preg_split('~[^\p{L}\p{N}\']+~u',strtolower($meta_title));//explode(' ' , strtolower($meta_title));
265
  $words_post_title = preg_split('~[^\p{L}\p{N}\']+~u',strtolower($post->post_title)); //explode(' ' , strtolower($post->post_title));
@@ -270,27 +270,28 @@ class WPMSEO_Metabox extends WPMSEO_Meta {
270
  foreach ($words_meta_title as $mtitle){
271
  if(in_array($mtitle, $words_post_title) && $mtitle!=''){
272
  $test = true;
 
273
  }
274
  }
275
  }else{
276
  $test = false;
277
  }
278
-
279
  if($test){
280
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page title word in content heading','wpms').'</div>';
281
  $this->perc_score++;
282
  }else{
283
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Page title word in content heading','wpms').'</div>';
284
  }
285
 
286
  }else{
287
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page title word in content heading','wpms').'</div>';
288
  $this->perc_score++;
289
  }
290
  return $output;
291
  }
292
 
293
- function metaseo_check_content($post){
294
  $words_meta_title = preg_split('~[^\p{L}\p{N}\']+~u',strtolower($post->post_title));
295
  $words_post_content = preg_split('~[^\p{L}\p{N}\']+~u',strtolower($post->post_content));
296
  $test1 = false;
@@ -298,6 +299,7 @@ class WPMSEO_Metabox extends WPMSEO_Meta {
298
  foreach ($words_meta_title as $mtitle){
299
  if(in_array($mtitle, $words_post_content) && $mtitle!=''){
300
  $test1 = true;
 
301
  }
302
  }
303
  }else{
@@ -305,52 +307,52 @@ class WPMSEO_Metabox extends WPMSEO_Meta {
305
  }
306
 
307
  if($test1){
308
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page title word in content','wpms').'</div>';
309
  $this->perc_score++;
310
  }else{
311
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Page title word in content','wpms').'</div>';
312
  }
313
 
314
  return $output;
315
  }
316
 
317
- function metaseo_check_pageurl($post){
318
  $pageurl = get_permalink($post->ID);
319
  $info = pathinfo($pageurl);
320
 
321
  if($info['filename'] == sanitize_title($post->post_title)){
322
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page url matches with page title','wpms').'</div>';
323
  $this->perc_score++;
324
  }else{
325
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Page url matches with page title','wpms').'</div>';
326
  }
327
 
328
  return $output;
329
  }
330
 
331
- function metaseo_check_metatitle($meta_title){
332
  if($meta_title != '' && strlen($meta_title) <= self::$meta_title_length){
333
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Meta title filled','wpms').'</div>';
334
  $this->perc_score++;
335
  }else{
336
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Meta title filled','wpms').'</div>';
337
  }
338
  return $output;
339
  }
340
 
341
- function metaseo_check_metadesc($meta_desc){
342
  if($meta_desc != '' && strlen($meta_desc) <= self::$meta_length){
343
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Meta description filled','wpms').'</div>';
344
  $this->perc_score++;
345
  }else{
346
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Meta description filled','wpms').'</div>';
347
  }
348
  return $output;
349
  }
350
 
351
- function metaseo_check_imageresize($content){
352
  if($content == '') {
353
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Wrong image resize','wpms').'</div>';
354
  $this->perc_score++;
355
  return $output;
356
  }
@@ -373,21 +375,21 @@ class WPMSEO_Metabox extends WPMSEO_Meta {
373
  }
374
 
375
  if($img_wrong){
376
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Wrong image resize','wpms').'</div>';
377
  }else{
378
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Wrong image resize','wpms').'</div>';
379
  $this->perc_score++;
380
  }
381
 
382
  }else{
383
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Wrong image resize','wpms').'</div>';
384
  }
385
  return $output;
386
  }
387
 
388
- function metaseo_check_imagealt($content){
389
  if($content == '') {
390
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Image have meta title or alt','wpms').'</div>';
391
  $this->perc_score++;
392
  return $output;
393
  }
@@ -405,9 +407,9 @@ class WPMSEO_Metabox extends WPMSEO_Meta {
405
  }
406
 
407
  if($img_wrong){
408
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Image have meta title or alt','wpms').'</div>';
409
  }else{
410
- $output = '<div class="metaseo_analysis"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Image have meta title or alt','wpms').'</div>';
411
  $this->perc_score++;
412
  }
413
 
@@ -418,15 +420,24 @@ class WPMSEO_Metabox extends WPMSEO_Meta {
418
  }
419
 
420
  function metaseo_page_analysis($post) {
 
 
 
 
 
 
 
 
 
421
  $meta_title = get_post_meta($post->ID, '_metaseo_metatitle', true);
422
  $meta_desc = get_post_meta($post->ID, '_metaseo_metadesc', true);
423
- $headingtitle = $this->metaseo_check_headingtitle($post,$meta_title);
424
- $contenttitle = $this->metaseo_check_content($post);
425
- $output_pageurl = $this->metaseo_check_pageurl($post);
426
- $output_metatitle = $this->metaseo_check_metatitle($meta_title);
427
- $output_metadesc = $this->metaseo_check_metadesc($meta_desc);
428
- $output_imagewrong = $this->metaseo_check_imageresize($post->post_content);
429
- $output_imagealt = $this->metaseo_check_imagealt($post->post_content);
430
 
431
  $output = '';
432
  $circliful = ceil(100*($this->perc_score)/7);
259
  echo '</div>';
260
  }
261
 
262
+ function metaseo_check_headingtitle($post,$meta_title,$tooltip_page){
263
  if($meta_title != ''){
264
  $words_meta_title = preg_split('~[^\p{L}\p{N}\']+~u',strtolower($meta_title));//explode(' ' , strtolower($meta_title));
265
  $words_post_title = preg_split('~[^\p{L}\p{N}\']+~u',strtolower($post->post_title)); //explode(' ' , strtolower($post->post_title));
270
  foreach ($words_meta_title as $mtitle){
271
  if(in_array($mtitle, $words_post_title) && $mtitle!=''){
272
  $test = true;
273
+ break;
274
  }
275
  }
276
  }else{
277
  $test = false;
278
  }
279
+
280
  if($test){
281
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['title_in_heading'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page title word in content heading','wpms').'</div>';
282
  $this->perc_score++;
283
  }else{
284
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['title_in_heading'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Page title word in content heading','wpms').'</div>';
285
  }
286
 
287
  }else{
288
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['title_in_heading'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page title word in content heading','wpms').'</div>';
289
  $this->perc_score++;
290
  }
291
  return $output;
292
  }
293
 
294
+ function metaseo_check_content($post,$tooltip_page){
295
  $words_meta_title = preg_split('~[^\p{L}\p{N}\']+~u',strtolower($post->post_title));
296
  $words_post_content = preg_split('~[^\p{L}\p{N}\']+~u',strtolower($post->post_content));
297
  $test1 = false;
299
  foreach ($words_meta_title as $mtitle){
300
  if(in_array($mtitle, $words_post_content) && $mtitle!=''){
301
  $test1 = true;
302
+ break;
303
  }
304
  }
305
  }else{
307
  }
308
 
309
  if($test1){
310
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['title_in_content'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page title word in content','wpms').'</div>';
311
  $this->perc_score++;
312
  }else{
313
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['title_in_content'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Page title word in content','wpms').'</div>';
314
  }
315
 
316
  return $output;
317
  }
318
 
319
+ function metaseo_check_pageurl($post,$tooltip_page){
320
  $pageurl = get_permalink($post->ID);
321
  $info = pathinfo($pageurl);
322
 
323
  if($info['filename'] == sanitize_title($post->post_title)){
324
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['page_url'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Page url matches with page title','wpms').'</div>';
325
  $this->perc_score++;
326
  }else{
327
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['page_url'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Page url matches with page title','wpms').'</div>';
328
  }
329
 
330
  return $output;
331
  }
332
 
333
+ function metaseo_check_metatitle($meta_title,$tooltip_page){
334
  if($meta_title != '' && strlen($meta_title) <= self::$meta_title_length){
335
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['meta_title'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Meta title filled','wpms').'</div>';
336
  $this->perc_score++;
337
  }else{
338
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['meta_title'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Meta title filled','wpms').'</div>';
339
  }
340
  return $output;
341
  }
342
 
343
+ function metaseo_check_metadesc($meta_desc,$tooltip_page){
344
  if($meta_desc != '' && strlen($meta_desc) <= self::$meta_length){
345
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['meta_desc'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Meta description filled','wpms').'</div>';
346
  $this->perc_score++;
347
  }else{
348
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['meta_desc'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Meta description filled','wpms').'</div>';
349
  }
350
  return $output;
351
  }
352
 
353
+ function metaseo_check_imageresize($content,$tooltip_page){
354
  if($content == '') {
355
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.__('Check if a word of this content title is also in a title heading (h1, h2...)','wpms').'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Wrong image resize','wpms').'</div>';
356
  $this->perc_score++;
357
  return $output;
358
  }
375
  }
376
 
377
  if($img_wrong){
378
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['image_resize'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Wrong image resize','wpms').'</div>';
379
  }else{
380
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['image_resize'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Wrong image resize','wpms').'</div>';
381
  $this->perc_score++;
382
  }
383
 
384
  }else{
385
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['image_resize'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Wrong image resize','wpms').'</div>';
386
  }
387
  return $output;
388
  }
389
 
390
+ function metaseo_check_imagealt($content,$tooltip_page){
391
  if($content == '') {
392
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['image_alt'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Image have meta title or alt','wpms').'</div>';
393
  $this->perc_score++;
394
  return $output;
395
  }
407
  }
408
 
409
  if($img_wrong){
410
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['image_alt'].'"><div class="metaseo-dashicons dashicons-before icons-mwarning"></div>'.__('Image have meta title or alt','wpms').'</div>';
411
  }else{
412
+ $output = '<div class="metaseo_analysis metaseo_tool" alt="'.$tooltip_page['image_alt'].'"><div class="metaseo-dashicons dashicons-before dashicons-yes"></div>'.__('Image have meta title or alt','wpms').'</div>';
413
  $this->perc_score++;
414
  }
415
 
420
  }
421
 
422
  function metaseo_page_analysis($post) {
423
+ $tooltip_page = array();
424
+ $tooltip_page['title_in_heading'] = __('Check if a word of this content title is also in a title heading (h1, h2...)','wpms');
425
+ $tooltip_page['title_in_content'] = __('Check if a word of this content title is also in the text','wpms');
426
+ $tooltip_page['page_url'] = __('Does the page title match with the permalink (URL structure)','wpms');
427
+ $tooltip_page['meta_title'] = __('Is the meta title of this page filled?','wpms');
428
+ $tooltip_page['meta_desc'] = __('Is the meta description of this page filled?','wpms');
429
+ $tooltip_page['image_resize'] = __('Check for image HTML resizing in content (usually image resized using handles)','wpms');
430
+ $tooltip_page['image_alt'] = __('Check for image Alt text and title','wpms');
431
+
432
  $meta_title = get_post_meta($post->ID, '_metaseo_metatitle', true);
433
  $meta_desc = get_post_meta($post->ID, '_metaseo_metadesc', true);
434
+ $headingtitle = $this->metaseo_check_headingtitle($post,$meta_title,$tooltip_page);
435
+ $contenttitle = $this->metaseo_check_content($post,$tooltip_page);
436
+ $output_pageurl = $this->metaseo_check_pageurl($post,$tooltip_page);
437
+ $output_metatitle = $this->metaseo_check_metatitle($meta_title,$tooltip_page);
438
+ $output_metadesc = $this->metaseo_check_metadesc($meta_desc,$tooltip_page);
439
+ $output_imagewrong = $this->metaseo_check_imageresize($post->post_content,$tooltip_page);
440
+ $output_imagealt = $this->metaseo_check_imagealt($post->post_content,$tooltip_page);
441
 
442
  $output = '';
443
  $circliful = ceil(100*($this->perc_score)/7);
inc/pages/dashboard.php CHANGED
@@ -27,7 +27,7 @@ if(!empty($results_image['imgs_metas_statis'][1])){
27
  <div class="dashboard">
28
  <div class="col-md-9">
29
  <div class="row panel-statistics">
30
- <div class="col-sm-6">
31
  <div class="panel panel-updates">
32
  <div class="panel-body">
33
  <div class="row">
@@ -49,7 +49,7 @@ if(!empty($results_image['imgs_metas_statis'][1])){
49
  </div>
50
  </div>
51
 
52
- <div class="col-sm-6">
53
  <div class="panel panel-danger-full panel-updates">
54
  <div class="panel-body">
55
  <div class="row">
@@ -71,7 +71,7 @@ if(!empty($results_image['imgs_metas_statis'][1])){
71
  </div>
72
  </div>
73
 
74
- <div class="col-sm-6">
75
  <div class="panel panel-success-full panel-updates">
76
  <div class="panel-body">
77
  <div class="row">
@@ -93,7 +93,7 @@ if(!empty($results_image['imgs_metas_statis'][1])){
93
  </div>
94
  </div>
95
 
96
- <div class="col-sm-6">
97
  <div class="panel panel-updates">
98
  <div class="panel-body">
99
  <div class="row">
@@ -115,7 +115,7 @@ if(!empty($results_image['imgs_metas_statis'][1])){
115
  </div>
116
  </div>
117
 
118
- <div class="col-sm-6">
119
  <div class="panel panel-updates">
120
  <div class="panel-body">
121
  <div class="row">
@@ -137,7 +137,7 @@ if(!empty($results_image['imgs_metas_statis'][1])){
137
  </div>
138
  </div>
139
 
140
- <div class="col-sm-6">
141
  <div class="panel panel-danger-full panel-updates">
142
  <div class="panel-body">
143
  <div class="row">
27
  <div class="dashboard">
28
  <div class="col-md-9">
29
  <div class="row panel-statistics">
30
+ <div class="col-sm-6 metaseo_tool" alt="<?php _e('It’s better using a permalink structure that is adding in your URL the category name and content title. This parameter can be changed in Settings > Permalinks WordPress menu. Tag recommended is %category%/%postname%','wpms') ?>">
31
  <div class="panel panel-updates">
32
  <div class="panel-body">
33
  <div class="row">
49
  </div>
50
  </div>
51
 
52
+ <div class="col-sm-6 metaseo_tool-000" alt="<?php _e('Meta titles are displayed in search engine results as a page title. It’s a good thing for SEO to have some custom and attractive ones. Be sure to fill at least the met information on your most popular pages','wpms') ?>">
53
  <div class="panel panel-danger-full panel-updates">
54
  <div class="panel-body">
55
  <div class="row">
71
  </div>
72
  </div>
73
 
74
+ <div class="col-sm-6 metaseo_tool-000" alt="<?php _e('Meta descriptions are displayed in search engine results as a page description. It’s a good thing for SEO to have some custom and attractive ones. Be sure to fill at least the meta information on your most popular pages.','wpms') ?>">
75
  <div class="panel panel-success-full panel-updates">
76
  <div class="panel-body">
77
  <div class="row">
93
  </div>
94
  </div>
95
 
96
+ <div class="col-sm-6 metaseo_tool" alt="<?php _e('Display image at its natural size, do not use HTML resize. It happens usually when you use handles to resize an image. You have a bulk edition tool to fix that.','wpms') ?>">
97
  <div class="panel panel-updates">
98
  <div class="panel-body">
99
  <div class="row">
115
  </div>
116
  </div>
117
 
118
+ <div class="col-sm-6 metaseo_tool" alt="<?php _e('We recommend to use both alt text and image title. The main advantage is that it helps search engines discover your images and display them in image search results. Plus, these tags improve the accessibility of your site and give more information about your images. Use our bulk image tool to quickly check and fix that.','wpms') ?>">
119
  <div class="panel panel-updates">
120
  <div class="panel-body">
121
  <div class="row">
137
  </div>
138
  </div>
139
 
140
+ <div class="col-sm-6 metaseo_tool-000" alt="<?php _e('It is highly recommended to update or add new content on your website quite frequently. At least 3 updated or new content per month would be great :)','wpms') ?>">
141
  <div class="panel panel-danger-full panel-updates">
142
  <div class="panel-body">
143
  <div class="row">
js/cliffpyles.js CHANGED
@@ -32,6 +32,27 @@ jQuery(document).ready(function ($) {
32
  $('.wpmseotab .spinner').hide();
33
  $('.metaseo_right').html(res.output);
34
  $('#progressController').val(res.circliful).change();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
35
  }
36
  }
37
  });
32
  $('.wpmseotab .spinner').hide();
33
  $('.metaseo_right').html(res.output);
34
  $('#progressController').val(res.circliful).change();
35
+ jQuery('.metaseo_tool').qtip({
36
+ content: {
37
+ attr: 'alt'
38
+ },
39
+ position: {
40
+ my: 'bottom left',
41
+ at: 'top center'
42
+ },
43
+ style: {
44
+ tip: {
45
+ corner: true
46
+ },
47
+ classes: 'metaseo-qtip qtip-rounded'
48
+ },
49
+ show: 'hover',
50
+ hide: {
51
+ fixed: true,
52
+ delay: 100
53
+ }
54
+
55
+ });
56
  }
57
  }
58
  });
js/dashboard.js CHANGED
@@ -32,5 +32,49 @@ jQuery(document).ready(function ($) {
32
  fgColor: '#fff',
33
  inputColor: '#fff'
34
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
35
 
36
  });
32
  fgColor: '#fff',
33
  inputColor: '#fff'
34
  });
35
+
36
+ jQuery('.metaseo_tool').qtip({
37
+ content: {
38
+ attr: 'alt'
39
+ },
40
+ position: {
41
+ my: 'bottom left',
42
+ at: 'bottom left'
43
+ },
44
+ style: {
45
+ tip: {
46
+ corner: true,
47
+ },
48
+ classes: 'metaseo-qtip qtip-rounded metaseo-qtip-dashboard'
49
+ },
50
+ show: 'hover',
51
+ hide: {
52
+ fixed: true,
53
+ delay: 10
54
+ }
55
+
56
+ });
57
+
58
+ jQuery('.metaseo_tool-000').qtip({
59
+ content: {
60
+ attr: 'alt'
61
+ },
62
+ position: {
63
+ my: 'bottom left',
64
+ at: 'bottom left'
65
+ },
66
+ style: {
67
+ tip: {
68
+ corner: true,
69
+ },
70
+ classes: 'metaseo-qtip metaseo-qtip-000 qtip-rounded metaseo-qtip-dashboard'
71
+ },
72
+ show: 'hover',
73
+ hide: {
74
+ fixed: true,
75
+ delay: 10
76
+ }
77
+
78
+ });
79
 
80
  });
js/wp-metaseo-metabox.js CHANGED
@@ -359,7 +359,7 @@ jQuery(document).ready(function ($) {
359
  tip: {
360
  corner: true
361
  },
362
- classes: 'metaseo-qtip qtip-rounded qtip-blue'
363
  },
364
  show: 'click',
365
  hide: {
@@ -368,4 +368,26 @@ jQuery(document).ready(function ($) {
368
  }
369
 
370
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
371
  });
359
  tip: {
360
  corner: true
361
  },
362
+ classes: 'metaseo-qtip qtip-rounded'
363
  },
364
  show: 'click',
365
  hide: {
368
  }
369
 
370
  });
371
+
372
+ jQuery('.metaseo_tool').qtip({
373
+ content: {
374
+ attr: 'alt'
375
+ },
376
+ position: {
377
+ my: 'bottom left',
378
+ at: 'top center'
379
+ },
380
+ style: {
381
+ tip: {
382
+ corner: true
383
+ },
384
+ classes: 'metaseo-qtip qtip-rounded'
385
+ },
386
+ show: 'hover',
387
+ hide: {
388
+ fixed: true,
389
+ delay: 100
390
+ }
391
+
392
+ });
393
  });
languages/wpms-fr_FR.mo CHANGED
Binary file
languages/wpms-fr_FR.po CHANGED
@@ -5,11 +5,11 @@ msgstr ""
5
  "PO-Revision-Date: \n"
6
  "Last-Translator: \n"
7
  "Language-Team: \n"
 
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
- "Language: fr_FR\n"
12
- "X-Generator: Poedit 1.7.4\n"
13
 
14
  msgid "Twitter username (without @)"
15
  msgstr "ID Twitter (sans le @)"
@@ -17,68 +17,110 @@ msgstr "ID Twitter (sans le @)"
17
  msgid "Facebook profile URL"
18
  msgstr "Adresse URL du profil Facebook"
19
 
20
- msgid "Be careful you installed 2 extensions doing almost the same thing, please deactivate AIOSEO or Yoast in order to work more clearly!"
21
- msgstr "Attention plusieurs plugins sont susceptibles d'effectuer les même tâches, essayez de désactiver AIO SEO ou Yoast SEO"
 
 
 
 
22
 
23
- msgid "We have found that you’re using All In One Pack Plugin, WP Meta SEO can import the meta from this plugin, %s"
24
- msgstr "Vous utilisez actuellement All In One SEO Plugin, WP Meta SEO put importer les données de ce plugin pour vous, %s"
 
 
 
 
25
 
26
- msgid "We have found that you’re using Yoast SEO Plugin, WP Meta SEO can import the meta from this plugin, %s"
27
- msgstr "Vous utilisez actuellement Yoast SEO Plugin, WP Meta SEO put importer les données de ce plugin pour vous, %s"
 
 
 
 
28
 
29
  msgid "Results preview"
30
  msgstr "Prévisualisation"
31
 
32
- msgid "This is a preview of what your content will looks like in search engine results: title, description and URL"
 
 
33
  msgstr "Prévisualisation des résultats de recherche, titre, description et URL"
34
 
35
  msgid "Search engine title"
36
  msgstr "Titre"
37
 
38
- msgid "This is the title of your content that may be displayed in search engine results (meta title). By default it’s the content title (page title, post title…). 69 characters max allowed."
39
- msgstr "Ceci est le titre de votre contenu qui pourra être reprit par les moteurs de recherche (meta title). Par défaut il s'agit du titre du contenu. 69 caractères autorisés."
 
 
 
 
 
 
40
 
41
  msgid "Search engine description"
42
  msgstr "Description"
43
 
44
- msgid "The description of your content that may be displayed in search engine results aka meta description. By default search engine take an excerpt from your content (depending on the search query). 156 characters max allowed."
45
- msgstr "Ceci est la description de votre contenu qui pourra être reprit par les moteurs de recherche (meta description). Par défaut il s'agit d'un extrait de votre contenu.156 caractères autorisés."
 
 
 
 
 
 
46
 
47
  msgid "Facebook Title"
48
  msgstr "Titre facebook"
49
 
50
- msgid "Custom title to display when sharing this content on facebook, content title override"
 
 
51
  msgstr "Titre customisé lors du partage de ce contenu sur Facebook"
52
 
53
  msgid "Facebook Description"
54
  msgstr "Description Facebook"
55
 
56
- msgid "Custom description to display when sharing this content on facebook, content description override"
 
 
57
  msgstr "Description customisé lors du partage de ce contenu sur Facebook"
58
 
59
  msgid "Facebook Image"
60
  msgstr "Image Facebook"
61
 
62
- msgid "Custom image to display when sharing this content on facebook, content description override, recommended size is 1200px x 630px"
63
- msgstr "Image customisé lors du partage de ce contenu sur Facebook, taille recommandée 1200px x 630px"
 
 
 
 
64
 
65
  msgid "Twitter Title"
66
  msgstr "Titre Twitter"
67
 
68
- msgid "Custom title to display when sharing this content on twitter, content title override"
 
 
69
  msgstr "Titre customisé lors du partage de ce contenu sur Twitter"
70
 
71
  msgid "Twitter Description"
72
  msgstr "Description Twitter"
73
 
74
- msgid "Custom description to display when sharing this content on twitter, content description override"
 
 
75
  msgstr "Description customisé lors du partage de ce contenu sur Twitter"
76
 
77
  msgid "Twitter Image"
78
  msgstr "Image Twitter"
79
 
80
- msgid "Custom image to display when sharing this content on facebook, content description override, recommended min size 440px X 220px"
81
- msgstr "Image customisé lors du partage de ce contenu sur Twitter, taille recommandée 440px x 220px"
 
 
 
 
82
 
83
  msgid "Use Image"
84
  msgstr "Utiliser image"
@@ -105,13 +147,13 @@ msgid "Page url matches with page title"
105
  msgstr "URL de page correspond au titre de page"
106
 
107
  msgid "Meta title filled"
108
- msgstr "Meta title remplie"
109
 
110
  msgid "Meta description filled"
111
- msgstr "Meta description remplie"
112
 
113
  msgid "Wrong image resize"
114
- msgstr "Check taille d'image"
115
 
116
  msgid "Image have meta title or alt"
117
  msgstr "Les images ont des meta title ou alt"
@@ -120,10 +162,10 @@ msgid "SEO Page optimization"
120
  msgstr "Optimisation moteur de recherche"
121
 
122
  msgid "Social for search engine"
123
- msgstr "Affichage partage réseaux sociaux"
124
 
125
  msgid "Reload analysis"
126
- msgstr "Relancer l'analyse"
127
 
128
  msgid "Filter by date"
129
  msgstr "Filtrer par date"
@@ -161,8 +203,11 @@ msgstr "Tout selectionner"
161
  msgid "Filter"
162
  msgstr "Filtrer"
163
 
164
- msgid "We found 0 image which needed to add or change meta information"
165
- msgstr "Nous n'avons pas trouvé d'images qui nécessite l'ajout ou l'édition des meta"
 
 
 
166
 
167
  msgid "This image has still not been inserted in any post!"
168
  msgstr "Cette image n'a été ajouté dans aucun de vos contenus"
@@ -173,32 +218,32 @@ msgstr "Nous avons trouvé %s qui nécessite une optimisation"
173
  msgid "Replace?"
174
  msgstr "Remplacer ?"
175
 
176
- msgid "Replace All"
177
  msgstr "Tout remplacer"
178
 
179
- msgid "The post is not existed, please choose one another!"
180
- msgstr "Ce post n'existe pas, merci d'un sélectionner un autre"
181
 
182
  msgid "There is a problem when update image name"
183
  msgstr "Erreur lors du changement de nom d'image"
184
 
185
- msgid "Image name was changed"
186
- msgstr "Nom d'image changé"
187
 
188
- msgid "Name is existing"
189
- msgstr "Ce nom existe déjà"
190
 
191
- msgid "File is not existed"
192
- msgstr "Ce fichier n'existe plus"
193
 
194
  msgid "Should not be empty"
195
  msgstr "Ne peut être vide"
196
 
197
- msgid "There is a problem when update image meta!"
198
- msgstr "Erreur lors de la mise à jour des meta"
199
 
200
- msgid "The post has been deleted before, please check again!"
201
- msgstr "Ce contenu a été supprimé, merci de recharger la page"
202
 
203
  msgid "The post haven't been updated, please check again!"
204
  msgstr "Ce post n'a pas été mis à jour, merci de revérifier"
@@ -209,8 +254,10 @@ msgstr "Cette image a été supprimée du contenu"
209
  msgid "Content of the post is empty, please check again"
210
  msgstr "Le contenu est vide, merci de revérifier"
211
 
212
- msgid "We can't get rank of this site from Alexa.com!"
213
- msgstr "Impossible de déterminer le Traffic Rank Alexa pour ce site"
 
 
214
 
215
  msgid "Meta Title"
216
  msgstr "Meta titre"
@@ -219,7 +266,7 @@ msgid "Meta Description"
219
  msgstr "Meta description"
220
 
221
  msgid "(no title)"
222
- msgstr "(no title)"
223
 
224
  msgid "Edit this item"
225
  msgstr "Editer cet item"
@@ -233,8 +280,12 @@ msgstr "Afficher"
233
  msgid "Preview"
234
  msgstr "Prévisualiser"
235
 
236
- msgid " This is a rendering of what this post might look like in Google's search results."
237
- msgstr "Prévisualisation des résultats de recherche Google"
 
 
 
 
238
 
239
  msgid "Snippet Preview"
240
  msgstr "Prévisualisation"
@@ -246,7 +297,7 @@ msgid "Twitter Username "
246
  msgstr "Nom d'utilisateur Twitter"
247
 
248
  msgid "Meta block edition "
249
- msgstr "Meta édition"
250
 
251
  msgid "Modification was saved"
252
  msgstr "Modifications sauvegardées"
@@ -258,7 +309,7 @@ msgid "Meta description was not saved"
258
  msgstr "Meta description non sauvegardé"
259
 
260
  msgid "Dashboard"
261
- msgstr "Tableau de bors"
262
 
263
  msgid "WP Meta SEO"
264
  msgstr "WP Meta SEO"
@@ -275,14 +326,16 @@ msgstr "Paramètres"
275
  msgid "Show/hide meta block edition below content"
276
  msgstr "Afficher/masquer le block meta sous les contenus"
277
 
278
- msgid "This post is not existed or deleted, please choose one another!"
279
- msgstr "Ce post n'existe plus, merci d'en sélectionner un autre"
280
 
281
  msgid "Well! This image is so good now."
282
  msgstr "Parfait! image optimisée"
283
 
284
- msgid "Opps! An error occured when updating the post, please try again"
285
- msgstr "Oups! une erreur est survenue lors de la mise à jour du contenu"
 
 
286
 
287
  msgid "Resize image"
288
  msgstr "Redimensionner image"
@@ -317,11 +370,11 @@ msgstr "Meta info page d'accueil"
317
  msgid "Homepage meta description "
318
  msgstr "Description page d'accueil"
319
 
320
- msgid "Bulk Copy"
321
- msgstr "Copy par lot"
322
 
323
- msgid "All Posts"
324
- msgstr "Tous les posts"
325
 
326
  msgid "Selected posts"
327
  msgstr "Sélection de contenu"
@@ -329,7 +382,7 @@ msgstr "Sélection de contenu"
329
  msgid "Content title as meta title"
330
  msgstr "Titre contenu > meta titre"
331
 
332
- msgid "All Images"
333
  msgstr "Toutes les images"
334
 
335
  msgid "Selected images"
@@ -345,7 +398,7 @@ msgid "We didn't find any element to apply a batch copy, congrats!"
345
  msgstr "Aucun élément sur le quel appliquer une action, félicitations !"
346
 
347
  msgid "The default card type to use "
348
- msgstr "Type de Twitter card par défaut"
349
 
350
  msgid "Summary"
351
  msgstr "Sommaire"
@@ -370,3 +423,159 @@ msgstr "Plus d'info sur le plugin WP Meta SEO"
370
 
371
  msgid "Other plugins from JoomUnited"
372
  msgstr "Autres plugin de JoomUnited"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5
  "PO-Revision-Date: \n"
6
  "Last-Translator: \n"
7
  "Language-Team: \n"
8
+ "Language: fr_FR\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.8.5\n"
 
13
 
14
  msgid "Twitter username (without @)"
15
  msgstr "ID Twitter (sans le @)"
17
  msgid "Facebook profile URL"
18
  msgstr "Adresse URL du profil Facebook"
19
 
20
+ msgid ""
21
+ "2 plugins that are doing almost the same thing detected: disable AIO SEO or "
22
+ "Yoast SEO to avoid conflict."
23
+ msgstr ""
24
+ "2 plugins sont présent et font tous les 2 du SEO: merci de désactiver AIO "
25
+ "SEO ou Yoast SEO pour éviter les conflits"
26
 
27
+ msgid ""
28
+ "We have found that you’re using All In One SEO plugin, WP Meta SEO can "
29
+ "import the meta from this plugin, %s"
30
+ msgstr ""
31
+ "Vous utilisez le plugin All in one SEO, nous pouvons importer les meta de "
32
+ "ce plugin pour vous, %s"
33
 
34
+ msgid ""
35
+ "We have found that you’re using Yoast SEO plugin, WP Meta SEO can import the "
36
+ "meta from this plugin, %s"
37
+ msgstr ""
38
+ "Vous utilisez le plugin Yoast SEO, nous pouvons importer les meta de ce "
39
+ "plugin pour vous, %s"
40
 
41
  msgid "Results preview"
42
  msgstr "Prévisualisation"
43
 
44
+ msgid ""
45
+ "This is a preview of what your content will looks like in search engine "
46
+ "results: title, description and URL"
47
  msgstr "Prévisualisation des résultats de recherche, titre, description et URL"
48
 
49
  msgid "Search engine title"
50
  msgstr "Titre"
51
 
52
+ msgid ""
53
+ "This is the title of your content that may be displayed in search engine "
54
+ "results (meta title). By default it’s the content title (page title, post "
55
+ "title…). 69 characters max allowed."
56
+ msgstr ""
57
+ "Ceci est le titre de votre contenu qui pourra être reprit par les moteurs de "
58
+ "recherche (meta title). Par défaut il s'agit du titre du contenu. 69 "
59
+ "caractères max"
60
 
61
  msgid "Search engine description"
62
  msgstr "Description"
63
 
64
+ msgid ""
65
+ "The description of your content that may be displayed in search engine "
66
+ "results aka meta description. By default search engine take an excerpt from "
67
+ "your content (depending on the search query). 156 characters max allowed."
68
+ msgstr ""
69
+ "Ceci est la description de votre contenu qui pourra être reprit par les "
70
+ "moteurs de recherche (meta description). Par défaut il s'agit d'un extrait "
71
+ "de votre contenu.156 caractères max"
72
 
73
  msgid "Facebook Title"
74
  msgstr "Titre facebook"
75
 
76
+ msgid ""
77
+ "Custom title to display when sharing this content on facebook, content title "
78
+ "override"
79
  msgstr "Titre customisé lors du partage de ce contenu sur Facebook"
80
 
81
  msgid "Facebook Description"
82
  msgstr "Description Facebook"
83
 
84
+ msgid ""
85
+ "Custom description to display when sharing this content on facebook, content "
86
+ "description override"
87
  msgstr "Description customisé lors du partage de ce contenu sur Facebook"
88
 
89
  msgid "Facebook Image"
90
  msgstr "Image Facebook"
91
 
92
+ msgid ""
93
+ "Custom image to display when sharing this content on facebook, content "
94
+ "description override, recommended size is 1200px x 630px"
95
+ msgstr ""
96
+ "Image customisé lors du partage de ce contenu sur Facebook, taille "
97
+ "recommandée 1200px x 630px"
98
 
99
  msgid "Twitter Title"
100
  msgstr "Titre Twitter"
101
 
102
+ msgid ""
103
+ "Custom title to display when sharing this content on twitter, content title "
104
+ "override"
105
  msgstr "Titre customisé lors du partage de ce contenu sur Twitter"
106
 
107
  msgid "Twitter Description"
108
  msgstr "Description Twitter"
109
 
110
+ msgid ""
111
+ "Custom description to display when sharing this content on twitter, content "
112
+ "description override"
113
  msgstr "Description customisé lors du partage de ce contenu sur Twitter"
114
 
115
  msgid "Twitter Image"
116
  msgstr "Image Twitter"
117
 
118
+ msgid ""
119
+ "Custom image to display when sharing this content on facebook, content "
120
+ "description override, recommended min size 440px X 220px"
121
+ msgstr ""
122
+ "Image customisé lors du partage de ce contenu sur Twitter, taille "
123
+ "recommandée 440px x 220px"
124
 
125
  msgid "Use Image"
126
  msgstr "Utiliser image"
147
  msgstr "URL de page correspond au titre de page"
148
 
149
  msgid "Meta title filled"
150
+ msgstr "Meta titres complétés"
151
 
152
  msgid "Meta description filled"
153
+ msgstr "Meta descriptions complétées"
154
 
155
  msgid "Wrong image resize"
156
+ msgstr "Mauvaise taille d'image"
157
 
158
  msgid "Image have meta title or alt"
159
  msgstr "Les images ont des meta title ou alt"
162
  msgstr "Optimisation moteur de recherche"
163
 
164
  msgid "Social for search engine"
165
+ msgstr "Partage réseaux sociaux"
166
 
167
  msgid "Reload analysis"
168
+ msgstr "Relancer analyse"
169
 
170
  msgid "Filter by date"
171
  msgstr "Filtrer par date"
203
  msgid "Filter"
204
  msgstr "Filtrer"
205
 
206
+ msgid ""
207
+ "We didn't find any image which needed to be updated regarding meta "
208
+ "information"
209
+ msgstr ""
210
+ "Nous n'avons trouvé aucune image qui ont besoin d'être optimisé pour le SEO"
211
 
212
  msgid "This image has still not been inserted in any post!"
213
  msgstr "Cette image n'a été ajouté dans aucun de vos contenus"
218
  msgid "Replace?"
219
  msgstr "Remplacer ?"
220
 
221
+ msgid "Replace all"
222
  msgstr "Tout remplacer"
223
 
224
+ msgid "The post doesn't exist, please select another one"
225
+ msgstr "Le post n'existe plus, merci d'en sélectionner un autre"
226
 
227
  msgid "There is a problem when update image name"
228
  msgstr "Erreur lors du changement de nom d'image"
229
 
230
+ msgid "Image name changed"
231
+ msgstr "Nom de l'image changé"
232
 
233
+ msgid "Name already exist"
234
+ msgstr "Le nom existe déjà"
235
 
236
+ msgid "File doesn't existed"
237
+ msgstr "Le fichier n'existe plus"
238
 
239
  msgid "Should not be empty"
240
  msgstr "Ne peut être vide"
241
 
242
+ msgid "There is a problem during image meta update"
243
+ msgstr "Un problème est survenue durant l'update des meta"
244
 
245
+ msgid "This content has been deleted, please check again!"
246
+ msgstr "Ce contenu a été supprimé, merci de revérifier!"
247
 
248
  msgid "The post haven't been updated, please check again!"
249
  msgstr "Ce post n'a pas été mis à jour, merci de revérifier"
254
  msgid "Content of the post is empty, please check again"
255
  msgstr "Le contenu est vide, merci de revérifier"
256
 
257
+ msgid "We can't get traffic rank from Alexa for this website"
258
+ msgstr ""
259
+ "Nous n'avons pas assez d'info (de trafic) Alexa pour avoir le \"Traffic Rank"
260
+ "\""
261
 
262
  msgid "Meta Title"
263
  msgstr "Meta titre"
266
  msgstr "Meta description"
267
 
268
  msgid "(no title)"
269
+ msgstr "(pas de titre)"
270
 
271
  msgid "Edit this item"
272
  msgstr "Editer cet item"
280
  msgid "Preview"
281
  msgstr "Prévisualiser"
282
 
283
+ msgid ""
284
+ "This is a preview of what this content might looks like in Google's search "
285
+ "results."
286
+ msgstr ""
287
+ "Prévisualisation de ce à quoi votre contenu peut ressembler dans les "
288
+ "résultats de recherche"
289
 
290
  msgid "Snippet Preview"
291
  msgstr "Prévisualisation"
297
  msgstr "Nom d'utilisateur Twitter"
298
 
299
  msgid "Meta block edition "
300
+ msgstr "Block édition meta"
301
 
302
  msgid "Modification was saved"
303
  msgstr "Modifications sauvegardées"
309
  msgstr "Meta description non sauvegardé"
310
 
311
  msgid "Dashboard"
312
+ msgstr "Tableau de bord"
313
 
314
  msgid "WP Meta SEO"
315
  msgstr "WP Meta SEO"
326
  msgid "Show/hide meta block edition below content"
327
  msgstr "Afficher/masquer le block meta sous les contenus"
328
 
329
+ msgid "This post is not existed or deleted, please select another one"
330
+ msgstr "Ce post n'existe plus ou a été supprimé"
331
 
332
  msgid "Well! This image is so good now."
333
  msgstr "Parfait! image optimisée"
334
 
335
+ msgid "Oops! An error occured when updating the post, please try again"
336
+ msgstr ""
337
+ "Oups! Une erreur est survenue durant la mise à jour du post, merci de "
338
+ "réessayer"
339
 
340
  msgid "Resize image"
341
  msgstr "Redimensionner image"
370
  msgid "Homepage meta description "
371
  msgstr "Description page d'accueil"
372
 
373
+ msgid "Bulk copy"
374
+ msgstr "Copie par lot"
375
 
376
+ msgid "All content"
377
+ msgstr "Tout le contenu"
378
 
379
  msgid "Selected posts"
380
  msgstr "Sélection de contenu"
382
  msgid "Content title as meta title"
383
  msgstr "Titre contenu > meta titre"
384
 
385
+ msgid "All images"
386
  msgstr "Toutes les images"
387
 
388
  msgid "Selected images"
398
  msgstr "Aucun élément sur le quel appliquer une action, félicitations !"
399
 
400
  msgid "The default card type to use "
401
+ msgstr "Type de Twitter card"
402
 
403
  msgid "Summary"
404
  msgstr "Sommaire"
423
 
424
  msgid "Other plugins from JoomUnited"
425
  msgstr "Autres plugin de JoomUnited"
426
+
427
+ msgid ""
428
+ "Check if a word of this content title is also in a title heading (h1, h2...)"
429
+ msgstr ""
430
+ "Vérifie si un mot du titre de page est aussi présent dans un titre du "
431
+ "contenu (h1, h2...)"
432
+
433
+ msgid "Check if a word of this content title is also in the text"
434
+ msgstr ""
435
+ "Vérifie si un mot du titre de page est aussi présent dans le contenu texte"
436
+
437
+ msgid "Does the page title match with the permalink (URL structure)"
438
+ msgstr "Vérifie si le titre de page correspond à l'URL (permalien)"
439
+
440
+ msgid "Is the meta title of this page filled?"
441
+ msgstr "Est-ce que les meta titres sont complétés?"
442
+
443
+ msgid "Is the meta description of this page filled?"
444
+ msgstr "Est-ce que les meta description sont complétés?"
445
+
446
+ msgid ""
447
+ "Check for image HTML resizing in content (usually image resized using "
448
+ "handles)"
449
+ msgstr ""
450
+ "Vérifie si des images sont redimensionnées en HTML (habituellement en "
451
+ "utilisant les poignées)"
452
+
453
+ msgid "Check for image Alt text and title"
454
+ msgstr "Vérifie si les textes alt and titre d'images sont remplis"
455
+
456
+ msgid ""
457
+ "It's better using a permalink structure that is adding in your URL the "
458
+ "category name and content title. This parameter can be changed in Settings > "
459
+ "Permalinks WordPress menu. Tag recommended is %category%/%postname%"
460
+ msgstr ""
461
+ "Il est préférable d'utiliser des URL dont le nom de la catégorie et le titre "
462
+ "de page sont en clair. Ce paramètre peut être modifié depuis le menu "
463
+ "Paramètres > Permaliens. Le tag recommandé est %category%/%postname%"
464
+
465
+ msgid ""
466
+ "Meta titles are displayed in search engine results as a page title. It's a "
467
+ "good thing for SEO to have some custom and attractive ones. Be sure to fill "
468
+ "at least the met information on your most popular pages"
469
+ msgstr ""
470
+ "Les titres Meta sont affichés dans les résultats de recherche comme titre de "
471
+ "page. C'est une bonne chose de mettre des titres accrocheurs pour avoir un "
472
+ "plus grand nombre de clics."
473
+
474
+ msgid ""
475
+ "Meta descriptions are displayed in search engine results as a page "
476
+ "description. It's a good thing for SEO to have some custom and attractive "
477
+ "ones. Be sure to fill at least the meta information on your most popular "
478
+ "pages."
479
+ msgstr ""
480
+ "Les Meta descroption sont affichés dans les résultats de recherche comme "
481
+ "description de page. C'est une bonne chose de mettre des descriptions "
482
+ "accrocheuses pour avoir un plus grand nombre de clics."
483
+
484
+ msgid ""
485
+ "Display image at its natural size, do not use HTML resize. It happens "
486
+ "usually when you use handles to resize an image. You have a bulk edition "
487
+ "tool to fix that."
488
+ msgstr ""
489
+ "Utilisez des images à leur taille naturelle, pas en les redimensionnant en "
490
+ "HTML (avec les poignées). Avec WP Meta SEO, vous disposez d'un outil pour "
491
+ "corriger cela"
492
+
493
+ msgid ""
494
+ "We recommend to use both alt text and image title. The main advantage is "
495
+ "that it helps search engines discover your images and display them in image "
496
+ "search results. Plus, these tags improve the accessibility of your site and "
497
+ "give more information about your images. Use our bulk image tool to quickly "
498
+ "check and fix that."
499
+ msgstr ""
500
+ "Nous vous recommandons de compléter les le textes alternatif et les titres "
501
+ "d'images. L'avantage c'est que cela permet aux moteur de recherche d'indexer "
502
+ "vos images et apporte plus de contenu à vos pages. utilisez l'outil "
503
+ "d'édition par lot pour aller plus vite! "
504
+
505
+ msgid ""
506
+ "It is highly recommended to update or add new content on your website quite "
507
+ "frequently. At least 3 updated or new content per month would be great :)"
508
+ msgstr ""
509
+ "Il est fortement recommandé de mettre à jour ou d'ajouter du contenu sur "
510
+ "votre site pour être mieux référencé. Au moins 3 mises à jour ou ajout de "
511
+ "contenu par mois serait parfait :)"
512
+
513
+ #~ msgid ""
514
+ #~ "Be careful you installed 2 extensions doing almost the same thing, please "
515
+ #~ "deactivate AIOSEO or Yoast in order to work more clearly!"
516
+ #~ msgstr ""
517
+ #~ "Attention plusieurs plugins sont susceptibles d'effectuer les même "
518
+ #~ "tâches, essayez de désactiver AIO SEO ou Yoast SEO"
519
+
520
+ #~ msgid ""
521
+ #~ "We have found that you’re using All In One Pack Plugin, WP Meta SEO can "
522
+ #~ "import the meta from this plugin, %s"
523
+ #~ msgstr ""
524
+ #~ "Vous utilisez actuellement All In One SEO Plugin, WP Meta SEO put "
525
+ #~ "importer les données de ce plugin pour vous, %s"
526
+
527
+ #~ msgid ""
528
+ #~ "We have found that you’re using Yoast SEO Plugin, WP Meta SEO can import "
529
+ #~ "the meta from this plugin, %s"
530
+ #~ msgstr ""
531
+ #~ "Vous utilisez actuellement Yoast SEO Plugin, WP Meta SEO put importer les "
532
+ #~ "données de ce plugin pour vous, %s"
533
+
534
+ #~ msgid "We found 0 image which needed to add or change meta information"
535
+ #~ msgstr ""
536
+ #~ "Nous n'avons pas trouvé d'images qui nécessite l'ajout ou l'édition des "
537
+ #~ "meta"
538
+
539
+ #~ msgid "Replace All"
540
+ #~ msgstr "Tout remplacer"
541
+
542
+ #~ msgid "The post is not existed, please choose one another!"
543
+ #~ msgstr "Ce post n'existe pas, merci d'un sélectionner un autre"
544
+
545
+ #~ msgid "Image name was changed"
546
+ #~ msgstr "Nom d'image changé"
547
+
548
+ #~ msgid "Name is existing"
549
+ #~ msgstr "Ce nom existe déjà"
550
+
551
+ #~ msgid "File is not existed"
552
+ #~ msgstr "Ce fichier n'existe plus"
553
+
554
+ #~ msgid "There is a problem when update image meta!"
555
+ #~ msgstr "Erreur lors de la mise à jour des meta"
556
+
557
+ #~ msgid "The post has been deleted before, please check again!"
558
+ #~ msgstr "Ce contenu a été supprimé, merci de recharger la page"
559
+
560
+ #~ msgid "We can't get rank of this site from Alexa.com!"
561
+ #~ msgstr "Impossible de déterminer le Traffic Rank Alexa pour ce site"
562
+
563
+ #~ msgid ""
564
+ #~ " This is a rendering of what this post might look like in Google's search "
565
+ #~ "results."
566
+ #~ msgstr "Prévisualisation des résultats de recherche Google"
567
+
568
+ #~ msgid "This post is not existed or deleted, please choose one another!"
569
+ #~ msgstr "Ce post n'existe plus, merci d'en sélectionner un autre"
570
+
571
+ #~ msgid "Opps! An error occured when updating the post, please try again"
572
+ #~ msgstr "Oups! une erreur est survenue lors de la mise à jour du contenu"
573
+
574
+ #~ msgid "Bulk Copy"
575
+ #~ msgstr "Copy par lot"
576
+
577
+ #~ msgid "All Posts"
578
+ #~ msgstr "Tous les posts"
579
+
580
+ #~ msgid "All Images"
581
+ #~ msgstr "Toutes les images"
languages/wpms.pot CHANGED
@@ -373,9 +373,41 @@ msgstr ""
373
  msgid "Other plugins from JoomUnited"
374
  msgstr ""
375
 
376
- msgid "More information about WP Meta SEO"
377
  msgstr ""
378
 
379
- msgid "Other plugins from JoomUnited"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
380
  msgstr ""
381
 
 
 
373
  msgid "Other plugins from JoomUnited"
374
  msgstr ""
375
 
376
+ msgid "Check if a word of this content title is also in a title heading (h1, h2...)"
377
  msgstr ""
378
 
379
+ msgid "Check if a word of this content title is also in the text"
380
+ msgstr ""
381
+
382
+ msgid "Does the page title match with the permalink (URL structure)"
383
+ msgstr ""
384
+
385
+ msgid "Is the meta title of this page filled?"
386
+ msgstr ""
387
+
388
+ msgid "Is the meta description of this page filled?"
389
+ msgstr ""
390
+
391
+ msgid "Check for image HTML resizing in content (usually image resized using handles)"
392
+ msgstr ""
393
+
394
+ msgid "Check for image Alt text and title"
395
+ msgstr ""
396
+
397
+ msgid "It's better using a permalink structure that is adding in your URL the category name and content title. This parameter can be changed in Settings > Permalinks WordPress menu. Tag recommended is %category%/%postname%"
398
+ msgstr ""
399
+
400
+ msgid "Meta titles are displayed in search engine results as a page title. It's a good thing for SEO to have some custom and attractive ones. Be sure to fill at least the met information on your most popular pages"
401
+ msgstr ""
402
+
403
+ msgid "Meta descriptions are displayed in search engine results as a page description. It's a good thing for SEO to have some custom and attractive ones. Be sure to fill at least the meta information on your most popular pages."
404
+ msgstr ""
405
+
406
+ msgid "Display image at its natural size, do not use HTML resize. It happens usually when you use handles to resize an image. You have a bulk edition tool to fix that."
407
+ msgstr ""
408
+
409
+ msgid "We recommend to use both alt text and image title. The main advantage is that it helps search engines discover your images and display them in image search results. Plus, these tags improve the accessibility of your site and give more information about your images. Use our bulk image tool to quickly check and fix that."
410
  msgstr ""
411
 
412
+ msgid "It is highly recommended to update or add new content on your website quite frequently. At least 3 updated or new content per month would be great :)"
413
+ msgstr ""
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: JoomUnited
3
  Tags: google, webmaster tools, keywords, meta, meta description, meta keywords, meta title, robots meta, search engine optimization, seo, wordpress seo, yahoo, image optimization, image resize, custom post seo
4
  Requires at least: 4.0
5
  Tested up to: 4.3.1
6
- Stable tag: 1.3.0
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
@@ -80,6 +80,7 @@ WP Meta SEO also include this feature in the bulk edition view, you are notified
80
  * One click image title copy
81
  * SEO bulk copy: Copy image name to image alt and/or image title
82
  * SEO bulk copy: Copy content title to content meta title
 
83
 
84
  = Main plugins from JoomUnited: =
85
  * WP Media Folder: https://www.joomunited.com/wordpress-products/wp-media-folder
@@ -107,7 +108,8 @@ Feel free to ask SEO questions on our forum or here in the support section
107
  * Activate the plugin through the 'Plugins' menu in WordPress
108
  * Use the WP Meta SEO WordPress left menu
109
 
110
- Once the plugin is installed, open the bulk edition through the admin menu or open a content to load SEO on page analysis
 
111
 
112
  == Frequently Asked Questions ==
113
 
@@ -121,6 +123,9 @@ So you'll be able to define SEO info for each instance.
121
  = Is WP Meta SEO slowing down my website? =
122
  Nope :) All your SEO content is properly stored in the database and automatic SEO checks are also cached or run every 72 hours (unless you force the process)
123
 
 
 
 
124
  = Can I translate WP Meta SEO? =
125
  You're welcome! in the WP Meta SEO package you got English and French included as standard .po/.mo files. Use the .pot file also available in the /language folder to create your own.
126
  You can contact us if you want it to be included in the WP Meta SEO package.
@@ -132,13 +137,15 @@ What's the minimum version of WordPress required to run WP Meta SEO? WordPress 4
132
  In the admin of WordPress, on the left menu named WP Meta SEO and its sub menu for SEO tools
133
 
134
  = How do I uninstall WP Meta SEO? =
135
-
136
  Go to the Plugins > WP Meta SEO > Deactivate > Delete
137
  If you choose to install it later all your SEO data will remain in place (database stored)
138
 
139
  = Which browsers work best with the WP Meta SEO administration interface? =
140
  WP Meta SEO is using HTML5 features so to be sure run the latest version of Chrome / Firefox / Safari or IE9+
141
 
 
 
 
142
  == Screenshots ==
143
 
144
  1. Main dashboard of the plugin with SEO optimization check
@@ -152,6 +159,13 @@ WP Meta SEO is using HTML5 features so to be sure run the latest version of Chro
152
 
153
  == Changelog ==
154
 
 
 
 
 
 
 
 
155
  = 1.4.0 =
156
  * Bulk copy new option: content title to meta title
157
  * Bulk copy new option: image name to alt text
3
  Tags: google, webmaster tools, keywords, meta, meta description, meta keywords, meta title, robots meta, search engine optimization, seo, wordpress seo, yahoo, image optimization, image resize, custom post seo
4
  Requires at least: 4.0
5
  Tested up to: 4.3.1
6
+ Stable tag: 1.5.0
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
80
  * One click image title copy
81
  * SEO bulk copy: Copy image name to image alt and/or image title
82
  * SEO bulk copy: Copy content title to content meta title
83
+ * Check for SEO error: is robot.txt blocking search engine
84
 
85
  = Main plugins from JoomUnited: =
86
  * WP Media Folder: https://www.joomunited.com/wordpress-products/wp-media-folder
108
  * Activate the plugin through the 'Plugins' menu in WordPress
109
  * Use the WP Meta SEO WordPress left menu
110
 
111
+ Once the plugin is installed, open the bulk edition through the admin menu or open a content to load SEO on page analysis.
112
+ The plugin will check on install if there's Yoast SEO or All in one SEO and ask for a meta import. Global parameter "Search engine visibility" is also checked to avoid SEO error.
113
 
114
  == Frequently Asked Questions ==
115
 
123
  = Is WP Meta SEO slowing down my website? =
124
  Nope :) All your SEO content is properly stored in the database and automatic SEO checks are also cached or run every 72 hours (unless you force the process)
125
 
126
+ = Is WP Meta SEO compatible with 3rd party plugins? =
127
+ YES it is :) All plugins and themes that are using custom post type are compatibler and you'll be able to setup SEO for those content. Plus Yoast SEO and All in one SEO content can also be imported.
128
+
129
  = Can I translate WP Meta SEO? =
130
  You're welcome! in the WP Meta SEO package you got English and French included as standard .po/.mo files. Use the .pot file also available in the /language folder to create your own.
131
  You can contact us if you want it to be included in the WP Meta SEO package.
137
  In the admin of WordPress, on the left menu named WP Meta SEO and its sub menu for SEO tools
138
 
139
  = How do I uninstall WP Meta SEO? =
 
140
  Go to the Plugins > WP Meta SEO > Deactivate > Delete
141
  If you choose to install it later all your SEO data will remain in place (database stored)
142
 
143
  = Which browsers work best with the WP Meta SEO administration interface? =
144
  WP Meta SEO is using HTML5 features so to be sure run the latest version of Chrome / Firefox / Safari or IE9+
145
 
146
+ = Can I help with WP Meta SEO translation? =
147
+ Yes! you can contact us on our forum. SEO as its own language and expression, we would be happy to add yours.
148
+
149
  == Screenshots ==
150
 
151
  1. Main dashboard of the plugin with SEO optimization check
159
 
160
  == Changelog ==
161
 
162
+ = 1.5.0 =
163
+ * Add help tooltip to explain on page validation SEO criteria
164
+ * Add help tooltip to explain dashboard SEO parameters
165
+ * Put snippet preview title in a column on SEO bulk view edition
166
+ * Add SEO and check notification for robot.txt that lock search engine
167
+ * Update EN and FR language files
168
+
169
  = 1.4.0 =
170
  * Bulk copy new option: content title to meta title
171
  * Bulk copy new option: image name to alt text
wp-meta-seo.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin Name: WP Meta SEO
5
  * Plugin URI: http://www.joomunited.com/wordpress-products/wp-meta-seo
6
  * Description: WP Meta SEO is a plugin for WordPress to fill meta for content, images and main SEO info in a single view.
7
- * Version: 1.4.0
8
  * Author: JoomUnited
9
  * Author URI: http://www.joomunited.com
10
  * License: GPL2
@@ -45,7 +45,7 @@ if (!defined('URL'))
45
  define('URL', get_site_url());
46
 
47
  if (!defined('WPMSEO_VERSION'))
48
- define('WPMSEO_VERSION', '1.4.0');
49
 
50
  if (!defined('WPMSEO_FILE'))
51
  define('WPMSEO_FILE', __FILE__);
4
  * Plugin Name: WP Meta SEO
5
  * Plugin URI: http://www.joomunited.com/wordpress-products/wp-meta-seo
6
  * Description: WP Meta SEO is a plugin for WordPress to fill meta for content, images and main SEO info in a single view.
7
+ * Version: 1.5.0
8
  * Author: JoomUnited
9
  * Author URI: http://www.joomunited.com
10
  * License: GPL2
45
  define('URL', get_site_url());
46
 
47
  if (!defined('WPMSEO_VERSION'))
48
+ define('WPMSEO_VERSION', '1.5.0');
49
 
50
  if (!defined('WPMSEO_FILE'))
51
  define('WPMSEO_FILE', __FILE__);