Co-Authors Plus - Version 3.0.6

Version Description

(Dec. 9, 2013) = * New Swedish translation, courtesy of alundstroem * Updated German translation, courtesy of krafit. * New filter for specifying the default author assigned to a post. Props tannerm * Bug fix: When filtering a user's published post count, use the value of their guest author profile if one is mapped. * Added support for checkboxes in Guest Author profiles * Fix Strict warnings from CPT's that don't define all capabilities * New swap-coauthors CLI command for replacing one co-author with another

Download this release

Release Info

Developer danielbachhuber
Plugin Icon wp plugin Co-Authors Plus
Version 3.0.6
Comparing to
See all releases

Code changes from version 3.0.5 to 3.0.6

co-authors-plus.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: Co-Authors Plus
4
  Plugin URI: http://wordpress.org/extend/plugins/co-authors-plus/
5
  Description: Allows multiple authors to be assigned to a post. This plugin is an extended version of the Co-Authors plugin developed by Weston Ruter.
6
- Version: 3.0.5
7
  Author: Mohammad Jangda, Daniel Bachhuber, Automattic
8
  Copyright: 2008-2013 Shared and distributed between Mohammad Jangda, Daniel Bachhuber, Weston Ruter
9
 
@@ -24,7 +24,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24
 
25
  */
26
 
27
- define( 'COAUTHORS_PLUS_VERSION', '3.0.5' );
28
 
29
  define( 'COAUTHORS_PLUS_PATH', dirname( __FILE__ ) );
30
  define( 'COAUTHORS_PLUS_URL', plugin_dir_url( __FILE__ ) );
@@ -146,7 +146,6 @@ class coauthors_plus {
146
  // Register new taxonomy so that we can store all of the relationships
147
  $args = array(
148
  'hierarchical' => false,
149
- 'update_count_callback' => array( $this, '_update_users_posts_count' ),
150
  'label' => false,
151
  'query_var' => false,
152
  'rewrite' => false,
@@ -155,6 +154,13 @@ class coauthors_plus {
155
  'args' => array( 'orderby' => 'term_order' ),
156
  'show_ui' => false
157
  );
 
 
 
 
 
 
 
158
  $post_types_with_authors = array_values( get_post_types() );
159
  foreach( $post_types_with_authors as $key => $name ) {
160
  if ( ! post_type_supports( $name, 'author' ) || in_array( $name, array( 'revision', 'attachment' ) ) )
@@ -211,7 +217,7 @@ class coauthors_plus {
211
  function get_coauthor_by( $key, $value, $force = false ) {
212
 
213
  // If Guest Authors are enabled, prioritize those profiles
214
- if ( $this->is_guest_authors_enabled() ) {
215
  $guest_author = $this->guest_authors->get_guest_author_by( $key, $value, $force );
216
  if ( is_object( $guest_author ) ) {
217
  return $guest_author;
@@ -240,7 +246,7 @@ class coauthors_plus {
240
  $user->type = 'wpuser';
241
  // However, if guest authors are enabled and there's a guest author linked to this
242
  // user account, we want to use that instead
243
- if ( $this->is_guest_authors_enabled() ) {
244
  $guest_author = $this->guest_authors->get_guest_author_by( 'linked_account', $user->user_login );
245
  if ( is_object( $guest_author ) )
246
  $user = $guest_author;
@@ -296,6 +302,8 @@ class coauthors_plus {
296
 
297
  $post_id = $post->ID;
298
 
 
 
299
  // @daniel, $post_id and $post->post_author are always set when a new post is created due to auto draft,
300
  // and the else case below was always able to properly assign users based on wp_posts.post_author,
301
  // but that's not possible with force_guest_authors = true.
@@ -303,7 +311,7 @@ class coauthors_plus {
303
  $coauthors = array();
304
  // If guest authors is enabled, try to find a guest author attached to this user ID
305
  if ( $this->is_guest_authors_enabled() ) {
306
- $coauthor = $coauthors_plus->guest_authors->get_guest_author_by( 'linked_account', wp_get_current_user()->user_login );
307
  if ( $coauthor ) {
308
  $coauthors[] = $coauthor;
309
  }
@@ -312,7 +320,7 @@ class coauthors_plus {
312
  // logged in user, so long as force_guest_authors is false. If force_guest_authors = true, we are
313
  // OK with having an empty authoring box.
314
  if ( !$coauthors_plus->force_guest_authors && empty( $coauthors ) ) {
315
- $coauthors[] = wp_get_current_user();
316
  }
317
  } else {
318
  $coauthors = get_coauthors();
@@ -468,6 +476,28 @@ class coauthors_plus {
468
 
469
  }
470
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
471
  /**
472
  * Update the post count associated with an author term
473
  *
@@ -543,8 +573,13 @@ class coauthors_plus {
543
 
544
  if ( $query->get( 'author_name' ) )
545
  $author_name = sanitize_title( $query->get( 'author_name' ) );
546
- else
547
- $author_name = get_userdata( $query->get( 'author' ) )->user_nicename;
 
 
 
 
 
548
 
549
  $terms = array();
550
  $coauthor = $this->get_coauthor_by( 'user_nicename', $author_name );
@@ -636,7 +671,7 @@ class coauthors_plus {
636
  if ( is_array( $coauthors ) ) {
637
  $coauthor = $this->get_coauthor_by( 'user_nicename', $coauthors[0]->user_nicename );
638
  if ( 'guest-author' == $coauthor->type && ! empty( $coauthor->linked_account ) ) {
639
- $data['post_author'] = get_user_by( 'user_login', $coauthor->linked_account )->ID;
640
  } else if ( $coauthor->type == 'wpuser' )
641
  $data['post_author'] = $coauthor->ID;
642
  // Refresh their post publish count too
@@ -674,17 +709,30 @@ class coauthors_plus {
674
  if ( ! $this->is_post_type_enabled( $post->post_type ) )
675
  return;
676
 
677
- if( isset( $_POST['coauthors-nonce'] ) && isset( $_POST['coauthors'] ) ) {
678
- check_admin_referer( 'coauthors-edit', 'coauthors-nonce' );
 
 
679
 
680
- if( $this->current_user_can_set_authors() ){
681
  $coauthors = (array) $_POST['coauthors'];
682
  $coauthors = array_map( 'sanitize_text_field', $coauthors );
683
- return $this->add_coauthors( $post_id, $coauthors );
 
 
 
 
 
 
 
684
  }
685
  }
686
  }
687
 
 
 
 
 
 
688
  /**
689
  * Add one or more co-authors as bylines for a post
690
  */
@@ -706,7 +754,7 @@ class coauthors_plus {
706
  $term = $this->update_author_term( $author );
707
  $coauthors[$key] = $term->slug;
708
  }
709
- wp_set_post_terms( $post_id, $coauthors, $this->coauthor_taxonomy, $append );
710
  }
711
 
712
  /**
@@ -775,6 +823,8 @@ class coauthors_plus {
775
  function filter_count_user_posts( $count, $user_id ) {
776
  $user = get_userdata( $user_id );
777
 
 
 
778
  $term = $this->get_author_term( $user );
779
  // Only modify the count if the author already exists as a term
780
  if( $term && !is_wp_error( $term ) ) {
@@ -896,6 +946,7 @@ class coauthors_plus {
896
  add_filter( 'terms_clauses', array( $this, 'filter_terms_clauses' ) );
897
  $found_terms = get_terms( $this->coauthor_taxonomy, $args );
898
  remove_filter( 'terms_clauses', array( $this, 'filter_terms_clauses' ) );
 
899
  if ( empty( $found_terms ) )
900
  return array();
901
 
@@ -1079,9 +1130,11 @@ class coauthors_plus {
1079
  return $allcaps;
1080
 
1081
  $current_user = wp_get_current_user();
1082
- if ( 'publish' == get_post_status( $post_id ) && ! empty( $current_user->allcaps[$obj->cap->edit_published_posts] ) )
 
1083
  $allcaps[$obj->cap->edit_published_posts] = true;
1084
- elseif ( 'private' == get_post_status( $post_id ) && ! empty( $current_user->allcaps[$obj->cap->edit_private_posts] ) )
 
1085
  $allcaps[$obj->cap->edit_private_posts] = true;
1086
 
1087
  $allcaps[$obj->cap->edit_others_posts] = true;
@@ -1136,13 +1189,16 @@ class coauthors_plus {
1136
  $term_description = implode( ' ', $search_values );
1137
 
1138
  if ( $term = $this->get_author_term( $coauthor ) ) {
1139
- wp_update_term( $term->term_id, $this->coauthor_taxonomy, array( 'description' => $term_description ) );
 
 
1140
  } else {
1141
  $coauthor_slug = 'cap-' . $coauthor->user_nicename;
1142
  $args = array(
1143
  'slug' => $coauthor_slug,
1144
  'description' => $term_description,
1145
  );
 
1146
  $new_term = wp_insert_term( $coauthor->user_login, $this->coauthor_taxonomy, $args );
1147
  }
1148
  wp_cache_delete( 'author-term-' . $coauthor->user_nicename, 'co-authors-plus' );
@@ -1384,4 +1440,4 @@ function wp_notify_moderator( $comment_id ) {
1384
 
1385
  return true;
1386
  }
1387
- endif;
3
  Plugin Name: Co-Authors Plus
4
  Plugin URI: http://wordpress.org/extend/plugins/co-authors-plus/
5
  Description: Allows multiple authors to be assigned to a post. This plugin is an extended version of the Co-Authors plugin developed by Weston Ruter.
6
+ Version: 3.0.6
7
  Author: Mohammad Jangda, Daniel Bachhuber, Automattic
8
  Copyright: 2008-2013 Shared and distributed between Mohammad Jangda, Daniel Bachhuber, Weston Ruter
9
 
24
 
25
  */
26
 
27
+ define( 'COAUTHORS_PLUS_VERSION', '3.0.6' );
28
 
29
  define( 'COAUTHORS_PLUS_PATH', dirname( __FILE__ ) );
30
  define( 'COAUTHORS_PLUS_URL', plugin_dir_url( __FILE__ ) );
146
  // Register new taxonomy so that we can store all of the relationships
147
  $args = array(
148
  'hierarchical' => false,
 
149
  'label' => false,
150
  'query_var' => false,
151
  'rewrite' => false,
154
  'args' => array( 'orderby' => 'term_order' ),
155
  'show_ui' => false
156
  );
157
+
158
+ // If we use the nasty SQL query, we need our custom callback. Otherwise, we still need to flush cache.
159
+ if ( apply_filters( 'coauthors_plus_should_query_post_author', true ) )
160
+ $args['update_count_callback'] = array( $this, '_update_users_posts_count' );
161
+ else
162
+ add_action( 'edited_term_taxonomy', array( $this, 'action_edited_term_taxonomy_flush_cache' ), 10, 2 );
163
+
164
  $post_types_with_authors = array_values( get_post_types() );
165
  foreach( $post_types_with_authors as $key => $name ) {
166
  if ( ! post_type_supports( $name, 'author' ) || in_array( $name, array( 'revision', 'attachment' ) ) )
217
  function get_coauthor_by( $key, $value, $force = false ) {
218
 
219
  // If Guest Authors are enabled, prioritize those profiles
220
+ if ( $this->is_guest_authors_enabled() && isset( $this->guest_authors ) ) {
221
  $guest_author = $this->guest_authors->get_guest_author_by( $key, $value, $force );
222
  if ( is_object( $guest_author ) ) {
223
  return $guest_author;
246
  $user->type = 'wpuser';
247
  // However, if guest authors are enabled and there's a guest author linked to this
248
  // user account, we want to use that instead
249
+ if ( $this->is_guest_authors_enabled() && isset( $this->guest_authors ) ) {
250
  $guest_author = $this->guest_authors->get_guest_author_by( 'linked_account', $user->user_login );
251
  if ( is_object( $guest_author ) )
252
  $user = $guest_author;
302
 
303
  $post_id = $post->ID;
304
 
305
+ $default_user = apply_filters( 'coauthors_default_author', wp_get_current_user() );
306
+
307
  // @daniel, $post_id and $post->post_author are always set when a new post is created due to auto draft,
308
  // and the else case below was always able to properly assign users based on wp_posts.post_author,
309
  // but that's not possible with force_guest_authors = true.
311
  $coauthors = array();
312
  // If guest authors is enabled, try to find a guest author attached to this user ID
313
  if ( $this->is_guest_authors_enabled() ) {
314
+ $coauthor = $coauthors_plus->guest_authors->get_guest_author_by( 'linked_account', $default_user->user_login );
315
  if ( $coauthor ) {
316
  $coauthors[] = $coauthor;
317
  }
320
  // logged in user, so long as force_guest_authors is false. If force_guest_authors = true, we are
321
  // OK with having an empty authoring box.
322
  if ( !$coauthors_plus->force_guest_authors && empty( $coauthors ) ) {
323
+ $coauthors[] = $default_user;
324
  }
325
  } else {
326
  $coauthors = get_coauthors();
476
 
477
  }
478
 
479
+ /**
480
+ * If we're forcing Co-Authors Plus to just do taxonomy queries, we still
481
+ * need to flush our special cache after a taxonomy term has been updated
482
+ *
483
+ * @since 3.1
484
+ */
485
+ public function action_edited_term_taxonomy_flush_cache( $tt_id, $taxonomy ) {
486
+ global $wpdb;
487
+
488
+ if ( $this->coauthor_taxonomy != $taxonomy )
489
+ return;
490
+
491
+ $term_id = $wpdb->get_results( $wpdb->prepare( "SELECT term_id FROM $wpdb->term_taxonomy WHERE term_taxonomy_id = %d ", $tt_id ) );
492
+
493
+ $term = get_term_by( 'id', $term_id[0]->term_id, $taxonomy );
494
+ $coauthor = $this->get_coauthor_by( 'user_nicename', $term->slug );
495
+ if ( ! $coauthor )
496
+ return new WP_Error( 'missing-coauthor', __( 'No co-author exists for that term', 'co-authors-plus' ) );
497
+
498
+ wp_cache_delete( 'author-term-' . $coauthor->user_nicename, 'co-authors-plus' );
499
+ }
500
+
501
  /**
502
  * Update the post count associated with an author term
503
  *
573
 
574
  if ( $query->get( 'author_name' ) )
575
  $author_name = sanitize_title( $query->get( 'author_name' ) );
576
+ else {
577
+ $author_data = get_userdata( $query->get( 'author' ) );
578
+ if ( is_object( $author_data ) )
579
+ $author_name = $author_data->user_nicename;
580
+ else
581
+ return $where;
582
+ }
583
 
584
  $terms = array();
585
  $coauthor = $this->get_coauthor_by( 'user_nicename', $author_name );
671
  if ( is_array( $coauthors ) ) {
672
  $coauthor = $this->get_coauthor_by( 'user_nicename', $coauthors[0]->user_nicename );
673
  if ( 'guest-author' == $coauthor->type && ! empty( $coauthor->linked_account ) ) {
674
+ $data['post_author'] = get_user_by( 'login', $coauthor->linked_account )->ID;
675
  } else if ( $coauthor->type == 'wpuser' )
676
  $data['post_author'] = $coauthor->ID;
677
  // Refresh their post publish count too
709
  if ( ! $this->is_post_type_enabled( $post->post_type ) )
710
  return;
711
 
712
+ if ( $this->current_user_can_set_authors() ) {
713
+ // if current_user_can_set_authors and nonce valid
714
+ if( isset( $_POST['coauthors-nonce'] ) && isset( $_POST['coauthors'] ) ) {
715
+ check_admin_referer( 'coauthors-edit', 'coauthors-nonce' );
716
 
 
717
  $coauthors = (array) $_POST['coauthors'];
718
  $coauthors = array_map( 'sanitize_text_field', $coauthors );
719
+ $this->add_coauthors( $post_id, $coauthors );
720
+ }
721
+ } else {
722
+ // If the user can't set authors and a co-author isn't currently set, we need to explicity set one
723
+ if ( ! $this->has_author_terms( $post_id ) ) {
724
+ $user = get_userdata( $post->post_author );
725
+ if ( $user )
726
+ $this->add_coauthors( $post_id, array( $user->user_login ) );
727
  }
728
  }
729
  }
730
 
731
+ function has_author_terms( $post_id ) {
732
+ $terms = wp_get_object_terms( $post_id, $this->coauthor_taxonomy, array( 'fields' => 'ids' ) );
733
+ return ! empty( $terms ) && ! is_wp_error( $terms );
734
+ }
735
+
736
  /**
737
  * Add one or more co-authors as bylines for a post
738
  */
754
  $term = $this->update_author_term( $author );
755
  $coauthors[$key] = $term->slug;
756
  }
757
+ return wp_set_post_terms( $post_id, $coauthors, $this->coauthor_taxonomy, $append );
758
  }
759
 
760
  /**
823
  function filter_count_user_posts( $count, $user_id ) {
824
  $user = get_userdata( $user_id );
825
 
826
+ $user = $this->get_coauthor_by( 'user_nicename', $user->user_nicename );
827
+
828
  $term = $this->get_author_term( $user );
829
  // Only modify the count if the author already exists as a term
830
  if( $term && !is_wp_error( $term ) ) {
946
  add_filter( 'terms_clauses', array( $this, 'filter_terms_clauses' ) );
947
  $found_terms = get_terms( $this->coauthor_taxonomy, $args );
948
  remove_filter( 'terms_clauses', array( $this, 'filter_terms_clauses' ) );
949
+
950
  if ( empty( $found_terms ) )
951
  return array();
952
 
1130
  return $allcaps;
1131
 
1132
  $current_user = wp_get_current_user();
1133
+ if ( 'publish' == get_post_status( $post_id ) &&
1134
+ ( isset( $obj->cap->edit_published_posts ) && ! empty( $current_user->allcaps[$obj->cap->edit_published_posts] ) ) )
1135
  $allcaps[$obj->cap->edit_published_posts] = true;
1136
+ elseif ( 'private' == get_post_status( $post_id ) &&
1137
+ ( isset( $obj->cap->edit_private_posts ) && ! empty( $current_user->allcaps[$obj->cap->edit_private_posts] ) ) )
1138
  $allcaps[$obj->cap->edit_private_posts] = true;
1139
 
1140
  $allcaps[$obj->cap->edit_others_posts] = true;
1189
  $term_description = implode( ' ', $search_values );
1190
 
1191
  if ( $term = $this->get_author_term( $coauthor ) ) {
1192
+ if ( $term->description != $term_description ) {
1193
+ wp_update_term( $term->term_id, $this->coauthor_taxonomy, array( 'description' => $term_description ) );
1194
+ }
1195
  } else {
1196
  $coauthor_slug = 'cap-' . $coauthor->user_nicename;
1197
  $args = array(
1198
  'slug' => $coauthor_slug,
1199
  'description' => $term_description,
1200
  );
1201
+
1202
  $new_term = wp_insert_term( $coauthor->user_login, $this->coauthor_taxonomy, $args );
1203
  }
1204
  wp_cache_delete( 'author-term-' . $coauthor->user_nicename, 'co-authors-plus' );
1440
 
1441
  return true;
1442
  }
1443
+ endif;
css/jquery.aceditable.css DELETED
@@ -1,80 +0,0 @@
1
- .ac_results {
2
- padding: 0px;
3
- border: 0px solid black;
4
- background-color: white;
5
- overflow: hidden;
6
- z-index: 99999;
7
- }
8
-
9
- .ac_results ul {
10
- width: 100%;
11
- list-style-position: outside;
12
- list-style: none;
13
- padding: 0;
14
- margin: 0px;
15
- -moz-border-radius-bottomleft:5px;
16
- -moz-border-radius-bottomright:5px;
17
- -moz-border-radius-topleft:0;
18
- -moz-border-radius-topright:0;
19
- -webkit-border-radius-bottomleft:5px;
20
- -webkit-border-radius-bottomright:5px;
21
- background-color:#FFFFFF;
22
- border-color:#F3F3F3 #CCCCCC #CCCCCC;
23
- border-style:solid;
24
- border-width:1px;
25
- }
26
- .ac_results li.noresult_msg {
27
- background:#F2F2F2 none repeat scroll 0 0;
28
- border:2px solid #DDDDDD;
29
- font-size:93%;
30
- padding:5px 6px;
31
- }
32
- .ac_results li.start_msg {
33
- background:#F2F2F2 none repeat scroll 0 0;
34
- border:2px solid #DDDDDD;
35
- font-size:93%;
36
- padding:5px 6px;
37
- }
38
- .ac_results li.end_msg {
39
- background:#F2F2F2 none repeat scroll 0 0;
40
- border:2px solid #DDDDDD;
41
- font-size:93%;
42
- padding:5px 6px;
43
- }
44
-
45
- .ac_results li {
46
- margin: 0px;
47
- text-align:left;
48
- padding: 3px 6px;
49
- cursor: default;
50
- display: block;
51
- border-top:1px solid #EEEEEE;
52
- /*
53
- if width will be 100% horizontal scrollbar will apear
54
- when scroll mode will be used
55
- */
56
- /*width: 100%;*/
57
- font: menu;
58
- font-size: 12px;
59
- /*
60
- it is very important, if line-height not setted or setted
61
- in relative units scroll will be broken in firefox
62
- */
63
- line-height: 16px;
64
- overflow: hidden;
65
- }
66
-
67
- .ac_loading {
68
- background: white url('indicator.gif') right center no-repeat;
69
- }
70
-
71
- .ac_odd {
72
- background-color:;
73
- }
74
- .ac_even {
75
- background-color:;
76
- }
77
-
78
- .ac_over {
79
- background-color: #dddddd;
80
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
languages/co-authors-plus-de_DE.mo CHANGED
Binary file
languages/co-authors-plus-de_DE.po CHANGED
@@ -1,110 +1,537 @@
1
- # Copyright (C) 2010 Co-Authors Plus
2
- # This file is distributed under the same license as the Co-Authors Plus package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: Co-Authors Plus 2.6.1\n"
6
- "Report-Msgid-Bugs-To: http://wordpress.org/tag/co-authors-plus\n"
7
- "POT-Creation-Date: 2011-12-30 05:00:31+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: 2012-08-20 23:57+0100\n"
12
- "Last-Translator: \n"
13
- "Language-Team: \n"
14
- "Language: deutsch\n"
15
- "X-Poedit-SourceCharset: UTF-8\n"
16
 
17
- #: co-authors-plus.php:39
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
  msgid " and "
19
  msgstr "und"
20
 
21
- #: co-authors-plus.php:216
22
- msgid "Post Authors"
23
- msgstr "Artikel Autoren"
24
 
25
- #: co-authors-plus.php:254
26
- msgid ""
27
- "<strong>Note:</strong> To edit post authors, please enable javascript or use "
28
- "a javascript-capable browser"
29
- msgstr ""
30
- "<strong>Notiz:</strong> Um Artikel Autoren zu ändern, bitte JavaScript "
31
- "aktivieren oder einen JavaScript fähigen Browser nutzen"
32
 
33
- #: co-authors-plus.php:261 co-authors-plus.php:743
34
- msgid ""
35
- "Click on an author to change them. Drag to change their order. Click on "
36
- "<strong>Remove</strong> to remove them."
37
- msgstr ""
38
- "Klicke auf einen Autor um sie zu ändern. Durch verschieben änderst du ihre "
39
- "Reihenfolge. Klicke auf <strong>Entfernen</strong> um sie zu entfernen."
40
-
41
- #: co-authors-plus.php:291
42
  msgid "Authors"
43
  msgstr "Autoren"
44
 
45
- #: co-authors-plus.php:327
46
  msgid "Posts"
47
  msgstr "Artikel"
48
 
49
- #: co-authors-plus.php:343
50
  msgid "View posts by this author"
51
  msgstr "Schaue dir Artikel von diesem Autor an"
52
 
53
- #: co-authors-plus.php:738
54
  msgid "Edit"
55
  msgstr "Bearbeiten"
56
 
57
- #: co-authors-plus.php:739
58
  msgid "Remove"
59
  msgstr "Entfernen"
60
 
61
- #: co-authors-plus.php:740
62
  msgid "Are you sure you want to remove this author?"
63
- msgstr "Bist du sicher, dass du diesen Autor entfernen möchtest?"
64
 
65
- #: co-authors-plus.php:741
66
  msgid "Click to change this author, or drag to change their position"
67
- msgstr ""
68
- "Klicken um diesen Autor zu ändern oder verschiebe sie um ihre Position zu "
69
- "ändern"
70
 
71
- #: co-authors-plus.php:742
72
  msgid "Search for an author"
73
  msgstr "Suche nach einem Autor"
74
 
75
- #: template-tags.php:71
76
- msgid ""
77
- "No post ID provided for CoAuthorsIterator constructor. Are you not in a loop "
78
- "or is $post not set?"
79
- msgstr ""
80
- "Keine Artikel ID für den CoAuthorsIterator Konstruktor verfügbar. Bist du "
81
- "nicht im Loop oder wurde $post nicht gesetzt?"
82
 
83
- #: template-tags.php:189 template-tags.php:329
84
  msgid "Posts by %s"
85
  msgstr "Artikel von %s"
86
 
87
- #: template-tags.php:230
88
  msgid "Visit %s&#8217;s website"
89
  msgstr "Besuche %s&#8217;s Website"
90
 
91
- #. Plugin Name of the plugin/theme
92
  msgid "Co-Authors Plus"
93
  msgstr "Co-Authors Plus"
94
 
95
- #. Plugin URI of the plugin/theme
96
  msgid "http://wordpress.org/extend/plugins/co-authors-plus/"
97
  msgstr "http://wordpress.org/extend/plugins/co-authors-plus/"
98
 
99
- #. Description of the plugin/theme
100
- msgid ""
101
- "Allows multiple authors to be assigned to a post. This plugin is an extended "
102
- "version of the Co-Authors plugin developed by Weston Ruter."
103
- msgstr ""
104
- "Erlaubt es mehrere Autoren einem Artikel zuzuweisen. Dieses Plugin ist eine "
105
- "erweiterte Version des Co-Authors Plugins, dass von Weston Ruter entwickelt "
106
- "wurde."
107
-
108
- #. Author of the plugin/theme
109
- msgid "Mohammad Jangda, Daniel Bachhuber"
110
- msgstr "Mohammad Jangda, Daniel Bachhuber"
1
+ # Translation of co-authors-plus in German
2
+ # This file is distributed under the same license as the co-authors-plus package.
3
  msgid ""
4
  msgstr ""
5
+ "PO-Revision-Date: 2013-01-07 12:20:48+0000\n"
 
 
6
  "MIME-Version: 1.0\n"
7
  "Content-Type: text/plain; charset=UTF-8\n"
8
  "Content-Transfer-Encoding: 8bit\n"
9
+ "Plural-Forms: nplurals=2; plural=n != 1;\n"
10
+ "X-Generator: GlotPress/0.1\n"
11
+ "Project-Id-Version: co-authors-plus\n"
 
 
12
 
13
+ #: php/class-coauthors-wp-list-table.php:207
14
+ msgid "View Posts"
15
+ msgstr "Post anzeigen"
16
+
17
+ #: co-authors-plus.php:993
18
+ msgid "Mine"
19
+ msgstr "Meins"
20
+
21
+ msgid "Mohammad Jangda, Daniel Bachhuber, Automattic"
22
+ msgstr "Mohammad Jangda, Daniel Bachhuber, Automattic</a>, &Uuml;bersetzung von <a href=\"http://de.trns.nl\">trns.nl"
23
+
24
+ #: co-authors-plus.php:481
25
+ msgid "No co-author exists for that term"
26
+ msgstr "Hierf&uuml;r gibt es keinen Co-Autor"
27
+
28
+ #: co-authors-plus.php:1230
29
+ msgid "New comment on your post \"%s\""
30
+ msgstr "Neuer Kommentar zu deinem Post \"%s\""
31
+
32
+ #: co-authors-plus.php:1232 co-authors-plus.php:1349
33
+ msgid "Author : %1$s (IP: %2$s , %3$s)"
34
+ msgstr "Autor : %1$s (IP: %2$s , %3$s)"
35
+
36
+ #: co-authors-plus.php:1233 co-authors-plus.php:1350
37
+ msgid "E-mail : %s"
38
+ msgstr "E-Mail: %s"
39
+
40
+ #: co-authors-plus.php:1234 co-authors-plus.php:1244 co-authors-plus.php:1253
41
+ #: co-authors-plus.php:1336 co-authors-plus.php:1343 co-authors-plus.php:1351
42
+ msgid "URL : %s"
43
+ msgstr "URL: %s"
44
+
45
+ #: co-authors-plus.php:1235 co-authors-plus.php:1352
46
+ msgid "Whois : http://whois.arin.net/rest/ip/%s"
47
+ msgstr "Whois : http://whois.arin.net/rest/ip/%s"
48
+
49
+ #: co-authors-plus.php:1236 co-authors-plus.php:1353
50
+ msgid "Comment: "
51
+ msgstr "Kommentar:"
52
+
53
+ #: co-authors-plus.php:1237
54
+ msgid "You can see all comments on this post here: "
55
+ msgstr "Du kannst alle Kommentare zu diesem Post hier anschauen:"
56
+
57
+ #: co-authors-plus.php:1239
58
+ msgid "[%1$s] Comment: \"%2$s\""
59
+ msgstr "[%1$s] Kommentar: \"%2$s\""
60
+
61
+ #: co-authors-plus.php:1241
62
+ msgid "New trackback on your post \"%s\""
63
+ msgstr "Neuer Trackback zu deinem Post \"%s\""
64
+
65
+ #: co-authors-plus.php:1243 co-authors-plus.php:1252
66
+ msgid "Website: %1$s (IP: %2$s , %3$s)"
67
+ msgstr "Website: %1$s (IP: %2$s , %3$s)"
68
+
69
+ #: co-authors-plus.php:1245 co-authors-plus.php:1254
70
+ msgid "Excerpt: "
71
+ msgstr "Auszug:"
72
+
73
+ #: co-authors-plus.php:1246
74
+ msgid "You can see all trackbacks on this post here: "
75
+ msgstr "Du kannst alle Trackback zu diesem Post hier sehen:"
76
+
77
+ #: co-authors-plus.php:1248
78
+ msgid "[%1$s] Trackback: \"%2$s\""
79
+ msgstr "[%1$s] Trackback: \"%2$s\""
80
+
81
+ #: co-authors-plus.php:1250
82
+ msgid "New pingback on your post \"%s\""
83
+ msgstr "Neuer Pingback zu deinem Post \"%s\""
84
+
85
+ #: co-authors-plus.php:1255
86
+ msgid "You can see all pingbacks on this post here: "
87
+ msgstr "Du kannst alle Pingbacks zu deinem Post hier sehen:"
88
+
89
+ #: co-authors-plus.php:1257
90
+ msgid "[%1$s] Pingback: \"%2$s\""
91
+ msgstr "[%1$s] Pingback: \"%2$s\""
92
+
93
+ #: co-authors-plus.php:1260
94
+ msgid "Permalink: %s"
95
+ msgstr "Permalink: %s"
96
+
97
+ #: co-authors-plus.php:1262 co-authors-plus.php:1359
98
+ msgid "Trash it: %s"
99
+ msgstr "In den Papierkorb: %s"
100
+
101
+ #: co-authors-plus.php:1264 co-authors-plus.php:1361
102
+ msgid "Delete it: %s"
103
+ msgstr "L&ouml;schen: %s"
104
+
105
+ #: co-authors-plus.php:1265 co-authors-plus.php:1362
106
+ msgid "Spam it: %s"
107
+ msgstr "Als Spam markieren: %s"
108
+
109
+ #: co-authors-plus.php:1333
110
+ msgid "A new trackback on the post \"%s\" is waiting for your approval"
111
+ msgstr "Ein neuer Trackback zum Post \"%s\" wartet auf deine Freigabe"
112
+
113
+ #: co-authors-plus.php:1335 co-authors-plus.php:1342
114
+ msgid "Website : %1$s (IP: %2$s , %3$s)"
115
+ msgstr "Website : %1$s (IP: %2$s , %3$s)"
116
+
117
+ #: co-authors-plus.php:1337
118
+ msgid "Trackback excerpt: "
119
+ msgstr "Trackback Auszug:"
120
+
121
+ #: co-authors-plus.php:1340
122
+ msgid "A new pingback on the post \"%s\" is waiting for your approval"
123
+ msgstr "Ein neuer Pingback zum Post \"%s\" wartet auf deine Freigabe"
124
+
125
+ #: co-authors-plus.php:1344
126
+ msgid "Pingback excerpt: "
127
+ msgstr "Pingback Auszug:"
128
+
129
+ #: co-authors-plus.php:1347
130
+ msgid "A new comment on the post \"%s\" is waiting for your approval"
131
+ msgstr "Ein neuer Kommentar auf den Post \"%s\" wartet auf deine Freigabe"
132
+
133
+ #: co-authors-plus.php:1357
134
+ msgid "Approve it: %s"
135
+ msgstr "Genehmigen: %s"
136
+
137
+ #: co-authors-plus.php:1364
138
+ msgid "Currently %s comment is waiting for approval. Please visit the moderation panel:"
139
+ msgid_plural "Currently %s comments are waiting for approval. Please visit the moderation panel:"
140
+ msgstr[0] "Im Moment wartet %s Kommentar auf deine Freigabe. Bitte besuche die Moderationsoberfl&auml;che:"
141
+ msgstr[1] "Im Moment warten %s Kommentare auf deine Freigabe. Bitte besuche die Moderationsoberfl&auml;che:"
142
+
143
+ #: co-authors-plus.php:1368
144
+ msgid "[%1$s] Please moderate: \"%2$s\""
145
+ msgstr "[%1$s] bitte moderiere: \"%2$s\""
146
+
147
+ #: php/class-coauthors-guest-authors.php:77
148
+ msgid "Guest Author"
149
+ msgstr "Gastautor"
150
+
151
+ #: php/class-coauthors-guest-authors.php:78
152
+ msgid "Guest Authors"
153
+ msgstr "Gastautoren"
154
+
155
+ #: php/class-coauthors-guest-authors.php:79
156
+ msgid "All Guest Authors"
157
+ msgstr "Alle Gastautoren"
158
+
159
+ #: php/class-coauthors-guest-authors.php:80
160
+ msgid "Add New Guest Author"
161
+ msgstr "Einen neuen Gastautoren hinauf&uuml;gen"
162
+
163
+ #: php/class-coauthors-guest-authors.php:81
164
+ msgid "Edit Guest Author"
165
+ msgstr "Gastautor bearbeiten"
166
+
167
+ #: php/class-coauthors-guest-authors.php:82
168
+ msgid "New Guest Author"
169
+ msgstr "Neuer Gastautor"
170
+
171
+ #: php/class-coauthors-guest-authors.php:83
172
+ msgid "View Guest Author"
173
+ msgstr "Gastautor anzeigen"
174
+
175
+ #: php/class-coauthors-guest-authors.php:84
176
+ msgid "Search Guest Authors"
177
+ msgstr "Gastautor suchen"
178
+
179
+ #: php/class-coauthors-guest-authors.php:85
180
+ msgid "No guest authors found"
181
+ msgstr "Dieser Gastautor konnte nicht gefunden werden"
182
+
183
+ #: php/class-coauthors-guest-authors.php:86
184
+ msgid "No guest authors found in Trash"
185
+ msgstr "Keinen Gastautoren im Papierkorb gefunden"
186
+
187
+ #: php/class-coauthors-guest-authors.php:87
188
+ msgid "Update Guest Author"
189
+ msgstr "Gastautor aktualisieren"
190
+
191
+ #: php/class-coauthors-guest-authors.php:88
192
+ msgid "About the guest author"
193
+ msgstr "&Uuml;ber diesen Gastautoren"
194
+
195
+ #: php/class-coauthors-guest-authors.php:97
196
+ msgctxt "co-authors-plus"
197
+ msgid "Add New"
198
+ msgstr "neuen hinauf&uuml;gen"
199
+
200
+ #: php/class-coauthors-guest-authors.php:153
201
+ #: php/class-coauthors-guest-authors.php:159
202
+ msgid "Guest author updated. <a href=\"%s\">View profile</a>"
203
+ msgstr "Gastautor aktualisiert. <a href=\"%s\">Profil ansehen</a>"
204
+
205
+ #: php/class-coauthors-guest-authors.php:154
206
+ msgid "Custom field updated."
207
+ msgstr "Benutzerdefiniertes Feld aktualisiert."
208
+
209
+ #: php/class-coauthors-guest-authors.php:155
210
+ msgid "Custom field deleted."
211
+ msgstr "Benutzerdefiniertes Feld entfernt."
212
+
213
+ #: php/class-coauthors-guest-authors.php:156
214
+ msgid "Guest author updated."
215
+ msgstr "Gastautor aktualisiert."
216
+
217
+ #: php/class-coauthors-guest-authors.php:158
218
+ msgid "Guest author restored to revision from %s"
219
+ msgstr "Gastautor aus der Revision von %s wiederhergestellt"
220
+
221
+ #: php/class-coauthors-guest-authors.php:160
222
+ msgid "Guest author saved."
223
+ msgstr "Gastautor gespeichert"
224
+
225
+ #: php/class-coauthors-guest-authors.php:161
226
+ msgid "Guest author submitted. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
227
+ msgstr "Gastautor erstellt. <a target=\"_blank\" href=\"%s\">Profilvorschau</a> "
228
+
229
+ #: php/class-coauthors-guest-authors.php:162
230
+ msgid "Guest author scheduled for: <strong>%1$s</strong>. <a target=\"_blank\" href=\"%2$s\">Preview profile</a>"
231
+ msgstr "Gastautor geplant f&uuml; <strong>%1$s</strong>. <a target=\"_blank\" href=\"%2$s\">Profilvorschau</a>"
232
+
233
+ #: php/class-coauthors-guest-authors.php:164
234
+ msgid "M j, Y @ G:i"
235
+ msgstr "M j, Y @ G:i"
236
+
237
+ #: php/class-coauthors-guest-authors.php:165
238
+ msgid "Guest author updated. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
239
+ msgstr "Gastautor aktualisiert. <a target=\"_blank\" href=\"%s\">Profilvorschau</a>"
240
+
241
+ #: php/class-coauthors-guest-authors.php:182
242
+ #: php/class-coauthors-guest-authors.php:215
243
+ #: php/class-coauthors-guest-authors.php:430
244
+ msgid "Doin' something fishy, huh?"
245
+ msgstr "&Auml;hm, was hast du vor?"
246
+
247
+ #: php/class-coauthors-guest-authors.php:185
248
+ #: php/class-coauthors-guest-authors.php:219
249
+ msgid "You don't have permission to perform this action."
250
+ msgstr "Du hast nicht die n&ouml;tigen Rechte, um das zu tun."
251
+
252
+ #: php/class-coauthors-guest-authors.php:224
253
+ #: php/class-coauthors-guest-authors.php:435
254
+ msgid "Guest author can't be deleted because it doesn't exist."
255
+ msgstr "Der Gastautor kann nicht gel&ouml;scht werden, weil er nicht existiert."
256
+
257
+ #: php/class-coauthors-guest-authors.php:238
258
+ msgid "Co-author does not exists. Try again?"
259
+ msgstr "Diesen Co-Autor gibt es nicht. Nochmal versuchen?"
260
+
261
+ #: php/class-coauthors-guest-authors.php:246
262
+ msgid "Please make sure to pick an option."
263
+ msgstr "Bitte w&auml;hle eine Option."
264
+
265
+ #: php/class-coauthors-guest-authors.php:386
266
+ msgid "Guest author deleted."
267
+ msgstr " Gastautor gel&ouml;scht"
268
+
269
+ #: php/class-coauthors-guest-authors.php:410
270
+ msgid "Save"
271
+ msgstr "speichern"
272
+
273
+ #: php/class-coauthors-guest-authors.php:411
274
+ msgid "Unique Slug"
275
+ msgstr "Eindeutiger Slug"
276
+
277
+ #: php/class-coauthors-guest-authors.php:413
278
+ msgid "Name"
279
+ msgstr "Name"
280
+
281
+ #: php/class-coauthors-guest-authors.php:414
282
+ msgid "Contact Info"
283
+ msgstr "Kontakt Info"
284
+
285
+ #: php/class-coauthors-guest-authors.php:439
286
+ msgid "Delete %s"
287
+ msgstr "Entferne %s"
288
+
289
+ #: php/class-coauthors-guest-authors.php:440
290
+ msgid "You have specified this guest author for deletion:"
291
+ msgstr "Du hast diesen Gastautor zum l&ouml;schen ausgew&auml;hlt:"
292
+
293
+ #: php/class-coauthors-guest-authors.php:442
294
+ msgid "What should be done with posts assigned to this guest author?"
295
+ msgstr "Was soll mit den Posts geschehen, die diesem Gastautor zugewiesen sind?"
296
+
297
+ #: php/class-coauthors-guest-authors.php:443
298
+ msgid "Note: If you'd like to delete the guest author and all of their posts, you should delete their posts first and then come back to delete the guest author."
299
+ msgstr "Beachte: Wenn du den Gastautor und alle seine Posts l&ouml;schen m&ouml;test, solltest du zuerst seine Artikel l&ouml;schen und dann hierher zur&uuml;ckkommen, um den Gastautor zu l&ouml;schen."
300
+
301
+ #: php/class-coauthors-guest-authors.php:452
302
+ msgid "Reassign to another co-author:"
303
+ msgstr "Einem anderen Autoren zuweisen:"
304
+
305
+ #: php/class-coauthors-guest-authors.php:458
306
+ msgid "Leave posts assigned to the mapped user, %s."
307
+ msgstr "Die Posts dem Verbundenen WordPress user %s zuweisen."
308
+
309
+ #: php/class-coauthors-guest-authors.php:463
310
+ msgid "Remove byline from posts (but leave each post in its current status)."
311
+ msgstr "Entferne den Namen von den Post, aber belasse die Posts in ihrem aktuellen Zustand."
312
+
313
+ #: php/class-coauthors-guest-authors.php:466
314
+ msgid "Confirm Deletion"
315
+ msgstr "L&ouml;schen best&auml;tigen"
316
+
317
+ #: php/class-coauthors-guest-authors.php:536
318
+ msgid "WordPress User Mapping"
319
+ msgstr "WordPress User verbinden"
320
+
321
+ #: php/class-coauthors-guest-authors.php:538
322
+ msgid "-- Not mapped --"
323
+ msgstr "– Nicht verbunden –"
324
+
325
+ #: php/class-coauthors-guest-authors.php:651
326
+ msgid "Guest authors cannot be created without display names."
327
+ msgstr "Gastautoren k&ouml;nnen nicht ohne &Ouml;ffentlichen Namen erstellt werden."
328
+
329
+ #: php/class-coauthors-guest-authors.php:658
330
+ msgid "Guest authors cannot be created with the same user_login value as a user. Try creating a profile from the user instead"
331
+ msgstr "Gastautoren k&ouml;nnen nicht mit dem selben Login Namen, wie ein echter Benutzer erstellt werden. "
332
+
333
+ #: php/class-coauthors-guest-authors.php:663
334
+ msgid "Display name conflicts with another guest author display name."
335
+ msgstr "Der &Ouml;ffentliche Name dieses Gastautoren steht im Konflikt mit einem anderen."
336
+
337
+ #: php/class-coauthors-guest-authors.php:829
338
+ #: php/class-coauthors-wp-list-table.php:144
339
+ msgid "First Name"
340
+ msgstr "Vorname"
341
+
342
+ #: php/class-coauthors-guest-authors.php:834
343
+ #: php/class-coauthors-wp-list-table.php:145
344
+ msgid "Last Name"
345
+ msgstr "Nachname"
346
+
347
+ #: php/class-coauthors-guest-authors.php:839
348
+ msgid "Slug"
349
+ msgstr "Slug"
350
+
351
+ #: php/class-coauthors-guest-authors.php:846
352
+ #: php/class-coauthors-wp-list-table.php:146
353
+ msgid "E-mail"
354
+ msgstr "E-mail"
355
+
356
+ #: php/class-coauthors-guest-authors.php:851
357
+ #: php/class-coauthors-wp-list-table.php:147
358
+ msgid "Linked Account"
359
+ msgstr "Verbundener Account"
360
+
361
+ #: php/class-coauthors-guest-authors.php:856
362
+ msgid "Website"
363
+ msgstr "Website"
364
+
365
+ #: php/class-coauthors-guest-authors.php:861
366
+ msgid "AIM"
367
+ msgstr "AIM"
368
+
369
+ #: php/class-coauthors-guest-authors.php:866
370
+ msgid "Yahoo IM"
371
+ msgstr "Yahoo IM"
372
+
373
+ #: php/class-coauthors-guest-authors.php:871
374
+ msgid "Jabber / Google Talk"
375
+ msgstr "Jabber / Google Talk"
376
+
377
+ #: php/class-coauthors-guest-authors.php:876
378
+ msgid "Biographical Info"
379
+ msgstr "Biographische Angaben"
380
+
381
+ #: php/class-coauthors-guest-authors.php:1006
382
+ msgid "%s is a required field"
383
+ msgstr "%s ist ein Pflichtfeld"
384
+
385
+ #: php/class-coauthors-guest-authors.php:1012
386
+ msgid "user_login cannot duplicate existing guest author or mapped user"
387
+ msgstr "user_login kann nicht mit einem existierenden Gastautoren oder verbundenen Benutzer &uuml;bereinstimmen"
388
+
389
+ #: php/class-coauthors-guest-authors.php:1057
390
+ msgid "Guest author does not exist"
391
+ msgstr "Gastautor existiert nicht"
392
+
393
+ #: php/class-coauthors-guest-authors.php:1069
394
+ msgid "Reassignment co-author does not exist"
395
+ msgstr "Dieser Co-Autor existiert nicht"
396
+
397
+ #: php/class-coauthors-guest-authors.php:1101
398
+ msgid "No user exists with that ID"
399
+ msgstr "Es gibt keinen Nutzer mit dieser ID"
400
+
401
+ #: php/class-coauthors-guest-authors.php:1158
402
+ msgid "Edit Profile"
403
+ msgstr "Profil bearbeiten"
404
+
405
+ #: php/class-coauthors-guest-authors.php:1166
406
+ msgid "Create Profile"
407
+ msgstr "Profil erstellen"
408
+
409
+ #: php/class-coauthors-wp-list-table.php:19
410
+ msgid "Co-Authors"
411
+ msgstr "Co-Autoren"
412
+
413
+ #: php/class-coauthors-wp-list-table.php:20
414
+ msgid "Co-Author"
415
+ msgstr "Co-Autor"
416
+
417
+ #: php/class-coauthors-wp-list-table.php:81
418
+ msgid "Show all"
419
+ msgstr "Alle Anzeigen"
420
+
421
+ #: php/class-coauthors-wp-list-table.php:82
422
+ msgid "With linked account"
423
+ msgstr "Mit verbundenem Account"
424
+
425
+ #: php/class-coauthors-wp-list-table.php:83
426
+ msgid "Without linked account"
427
+ msgstr "Ohne verbundenen Account"
428
+
429
+ #: php/class-coauthors-wp-list-table.php:135
430
+ msgid "No matching guest authors were found."
431
+ msgstr "Es wurden keine passenden Gastautoren gefunden."
432
+
433
+ #: php/class-coauthors-wp-list-table.php:257
434
+ msgid "Filter"
435
+ msgstr "Filter"
436
+
437
+ #: php/class-wp-cli.php:153
438
+ msgid "Please specify a valid user_login"
439
+ msgstr "Bitte gib einen validen user_login an"
440
+
441
+ #: php/class-wp-cli.php:156
442
+ msgid "Please specify a valid co-author login"
443
+ msgstr "Bitte gib einen validen co-author login an"
444
+
445
+ #: php/class-wp-cli.php:163
446
+ msgid "Skipping - Post #%d already has co-authors assigned: %s"
447
+ msgstr "&Uuml;berspringe - Post 2%d es wurde schon ein Co-Autor hinzugef&uuml;gt: %s"
448
+
449
+ #: php/class-wp-cli.php:168
450
+ msgid "Updating - Adding %s's byline to post #%d"
451
+ msgstr "Aktualisieren - Erg&auml;nze %s's Namen zum Post #%d"
452
+
453
+ #: php/class-wp-cli.php:173
454
+ msgid "All done! %d posts were affected."
455
+ msgstr "Fertig! %d Posts wurden bearbeiten."
456
+
457
+ #: php/class-coauthors-guest-authors.php:475
458
+ msgid "Add New"
459
+ msgstr "Neu"
460
+
461
+ #: php/class-coauthors-wp-list-table.php:206
462
+ msgid "Delete"
463
+ msgstr "L&ouml;schen"
464
+
465
+ #: php/class-coauthors-guest-authors.php:823
466
+ #: php/class-coauthors-wp-list-table.php:143
467
+ msgid "Display Name"
468
+ msgstr "&Ouml;ffentlicher Name"
469
+
470
+ #: php/class-coauthors-guest-authors.php:817
471
+ msgid "ID"
472
+ msgstr "ID"
473
+
474
+ #: template-tags.php:136
475
  msgid " and "
476
  msgstr "und"
477
 
478
+ #: co-authors-plus.php:342
479
+ msgid "<strong>Note:</strong> To edit post authors, please enable javascript or use a javascript-capable browser"
480
+ msgstr "<strong>Beachte:</strong> Um Artikel Autoren zu &auml;ndern, bitte JavaScript aktivieren oder einen JavaScript f&auml;higen Browser nutzen"
481
 
482
+ #: co-authors-plus.php:349 co-authors-plus.php:956
483
+ msgid "Click on an author to change them. Drag to change their order. Click on <strong>Remove</strong> to remove them."
484
+ msgstr "Klicke auf einen Autor um sie zu &auml;ndern. Durch verschieben &auml;nderst du ihre Reihenfolge. Klicke auf <strong>Entfernen</strong> um sie zu entfernen."
 
 
 
 
485
 
486
+ #: co-authors-plus.php:287 co-authors-plus.php:382 co-authors-plus.php:1158
 
 
 
 
 
 
 
 
487
  msgid "Authors"
488
  msgstr "Autoren"
489
 
490
+ #: co-authors-plus.php:425 php/class-coauthors-wp-list-table.php:148
491
  msgid "Posts"
492
  msgstr "Artikel"
493
 
494
+ #: co-authors-plus.php:442
495
  msgid "View posts by this author"
496
  msgstr "Schaue dir Artikel von diesem Autor an"
497
 
498
+ #: co-authors-plus.php:951 php/class-coauthors-wp-list-table.php:205
499
  msgid "Edit"
500
  msgstr "Bearbeiten"
501
 
502
+ #: co-authors-plus.php:952
503
  msgid "Remove"
504
  msgstr "Entfernen"
505
 
506
+ #: co-authors-plus.php:953
507
  msgid "Are you sure you want to remove this author?"
508
+ msgstr "Bist du sicher, dass du diesen Autor entfernen m&ouml;chtest?"
509
 
510
+ #: co-authors-plus.php:954
511
  msgid "Click to change this author, or drag to change their position"
512
+ msgstr "Klicken um diesen Autor zu &auml;ndern oder verschiebe sie um ihre Position zu &auml;ndern"
 
 
513
 
514
+ #: co-authors-plus.php:955
515
  msgid "Search for an author"
516
  msgstr "Suche nach einem Autor"
517
 
518
+ #: template-tags.php:82
519
+ msgid "No post ID provided for CoAuthorsIterator constructor. Are you not in a loop or is $post not set?"
520
+ msgstr "Keine Artikel ID für den CoAuthorsIterator Konstruktor verf&uuml;gbar. Bist du nicht im Loop oder wurde $post nicht gesetzt?"
 
 
 
 
521
 
522
+ #: template-tags.php:208 template-tags.php:365
523
  msgid "Posts by %s"
524
  msgstr "Artikel von %s"
525
 
526
+ #: template-tags.php:257
527
  msgid "Visit %s&#8217;s website"
528
  msgstr "Besuche %s&#8217;s Website"
529
 
 
530
  msgid "Co-Authors Plus"
531
  msgstr "Co-Authors Plus"
532
 
 
533
  msgid "http://wordpress.org/extend/plugins/co-authors-plus/"
534
  msgstr "http://wordpress.org/extend/plugins/co-authors-plus/"
535
 
536
+ msgid "Allows multiple authors to be assigned to a post. This plugin is an extended version of the Co-Authors plugin developed by Weston Ruter."
537
+ msgstr "Erlaubt es mehrere Autoren einem Artikel zuzuweisen. Dieses Plugin ist eine erweiterte Version des Co-Authors Plugins, dass von Weston Ruter entwickelt wurde."
 
 
 
 
 
 
 
 
 
 
languages/co-authors-plus-nl_NL.mo ADDED
Binary file
languages/co-authors-plus-nl_NL.po ADDED
@@ -0,0 +1,534 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Translation of co-authors-plus in Dutch
2
+ # This file is distributed under the same license as the co-authors-plus package.
3
+ msgid ""
4
+ msgstr ""
5
+ "PO-Revision-Date: 2013-09-03 23:09+0100\n"
6
+ "MIME-Version: 1.0\n"
7
+ "Content-Type: text/plain; charset=UTF-8\n"
8
+ "Content-Transfer-Encoding: 8bit\n"
9
+ "Plural-Forms: nplurals=2; plural=n != 1;\n"
10
+ "X-Generator: Poedit 1.5.7\n"
11
+ "Project-Id-Version: co-authors-plus\n"
12
+
13
+ #: php/class-coauthors-wp-list-table.php:207
14
+ msgid "View Posts"
15
+ msgstr "Bekijk Berichten"
16
+
17
+ #: co-authors-plus.php:993
18
+ msgid "Mine"
19
+ msgstr "Mijn"
20
+
21
+ msgid "Mohammad Jangda, Daniel Bachhuber, Automattic"
22
+ msgstr "Mohammad Jangda, Daniel Bachhuber, Automattic</a>, Translation by <a href=\"http://kar.im\">Karim"
23
+
24
+ #: co-authors-plus.php:481
25
+ msgid "No co-author exists for that term"
26
+ msgstr "Geen co-auteur"
27
+
28
+ #: co-authors-plus.php:1230
29
+ msgid "New comment on your post \"%s\""
30
+ msgstr "Nieuwe reactie op je bericht \"%s\""
31
+
32
+ #: co-authors-plus.php:1232 co-authors-plus.php:1349
33
+ msgid "Author : %1$s (IP: %2$s , %3$s)"
34
+ msgstr "Auteur : %1$s (IP: %2$s , %3$s)"
35
+
36
+ #: co-authors-plus.php:1233 co-authors-plus.php:1350
37
+ msgid "E-mail : %s"
38
+ msgstr "E-Mail: %s"
39
+
40
+ #: co-authors-plus.php:1234 co-authors-plus.php:1244 co-authors-plus.php:1253
41
+ #: co-authors-plus.php:1336 co-authors-plus.php:1343 co-authors-plus.php:1351
42
+ msgid "URL : %s"
43
+ msgstr "URL: %s"
44
+
45
+ #: co-authors-plus.php:1235 co-authors-plus.php:1352
46
+ msgid "Whois : http://whois.arin.net/rest/ip/%s"
47
+ msgstr "Whois : http://whois.arin.net/rest/ip/%s"
48
+
49
+ #: co-authors-plus.php:1236 co-authors-plus.php:1353
50
+ msgid "Comment: "
51
+ msgstr "Reactie:"
52
+
53
+ #: co-authors-plus.php:1237
54
+ msgid "You can see all comments on this post here: "
55
+ msgstr "Je kan hier alle reacties op dit bericht zien:"
56
+
57
+ #: co-authors-plus.php:1239
58
+ msgid "[%1$s] Comment: \"%2$s\""
59
+ msgstr "[%1$s] Reacties: \"%2$s\""
60
+
61
+ #: co-authors-plus.php:1241
62
+ msgid "New trackback on your post \"%s\""
63
+ msgstr "Nieuwe trackback op je bericht \"%s\""
64
+
65
+ #: co-authors-plus.php:1243 co-authors-plus.php:1252
66
+ msgid "Website: %1$s (IP: %2$s , %3$s)"
67
+ msgstr "Website: %1$s (IP: %2$s , %3$s)"
68
+
69
+ #: co-authors-plus.php:1245 co-authors-plus.php:1254
70
+ msgid "Excerpt: "
71
+ msgstr "Fragment:"
72
+
73
+ #: co-authors-plus.php:1246
74
+ msgid "You can see all trackbacks on this post here: "
75
+ msgstr "Je kan hier alle trackbacks op dit bericht zien:"
76
+
77
+ #: co-authors-plus.php:1248
78
+ msgid "[%1$s] Trackback: \"%2$s\""
79
+ msgstr "[%1$s] Trackback: \"%2$s\""
80
+
81
+ #: co-authors-plus.php:1250
82
+ msgid "New pingback on your post \"%s\""
83
+ msgstr "Nieuwe pingback op je bericht \"%s\""
84
+
85
+ #: co-authors-plus.php:1255
86
+ msgid "You can see all pingbacks on this post here: "
87
+ msgstr "Je kan hier alle pingbacks op dit bericht zien:"
88
+
89
+ #: co-authors-plus.php:1257
90
+ msgid "[%1$s] Pingback: \"%2$s\""
91
+ msgstr "[%1$s] Pingback: \"%2$s\""
92
+
93
+ #: co-authors-plus.php:1260
94
+ msgid "Permalink: %s"
95
+ msgstr "Permalink: %s"
96
+
97
+ #: co-authors-plus.php:1262 co-authors-plus.php:1359
98
+ msgid "Trash it: %s"
99
+ msgstr "In de prullebak: %s"
100
+
101
+ #: co-authors-plus.php:1264 co-authors-plus.php:1361
102
+ msgid "Delete it: %s"
103
+ msgstr "Verwijder het: %s"
104
+
105
+ #: co-authors-plus.php:1265 co-authors-plus.php:1362
106
+ msgid "Spam it: %s"
107
+ msgstr "Als Spam markeren: %s"
108
+
109
+ #: co-authors-plus.php:1333
110
+ msgid "A new trackback on the post \"%s\" is waiting for your approval"
111
+ msgstr "Een nieuwe trackback op dit bericht \"%s\" wacht op goedkeuring"
112
+
113
+ #: co-authors-plus.php:1335 co-authors-plus.php:1342
114
+ msgid "Website : %1$s (IP: %2$s , %3$s)"
115
+ msgstr "Website : %1$s (IP: %2$s , %3$s)"
116
+
117
+ #: co-authors-plus.php:1337
118
+ msgid "Trackback excerpt: "
119
+ msgstr "Trackback fragment:"
120
+
121
+ #: co-authors-plus.php:1340
122
+ msgid "A new pingback on the post \"%s\" is waiting for your approval"
123
+ msgstr "Een nieuwe pingback op dit bericht \"%s\" wacht op goedkeuring"
124
+
125
+ #: co-authors-plus.php:1344
126
+ msgid "Pingback excerpt: "
127
+ msgstr "Pingback fragment:"
128
+
129
+ #: co-authors-plus.php:1347
130
+ msgid "A new comment on the post \"%s\" is waiting for your approval"
131
+ msgstr "Een nieuwe reactie op dit bericht \"%s\" wacht op goedkeuring"
132
+
133
+ #: co-authors-plus.php:1357
134
+ msgid "Approve it: %s"
135
+ msgstr "Goedkeuren: %s"
136
+
137
+ #: co-authors-plus.php:1364
138
+ msgid "Currently %s comment is waiting for approval. Please visit the moderation panel:"
139
+ msgid_plural "Currently %s comments are waiting for approval. Please visit the moderation panel:"
140
+ msgstr[0] "Er wacht momenteel %s reactie op goedkeuring. Bezoek het moderatiepaneel:"
141
+ msgstr[1] "Er wachten momenteel %s reacties op goedkeuring. Bezoek het moderatiepaneel:"
142
+
143
+ #: co-authors-plus.php:1368
144
+ msgid "[%1$s] Please moderate: \"%2$s\""
145
+ msgstr "[%1$s] Alsjeblieft modereren: \"%2$s\""
146
+
147
+ #: php/class-coauthors-guest-authors.php:77
148
+ msgid "Guest Author"
149
+ msgstr "Gastauteur"
150
+
151
+ #: php/class-coauthors-guest-authors.php:78
152
+ msgid "Guest Authors"
153
+ msgstr "Gastauteurs"
154
+
155
+ #: php/class-coauthors-guest-authors.php:79
156
+ msgid "All Guest Authors"
157
+ msgstr "Alle Gastauteurs"
158
+
159
+ #: php/class-coauthors-guest-authors.php:80
160
+ msgid "Add New Guest Author"
161
+ msgstr "Een nieuwe gastauteur toevoegen"
162
+
163
+ #: php/class-coauthors-guest-authors.php:81
164
+ msgid "Edit Guest Author"
165
+ msgstr "Gastauteur bewerken"
166
+
167
+ #: php/class-coauthors-guest-authors.php:82
168
+ msgid "New Guest Author"
169
+ msgstr "Nieuwe Gastauteur"
170
+
171
+ #: php/class-coauthors-guest-authors.php:83
172
+ msgid "View Guest Author"
173
+ msgstr "Gastauteur bekijken"
174
+
175
+ #: php/class-coauthors-guest-authors.php:84
176
+ msgid "Search Guest Authors"
177
+ msgstr "Gastauteur zoeken"
178
+
179
+ #: php/class-coauthors-guest-authors.php:85
180
+ msgid "No guest authors found"
181
+ msgstr "Geen gastauteurs gevonden"
182
+
183
+ #: php/class-coauthors-guest-authors.php:86
184
+ msgid "No guest authors found in Trash"
185
+ msgstr "Geen gastauteurs gevonden in de prullebak"
186
+
187
+ #: php/class-coauthors-guest-authors.php:87
188
+ msgid "Update Guest Author"
189
+ msgstr "Gastauteur bijwerken"
190
+
191
+ #: php/class-coauthors-guest-authors.php:88
192
+ #: php/class-coauthors-guest-authors.php:97
193
+ msgctxt "co-authors-plus"
194
+ msgid "Add New"
195
+ msgstr "Toevoegen"
196
+
197
+ #: php/class-coauthors-guest-authors.php:153
198
+ #: php/class-coauthors-guest-authors.php:159
199
+ msgid "Guest author updated. <a href=\"%s\">View profile</a>"
200
+ msgstr "Gastauteur bewerkt. <a href=\"%s\">Bekijk profiel</a>"
201
+
202
+ #: php/class-coauthors-guest-authors.php:154
203
+ msgid "Custom field updated."
204
+ msgstr "veld bewerkt."
205
+
206
+ #: php/class-coauthors-guest-authors.php:155
207
+ msgid "Custom field deleted."
208
+ msgstr "Veld verwijderd"
209
+
210
+ #: php/class-coauthors-guest-authors.php:156
211
+ msgid "Guest author updated."
212
+ msgstr "Gastauteur bewerkt."
213
+
214
+ #: php/class-coauthors-guest-authors.php:158
215
+ msgid "Guest author restored to revision from %s"
216
+ msgstr "Gastauteur hersteld revisie van %s"
217
+
218
+ #: php/class-coauthors-guest-authors.php:160
219
+ msgid "Guest author saved."
220
+ msgstr "Gastauteur bewaard"
221
+
222
+ #: php/class-coauthors-guest-authors.php:161
223
+ msgid "Guest author submitted. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
224
+ msgstr "Gastauteur toegevoegd. <a target=\"_blank\" href=\"%s\">Bekijk profiel</a> "
225
+
226
+ #: php/class-coauthors-guest-authors.php:162
227
+ msgid "Guest author scheduled for: <strong>%1$s</strong>. <a target=\"_blank\" href=\"%2$s\">Preview profile</a>"
228
+ msgstr "Gastauteur gepland &uuml; <strong>%1$s</strong>. <a target=\"_blank\" href=\"%2$s\">Bekijk profiel</a>"
229
+
230
+ #: php/class-coauthors-guest-authors.php:164
231
+ msgid "M j, Y @ G:i"
232
+ msgstr "M j, Y @ G:i"
233
+
234
+ #: php/class-coauthors-guest-authors.php:165
235
+ msgid "Guest author updated. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
236
+ msgstr "Gastauteur bewerkt. <a target=\"_blank\" href=\"%s\">Bekijk profiel</a>"
237
+
238
+ #: php/class-coauthors-guest-authors.php:182
239
+ #: php/class-coauthors-guest-authors.php:215
240
+ #: php/class-coauthors-guest-authors.php:430
241
+ msgid "Doin' something fishy, huh?"
242
+ msgstr "Ben je iets raars aan het doen?"
243
+
244
+ #: php/class-coauthors-guest-authors.php:185
245
+ #: php/class-coauthors-guest-authors.php:219
246
+ msgid "You don't have permission to perform this action."
247
+ msgstr "Je hebt geen rechten om deze actie uit te voeren."
248
+
249
+ #: php/class-coauthors-guest-authors.php:224
250
+ #: php/class-coauthors-guest-authors.php:435
251
+ msgid "Guest author can't be deleted because it doesn't exist."
252
+ msgstr "Deze gastauteur kan niet worden verwijderd omdat deze niet bestaat."
253
+
254
+ #: php/class-coauthors-guest-authors.php:238
255
+ msgid "Co-author does not exists. Try again?"
256
+ msgstr "Co-auteur bestaat niet. Probeer het nogmaals"
257
+
258
+ #: php/class-coauthors-guest-authors.php:246
259
+ msgid "Please make sure to pick an option."
260
+ msgstr "Kies een optie."
261
+
262
+ #: php/class-coauthors-guest-authors.php:386
263
+ msgid "Guest author deleted."
264
+ msgstr " Gastauteur verwijderd"
265
+
266
+ #: php/class-coauthors-guest-authors.php:410
267
+ msgid "Save"
268
+ msgstr "Bewaren"
269
+
270
+ #: php/class-coauthors-guest-authors.php:411
271
+ msgid "Unique Slug"
272
+ msgstr "Unieke Slug"
273
+
274
+ #: php/class-coauthors-guest-authors.php:413
275
+ msgid "Name"
276
+ msgstr "Naam"
277
+
278
+ #: php/class-coauthors-guest-authors.php:414
279
+ msgid "Contact Info"
280
+ msgstr "Contact Informatie"
281
+
282
+ #: php/class-coauthors-guest-authors.php:439
283
+ msgid "Delete %s"
284
+ msgstr "Verwijderen %s"
285
+
286
+ #: php/class-coauthors-guest-authors.php:440
287
+ msgid "You have specified this guest author for deletion:"
288
+ msgstr "Je heb deze gastauteur geselecteerd om te verwijderen"
289
+
290
+ #: php/class-coauthors-guest-authors.php:442
291
+ msgid "What should be done with posts assigned to this guest author?"
292
+ msgstr "Wat moet er met de berichten gebeuren die aan deze gastauteur zijn gekoppeld"
293
+
294
+ #: php/class-coauthors-guest-authors.php:443
295
+ msgid "Note: If you'd like to delete the guest author and all of their posts, you should delete their posts first and then come back to delete the guest author."
296
+ msgstr "Als je gastauteur en al zijn berichten wilt verwijderen dan moet je eerst de berichten verwijderen en dan de gastauteur."
297
+
298
+ #: php/class-coauthors-guest-authors.php:452
299
+ msgid "Reassign to another co-author:"
300
+ msgstr "Toewijzen aan een andere co-auteur:"
301
+
302
+ #: php/class-coauthors-guest-authors.php:458
303
+ msgid "Leave posts assigned to the mapped user, %s."
304
+ msgstr "Laat berichten toegewezen aan de verbonden gebruiker "
305
+
306
+ #: php/class-coauthors-guest-authors.php:463
307
+ msgid "Remove byline from posts (but leave each post in its current status)."
308
+ msgstr "Verwijder de bijzin van berichten (maar behoud de status van elk bericht)"
309
+
310
+ #: php/class-coauthors-guest-authors.php:466
311
+ msgid "Confirm Deletion"
312
+ msgstr "Bevestig verwijdering"
313
+
314
+ #: php/class-coauthors-guest-authors.php:536
315
+ msgid "WordPress User Mapping"
316
+ msgstr "WordPress gebruikersverbinding"
317
+
318
+ #: php/class-coauthors-guest-authors.php:538
319
+ msgid "-- Not mapped --"
320
+ msgstr "– Niet verbonden –"
321
+
322
+ #: php/class-coauthors-guest-authors.php:651
323
+ msgid "Guest authors cannot be created without display names."
324
+ msgstr "Gastauteur kan niet worden aangemaakt zonder de beeldschermnaam."
325
+
326
+ #: php/class-coauthors-guest-authors.php:658
327
+ msgid "Guest authors cannot be created with the same user_login value as a user. Try creating a profile from the user instead.
328
+ msgstr "Gastauteur kan niet worden aangemaakt met dezelfde login naam als de gebruiker. Maak inplaats daarvan een profiel aan voor de gebruiker"
329
+
330
+ #: php/class-coauthors-guest-authors.php:663
331
+ msgid "Display name conflicts with another guest author display name."
332
+ msgstr "De beelschermnaam geeft een conflict met de gastauteur beeldschermnaam"
333
+
334
+ #: php/class-coauthors-guest-authors.php:829
335
+ #: php/class-coauthors-wp-list-table.php:144
336
+ msgid "First Name"
337
+ msgstr "Voornaam"
338
+
339
+ #: php/class-coauthors-guest-authors.php:834
340
+ #: php/class-coauthors-wp-list-table.php:145
341
+ msgid "Last Name"
342
+ msgstr "Achternaam"
343
+
344
+ #: php/class-coauthors-guest-authors.php:839
345
+ msgid "Slug"
346
+ msgstr "Slug"
347
+
348
+ #: php/class-coauthors-guest-authors.php:846
349
+ #: php/class-coauthors-wp-list-table.php:146
350
+ msgid "E-mail"
351
+ msgstr "E-mail"
352
+
353
+ #: php/class-coauthors-guest-authors.php:851
354
+ #: php/class-coauthors-wp-list-table.php:147
355
+ msgid "Linked Account"
356
+ msgstr "Verbonden Account"
357
+
358
+ #: php/class-coauthors-guest-authors.php:856
359
+ msgid "Website"
360
+ msgstr "Website"
361
+
362
+ #: php/class-coauthors-guest-authors.php:861
363
+ msgid "AIM"
364
+ msgstr "AIM"
365
+
366
+ #: php/class-coauthors-guest-authors.php:866
367
+ msgid "Yahoo IM"
368
+ msgstr "Yahoo IM"
369
+
370
+ #: php/class-coauthors-guest-authors.php:871
371
+ msgid "Jabber / Google Talk"
372
+ msgstr "Jabber / Google Talk"
373
+
374
+ #: php/class-coauthors-guest-authors.php:876
375
+ msgid "Biographical Info"
376
+ msgstr "Biografie Informatie"
377
+
378
+ #: php/class-coauthors-guest-authors.php:1006
379
+ msgid "%s is a required field"
380
+ msgstr "%s is een verplicht veld"
381
+
382
+ #: php/class-coauthors-guest-authors.php:1012
383
+ msgid "user_login cannot duplicate existing guest author or mapped user"
384
+ msgstr "user_login kan niet worden gedupliceert met de bestaande gastauteur of verbonden gebruiker"
385
+
386
+ #: php/class-coauthors-guest-authors.php:1057
387
+ msgid "Guest author does not exist"
388
+ msgstr "Gastauteur bestaat niet"
389
+
390
+ #: php/class-coauthors-guest-authors.php:1069
391
+ msgid "Reassignment co-author does not exist"
392
+ msgstr "Deze co-auteur bestaat niet"
393
+
394
+ #: php/class-coauthors-guest-authors.php:1101
395
+ msgid "No user exists with that ID"
396
+ msgstr "Er bestaat geen gebruiker met deze ID"
397
+
398
+ #: php/class-coauthors-guest-authors.php:1158
399
+ msgid "Edit Profile"
400
+ msgstr "Bewerk Profiel"
401
+
402
+ #: php/class-coauthors-guest-authors.php:1166
403
+ msgid "Create Profile"
404
+ msgstr "Profiel aanmaken"
405
+
406
+ #: php/class-coauthors-wp-list-table.php:19
407
+ msgid "Co-Authors"
408
+ msgstr "Co-Auteurs"
409
+
410
+ #: php/class-coauthors-wp-list-table.php:20
411
+ msgid "Co-Author"
412
+ msgstr "Co-Auteur"
413
+
414
+ #: php/class-coauthors-wp-list-table.php:81
415
+ msgid "Show all"
416
+ msgstr "Bekijk alles"
417
+
418
+ #: php/class-coauthors-wp-list-table.php:82
419
+ msgid "With linked account"
420
+ msgstr "Met verbonden Account"
421
+
422
+ #: php/class-coauthors-wp-list-table.php:83
423
+ msgid "Without linked account"
424
+ msgstr "Zonder verbonden account"
425
+
426
+ #: php/class-coauthors-wp-list-table.php:135
427
+ msgid "No matching guest authors were found."
428
+ msgstr "Er zijn geen matches tussen gastauteurs gevonden."
429
+
430
+ #: php/class-coauthors-wp-list-table.php:257
431
+ msgid "Filter"
432
+ msgstr "Filter"
433
+
434
+ #: php/class-wp-cli.php:153
435
+ msgid "Please specify a valid user_login"
436
+ msgstr "Geef een geldige user_login op"
437
+
438
+ #: php/class-wp-cli.php:156
439
+ msgid "Please specify a valid co-author login"
440
+ msgstr "Geef een geldige co-auteur login op"
441
+
442
+ #: php/class-wp-cli.php:163
443
+ msgid "Skipping - Post #%d already has co-authors assigned: %s"
444
+ msgstr "&Sla over- Bericht #%d heeft al co-auteurs: %s"
445
+
446
+ #: php/class-wp-cli.php:168
447
+ msgid "Updating - Adding %s's byline to post #%d"
448
+ msgstr "Updaten - %s's bijzin toevoegen op bericht #%d"
449
+
450
+ #: php/class-wp-cli.php:173
451
+ msgid "All done! %d posts were affected."
452
+ msgstr "Klaart! %d berichten zijn aangepast."
453
+
454
+ #: php/class-coauthors-guest-authors.php:475
455
+ msgid "Add New"
456
+ msgstr "Voeg nieuwe toe"
457
+
458
+ #: php/class-coauthors-wp-list-table.php:206
459
+ msgid "Delete"
460
+ msgstr "Verwijderen"
461
+
462
+ #: php/class-coauthors-guest-authors.php:823
463
+ #: php/class-coauthors-wp-list-table.php:143
464
+ msgid "Display Name"
465
+ msgstr "Beeldschermnaam"
466
+
467
+ #: php/class-coauthors-guest-authors.php:817
468
+ msgid "ID"
469
+ msgstr "ID"
470
+
471
+ #: template-tags.php:136
472
+ msgid " and "
473
+ msgstr "en"
474
+
475
+ #: co-authors-plus.php:342
476
+ msgid "<strong>Note:</strong> To edit post authors, please enable javascript or use a javascript-capable browser"
477
+ msgstr "<strong>Notitie:</strong> activeer javascript of gebruikt een browser die javascript ondersrteund om bericht auteurs te bewerken"
478
+
479
+ #: co-authors-plus.php:349 co-authors-plus.php:956
480
+ msgid "Click on an author to change them. Drag to change their order. Click on <strong>Remove</strong> to remove them."
481
+ msgstr "Klik op een auteur om deze te bewerken. Sleep om de volgorde aan te passen. Klik op <strong>Verwijderen</strong> om ze te verwijderen."
482
+
483
+ #: co-authors-plus.php:287 co-authors-plus.php:382 co-authors-plus.php:1158
484
+ msgid "Authors"
485
+ msgstr "Auteurs"
486
+
487
+ #: co-authors-plus.php:425 php/class-coauthors-wp-list-table.php:148
488
+ msgid "Posts"
489
+ msgstr "Artikelen"
490
+
491
+ #: co-authors-plus.php:442
492
+ msgid "View posts by this author"
493
+ msgstr "Bekijk berichten van deze auteur"
494
+
495
+ #: co-authors-plus.php:951 php/class-coauthors-wp-list-table.php:205
496
+ msgid "Edit"
497
+ msgstr "Bewerken"
498
+
499
+ #: co-authors-plus.php:952
500
+ msgid "Remove"
501
+ msgstr "Verwijderen"
502
+
503
+ #: co-authors-plus.php:953
504
+ msgid "Are you sure you want to remove this author?"
505
+ msgstr "Weet je zeker dat je deze auteur wilt verwijderen?"
506
+
507
+ #: co-authors-plus.php:954
508
+ msgid "Click to change this author, or drag to change their position"
509
+ msgstr "Klik om deze auteur te bewerken of sleep om de positie aan te passen"
510
+
511
+ #: co-authors-plus.php:955
512
+ msgid "Search for an author"
513
+ msgstr "Zoek voor een auteur"
514
+
515
+ #: template-tags.php:82
516
+ msgid "No post ID provided for CoAuthorsIterator constructor. Are you not in a loop or is $post not set?"
517
+ msgstr "Geen bericht ID gevonden voor CoAuthorsIterator constructor. Is er geen $post ingesteld?"
518
+
519
+ #: template-tags.php:208 template-tags.php:365
520
+ msgid "Posts by %s"
521
+ msgstr "Artikelen van %s"
522
+
523
+ #: template-tags.php:257
524
+ msgid "Visit %s&#8217;s website"
525
+ msgstr "Bezoek %s&#8217;s website"
526
+
527
+ msgid "Co-Authors Plus"
528
+ msgstr "Co-Authors Plus"
529
+
530
+ msgid "http://wordpress.org/extend/plugins/co-authors-plus/"
531
+ msgstr "http://wordpress.org/extend/plugins/co-authors-plus/"
532
+
533
+ msgid "Allows multiple authors to be assigned to a post. This plugin is an extended version of the Co-Authors plugin developed by Weston Ruter."
534
+ msgstr "Sta toe om meerdere auteurs toe te wijzen aan een bericht. Deze plugin is een uitgebreide versie van de Co-Authors plugin ontwikkeld door Weston Ruter"
languages/co-authors-plus-sv_SE.mo ADDED
Binary file
languages/co-authors-plus-sv_SE.po ADDED
@@ -0,0 +1,602 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Copyright (C) 2012 Co-Authors Plus
2
+ # This file is distributed under the same license as the Co-Authors Plus package.
3
+ msgid ""
4
+ msgstr ""
5
+ "Project-Id-Version: Co-Authors Plus 3.0.1-working\n"
6
+ "Report-Msgid-Bugs-To: http://wordpress.org/tag/co-authors-plus\n"
7
+ "POT-Creation-Date: 2012-11-21 21:17:39+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: 2013-10-05 23:20+0100\n"
12
+ "Last-Translator: \n"
13
+ "Language-Team: LANGUAGE <LL@li.org>\n"
14
+ "X-Generator: Poedit 1.5.7\n"
15
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
16
+
17
+ #: co-authors-plus.php:287 co-authors-plus.php:382 co-authors-plus.php:1158
18
+ msgid "Authors"
19
+ msgstr "Författare"
20
+
21
+ #: co-authors-plus.php:342
22
+ msgid ""
23
+ "<strong>Note:</strong> To edit post authors, please enable javascript or use "
24
+ "a javascript-capable browser"
25
+ msgstr ""
26
+ "<strong>Observera:</strong> För att editera författare, slå på javascript "
27
+ "eller använd en javascript-kapabel webbläsare"
28
+
29
+ #: co-authors-plus.php:349 co-authors-plus.php:956
30
+ msgid ""
31
+ "Click on an author to change them. Drag to change their order. Click on "
32
+ "<strong>Remove</strong> to remove them."
33
+ msgstr ""
34
+ "Klicka på författare för att ändra dem. Drag för att ändra ordning på dem. "
35
+ "Klicka på <strong>Ta bort</strong> för att ta bort dem."
36
+
37
+ #: co-authors-plus.php:425 php/class-coauthors-wp-list-table.php:148
38
+ msgid "Posts"
39
+ msgstr "Inlägg"
40
+
41
+ #: co-authors-plus.php:442
42
+ msgid "View posts by this author"
43
+ msgstr "Visa alla inlägg av denna författare"
44
+
45
+ #: co-authors-plus.php:481
46
+ msgid "No co-author exists for that term"
47
+ msgstr "Inga medförfattare existerar för den termen"
48
+
49
+ #: co-authors-plus.php:951 php/class-coauthors-wp-list-table.php:205
50
+ msgid "Edit"
51
+ msgstr "Editera"
52
+
53
+ #: co-authors-plus.php:952
54
+ msgid "Remove"
55
+ msgstr "Ta bort"
56
+
57
+ #: co-authors-plus.php:953
58
+ msgid "Are you sure you want to remove this author?"
59
+ msgstr "Är du säker att du vill ta bort denna författare?"
60
+
61
+ #: co-authors-plus.php:954
62
+ msgid "Click to change this author, or drag to change their position"
63
+ msgstr ""
64
+ "Klicka för att ändra denna författare, eller drag för att ändra deras "
65
+ "position"
66
+
67
+ #: co-authors-plus.php:955
68
+ msgid "Search for an author"
69
+ msgstr "Sök en författare"
70
+
71
+ #: co-authors-plus.php:993
72
+ msgid "Mine"
73
+ msgstr "Min"
74
+
75
+ #: co-authors-plus.php:1230
76
+ msgid "New comment on your post \"%s\""
77
+ msgstr "Ny kommentear på ditt inlägg \"%s\""
78
+
79
+ #. translators: 1: comment author, 2: author IP, 3: author domain
80
+ #: co-authors-plus.php:1232 co-authors-plus.php:1349
81
+ msgid "Author : %1$s (IP: %2$s , %3$s)"
82
+ msgstr "Författare : %1$s (IP: %2$s , %3$s)"
83
+
84
+ #: co-authors-plus.php:1233 co-authors-plus.php:1350
85
+ msgid "E-mail : %s"
86
+ msgstr "E-postadress : %s"
87
+
88
+ #: co-authors-plus.php:1234 co-authors-plus.php:1244 co-authors-plus.php:1253
89
+ #: co-authors-plus.php:1336 co-authors-plus.php:1343 co-authors-plus.php:1351
90
+ msgid "URL : %s"
91
+ msgstr "URL : %s"
92
+
93
+ #: co-authors-plus.php:1235 co-authors-plus.php:1352
94
+ msgid "Whois : http://whois.arin.net/rest/ip/%s"
95
+ msgstr "Whois : http://whois.arin.net/rest/ip/%s"
96
+
97
+ #: co-authors-plus.php:1236 co-authors-plus.php:1353
98
+ msgid "Comment: "
99
+ msgstr "Kommentar: "
100
+
101
+ #: co-authors-plus.php:1237
102
+ msgid "You can see all comments on this post here: "
103
+ msgstr "Du kan se alla kommentarer på detta inlägg här: "
104
+
105
+ #. translators: 1: blog name, 2: post title
106
+ #: co-authors-plus.php:1239
107
+ msgid "[%1$s] Comment: \"%2$s\""
108
+ msgstr "[%1$s] Kommentar: \"%2$s\""
109
+
110
+ #: co-authors-plus.php:1241
111
+ msgid "New trackback on your post \"%s\""
112
+ msgstr "Ny trackback på ditt inlägg \"%s\""
113
+
114
+ #. translators: 1: website name, 2: author IP, 3: author domain
115
+ #. translators: 1: comment author, 2: author IP, 3: author domain
116
+ #: co-authors-plus.php:1243 co-authors-plus.php:1252
117
+ msgid "Website: %1$s (IP: %2$s , %3$s)"
118
+ msgstr "Webbplats: %1$s (IP: %2$s , %3$s)"
119
+
120
+ #: co-authors-plus.php:1245 co-authors-plus.php:1254
121
+ msgid "Excerpt: "
122
+ msgstr "Undantag: "
123
+
124
+ #: co-authors-plus.php:1246
125
+ msgid "You can see all trackbacks on this post here: "
126
+ msgstr "Du kan se alla trackbacks på detta inlägg här: "
127
+
128
+ #. translators: 1: blog name, 2: post title
129
+ #: co-authors-plus.php:1248
130
+ msgid "[%1$s] Trackback: \"%2$s\""
131
+ msgstr "[%1$s] Trackback: \"%2$s\""
132
+
133
+ #: co-authors-plus.php:1250
134
+ msgid "New pingback on your post \"%s\""
135
+ msgstr "Ny pingback på ditt inlägg \"%s\""
136
+
137
+ #: co-authors-plus.php:1255
138
+ msgid "You can see all pingbacks on this post here: "
139
+ msgstr "Du kan se alla pingbacks på detta inlägg här: "
140
+
141
+ #. translators: 1: blog name, 2: post title
142
+ #: co-authors-plus.php:1257
143
+ msgid "[%1$s] Pingback: \"%2$s\""
144
+ msgstr "[%1$s] Pingback: \"%2$s\""
145
+
146
+ #: co-authors-plus.php:1260
147
+ msgid "Permalink: %s"
148
+ msgstr "Permanent länk: %s"
149
+
150
+ #: co-authors-plus.php:1262 co-authors-plus.php:1359
151
+ msgid "Trash it: %s"
152
+ msgstr "Kasta i papperskorgen: %s"
153
+
154
+ #: co-authors-plus.php:1264 co-authors-plus.php:1361
155
+ msgid "Delete it: %s"
156
+ msgstr "Radera det: %s"
157
+
158
+ #: co-authors-plus.php:1265 co-authors-plus.php:1362
159
+ msgid "Spam it: %s"
160
+ msgstr "Markera som spam: %s"
161
+
162
+ #: co-authors-plus.php:1333
163
+ msgid "A new trackback on the post \"%s\" is waiting for your approval"
164
+ msgstr "En ny tackback på inlägget \"%s\" väntar på ditt godkännande"
165
+
166
+ #: co-authors-plus.php:1335 co-authors-plus.php:1342
167
+ msgid "Website : %1$s (IP: %2$s , %3$s)"
168
+ msgstr "Webbplats : %1$s (IP: %2$s , %3$s)"
169
+
170
+ #: co-authors-plus.php:1337
171
+ msgid "Trackback excerpt: "
172
+ msgstr "Trackback undantag: "
173
+
174
+ #: co-authors-plus.php:1340
175
+ msgid "A new pingback on the post \"%s\" is waiting for your approval"
176
+ msgstr "En ny pingback på inlägget \"%s\" väntar på ditt godkännande"
177
+
178
+ #: co-authors-plus.php:1344
179
+ msgid "Pingback excerpt: "
180
+ msgstr "Pingback undantag: "
181
+
182
+ #: co-authors-plus.php:1347
183
+ msgid "A new comment on the post \"%s\" is waiting for your approval"
184
+ msgstr "En ny kommentar på inlägget \"%s\" väntar på ditt godkännande"
185
+
186
+ #: co-authors-plus.php:1357
187
+ msgid "Approve it: %s"
188
+ msgstr "Godkänn det: %s"
189
+
190
+ #: co-authors-plus.php:1364
191
+ msgid ""
192
+ "Currently %s comment is waiting for approval. Please visit the moderation "
193
+ "panel:"
194
+ msgid_plural ""
195
+ "Currently %s comments are waiting for approval. Please visit the moderation "
196
+ "panel:"
197
+ msgstr[0] ""
198
+ "Just nu väntar %s kommentar på godkännande. Besök moderationspanelen:"
199
+ msgstr[1] ""
200
+ "Just nu väntar %s kommentarer på godkännande. Besök moderationspanelen:"
201
+
202
+ #: co-authors-plus.php:1368
203
+ msgid "[%1$s] Please moderate: \"%2$s\""
204
+ msgstr "[%1$s] Moderera: \"%2$s\""
205
+
206
+ #: php/class-coauthors-guest-authors.php:77
207
+ msgid "Guest Author"
208
+ msgstr "Gästförfattare"
209
+
210
+ #: php/class-coauthors-guest-authors.php:78
211
+ msgid "Guest Authors"
212
+ msgstr "Gästförfattare"
213
+
214
+ #: php/class-coauthors-guest-authors.php:79
215
+ msgid "All Guest Authors"
216
+ msgstr "Alla gästförfattare"
217
+
218
+ #: php/class-coauthors-guest-authors.php:80
219
+ msgid "Add New Guest Author"
220
+ msgstr "Ny gästförfattare"
221
+
222
+ #: php/class-coauthors-guest-authors.php:81
223
+ msgid "Edit Guest Author"
224
+ msgstr "Editera gästförfattare"
225
+
226
+ #: php/class-coauthors-guest-authors.php:82
227
+ msgid "New Guest Author"
228
+ msgstr "Ny gästförfattare"
229
+
230
+ #: php/class-coauthors-guest-authors.php:83
231
+ msgid "View Guest Author"
232
+ msgstr "Visa gästförfattare"
233
+
234
+ #: php/class-coauthors-guest-authors.php:84
235
+ msgid "Search Guest Authors"
236
+ msgstr "Sök gästförfattare"
237
+
238
+ #: php/class-coauthors-guest-authors.php:85
239
+ msgid "No guest authors found"
240
+ msgstr "Inga gästförfattare funna"
241
+
242
+ #: php/class-coauthors-guest-authors.php:86
243
+ msgid "No guest authors found in Trash"
244
+ msgstr "Inga gästförfattare funna i papperskorgen"
245
+
246
+ #: php/class-coauthors-guest-authors.php:87
247
+ msgid "Update Guest Author"
248
+ msgstr "Uppdatera gästförfattare"
249
+
250
+ #: php/class-coauthors-guest-authors.php:88
251
+ msgid "About the guest author"
252
+ msgstr "Om gästförfattaren"
253
+
254
+ #: php/class-coauthors-guest-authors.php:97
255
+ msgctxt "co-authors-plus"
256
+ msgid "Add New"
257
+ msgstr "Lägg till ny"
258
+
259
+ #: php/class-coauthors-guest-authors.php:153
260
+ #: php/class-coauthors-guest-authors.php:159
261
+ msgid "Guest author updated. <a href=\"%s\">View profile</a>"
262
+ msgstr "Gästförfattare uppdaterad. <a href=\"%s\">Visa profil</a>"
263
+
264
+ #: php/class-coauthors-guest-authors.php:154
265
+ msgid "Custom field updated."
266
+ msgstr "Custom-fält uppdaterat."
267
+
268
+ #: php/class-coauthors-guest-authors.php:155
269
+ msgid "Custom field deleted."
270
+ msgstr "Custom-fält raderat."
271
+
272
+ #: php/class-coauthors-guest-authors.php:156
273
+ msgid "Guest author updated."
274
+ msgstr "Gästförfattare uppdaterat."
275
+
276
+ #. translators: %s: date and time of the revision
277
+ #: php/class-coauthors-guest-authors.php:158
278
+ msgid "Guest author restored to revision from %s"
279
+ msgstr "Gästförfattare återställd till revision från %s"
280
+
281
+ #: php/class-coauthors-guest-authors.php:160
282
+ msgid "Guest author saved."
283
+ msgstr "Gästförfattare sparad."
284
+
285
+ #: php/class-coauthors-guest-authors.php:161
286
+ msgid ""
287
+ "Guest author submitted. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
288
+ msgstr ""
289
+ "Gästförfattare inskickad. <a target=\"_blank\" href=\"%s\">Förhandsvisa "
290
+ "profil</a>"
291
+
292
+ #: php/class-coauthors-guest-authors.php:162
293
+ msgid ""
294
+ "Guest author scheduled for: <strong>%1$s</strong>. <a target=\"_blank\" href="
295
+ "\"%2$s\">Preview profile</a>"
296
+ msgstr ""
297
+ "Gästförfattare schemalagd för: <strong>%1$s</strong>. <a target=\"_blank\" "
298
+ "href=\"%2$s\">Förhandsvisa profil</a>"
299
+
300
+ #. translators: Publish box date format, see http:php.net/date
301
+ #: php/class-coauthors-guest-authors.php:164
302
+ msgid "M j, Y @ G:i"
303
+ msgstr "M j, Y @ G:i"
304
+
305
+ #: php/class-coauthors-guest-authors.php:165
306
+ msgid ""
307
+ "Guest author updated. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
308
+ msgstr ""
309
+ "Gästförfattare uppdaterad. <a target=\"_blank\" href=\"%s\">Förhandsvisa "
310
+ "profil</a>"
311
+
312
+ #: php/class-coauthors-guest-authors.php:182
313
+ #: php/class-coauthors-guest-authors.php:215
314
+ #: php/class-coauthors-guest-authors.php:430
315
+ msgid "Doin' something fishy, huh?"
316
+ msgstr "Nu gör du allt något skumt, eller hur?"
317
+
318
+ #: php/class-coauthors-guest-authors.php:185
319
+ #: php/class-coauthors-guest-authors.php:219
320
+ msgid "You don't have permission to perform this action."
321
+ msgstr "Du har inte behörighet att utföra denna åtgärd."
322
+
323
+ #: php/class-coauthors-guest-authors.php:224
324
+ #: php/class-coauthors-guest-authors.php:435
325
+ msgid "Guest author can't be deleted because it doesn't exist."
326
+ msgstr "Gästförfattare kan inte raderas för att den inte existerar."
327
+
328
+ #: php/class-coauthors-guest-authors.php:238
329
+ msgid "Co-author does not exists. Try again?"
330
+ msgstr "Gästförfattare existerar inte. Försök igen?"
331
+
332
+ #: php/class-coauthors-guest-authors.php:246
333
+ msgid "Please make sure to pick an option."
334
+ msgstr "Var snäll och gör ett val."
335
+
336
+ #: php/class-coauthors-guest-authors.php:386
337
+ msgid "Guest author deleted."
338
+ msgstr "Gästförfattare raderad."
339
+
340
+ #: php/class-coauthors-guest-authors.php:410
341
+ msgid "Save"
342
+ msgstr "Spara"
343
+
344
+ #: php/class-coauthors-guest-authors.php:411
345
+ msgid "Unique Slug"
346
+ msgstr "Unik Slug"
347
+
348
+ #: php/class-coauthors-guest-authors.php:413
349
+ msgid "Name"
350
+ msgstr "Namn"
351
+
352
+ #: php/class-coauthors-guest-authors.php:414
353
+ msgid "Contact Info"
354
+ msgstr "Kontaktinformation"
355
+
356
+ #: php/class-coauthors-guest-authors.php:439
357
+ msgid "Delete %s"
358
+ msgstr "Radera %s"
359
+
360
+ #: php/class-coauthors-guest-authors.php:440
361
+ msgid "You have specified this guest author for deletion:"
362
+ msgstr "Du har inte angivit denna gästförfattare för radering:"
363
+
364
+ #: php/class-coauthors-guest-authors.php:442
365
+ msgid "What should be done with posts assigned to this guest author?"
366
+ msgstr "Vad ska göras med inlägg tilldelade denna gästförfattare?"
367
+
368
+ #: php/class-coauthors-guest-authors.php:443
369
+ msgid ""
370
+ "Note: If you'd like to delete the guest author and all of their posts, you "
371
+ "should delete their posts first and then come back to delete the guest "
372
+ "author."
373
+ msgstr ""
374
+ "Observera: Om du vill radera gästförfattaren och alla tillhörande inlägg så "
375
+ "borde du först radera inläggen och sedan återvända och radera "
376
+ "gästförfattaren."
377
+
378
+ #: php/class-coauthors-guest-authors.php:452
379
+ msgid "Reassign to another co-author:"
380
+ msgstr "Tilldela en annan gästförfattare:"
381
+
382
+ #: php/class-coauthors-guest-authors.php:458
383
+ msgid "Leave posts assigned to the mapped user, %s."
384
+ msgstr "Lämna inlägg tilldelade till den kopplade användaren, %s."
385
+
386
+ #: php/class-coauthors-guest-authors.php:463
387
+ msgid "Remove byline from posts (but leave each post in its current status)."
388
+ msgstr ""
389
+ "Ta bort signatur från inlägg (men låt varje inlägg behålla sin nuvarande "
390
+ "status)."
391
+
392
+ #: php/class-coauthors-guest-authors.php:466
393
+ msgid "Confirm Deletion"
394
+ msgstr "Bekräfta radering"
395
+
396
+ #: php/class-coauthors-guest-authors.php:475
397
+ msgid "Add New"
398
+ msgstr "Lägg till ny"
399
+
400
+ #: php/class-coauthors-guest-authors.php:536
401
+ msgid "WordPress User Mapping"
402
+ msgstr "WordPress Användarkoppling"
403
+
404
+ #: php/class-coauthors-guest-authors.php:538
405
+ msgid "-- Not mapped --"
406
+ msgstr "-- Inte kopplad --"
407
+
408
+ #: php/class-coauthors-guest-authors.php:651
409
+ msgid "Guest authors cannot be created without display names."
410
+ msgstr "Gästförfattare kan inte skapas utan visningsnamn."
411
+
412
+ #: php/class-coauthors-guest-authors.php:658
413
+ msgid ""
414
+ "Guest authors cannot be created with the same user_login value as a user. "
415
+ "Try creating a profile from the user instead"
416
+ msgstr ""
417
+ "Gästförfattare kan inte skapas med samma \"user_login\"-värde som en "
418
+ "användare. Försök skapa en profil utifrån den användaren istället"
419
+
420
+ #: php/class-coauthors-guest-authors.php:663
421
+ msgid "Display name conflicts with another guest author display name."
422
+ msgstr ""
423
+ "Visningsnamn skapar konflikt med en annan gästförfattares visningsnamn."
424
+
425
+ #: php/class-coauthors-guest-authors.php:817
426
+ msgid "ID"
427
+ msgstr "Id"
428
+
429
+ #: php/class-coauthors-guest-authors.php:823
430
+ #: php/class-coauthors-wp-list-table.php:143
431
+ msgid "Display Name"
432
+ msgstr "Visningsnamn"
433
+
434
+ #: php/class-coauthors-guest-authors.php:829
435
+ #: php/class-coauthors-wp-list-table.php:144
436
+ msgid "First Name"
437
+ msgstr "Förnamn"
438
+
439
+ #: php/class-coauthors-guest-authors.php:834
440
+ #: php/class-coauthors-wp-list-table.php:145
441
+ msgid "Last Name"
442
+ msgstr "Efternamn"
443
+
444
+ #: php/class-coauthors-guest-authors.php:839
445
+ msgid "Slug"
446
+ msgstr "Slug"
447
+
448
+ #: php/class-coauthors-guest-authors.php:846
449
+ #: php/class-coauthors-wp-list-table.php:146
450
+ msgid "E-mail"
451
+ msgstr "E-postadress"
452
+
453
+ #: php/class-coauthors-guest-authors.php:851
454
+ #: php/class-coauthors-wp-list-table.php:147
455
+ msgid "Linked Account"
456
+ msgstr "Länkat konto"
457
+
458
+ #: php/class-coauthors-guest-authors.php:856
459
+ msgid "Website"
460
+ msgstr "Webbplats"
461
+
462
+ #: php/class-coauthors-guest-authors.php:861
463
+ msgid "AIM"
464
+ msgstr "AIM"
465
+
466
+ #: php/class-coauthors-guest-authors.php:866
467
+ msgid "Yahoo IM"
468
+ msgstr "YahooIM"
469
+
470
+ #: php/class-coauthors-guest-authors.php:871
471
+ msgid "Jabber / Google Talk"
472
+ msgstr "Jabber / Google Talk"
473
+
474
+ #: php/class-coauthors-guest-authors.php:876
475
+ msgid "Biographical Info"
476
+ msgstr "Information"
477
+
478
+ #: php/class-coauthors-guest-authors.php:1006
479
+ msgid "%s is a required field"
480
+ msgstr "%s är ett obligatoriskt fält"
481
+
482
+ #: php/class-coauthors-guest-authors.php:1012
483
+ msgid "user_login cannot duplicate existing guest author or mapped user"
484
+ msgstr ""
485
+ "\"user_login\" kan inte vara det samma som en existerande gästförfattare "
486
+ "eller kopplad användare"
487
+
488
+ #: php/class-coauthors-guest-authors.php:1057
489
+ msgid "Guest author does not exist"
490
+ msgstr "Gästförfattare existerar inte"
491
+
492
+ #: php/class-coauthors-guest-authors.php:1069
493
+ msgid "Reassignment co-author does not exist"
494
+ msgstr "Tilldelad gästförfattare existerar inte"
495
+
496
+ #: php/class-coauthors-guest-authors.php:1101
497
+ msgid "No user exists with that ID"
498
+ msgstr "Ingen användare med detta Id existerar"
499
+
500
+ #: php/class-coauthors-guest-authors.php:1158
501
+ msgid "Edit Profile"
502
+ msgstr "Editera profil"
503
+
504
+ #: php/class-coauthors-guest-authors.php:1166
505
+ msgid "Create Profile"
506
+ msgstr "Skapa profil"
507
+
508
+ #: php/class-coauthors-wp-list-table.php:19
509
+ msgid "Co-Authors"
510
+ msgstr "Medförfattare"
511
+
512
+ #: php/class-coauthors-wp-list-table.php:20
513
+ msgid "Co-Author"
514
+ msgstr "Medförfattare"
515
+
516
+ #: php/class-coauthors-wp-list-table.php:81
517
+ msgid "Show all"
518
+ msgstr "Visa alla"
519
+
520
+ #: php/class-coauthors-wp-list-table.php:82
521
+ msgid "With linked account"
522
+ msgstr "Med länkat konto"
523
+
524
+ #: php/class-coauthors-wp-list-table.php:83
525
+ msgid "Without linked account"
526
+ msgstr "Utan länkat konto"
527
+
528
+ #: php/class-coauthors-wp-list-table.php:135
529
+ msgid "No matching guest authors were found."
530
+ msgstr "Inga matchande gästförfattare kunde hittas."
531
+
532
+ #: php/class-coauthors-wp-list-table.php:206
533
+ msgid "Delete"
534
+ msgstr "Radera"
535
+
536
+ #: php/class-coauthors-wp-list-table.php:207
537
+ msgid "View Posts"
538
+ msgstr "Visa inlägg"
539
+
540
+ #: php/class-coauthors-wp-list-table.php:257
541
+ msgid "Filter"
542
+ msgstr "Filtrera"
543
+
544
+ #: php/class-wp-cli.php:153
545
+ msgid "Please specify a valid user_login"
546
+ msgstr "Ange ett giltigt \"user_login\"-värde"
547
+
548
+ #: php/class-wp-cli.php:156
549
+ msgid "Please specify a valid co-author login"
550
+ msgstr "Ange ett giltigt medförfattare alias"
551
+
552
+ #: php/class-wp-cli.php:163
553
+ msgid "Skipping - Post #%d already has co-authors assigned: %s"
554
+ msgstr "Hoppar över - Inlägg #%d har redan medförfattare tilldelade: %s"
555
+
556
+ #: php/class-wp-cli.php:168
557
+ msgid "Updating - Adding %s's byline to post #%d"
558
+ msgstr "Uppdaterar - Lägger till signatur för %s till inlägg #%d"
559
+
560
+ #: php/class-wp-cli.php:173
561
+ msgid "All done! %d posts were affected."
562
+ msgstr "Allt klart! %d inlägg berördes."
563
+
564
+ #: template-tags.php:82
565
+ msgid ""
566
+ "No post ID provided for CoAuthorsIterator constructor. Are you not in a loop "
567
+ "or is $post not set?"
568
+ msgstr ""
569
+ "Inga inläggs-id skickades med till \"CoAuthorsIterator\"'s constructor. Är "
570
+ "du inte i en llop eller är inte $post satt?"
571
+
572
+ #: template-tags.php:136
573
+ msgid " and "
574
+ msgstr " och "
575
+
576
+ #: template-tags.php:208 template-tags.php:365
577
+ msgid "Posts by %s"
578
+ msgstr "Inlägg av %s"
579
+
580
+ #: template-tags.php:257
581
+ msgid "Visit %s&#8217;s website"
582
+ msgstr "Besök %s&#8217;s webbplats"
583
+
584
+ #. Plugin Name of the plugin/theme
585
+ msgid "Co-Authors Plus"
586
+ msgstr "Co-Authors Plus"
587
+
588
+ #. Plugin URI of the plugin/theme
589
+ msgid "http://wordpress.org/extend/plugins/co-authors-plus/"
590
+ msgstr "http://wordpress.org/extend/plugins/co-authors-plus/"
591
+
592
+ #. Description of the plugin/theme
593
+ msgid ""
594
+ "Allows multiple authors to be assigned to a post. This plugin is an extended "
595
+ "version of the Co-Authors plugin developed by Weston Ruter."
596
+ msgstr ""
597
+ "Tillåter att ett inlägg tilldelas flera författare. Detta tillägg är en "
598
+ "vidareutvecklad version av \"Co-Authors\"-tillägget skrivet av Weston Ruter."
599
+
600
+ #. Author of the plugin/theme
601
+ msgid "Mohammad Jangda, Daniel Bachhuber, Automattic"
602
+ msgstr "Mohammad Jangda, Daniel Bachhuber, Automattic"
php/class-coauthors-guest-authors.php CHANGED
@@ -305,8 +305,12 @@ class CoAuthors_Guest_Authors
305
  if ( !isset( $query->query_vars['author_name'] ) )
306
  return $query;
307
 
 
 
 
 
308
  $coauthor = $this->get_guest_author_by( 'linked_account', sanitize_title( $query->query_vars['author_name'] ) );
309
- if ( is_object( $coauthor ) && $query->query_vars['author_name'] != $coauthor->linked_account ) {
310
  global $wp_rewrite;
311
  $link = $wp_rewrite->get_author_permastruct();
312
 
@@ -708,10 +712,14 @@ class CoAuthors_Guest_Authors
708
  update_post_meta( $post_id, $key, $user_login );
709
  continue;
710
  }
 
 
 
 
711
  if ( !isset( $_POST[$key] ) )
712
  continue;
713
- if ( isset( $author_field['sanitize_function'] ) && function_exists( $author_field['sanitize_function'] ) )
714
- $value = $author_field['sanitize_function']( $_POST[$key] );
715
  else
716
  $value = sanitize_text_field( $_POST[$key] );
717
  update_post_meta( $post_id, $key, $value );
@@ -736,7 +744,8 @@ class CoAuthors_Guest_Authors
736
  function get_guest_author_by( $key, $value, $force = false ) {
737
  global $wpdb;
738
 
739
- $cache_key = md5( 'guest-author-' . $key . '-' . $value );
 
740
  if ( false == $force && false !== ( $retval = wp_cache_get( $cache_key, self::$cache_group ) ) )
741
  return $retval;
742
 
@@ -804,6 +813,31 @@ class CoAuthors_Guest_Authors
804
  return (object)$guest_author;
805
  }
806
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
807
  /**
808
  * Get all of the meta fields that can be associated with a guest author
809
  *
@@ -904,6 +938,36 @@ class CoAuthors_Guest_Authors
904
  return $key;
905
  }
906
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
907
  /**
908
  * Get all of the user accounts that have been linked
909
  *
@@ -977,11 +1041,15 @@ class CoAuthors_Guest_Authors
977
  $keys = wp_list_pluck( $this->get_guest_author_fields(), 'key' );
978
  $keys = array_merge( $keys, array( 'login', 'post_name', 'user_nicename', 'ID' ) );
979
  foreach( $keys as $key ) {
 
 
980
  if ( 'post_name' == $key )
981
- $key = 'user_nicename';
982
  else if ( 'login' == $key )
983
- $key = 'user_login';
984
- $cache_key = md5( 'guest-author-' . $key . '-' . $guest_author->$key );
 
 
985
  wp_cache_delete( $cache_key, self::$cache_group );
986
  }
987
 
@@ -1177,7 +1245,6 @@ class CoAuthors_Guest_Authors
1177
  * @since 3.0
1178
  */
1179
  function filter_get_avatar( $avatar, $id_or_email, $size, $default ) {
1180
-
1181
  if ( is_object( $id_or_email ) || !is_email( $id_or_email ) )
1182
  return $avatar;
1183
 
@@ -1186,18 +1253,10 @@ class CoAuthors_Guest_Authors
1186
  if ( ! $guest_author )
1187
  return $avatar;
1188
 
1189
- // See if the guest author as an avatar
1190
- if ( ! has_post_thumbnail( $guest_author->ID ) )
1191
- return $avatar;
1192
 
1193
- $args = array(
1194
- 'class' => "avatar avatar-{$size} photo",
1195
- );
1196
- if ( in_array( $size, $this->avatar_sizes ) )
1197
- $size = 'guest-author-' . $size;
1198
- else
1199
- $size = array( $size, $size );
1200
- $avatar = get_the_post_thumbnail( $guest_author->ID, $size, $args );
1201
 
1202
  return $avatar;
1203
  }
305
  if ( !isset( $query->query_vars['author_name'] ) )
306
  return $query;
307
 
308
+ // No redirection needed on admin requests
309
+ if ( is_admin() )
310
+ return $query;
311
+
312
  $coauthor = $this->get_guest_author_by( 'linked_account', sanitize_title( $query->query_vars['author_name'] ) );
313
+ if ( is_object( $coauthor ) && $query->query_vars['author_name'] != $coauthor->user_login ) {
314
  global $wp_rewrite;
315
  $link = $wp_rewrite->get_author_permastruct();
316
 
712
  update_post_meta( $post_id, $key, $user_login );
713
  continue;
714
  }
715
+
716
+ if ( isset( $author_field['type'] ) && 'checkbox' === $author_field['type'] && ! isset( $_POST[ $key ] ) )
717
+ delete_post_meta( $post_id, $key );
718
+
719
  if ( !isset( $_POST[$key] ) )
720
  continue;
721
+ if ( isset( $author_field['sanitize_function'] ) && is_callable( $author_field['sanitize_function'] ) )
722
+ $value = call_user_func( $author_field['sanitize_function'], $_POST[$key] );
723
  else
724
  $value = sanitize_text_field( $_POST[$key] );
725
  update_post_meta( $post_id, $key, $value );
744
  function get_guest_author_by( $key, $value, $force = false ) {
745
  global $wpdb;
746
 
747
+ $cache_key = $this->get_cache_key( $key, $value );
748
+
749
  if ( false == $force && false !== ( $retval = wp_cache_get( $cache_key, self::$cache_group ) ) )
750
  return $retval;
751
 
813
  return (object)$guest_author;
814
  }
815
 
816
+ /**
817
+ * Get an thumbnail for a Guest Author object
818
+ *
819
+ * @param object The Guest Author object for which to retrieve the thumbnail
820
+ * @param int The desired image size
821
+ * @return string The thumbnail image tag, or null if one doesn't exist
822
+ */
823
+ function get_guest_author_thumbnail( $guest_author, $size ) {
824
+ // See if the guest author has an avatar
825
+ if ( ! has_post_thumbnail( $guest_author->ID ) )
826
+ return null;
827
+
828
+ $args = array(
829
+ 'class' => "avatar avatar-{$size} photo",
830
+ );
831
+ if ( in_array( $size, $this->avatar_sizes ) )
832
+ $size = 'guest-author-' . $size;
833
+ else
834
+ $size = array( $size, $size );
835
+
836
+ $thumbnail = get_the_post_thumbnail( $guest_author->ID, $size, $args );
837
+
838
+ return $thumbnail;
839
+ }
840
+
841
  /**
842
  * Get all of the meta fields that can be associated with a guest author
843
  *
938
  return $key;
939
  }
940
 
941
+ /**
942
+ * Build a cache key for a given key/value
943
+ *
944
+ * @param string $key A guest author field
945
+ * @param string $value The guest author field value
946
+ *
947
+ * @return string The generated cache key
948
+ */
949
+ function get_cache_key( $key, $value ) {
950
+ // Normalize $key and $value
951
+ switch( $key ) {
952
+ case 'post_name':
953
+ $key = 'user_nicename';
954
+
955
+ if ( 0 === strpos( $value, 'cap-' ) )
956
+ $value = substr( $value, 4 );
957
+
958
+ break;
959
+
960
+ case 'login':
961
+ $key = 'user_login';
962
+
963
+ break;
964
+ }
965
+
966
+ $cache_key = md5( 'guest-author-' . $key . '-' . $value );
967
+
968
+ return $cache_key;
969
+ }
970
+
971
  /**
972
  * Get all of the user accounts that have been linked
973
  *
1041
  $keys = wp_list_pluck( $this->get_guest_author_fields(), 'key' );
1042
  $keys = array_merge( $keys, array( 'login', 'post_name', 'user_nicename', 'ID' ) );
1043
  foreach( $keys as $key ) {
1044
+ $value_key = $key;
1045
+
1046
  if ( 'post_name' == $key )
1047
+ $value_key = 'user_nicename';
1048
  else if ( 'login' == $key )
1049
+ $value_key = 'user_login';
1050
+
1051
+ $cache_key = $this->get_cache_key( $key, $guest_author->$value_key );
1052
+
1053
  wp_cache_delete( $cache_key, self::$cache_group );
1054
  }
1055
 
1245
  * @since 3.0
1246
  */
1247
  function filter_get_avatar( $avatar, $id_or_email, $size, $default ) {
 
1248
  if ( is_object( $id_or_email ) || !is_email( $id_or_email ) )
1249
  return $avatar;
1250
 
1253
  if ( ! $guest_author )
1254
  return $avatar;
1255
 
1256
+ $thumbnail = $this->get_guest_author_thumbnail( $guest_author, $size );
 
 
1257
 
1258
+ if ( $thumbnail )
1259
+ return $thumbnail;
 
 
 
 
 
 
1260
 
1261
  return $avatar;
1262
  }
php/class-coauthors-wp-list-table.php CHANGED
@@ -197,7 +197,10 @@ class CoAuthors_WP_List_Table extends WP_List_Table {
197
  $item_delete_link = add_query_arg( $args, menu_page_url( 'view-guest-authors', false ) );
198
  $item_view_link = get_author_posts_url( $item->ID, $item->user_nicename );
199
 
200
- $output = get_avatar( $item->user_email, 32 );
 
 
 
201
  // @todo caps check to see whether the user can edit. Otherwise, just show the name
202
  $output .= '<a href="' . esc_url( $item_edit_link ) . '">' . esc_html( $item->display_name ) . '</a>';
203
 
197
  $item_delete_link = add_query_arg( $args, menu_page_url( 'view-guest-authors', false ) );
198
  $item_view_link = get_author_posts_url( $item->ID, $item->user_nicename );
199
 
200
+ $output = '';
201
+
202
+ $output .= coauthors_get_avatar( $item, 32 );
203
+
204
  // @todo caps check to see whether the user can edit. Otherwise, just show the name
205
  $output .= '<a href="' . esc_url( $item_edit_link ) . '">' . esc_html( $item->display_name ) . '</a>';
206
 
php/class-wp-cli.php CHANGED
@@ -104,7 +104,7 @@ class CoAuthorsPlus_Command extends WP_CLI_Command {
104
  }
105
  WP_CLI::line( "Updating author terms with new counts" );
106
  foreach( $authors as $author ) {
107
- $this->update_author_term( $author );
108
  }
109
 
110
  WP_CLI::success( "Done! Of {$posts->found_posts} posts, {$affected} now have author terms." );
@@ -388,6 +388,112 @@ class CoAuthorsPlus_Command extends WP_CLI_Command {
388
  WP_CLI::success( "All done!" );
389
  }
390
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
391
  /**
392
  * List all of the posts without assigned co-authors terms
393
  *
@@ -505,6 +611,51 @@ class CoAuthorsPlus_Command extends WP_CLI_Command {
505
  WP_CLI::line( "Created author term for {$user->user_login}" );
506
  }
507
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
508
  WP_CLI::success( "All done" );
509
  }
510
 
@@ -535,6 +686,162 @@ class CoAuthorsPlus_Command extends WP_CLI_Command {
535
  WP_CLI::line( "All done! {$affected} revisions had author terms removed" );
536
  }
537
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
538
  /**
539
  * Clear all of the caches for memory management
540
  */
104
  }
105
  WP_CLI::line( "Updating author terms with new counts" );
106
  foreach( $authors as $author ) {
107
+ $coauthors_plus->update_author_term( $author );
108
  }
109
 
110
  WP_CLI::success( "Done! Of {$posts->found_posts} posts, {$affected} now have author terms." );
388
  WP_CLI::success( "All done!" );
389
  }
390
 
391
+ /**
392
+ * Swap one Co Author with another on all posts for which they are an author. Unlike rename-coauthor,
393
+ * this leaves the original Co Author term intact and works when the 'to' user already has a co-author term.
394
+ *
395
+ * @subcommand swap-coauthors
396
+ * @synopsis --from=<user-login> --to=<user-login> [--post_type=<ptype>] [--dry=<dry>]
397
+ */
398
+ public function swap_coauthors( $args, $assoc_args ) {
399
+ global $coauthors_plus, $wpdb;
400
+
401
+ $defaults = array(
402
+ 'from' => null,
403
+ 'to' => null,
404
+ 'post_type' => 'post',
405
+ 'dry' => false
406
+ );
407
+
408
+ $assoc_args = array_merge( $defaults, $assoc_args );
409
+
410
+ $dry = $assoc_args['dry'];
411
+
412
+ $from_userlogin = $assoc_args['from'];
413
+ $to_userlogin = $assoc_args['to'];
414
+
415
+ $from_userlogin_prefixed = 'cap-' . $from_userlogin;
416
+ $to_userlogin_prefixed = 'cap-' . $to_userlogin;
417
+
418
+ $orig_coauthor = $coauthors_plus->get_coauthor_by( 'user_login', $from_userlogin );
419
+
420
+ if ( ! $orig_coauthor )
421
+ WP_CLI::error( "No co-author found for $from_userlogin" );
422
+
423
+ if ( ! $to_userlogin )
424
+ WP_CLI::error( '--to param must not be empty' );
425
+
426
+ $to_coauthor = $coauthors_plus->get_coauthor_by( 'user_login', $to_userlogin );
427
+
428
+ if ( ! $to_coauthor )
429
+ WP_CLI::error( "No co-author found for $to_userlogin" );
430
+
431
+ WP_CLI::line( "Swapping authorship from {$from_userlogin} to {$to_userlogin}" );
432
+
433
+ $query_args = array(
434
+ 'post_type' => $assoc_args['post_type'],
435
+ 'order' => 'ASC',
436
+ 'orderby' => 'ID',
437
+ 'posts_per_page' => 100,
438
+ 'paged' => 1,
439
+ 'tax_query' => array(
440
+ array(
441
+ 'taxonomy' => $coauthors_plus->coauthor_taxonomy,
442
+ 'field' => 'slug',
443
+ 'terms' => array( $from_userlogin_prefixed )
444
+ )
445
+ )
446
+ );
447
+
448
+ $posts = new WP_Query( $query_args );
449
+
450
+ $posts_total = 0;
451
+
452
+ WP_CLI::line( "Found $posts->found_posts posts to update." );
453
+
454
+ while( $posts->post_count ) {
455
+ foreach( $posts->posts as $post ) {
456
+ $coauthors = get_coauthors( $post->ID );
457
+
458
+ if ( ! is_array( $coauthors ) || ! count( $coauthors ) )
459
+ continue;
460
+
461
+ $coauthors = wp_list_pluck( $coauthors, 'user_login' );
462
+
463
+ $posts_total++;
464
+
465
+ if ( ! $dry ) {
466
+ // Remove the $from_userlogin from $coauthors
467
+ foreach( $coauthors as $index => $user_login ) {
468
+ if ( $from_userlogin === $user_login ) {
469
+ unset( $coauthors[ $index ] );
470
+
471
+ break;
472
+ }
473
+ }
474
+
475
+ // Add the 'to' author on
476
+ $coauthors[] = $to_userlogin;
477
+
478
+ // By not passing $append = false as the 3rd param, we replace all existing coauthors
479
+ $coauthors_plus->add_coauthors( $post->ID, $coauthors, false );
480
+
481
+ WP_CLI::line( $posts_total . ': Post #' . $post->ID . ' has been assigned "' . $to_userlogin . '" as a co-author' );
482
+
483
+ clean_post_cache( $post->ID );
484
+ } else {
485
+ WP_CLI::line( $posts_total . ': Post #' . $post->ID . ' will be assigned "' . $to_userlogin . '" as a co-author' );
486
+ }
487
+ }
488
+
489
+ $this->stop_the_insanity();
490
+
491
+ $posts = new WP_Query( $query_args );
492
+ }
493
+
494
+ WP_CLI::success( "All done!" );
495
+ }
496
+
497
  /**
498
  * List all of the posts without assigned co-authors terms
499
  *
611
  WP_CLI::line( "Created author term for {$user->user_login}" );
612
  }
613
  }
614
+
615
+ // And create author terms for any Guest Authors that don't have them
616
+ if ( $coauthors_plus->is_guest_authors_enabled() && $coauthors_plus->guest_authors instanceof CoAuthors_Guest_Authors ) {
617
+ $args = array(
618
+ 'order' => 'ASC',
619
+ 'orderby' => 'ID',
620
+ 'post_type' => $coauthors_plus->guest_authors->post_type,
621
+ 'posts_per_page' => 100,
622
+ 'paged' => 1,
623
+ 'update_meta_cache' => false,
624
+ 'fields' => 'ids'
625
+ );
626
+
627
+ $posts = new WP_Query( $args );
628
+ $count = 0;
629
+ WP_CLI::line( "Now inspecting or updating {$posts->found_posts} Guest Authors." );
630
+
631
+ while( $posts->post_count ) {
632
+ foreach( $posts->posts as $guest_author_id ) {
633
+ $count++;
634
+
635
+ $guest_author = $coauthors_plus->guest_authors->get_guest_author_by( 'ID', $guest_author_id );
636
+
637
+ if ( ! $guest_author ) {
638
+ WP_CLI::line( 'Failed to load guest author ' . $guest_author_id );
639
+
640
+ continue;
641
+ }
642
+
643
+ $term = $coauthors_plus->get_author_term( $guest_author );
644
+
645
+ if ( empty( $term ) || empty( $term->description ) ) {
646
+ $coauthors_plus->update_author_term( $guest_author );
647
+
648
+ WP_CLI::line( "Created author term for Guest Author {$guest_author->user_nicename}" );
649
+ }
650
+ }
651
+
652
+ $this->stop_the_insanity();
653
+
654
+ $args['paged']++;
655
+ $posts = new WP_Query( $args );
656
+ }
657
+ }
658
+
659
  WP_CLI::success( "All done" );
660
  }
661
 
686
  WP_CLI::line( "All done! {$affected} revisions had author terms removed" );
687
  }
688
 
689
+ /**
690
+ * Subcommand to create guest authors from an author list in a WXR file
691
+ *
692
+ * @subcommand create-guest-authors-from-wxr
693
+ * @synopsis --file=</path/to/file.wxr>
694
+ */
695
+ public function create_guest_authors_from_wxr( $args, $assoc_args ) {
696
+ global $coauthors_plus;
697
+
698
+ $defaults = array(
699
+ 'file' => '',
700
+ );
701
+ $this->args = wp_parse_args( $assoc_args, $defaults );
702
+
703
+ if ( empty( $this->args['file'] ) || ! is_readable( $this->args['file'] ) )
704
+ WP_CLI::error( 'Please specify a valid WXR file with the --file arg.' );
705
+
706
+ if ( ! class_exists( 'WXR_Parser' ) )
707
+ require_once( WP_CONTENT_DIR . '/admin-plugins/wordpress-importer/parsers.php' );
708
+
709
+ $parser = new WXR_Parser();
710
+ $import_data = $parser->parse( $this->args['file'] );
711
+
712
+ if ( is_wp_error( $import_data ) )
713
+ WP_CLI::error( 'Failed to read WXR file.' );
714
+
715
+ // Get author nodes
716
+ $authors = $import_data['authors'];
717
+
718
+ foreach ( $authors as $author ) {
719
+ WP_CLI::line( sprintf( 'Processing author %s (%s)', $author['author_login'], $author['author_email'] ) );
720
+
721
+ $guest_author_data = array(
722
+ 'display_name' => $author['author_display_name'],
723
+ 'user_login' => $author['author_login'],
724
+ 'user_email' => $author['author_email'],
725
+ 'first_name' => $author['author_first_name'],
726
+ 'last_name' => $author['author_last_name'],
727
+ 'ID' => $author['author_id'],
728
+ );
729
+
730
+ $guest_author_id = $this->create_guest_author( $guest_author_data );
731
+ }
732
+
733
+ WP_CLI::line( 'All done!' );
734
+ }
735
+
736
+ /**
737
+ * Subcommand to create guest authors from an author list in a CSV file
738
+ *
739
+ * @subcommand create-guest-authors-from-csv
740
+ * @synopsis --file=</path/to/file.csv>
741
+ */
742
+ public function create_guest_authors_from_csv( $args, $assoc_args ) {
743
+ global $coauthors_plus;
744
+
745
+ $defaults = array(
746
+ 'file' => '',
747
+ );
748
+ $this->args = wp_parse_args( $assoc_args, $defaults );
749
+
750
+ if ( empty( $this->args['file'] ) || ! is_readable( $this->args['file'] ) )
751
+ WP_CLI::error( 'Please specify a valid CSV file with the --file arg.' );
752
+
753
+ $file = fopen( $this->args['file'], 'r' );
754
+
755
+ if ( ! $file )
756
+ WP_CLI::error( 'Failed to read file.' );
757
+
758
+ $authors = array();
759
+
760
+ $row = 0;
761
+ while ( false !== ( $data = fgetcsv( $file ) ) ) {
762
+ if ( $row == 0 ) {
763
+ $field_keys = array_map( 'trim', $data );
764
+ // TODO: bail if required fields not found
765
+ } else {
766
+ $row_data = array_map( 'trim', $data );
767
+ $author_data = array();
768
+ foreach( (array) $row_data as $col_num => $val ) {
769
+ // Don't use the value of the field key isn't set
770
+ if ( empty( $field_keys[$col_num] ) )
771
+ continue;
772
+ $author_data[$field_keys[$col_num]] = $val;
773
+ }
774
+
775
+ $authors[] = $author_data;
776
+ }
777
+ $row++;
778
+ }
779
+ fclose( $file );
780
+
781
+ WP_CLI::line( "Found " . count( $authors ) . " authors in CSV" );
782
+
783
+ foreach ( $authors as $author ) {
784
+ WP_CLI::line( sprintf( 'Processing author %s (%s)', $author['user_login'], $author['user_email'] ) );
785
+
786
+ $guest_author_data = array(
787
+ 'display_name' => sanitize_text_field( $author['display_name'] ),
788
+ 'user_login' => sanitize_user( $author['user_login'] ),
789
+ 'user_email' => sanitize_email( $author['user_email'] ),
790
+ );
791
+
792
+ $display_name_space_pos = strpos( $author['display_name'], ' ' );
793
+
794
+ if ( false !== $display_name_space_pos && empty( $author['first_name'] ) && empty( $author['last_name'] ) ) {
795
+ $first_name = substr( $author['display_name'], 0, $display_name_space_pos );
796
+ $last_name = substr( $author['display_name'], ( $display_name_space_pos + 1 ) );
797
+
798
+ $guest_author_data['first_name'] = sanitize_text_field( $first_name );
799
+ $guest_author_data['last_name'] = sanitize_text_field( $last_name );
800
+ } elseif ( ! empty( $author['first_name'] ) && ! empty( $author['last_name'] ) ) {
801
+ $guest_author_data['first_name'] = sanitize_text_field( $author['first_name'] );
802
+ $guest_author_data['last_name'] = sanitize_text_field( $author['last_name'] );
803
+ }
804
+
805
+ $guest_author_id = $this->create_guest_author( $guest_author_data );
806
+ }
807
+
808
+ WP_CLI::line( 'All done!' );
809
+ }
810
+
811
+ private function create_guest_author( $author ) {
812
+ global $coauthors_plus;
813
+ $guest_author = $coauthors_plus->guest_authors->get_guest_author_by( 'user_email', $author['user_email'], true );
814
+
815
+ if ( ! $guest_author ) {
816
+ $guest_author = $coauthors_plus->guest_authors->get_guest_author_by( 'user_login', $author['user_login'], true );
817
+ }
818
+
819
+ if ( ! $guest_author ) {
820
+ WP_CLI::line( '-- Not found; creating profile.' );
821
+
822
+ $guest_author_id = $coauthors_plus->guest_authors->create( array(
823
+ 'display_name' => $author['display_name'],
824
+ 'user_login' => $author['user_login'],
825
+ 'user_email' => $author['user_email'],
826
+ 'first_name' => $author['first_name'],
827
+ 'last_name' => $author['last_name'],
828
+ ) );
829
+
830
+ if ( $guest_author_id ) {
831
+ WP_CLI::line( sprintf( '-- Created as guest author #%s', $guest_author_id ) );
832
+
833
+ if ( isset( $author['author_id'] ) )
834
+ update_post_meta( $guest_author_id, '_original_author_id', $author['ID'] );
835
+
836
+ update_post_meta( $guest_author_id, '_original_author_login', $author['user_login'] );
837
+ } else {
838
+ WP_CLI::warning( "-- Failed to create guest author." );
839
+ }
840
+ } else {
841
+ WP_CLI::line( sprintf( '-- Author already exists (ID #%s); skipping.', $guest_author->ID ) );
842
+ }
843
+ }
844
+
845
  /**
846
  * Clear all of the caches for memory management
847
  */
readme.txt CHANGED
@@ -1,9 +1,9 @@
1
  === Co-Authors Plus ===
2
  Contributors: batmoo, danielbachhuber, automattic
3
  Tags: authors, users, multiple authors, coauthors, multi-author, publishing
4
- Tested up to: 3.5.1
5
  Requires at least: 3.3
6
- Stable tag: 3.0.5
7
 
8
  Assign multiple bylines to posts, pages, and custom post types via a search-as-you-type input box
9
 
@@ -51,6 +51,15 @@ Bug fixes and minor enhancements
51
 
52
  == Changelog ==
53
 
 
 
 
 
 
 
 
 
 
54
  = 3.0.5 (Feb. 18, 2013) =
55
  * New filter 'coauthors_search_authors_get_terms_args' allows you to increase the number of matches returned with AJAX co-author selection
56
  * Bug fix: If there isn't an author term yet for a co-author, avoid an erronous join that caused duplicate posts to appear.
1
  === Co-Authors Plus ===
2
  Contributors: batmoo, danielbachhuber, automattic
3
  Tags: authors, users, multiple authors, coauthors, multi-author, publishing
4
+ Tested up to: 3.7.1
5
  Requires at least: 3.3
6
+ Stable tag: 3.0.6
7
 
8
  Assign multiple bylines to posts, pages, and custom post types via a search-as-you-type input box
9
 
51
 
52
  == Changelog ==
53
 
54
+ = 3.0.6 (Dec. 9, 2013) =
55
+ * New Swedish translation, courtesy of [alundstroem](https://github.com/alundstroem)
56
+ * Updated German translation, courtesy of [krafit](https://github.com/krafit).
57
+ * New filter for specifying the default author assigned to a post. Props [tannerm](https://github.com/tannerm)
58
+ * Bug fix: When filtering a user's published post count, use the value of their guest author profile if one is mapped.
59
+ * Added support for checkboxes in Guest Author profiles
60
+ * Fix Strict warnings from CPT's that don't define all capabilities
61
+ * New swap-coauthors CLI command for replacing one co-author with another
62
+
63
  = 3.0.5 (Feb. 18, 2013) =
64
  * New filter 'coauthors_search_authors_get_terms_args' allows you to increase the number of matches returned with AJAX co-author selection
65
  * Bug fix: If there isn't an author term yet for a co-author, avoid an erronous join that caused duplicate posts to appear.
template-tags.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- function get_coauthors( $post_id = 0, $args = array() ) {
4
  global $post, $post_ID, $coauthors_plus, $wpdb;
5
 
6
  $coauthors = array();
@@ -9,12 +9,9 @@ function get_coauthors( $post_id = 0, $args = array() ) {
9
  $post_id = $post_ID;
10
  if ( !$post_id && $post )
11
  $post_id = $post->ID;
12
-
13
- $defaults = array('orderby'=>'term_order', 'order'=>'ASC');
14
- $args = wp_parse_args( $args, $defaults );
15
 
16
  if ( $post_id ) {
17
- $coauthor_terms = get_the_terms( $post_id, $coauthors_plus->coauthor_taxonomy, $args );
18
 
19
  if ( is_array( $coauthor_terms ) && !empty( $coauthor_terms ) ) {
20
  foreach( $coauthor_terms as $coauthor ) {
@@ -489,4 +486,38 @@ function coauthors_wp_list_authors( $args = array() ) {
489
  if ( ! $args['echo'] )
490
  return $return;
491
  echo $return;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
492
  }
1
  <?php
2
 
3
+ function get_coauthors( $post_id = 0 ) {
4
  global $post, $post_ID, $coauthors_plus, $wpdb;
5
 
6
  $coauthors = array();
9
  $post_id = $post_ID;
10
  if ( !$post_id && $post )
11
  $post_id = $post->ID;
 
 
 
12
 
13
  if ( $post_id ) {
14
+ $coauthor_terms = get_the_terms( $post_id, $coauthors_plus->coauthor_taxonomy );
15
 
16
  if ( is_array( $coauthor_terms ) && !empty( $coauthor_terms ) ) {
17
  foreach( $coauthor_terms as $coauthor ) {
486
  if ( ! $args['echo'] )
487
  return $return;
488
  echo $return;
489
+ }
490
+
491
+ /**
492
+ * Retrieve a Co-Author's Avatar.
493
+ *
494
+ * Since Guest Authors doesn't enforce unique email addresses, simply loading the avatar by email won't work when
495
+ * multiple Guest Authors share the same address.
496
+ *
497
+ * This is a replacement for using get_avatar(), which only operates on email addresses and cannot differentiate
498
+ * between Guest Authors (who may share an email) and regular user accounts
499
+ *
500
+ * @param object $coauthor The Co Author or Guest Author object
501
+ * @param int $size The desired size
502
+ * @return string The image tag for the avatar, or an empty string if none could be determined
503
+ */
504
+ function coauthors_get_avatar( $coauthor, $size = 32, $default = '', $alt = false ) {
505
+ global $coauthors_plus;
506
+
507
+ if ( ! is_object( $coauthor ) )
508
+ return '';
509
+
510
+ if ( isset( $coauthor->type ) && 'guest-author' == $coauthor->type ) {
511
+ $guest_author_thumbnail = $coauthors_plus->guest_authors->get_guest_author_thumbnail( $coauthor, $size );
512
+
513
+ if ( $guest_author_thumbnail )
514
+ return $guest_author_thumbnail;
515
+ }
516
+
517
+ // Make sure we're dealing with an object for which we can retrieve an email
518
+ if ( isset( $coauthor->user_email ) )
519
+ return get_avatar( $coauthor->user_email, $size, $default, $alt );
520
+
521
+ // Nothing matched, an invalid object was passed.
522
+ return '';
523
  }