first commit
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,117 @@
|
||||
.inline-edit-group.inline-edit-coauthors {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.inline-edit-group.inline-edit-coauthors #coauthors-edit {
|
||||
margin-left: 5em;
|
||||
}
|
||||
|
||||
#coauthors-list {
|
||||
width: 100%;
|
||||
padding: 0 5px;
|
||||
}
|
||||
#coauthors-list td {
|
||||
padding-left:0;
|
||||
padding-right:0;
|
||||
vertical-align: middle;
|
||||
background: #F9F9F9;
|
||||
}
|
||||
|
||||
#coauthors-list .coauthor-row {
|
||||
overflow: hidden;
|
||||
}
|
||||
#coauthors-list .coauthor-tag {
|
||||
width: 200px;
|
||||
display: block;
|
||||
padding: 10px 3px 5px;
|
||||
font-size: 13px;
|
||||
color: #21759B;
|
||||
border-bottom: 1px solid #21759B;
|
||||
cursor: text;
|
||||
float: left;
|
||||
}
|
||||
#coauthors-list .coauthor-tag:hover {
|
||||
cursor: text;
|
||||
background: #EAF2FA;
|
||||
color:#D54E21;
|
||||
}
|
||||
#coauthors-list .ui-state-highlight {
|
||||
border:2px dashed #21759B;
|
||||
height:31px;
|
||||
margin-top:3px;
|
||||
width:200px;
|
||||
}
|
||||
#coauthors-list .ui-sortable-helper .coauthor-tag {
|
||||
cursor: grabbing;
|
||||
cursor:-moz-grabbing;
|
||||
cursor:-webkit-grabbing;
|
||||
}
|
||||
#coauthors-list .coauthor-gravatar {
|
||||
float: right;
|
||||
height: 25px;
|
||||
margin-right: 5px;
|
||||
margin-top: -5px;
|
||||
width: 25px;
|
||||
}
|
||||
#coauthors-list .coauthor-suggest {
|
||||
margin: 5px 0;
|
||||
color: #888;
|
||||
width: 200px;
|
||||
float: left;
|
||||
}
|
||||
#coauthors-list .coauthor-suggest:focus {
|
||||
color: #333;
|
||||
}
|
||||
#coauthors-list .coauthors-author-options {
|
||||
overflow: hidden;
|
||||
padding: 7px 0 0 7px;
|
||||
}
|
||||
#coauthors-list .delete-coauthor {
|
||||
display: block;
|
||||
float: left;
|
||||
padding: 5px;
|
||||
text-decoration: underline;
|
||||
color: #FF0000;
|
||||
font-size: 11px;
|
||||
|
||||
border: 1px solid transparent;
|
||||
}
|
||||
#coauthors-list .delete-coauthor:hover {
|
||||
cursor: pointer;
|
||||
background: #FF0000;
|
||||
color: #fff;
|
||||
|
||||
border: 1px solid #FF0000;
|
||||
border-radius: 3px;
|
||||
-moz-border-radius: 3px;
|
||||
-webkit-border-radius: 3px;
|
||||
}
|
||||
#coauthors-loading {
|
||||
margin: 10px 0px 5px 10px;
|
||||
float: left;
|
||||
}
|
||||
|
||||
#coauthors-readonly {
|
||||
}
|
||||
#coauthors-readonly ul {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
#coauthors-readonly ul li {
|
||||
}
|
||||
#coauthors-readonly ul li .avatar {
|
||||
float: left;
|
||||
}
|
||||
#coauthors-readonly ul li .coauthor-tag {
|
||||
display:block;
|
||||
padding: 5px 3px;
|
||||
margin-left: 30px;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
/** Block Editor Hack for 5.0: Hide the core author input **/
|
||||
.block-editor label[for^="post-author-selector-"],
|
||||
.block-editor select[id^="post-author-selector-"] {
|
||||
display: none;
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
.co-authors.wp-list-table {
|
||||
}
|
||||
|
||||
.co-authors.wp-list-table .column-display_name img.avatar {
|
||||
float: left;
|
||||
margin-right: 10px;
|
||||
margin-top: 1px;
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Constants
|
||||
*/
|
||||
define( 'COAUTHORS_PLUS_PATH', dirname( __FILE__ ) );
|
||||
define( 'COAUTHORS_PLUS_URL', plugin_dir_url( __FILE__ ) );
|
||||
@@ -0,0 +1,439 @@
|
||||
jQuery( document ).ready(function () {
|
||||
|
||||
/*
|
||||
* Click handler for the delete button
|
||||
* @param event
|
||||
*/
|
||||
var coauthors_delete_onclick = function( e ) {
|
||||
if ( confirm( coAuthorsPlusStrings.confirm_delete ) ) {
|
||||
return coauthors_delete( this );
|
||||
}
|
||||
return false;
|
||||
};
|
||||
|
||||
var $coauthors_loading = jQuery("<span id='ajax-loading'></span>");
|
||||
|
||||
function coauthors_delete( elem ) {
|
||||
|
||||
var $coauthor_row = jQuery( elem ).closest( '.coauthor-row' );
|
||||
$coauthor_row.remove();
|
||||
|
||||
// Hide the delete button when there's only one Co-Author
|
||||
if ( jQuery( '#coauthors-list .coauthor-row .coauthor-tag' ).length <= 1 )
|
||||
jQuery( '#coauthors-list .coauthor-row .coauthors-author-options' ).addClass( 'hidden' );
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
var coauthors_edit_onclick = function( event ) {
|
||||
var $tag = jQuery( this );
|
||||
|
||||
var $co = $tag.prev();
|
||||
|
||||
$tag.hide();
|
||||
$co.show()
|
||||
.focus()
|
||||
;
|
||||
|
||||
$co.previousAuthor = $tag.text();
|
||||
}
|
||||
|
||||
/*
|
||||
* Save co-author
|
||||
* @param int Co-Author ID
|
||||
* @param string Co-Author Name
|
||||
* @param object The autosuggest input box
|
||||
*/
|
||||
function coauthors_save_coauthor( author, co ) {
|
||||
|
||||
// get sibling <span> and update
|
||||
co.siblings( '.coauthor-tag' )
|
||||
.html( author.name )
|
||||
.append( coauthors_create_author_gravatar( author ) )
|
||||
.show()
|
||||
;
|
||||
|
||||
// Update the value of the hidden input
|
||||
co.siblings( 'input[name="coauthors[]"]' ).val( author.nicename );
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Add co-author
|
||||
* @param string Co-Author Name
|
||||
* @param object The autosuggest input box
|
||||
* @param boolean Initial set up or not?
|
||||
*/
|
||||
function coauthors_add_coauthor( author, co, init, count ){
|
||||
|
||||
// Check if editing
|
||||
if ( co && co.siblings( '.coauthor-tag' ).length ) {
|
||||
coauthors_save_coauthor( author, co );
|
||||
} else {
|
||||
// Not editing, so we create a new co-author entry
|
||||
if ( count == 0 ) {
|
||||
var coName = ( count == 0 ) ? 'coauthors-main' : '';
|
||||
// Add new co-author to <select>
|
||||
//coauthors_select_author( co-author );
|
||||
}
|
||||
var options = { addDelete: true, addEdit: false };
|
||||
|
||||
// Create autosuggest box and text tag
|
||||
if ( ! co ) var co = coauthors_create_autosuggest( author.name, coName )
|
||||
var tag = coauthors_create_author_tag( author );
|
||||
var input = coauthors_create_author_hidden_input( author );
|
||||
var $gravatar = coauthors_create_author_gravatar( author );
|
||||
|
||||
tag.append( $gravatar );
|
||||
|
||||
coauthors_add_to_table( co, tag, input, options );
|
||||
|
||||
if ( ! init ) {
|
||||
// Create new author-suggest and append it to a new row
|
||||
var newCO = coauthors_create_autosuggest( '', false );
|
||||
coauthors_add_to_table( newCO );
|
||||
move_loading( newCO );
|
||||
}
|
||||
}
|
||||
|
||||
co.bind( 'blur', coauthors_stop_editing );
|
||||
|
||||
// Set the value for the auto-suggest box to the co-author's name and hide it
|
||||
// unescape() is deprecated, so replacing it with decodeURIComponent() here and every places.
|
||||
co.val( decodeURIComponent( author.name ) )
|
||||
.hide()
|
||||
.unbind( 'focus' )
|
||||
;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Add the autosuggest box and text tag to the Co-Authors table
|
||||
* @param object Autosuggest input box
|
||||
* @param object Text tag
|
||||
* @param
|
||||
*/
|
||||
function coauthors_add_to_table( co, tag, input, options ) {
|
||||
if ( co ) {
|
||||
var $div = jQuery( '<div/>' )
|
||||
.addClass( 'suggest' )
|
||||
.addClass( 'coauthor-row' )
|
||||
.append( co )
|
||||
.append( tag )
|
||||
.append( input )
|
||||
;
|
||||
|
||||
//Add buttons to row
|
||||
if ( tag ) coauthors_insert_author_edit_cells( $div, options );
|
||||
|
||||
jQuery( '#coauthors-list' ).append( $div );
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Adds a delete and edit button next to a co-author
|
||||
* @param object The row to which the new co-author should be added
|
||||
*/
|
||||
function coauthors_insert_author_edit_cells( $div, options ){
|
||||
|
||||
var $options = jQuery( '<div/>' )
|
||||
.addClass( 'coauthors-author-options' )
|
||||
;
|
||||
|
||||
if ( options.addDelete ) {
|
||||
var deleteBtn = jQuery( '<span/>' )
|
||||
.addClass( 'delete-coauthor' )
|
||||
.text( coAuthorsPlusStrings.delete_label )
|
||||
.bind( 'click', coauthors_delete_onclick )
|
||||
;
|
||||
$options.append( deleteBtn );
|
||||
}
|
||||
|
||||
$div.append( $options );
|
||||
return $div;
|
||||
}
|
||||
|
||||
/*
|
||||
* Creates autosuggest input box
|
||||
* @param string [optional] Name of the co-author
|
||||
* @param string [optional] Name to be applied to the input box
|
||||
*/
|
||||
function coauthors_create_autosuggest( authorName, inputName ) {
|
||||
|
||||
if ( ! inputName ) inputName = 'coauthorsinput[]';
|
||||
|
||||
var $co = jQuery( '<input/>' );
|
||||
|
||||
$co.attr({
|
||||
'class': 'coauthor-suggest'
|
||||
, 'name': inputName
|
||||
})
|
||||
.appendTo( $coauthors_div )
|
||||
.suggest( coAuthorsPlus_ajax_suggest_link, {
|
||||
onSelect: coauthors_autosuggest_select,
|
||||
delay: 1000
|
||||
})
|
||||
.keydown( coauthors_autosuggest_keydown )
|
||||
;
|
||||
|
||||
if ( authorName )
|
||||
$co.attr( 'value', decodeURIComponent( authorName ) );
|
||||
else
|
||||
$co.attr( 'value', coAuthorsPlusStrings.search_box_text )
|
||||
.focus( function(){ $co.val( '' ) } )
|
||||
.blur( function(){ $co.val( coAuthorsPlusStrings.search_box_text ) } )
|
||||
;
|
||||
|
||||
return $co;
|
||||
|
||||
}
|
||||
|
||||
// Callback for when a user selects a co-author
|
||||
function coauthors_autosuggest_select() {
|
||||
$this = jQuery( this );
|
||||
var vals = this.value.split( '|' );
|
||||
|
||||
var author = {}
|
||||
author.id = jQuery.trim( vals[0] );
|
||||
author.login = jQuery.trim( vals[1] );
|
||||
author.name = jQuery.trim( vals[2] );
|
||||
author.email = jQuery.trim( vals[3] );
|
||||
if( author.avatar !== '' ){
|
||||
author.avatar = jQuery.trim( vals[5] );
|
||||
}
|
||||
|
||||
// Decode user-nicename if it has special characters in it.
|
||||
author.nicename = decodeURIComponent( jQuery.trim( vals[4] ) );
|
||||
|
||||
if ( author.id=='New' ) {
|
||||
coauthors_new_author_display( name );
|
||||
} else {
|
||||
coauthors_add_coauthor( author, $this );
|
||||
// Show the delete button if we now have more than one co-author
|
||||
if ( jQuery( '#coauthors-list .coauthor-row .coauthor-tag' ).length > 1 )
|
||||
jQuery( '#coauthors-list .coauthor-row .coauthors-author-options' ).removeClass( 'hidden' );
|
||||
}
|
||||
}
|
||||
|
||||
// Prevent the enter key from triggering a submit
|
||||
function coauthors_autosuggest_keydown( e ) {
|
||||
if ( e.keyCode == 13 ) {return false;}
|
||||
}
|
||||
|
||||
/*
|
||||
* Blur handler for autosuggest input box
|
||||
* @param event
|
||||
*/
|
||||
function coauthors_stop_editing( event ) {
|
||||
|
||||
var co = jQuery( this );
|
||||
var tag = jQuery( co.next() );
|
||||
|
||||
co.attr( 'value',tag.text() );
|
||||
|
||||
co.hide();
|
||||
tag.show();
|
||||
|
||||
// editing = false;
|
||||
}
|
||||
|
||||
/*
|
||||
* Creates the text tag for a co-author
|
||||
* @param string Name of the co-author
|
||||
*/
|
||||
function coauthors_create_author_tag( author ) {
|
||||
|
||||
var $tag = jQuery( '<span></span>' )
|
||||
.text( decodeURIComponent( author.name ) )
|
||||
.attr( 'title', coAuthorsPlusStrings.input_box_title )
|
||||
.addClass( 'coauthor-tag' )
|
||||
// Add Click event to edit
|
||||
.click( coauthors_edit_onclick );
|
||||
return $tag;
|
||||
}
|
||||
|
||||
function coauthors_create_author_gravatar( author ) {
|
||||
|
||||
var $gravatar = jQuery( '<img/>' )
|
||||
.attr( 'alt', author.name )
|
||||
.attr( 'src', author.avatar )
|
||||
.addClass( 'coauthor-gravatar' )
|
||||
;
|
||||
return $gravatar;
|
||||
}
|
||||
|
||||
/*
|
||||
* Creates the text tag for a co-author
|
||||
* @param string Name of the co-author
|
||||
*/
|
||||
function coauthors_create_author_hidden_input ( author ) {
|
||||
var input = jQuery( '<input />' )
|
||||
.attr({
|
||||
'type': 'hidden',
|
||||
'id': 'coauthors_hidden_input',
|
||||
'name': 'coauthors[]',
|
||||
'value': decodeURIComponent( author.nicename )
|
||||
})
|
||||
;
|
||||
|
||||
return input;
|
||||
}
|
||||
|
||||
var $coauthors_div = null;
|
||||
|
||||
/**
|
||||
* Initialize the Coauthors UI.
|
||||
*
|
||||
* @param array List of coauthors objects.
|
||||
* Each coauthor object should have the (string) properties:
|
||||
* login
|
||||
* email
|
||||
* name
|
||||
* nicename
|
||||
*/
|
||||
function coauthors_initialize( post_coauthors ) {
|
||||
// Add the controls to add co-authors
|
||||
|
||||
$coauthors_div = jQuery( '#coauthors-edit' );
|
||||
|
||||
if ( $coauthors_div.length ) {
|
||||
// Create the co-authors table
|
||||
var table = jQuery( '<div/>' )
|
||||
.attr( 'id', 'coauthors-list' )
|
||||
;
|
||||
$coauthors_div.append( table );
|
||||
}
|
||||
|
||||
// Select co-authors already added to the post
|
||||
var addedAlready = [];
|
||||
//jQuery('#the-list tr').each(function(){
|
||||
var count = 0;
|
||||
jQuery.each( post_coauthors, function() {
|
||||
coauthors_add_coauthor( this, undefined, true, count );
|
||||
count++;
|
||||
});
|
||||
|
||||
// Hide the delete button if there's only one co-author
|
||||
if ( jQuery( '#coauthors-list .coauthor-row .coauthor-tag' ).length < 2 )
|
||||
jQuery( '#coauthors-list .coauthor-row .coauthors-author-options' ).addClass( 'hidden' );
|
||||
|
||||
|
||||
// Create new author-suggest and append it to a new row
|
||||
var newCO = coauthors_create_autosuggest( '', false );
|
||||
coauthors_add_to_table( newCO );
|
||||
|
||||
$coauthors_loading = jQuery( '#publishing-action .spinner' ).clone().attr( 'id', 'coauthors-loading' );
|
||||
move_loading( newCO );
|
||||
|
||||
|
||||
// Make co-authors sortable so an editor can control the order of the co-authors
|
||||
jQuery( '#coauthors-edit' ).ready(function( $ ) {
|
||||
$( '#coauthors-list' ).sortable({
|
||||
axis: 'y',
|
||||
handle: '.coauthor-tag',
|
||||
placeholder: 'ui-state-highlight',
|
||||
items: 'div.coauthor-row:not(div.coauthor-row:last)',
|
||||
containment: 'parent',
|
||||
});
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
function show_loading() {
|
||||
$coauthors_loading.css( 'visibility', 'visible' );
|
||||
}
|
||||
function hide_loading() {
|
||||
$coauthors_loading.css( 'visibility', 'hidden' );
|
||||
}
|
||||
function move_loading( $input ) {
|
||||
$coauthors_loading.insertAfter( $input );
|
||||
}
|
||||
// Show laoding cursor for autocomplete ajax requests
|
||||
jQuery( document ).ajaxSend(function( e, xhr, settings ) {
|
||||
if ( settings.url.indexOf( coAuthorsPlus_ajax_suggest_link ) != -1 ) {
|
||||
// Including existing authors on the AJAX suggest link
|
||||
// allows us to filter them out of the search request
|
||||
var existing_authors = jQuery( 'input[name="coauthors[]"]' ).map(function(){return jQuery( this ).val();}).get();
|
||||
settings.url = settings.url.split( '&existing_authors' )[0];
|
||||
settings.url += '&existing_authors=' + existing_authors.join( ',' );
|
||||
show_loading();
|
||||
}
|
||||
});
|
||||
// Hide laoding cursor when autocomplete ajax requests are finished
|
||||
jQuery( document ).ajaxComplete(function( e, xhr, settings ) {
|
||||
if ( settings.url.indexOf( coAuthorsPlus_ajax_suggest_link ) != -1 )
|
||||
hide_loading();
|
||||
});
|
||||
|
||||
if ( 'post-php' == adminpage || 'post-new-php' == adminpage ) {
|
||||
var $post_coauthor_logins = jQuery( 'input[name="coauthors[]"]' );
|
||||
var $post_coauthor_names = jQuery( 'input[name="coauthorsinput[]"]' );
|
||||
var $post_coauthor_emails = jQuery( 'input[name="coauthorsemails[]"]' );
|
||||
var $post_coauthor_nicenames = jQuery( 'input[name="coauthorsnicenames[]"]' );
|
||||
var $post_coauthoravatars = jQuery( 'input[name="coauthorsavatars[]"]' );
|
||||
|
||||
var post_coauthors = [];
|
||||
|
||||
for ( var i = 0; i < $post_coauthor_logins.length; i++ ) {
|
||||
post_coauthors.push({
|
||||
login: $post_coauthor_logins[i].value,
|
||||
name: $post_coauthor_names[i].value,
|
||||
email: $post_coauthor_emails[i].value,
|
||||
nicename: $post_coauthor_nicenames[i].value,
|
||||
avatar: $post_coauthoravatars[i].value,
|
||||
});
|
||||
}
|
||||
|
||||
// Remove the read-only co-authors so we don't get craziness
|
||||
jQuery( '#coauthors-readonly' ).remove();
|
||||
coauthors_initialize( post_coauthors );
|
||||
}
|
||||
else if ( 'edit-php' == adminpage ) {
|
||||
|
||||
var wpInlineEdit = inlineEditPost.edit;
|
||||
|
||||
inlineEditPost.edit = function( id ) {
|
||||
|
||||
wpInlineEdit.apply( this, arguments )
|
||||
|
||||
// get the post ID
|
||||
var postId = 0
|
||||
if ( typeof( id ) == 'object' )
|
||||
postId = parseInt( this.getId( id ) )
|
||||
|
||||
if ( postId > 0 ) {
|
||||
|
||||
var $postRow = jQuery( '#post-' + postId )
|
||||
|
||||
// Move the element to the appropriate position in the view
|
||||
// JS hack for core bug: https://core.trac.wordpress.org/ticket/26982
|
||||
jQuery( '.quick-edit-row .inline-edit-col-left .inline-edit-col' ).find( '.inline-edit-coauthors' ).remove() // remove any previously added elements
|
||||
var el = jQuery( '.inline-edit-group.inline-edit-coauthors', '#edit-' + postId );
|
||||
el.detach().appendTo( '.quick-edit-row .inline-edit-col-left .inline-edit-col' ).show();
|
||||
|
||||
// initialize co-authors
|
||||
var post_coauthors = jQuery.map( jQuery( '.column-coauthors a', $postRow ), function( el ) {
|
||||
return {
|
||||
login: jQuery( el ).data( 'user_login' ),
|
||||
name: jQuery( el ).data( 'display_name' ),
|
||||
email: jQuery( el ).data( 'user_email' ),
|
||||
nicename: jQuery( el ).data( 'user_nicename' ),
|
||||
avatar: jQuery( el ).data( 'avatar' ),
|
||||
}
|
||||
});
|
||||
|
||||
coauthors_initialize( post_coauthors );
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
if ( typeof( console ) === 'undefined' ) {
|
||||
var console = {}
|
||||
console.log = console.error = function() {};
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
jQuery( document ).ready(function( $ ){
|
||||
$( '.reassign-option' ).on( 'click',function(){
|
||||
$( '#wpbody-content input#submit' ).addClass( 'button-primary' ).removeAttr( 'disabled' );
|
||||
});
|
||||
$( '#leave-assigned-to' ).select2({
|
||||
minimumInputLength: 2,
|
||||
width: 'copy',
|
||||
multiple: false,
|
||||
ajax: {
|
||||
url: ajaxurl,
|
||||
dataType: 'json',
|
||||
data: function( term, page ) {
|
||||
return {
|
||||
q: term,
|
||||
action: 'search_coauthors_to_assign',
|
||||
guest_author: $( '#id' ).val()
|
||||
};
|
||||
},
|
||||
results: function( data, page ) {
|
||||
return { results: data };
|
||||
}
|
||||
},
|
||||
formatResult: function( object, container, query ) {
|
||||
return object.display_name;
|
||||
},
|
||||
formatSelection: function( object, container ) {
|
||||
return object.display_name;
|
||||
}
|
||||
}).on( 'change', function() {
|
||||
$( '#reassign-another' ).trigger( 'click' );
|
||||
});
|
||||
});
|
||||
Binary file not shown.
@@ -0,0 +1,537 @@
|
||||
# Translation of co-authors-plus in German
|
||||
# This file is distributed under the same license as the co-authors-plus package.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2013-01-07 12:20:48+0000\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: GlotPress/0.1\n"
|
||||
"Project-Id-Version: co-authors-plus\n"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:207
|
||||
msgid "View Posts"
|
||||
msgstr "Post anzeigen"
|
||||
|
||||
#: co-authors-plus.php:993
|
||||
msgid "Mine"
|
||||
msgstr "Meins"
|
||||
|
||||
msgid "Mohammad Jangda, Daniel Bachhuber, Automattic"
|
||||
msgstr "Mohammad Jangda, Daniel Bachhuber, Automattic</a>, Übersetzung von <a href=\"http://de.trns.nl\">trns.nl"
|
||||
|
||||
#: co-authors-plus.php:481
|
||||
msgid "No co-author exists for that term"
|
||||
msgstr "Hierfür gibt es keinen Co-Autor"
|
||||
|
||||
#: co-authors-plus.php:1230
|
||||
msgid "New comment on your post \"%s\""
|
||||
msgstr "Neuer Kommentar zu deinem Post \"%s\""
|
||||
|
||||
#: co-authors-plus.php:1232 co-authors-plus.php:1349
|
||||
msgid "Author : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr "Autor : %1$s (IP: %2$s , %3$s)"
|
||||
|
||||
#: co-authors-plus.php:1233 co-authors-plus.php:1350
|
||||
msgid "E-mail : %s"
|
||||
msgstr "E-Mail: %s"
|
||||
|
||||
#: co-authors-plus.php:1234 co-authors-plus.php:1244 co-authors-plus.php:1253
|
||||
#: co-authors-plus.php:1336 co-authors-plus.php:1343 co-authors-plus.php:1351
|
||||
msgid "URL : %s"
|
||||
msgstr "URL: %s"
|
||||
|
||||
#: co-authors-plus.php:1235 co-authors-plus.php:1352
|
||||
msgid "Whois : http://whois.arin.net/rest/ip/%s"
|
||||
msgstr "Whois : http://whois.arin.net/rest/ip/%s"
|
||||
|
||||
#: co-authors-plus.php:1236 co-authors-plus.php:1353
|
||||
msgid "Comment: "
|
||||
msgstr "Kommentar:"
|
||||
|
||||
#: co-authors-plus.php:1237
|
||||
msgid "You can see all comments on this post here: "
|
||||
msgstr "Du kannst alle Kommentare zu diesem Post hier anschauen:"
|
||||
|
||||
#: co-authors-plus.php:1239
|
||||
msgid "[%1$s] Comment: \"%2$s\""
|
||||
msgstr "[%1$s] Kommentar: \"%2$s\""
|
||||
|
||||
#: co-authors-plus.php:1241
|
||||
msgid "New trackback on your post \"%s\""
|
||||
msgstr "Neuer Trackback zu deinem Post \"%s\""
|
||||
|
||||
#: co-authors-plus.php:1243 co-authors-plus.php:1252
|
||||
msgid "Website: %1$s (IP: %2$s , %3$s)"
|
||||
msgstr "Website: %1$s (IP: %2$s , %3$s)"
|
||||
|
||||
#: co-authors-plus.php:1245 co-authors-plus.php:1254
|
||||
msgid "Excerpt: "
|
||||
msgstr "Auszug:"
|
||||
|
||||
#: co-authors-plus.php:1246
|
||||
msgid "You can see all trackbacks on this post here: "
|
||||
msgstr "Du kannst alle Trackback zu diesem Post hier sehen:"
|
||||
|
||||
#: co-authors-plus.php:1248
|
||||
msgid "[%1$s] Trackback: \"%2$s\""
|
||||
msgstr "[%1$s] Trackback: \"%2$s\""
|
||||
|
||||
#: co-authors-plus.php:1250
|
||||
msgid "New pingback on your post \"%s\""
|
||||
msgstr "Neuer Pingback zu deinem Post \"%s\""
|
||||
|
||||
#: co-authors-plus.php:1255
|
||||
msgid "You can see all pingbacks on this post here: "
|
||||
msgstr "Du kannst alle Pingbacks zu deinem Post hier sehen:"
|
||||
|
||||
#: co-authors-plus.php:1257
|
||||
msgid "[%1$s] Pingback: \"%2$s\""
|
||||
msgstr "[%1$s] Pingback: \"%2$s\""
|
||||
|
||||
#: co-authors-plus.php:1260
|
||||
msgid "Permalink: %s"
|
||||
msgstr "Permalink: %s"
|
||||
|
||||
#: co-authors-plus.php:1262 co-authors-plus.php:1359
|
||||
msgid "Trash it: %s"
|
||||
msgstr "In den Papierkorb: %s"
|
||||
|
||||
#: co-authors-plus.php:1264 co-authors-plus.php:1361
|
||||
msgid "Delete it: %s"
|
||||
msgstr "Löschen: %s"
|
||||
|
||||
#: co-authors-plus.php:1265 co-authors-plus.php:1362
|
||||
msgid "Spam it: %s"
|
||||
msgstr "Als Spam markieren: %s"
|
||||
|
||||
#: co-authors-plus.php:1333
|
||||
msgid "A new trackback on the post \"%s\" is waiting for your approval"
|
||||
msgstr "Ein neuer Trackback zum Post \"%s\" wartet auf deine Freigabe"
|
||||
|
||||
#: co-authors-plus.php:1335 co-authors-plus.php:1342
|
||||
msgid "Website : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr "Website : %1$s (IP: %2$s , %3$s)"
|
||||
|
||||
#: co-authors-plus.php:1337
|
||||
msgid "Trackback excerpt: "
|
||||
msgstr "Trackback Auszug:"
|
||||
|
||||
#: co-authors-plus.php:1340
|
||||
msgid "A new pingback on the post \"%s\" is waiting for your approval"
|
||||
msgstr "Ein neuer Pingback zum Post \"%s\" wartet auf deine Freigabe"
|
||||
|
||||
#: co-authors-plus.php:1344
|
||||
msgid "Pingback excerpt: "
|
||||
msgstr "Pingback Auszug:"
|
||||
|
||||
#: co-authors-plus.php:1347
|
||||
msgid "A new comment on the post \"%s\" is waiting for your approval"
|
||||
msgstr "Ein neuer Kommentar auf den Post \"%s\" wartet auf deine Freigabe"
|
||||
|
||||
#: co-authors-plus.php:1357
|
||||
msgid "Approve it: %s"
|
||||
msgstr "Genehmigen: %s"
|
||||
|
||||
#: co-authors-plus.php:1364
|
||||
msgid "Currently %s comment is waiting for approval. Please visit the moderation panel:"
|
||||
msgid_plural "Currently %s comments are waiting for approval. Please visit the moderation panel:"
|
||||
msgstr[0] "Im Moment wartet %s Kommentar auf deine Freigabe. Bitte besuche die Moderationsoberfläche:"
|
||||
msgstr[1] "Im Moment warten %s Kommentare auf deine Freigabe. Bitte besuche die Moderationsoberfläche:"
|
||||
|
||||
#: co-authors-plus.php:1368
|
||||
msgid "[%1$s] Please moderate: \"%2$s\""
|
||||
msgstr "[%1$s] bitte moderiere: \"%2$s\""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:77
|
||||
msgid "Guest Author"
|
||||
msgstr "Gastautor"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:78
|
||||
msgid "Guest Authors"
|
||||
msgstr "Gastautoren"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:79
|
||||
msgid "All Guest Authors"
|
||||
msgstr "Alle Gastautoren"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:80
|
||||
msgid "Add New Guest Author"
|
||||
msgstr "Einen neuen Gastautoren hinaufügen"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:81
|
||||
msgid "Edit Guest Author"
|
||||
msgstr "Gastautor bearbeiten"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:82
|
||||
msgid "New Guest Author"
|
||||
msgstr "Neuer Gastautor"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:83
|
||||
msgid "View Guest Author"
|
||||
msgstr "Gastautor anzeigen"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:84
|
||||
msgid "Search Guest Authors"
|
||||
msgstr "Gastautor suchen"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:85
|
||||
msgid "No guest authors found"
|
||||
msgstr "Dieser Gastautor konnte nicht gefunden werden"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:86
|
||||
msgid "No guest authors found in Trash"
|
||||
msgstr "Keinen Gastautoren im Papierkorb gefunden"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:87
|
||||
msgid "Update Guest Author"
|
||||
msgstr "Gastautor aktualisieren"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:88
|
||||
msgid "About the guest author"
|
||||
msgstr "Über diesen Gastautoren"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:97
|
||||
msgctxt "co-authors-plus"
|
||||
msgid "Add New"
|
||||
msgstr "neuen hinaufügen"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:153
|
||||
#: php/class-coauthors-guest-authors.php:159
|
||||
msgid "Guest author updated. <a href=\"%s\">View profile</a>"
|
||||
msgstr "Gastautor aktualisiert. <a href=\"%s\">Profil ansehen</a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:154
|
||||
msgid "Custom field updated."
|
||||
msgstr "Benutzerdefiniertes Feld aktualisiert."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:155
|
||||
msgid "Custom field deleted."
|
||||
msgstr "Benutzerdefiniertes Feld entfernt."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:156
|
||||
msgid "Guest author updated."
|
||||
msgstr "Gastautor aktualisiert."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:158
|
||||
msgid "Guest author restored to revision from %s"
|
||||
msgstr "Gastautor aus der Revision von %s wiederhergestellt"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:160
|
||||
msgid "Guest author saved."
|
||||
msgstr "Gastautor gespeichert"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:161
|
||||
msgid "Guest author submitted. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr "Gastautor erstellt. <a target=\"_blank\" href=\"%s\">Profilvorschau</a> "
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:162
|
||||
msgid "Guest author scheduled for: <strong>%1$s</strong>. <a target=\"_blank\" href=\"%2$s\">Preview profile</a>"
|
||||
msgstr "Gastautor geplant fü <strong>%1$s</strong>. <a target=\"_blank\" href=\"%2$s\">Profilvorschau</a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:164
|
||||
msgid "M j, Y @ G:i"
|
||||
msgstr "M j, Y @ G:i"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:165
|
||||
msgid "Guest author updated. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr "Gastautor aktualisiert. <a target=\"_blank\" href=\"%s\">Profilvorschau</a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:182
|
||||
#: php/class-coauthors-guest-authors.php:215
|
||||
#: php/class-coauthors-guest-authors.php:430
|
||||
msgid "Doin' something fishy, huh?"
|
||||
msgstr "Ähm, was hast du vor?"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:185
|
||||
#: php/class-coauthors-guest-authors.php:219
|
||||
msgid "You don't have permission to perform this action."
|
||||
msgstr "Du hast nicht die nötigen Rechte, um das zu tun."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:224
|
||||
#: php/class-coauthors-guest-authors.php:435
|
||||
msgid "Guest author can't be deleted because it doesn't exist."
|
||||
msgstr "Der Gastautor kann nicht gelöscht werden, weil er nicht existiert."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:238
|
||||
msgid "Co-author does not exists. Try again?"
|
||||
msgstr "Diesen Co-Autor gibt es nicht. Nochmal versuchen?"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:246
|
||||
msgid "Please make sure to pick an option."
|
||||
msgstr "Bitte wähle eine Option."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:386
|
||||
msgid "Guest author deleted."
|
||||
msgstr " Gastautor gelöscht"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:410
|
||||
msgid "Save"
|
||||
msgstr "speichern"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:411
|
||||
msgid "Unique Slug"
|
||||
msgstr "Eindeutiger Slug"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:413
|
||||
msgid "Name"
|
||||
msgstr "Name"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:414
|
||||
msgid "Contact Info"
|
||||
msgstr "Kontakt Info"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:439
|
||||
msgid "Delete %s"
|
||||
msgstr "Entferne %s"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:440
|
||||
msgid "You have specified this guest author for deletion:"
|
||||
msgstr "Du hast diesen Gastautor zum löschen ausgewählt:"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:442
|
||||
msgid "What should be done with posts assigned to this guest author?"
|
||||
msgstr "Was soll mit den Posts geschehen, die diesem Gastautor zugewiesen sind?"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:443
|
||||
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."
|
||||
msgstr "Beachte: Wenn du den Gastautor und alle seine Posts löschen mötest, solltest du zuerst seine Artikel löschen und dann hierher zurückkommen, um den Gastautor zu löschen."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:452
|
||||
msgid "Reassign to another co-author:"
|
||||
msgstr "Einem anderen Autoren zuweisen:"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:458
|
||||
msgid "Leave posts assigned to the mapped user, %s."
|
||||
msgstr "Die Posts dem Verbundenen WordPress user %s zuweisen."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:463
|
||||
msgid "Remove byline from posts (but leave each post in its current status)."
|
||||
msgstr "Entferne den Namen von den Post, aber belasse die Posts in ihrem aktuellen Zustand."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:466
|
||||
msgid "Confirm Deletion"
|
||||
msgstr "Löschen bestätigen"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:536
|
||||
msgid "WordPress User Mapping"
|
||||
msgstr "WordPress User verbinden"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:538
|
||||
msgid "-- Not mapped --"
|
||||
msgstr "– Nicht verbunden –"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:651
|
||||
msgid "Guest authors cannot be created without display names."
|
||||
msgstr "Gastautoren können nicht ohne Öffentlichen Namen erstellt werden."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:658
|
||||
msgid "Guest authors cannot be created with the same user_login value as a user. Try creating a profile from the user instead"
|
||||
msgstr "Gastautoren können nicht mit dem selben Login Namen, wie ein echter Benutzer erstellt werden. "
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:663
|
||||
msgid "Display name conflicts with another guest author display name."
|
||||
msgstr "Der Öffentliche Name dieses Gastautoren steht im Konflikt mit einem anderen."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:829
|
||||
#: php/class-coauthors-wp-list-table.php:144
|
||||
msgid "First Name"
|
||||
msgstr "Vorname"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:834
|
||||
#: php/class-coauthors-wp-list-table.php:145
|
||||
msgid "Last Name"
|
||||
msgstr "Nachname"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:839
|
||||
msgid "Slug"
|
||||
msgstr "Slug"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:846
|
||||
#: php/class-coauthors-wp-list-table.php:146
|
||||
msgid "E-mail"
|
||||
msgstr "E-mail"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:851
|
||||
#: php/class-coauthors-wp-list-table.php:147
|
||||
msgid "Linked Account"
|
||||
msgstr "Verbundener Account"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:856
|
||||
msgid "Website"
|
||||
msgstr "Website"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:861
|
||||
msgid "AIM"
|
||||
msgstr "AIM"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:866
|
||||
msgid "Yahoo IM"
|
||||
msgstr "Yahoo IM"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:871
|
||||
msgid "Jabber / Google Talk"
|
||||
msgstr "Jabber / Google Talk"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:876
|
||||
msgid "Biographical Info"
|
||||
msgstr "Biographische Angaben"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1006
|
||||
msgid "%s is a required field"
|
||||
msgstr "%s ist ein Pflichtfeld"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1012
|
||||
msgid "user_login cannot duplicate existing guest author or mapped user"
|
||||
msgstr "user_login kann nicht mit einem existierenden Gastautoren oder verbundenen Benutzer übereinstimmen"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1057
|
||||
msgid "Guest author does not exist"
|
||||
msgstr "Gastautor existiert nicht"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1069
|
||||
msgid "Reassignment co-author does not exist"
|
||||
msgstr "Dieser Co-Autor existiert nicht"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1101
|
||||
msgid "No user exists with that ID"
|
||||
msgstr "Es gibt keinen Nutzer mit dieser ID"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1158
|
||||
msgid "Edit Profile"
|
||||
msgstr "Profil bearbeiten"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1166
|
||||
msgid "Create Profile"
|
||||
msgstr "Profil erstellen"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:19
|
||||
msgid "Co-Authors"
|
||||
msgstr "Co-Autoren"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:20
|
||||
msgid "Co-Author"
|
||||
msgstr "Co-Autor"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:81
|
||||
msgid "Show all"
|
||||
msgstr "Alle Anzeigen"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:82
|
||||
msgid "With linked account"
|
||||
msgstr "Mit verbundenem Account"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:83
|
||||
msgid "Without linked account"
|
||||
msgstr "Ohne verbundenen Account"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:135
|
||||
msgid "No matching guest authors were found."
|
||||
msgstr "Es wurden keine passenden Gastautoren gefunden."
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:257
|
||||
msgid "Filter"
|
||||
msgstr "Filter"
|
||||
|
||||
#: php/class-wp-cli.php:153
|
||||
msgid "Please specify a valid user_login"
|
||||
msgstr "Bitte gib einen validen user_login an"
|
||||
|
||||
#: php/class-wp-cli.php:156
|
||||
msgid "Please specify a valid co-author login"
|
||||
msgstr "Bitte gib einen validen co-author login an"
|
||||
|
||||
#: php/class-wp-cli.php:163
|
||||
msgid "Skipping - Post #%d already has co-authors assigned: %s"
|
||||
msgstr "Überspringe - Post 2%d es wurde schon ein Co-Autor hinzugefügt: %s"
|
||||
|
||||
#: php/class-wp-cli.php:168
|
||||
msgid "Updating - Adding %s's byline to post #%d"
|
||||
msgstr "Aktualisieren - Ergänze %s's Namen zum Post #%d"
|
||||
|
||||
#: php/class-wp-cli.php:173
|
||||
msgid "All done! %d posts were affected."
|
||||
msgstr "Fertig! %d Posts wurden bearbeiten."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:475
|
||||
msgid "Add New"
|
||||
msgstr "Neu"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:206
|
||||
msgid "Delete"
|
||||
msgstr "Löschen"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:823
|
||||
#: php/class-coauthors-wp-list-table.php:143
|
||||
msgid "Display Name"
|
||||
msgstr "Öffentlicher Name"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:817
|
||||
msgid "ID"
|
||||
msgstr "ID"
|
||||
|
||||
#: template-tags.php:136
|
||||
msgid " and "
|
||||
msgstr " und "
|
||||
|
||||
#: co-authors-plus.php:342
|
||||
msgid "<strong>Note:</strong> To edit post authors, please enable javascript or use a javascript-capable browser"
|
||||
msgstr "<strong>Beachte:</strong> Um Artikel Autoren zu ändern, bitte JavaScript aktivieren oder einen JavaScript fähigen Browser nutzen"
|
||||
|
||||
#: co-authors-plus.php:349 co-authors-plus.php:956
|
||||
msgid "Click on an author to change them. Drag to change their order. Click on <strong>Remove</strong> to remove them."
|
||||
msgstr "Klicke auf einen Autor um sie zu ändern. Durch verschieben änderst du ihre Reihenfolge. Klicke auf <strong>Entfernen</strong> um sie zu entfernen."
|
||||
|
||||
#: co-authors-plus.php:287 co-authors-plus.php:382 co-authors-plus.php:1158
|
||||
msgid "Authors"
|
||||
msgstr "Autoren"
|
||||
|
||||
#: co-authors-plus.php:425 php/class-coauthors-wp-list-table.php:148
|
||||
msgid "Posts"
|
||||
msgstr "Artikel"
|
||||
|
||||
#: co-authors-plus.php:442
|
||||
msgid "View posts by this author"
|
||||
msgstr "Schaue dir Artikel von diesem Autor an"
|
||||
|
||||
#: co-authors-plus.php:951 php/class-coauthors-wp-list-table.php:205
|
||||
msgid "Edit"
|
||||
msgstr "Bearbeiten"
|
||||
|
||||
#: co-authors-plus.php:952
|
||||
msgid "Remove"
|
||||
msgstr "Entfernen"
|
||||
|
||||
#: co-authors-plus.php:953
|
||||
msgid "Are you sure you want to remove this author?"
|
||||
msgstr "Bist du sicher, dass du diesen Autor entfernen möchtest?"
|
||||
|
||||
#: co-authors-plus.php:954
|
||||
msgid "Click to change this author, or drag to change their position"
|
||||
msgstr "Klicken um diesen Autor zu ändern oder verschiebe sie um ihre Position zu ändern"
|
||||
|
||||
#: co-authors-plus.php:955
|
||||
msgid "Search for an author"
|
||||
msgstr "Suche nach einem Autor"
|
||||
|
||||
#: template-tags.php:82
|
||||
msgid "No post ID provided for CoAuthorsIterator constructor. Are you not in a loop or is $post not set?"
|
||||
msgstr "Keine Artikel ID für den CoAuthorsIterator Konstruktor verfügbar. Bist du nicht im Loop oder wurde $post nicht gesetzt?"
|
||||
|
||||
#: template-tags.php:208 template-tags.php:365
|
||||
msgid "Posts by %s"
|
||||
msgstr "Artikel von %s"
|
||||
|
||||
#: template-tags.php:257
|
||||
msgid "Visit %s’s website"
|
||||
msgstr "Besuche %s’s Website"
|
||||
|
||||
msgid "Co-Authors Plus"
|
||||
msgstr "Co-Authors Plus"
|
||||
|
||||
msgid "http://wordpress.org/extend/plugins/co-authors-plus/"
|
||||
msgstr "http://wordpress.org/extend/plugins/co-authors-plus/"
|
||||
|
||||
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."
|
||||
msgstr "Erlaubt es mehrere Autoren einem Artikel zuzuweisen. Dieses Plugin ist eine erweiterte Version des Co-Authors Plugins, dass von Weston Ruter entwickelt wurde."
|
||||
Binary file not shown.
@@ -0,0 +1,603 @@
|
||||
# Copyright (C) 2012 Co-Authors Plus
|
||||
# This file is distributed under the same license as the Co-Authors Plus package.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Co-Authors Plus 3.0.1-working\n"
|
||||
"Report-Msgid-Bugs-To: http://wordpress.org/tag/co-authors-plus\n"
|
||||
"POT-Creation-Date: 2012-11-21 21:17:39+00:00\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"PO-Revision-Date: 2014-02-27 21:35-0500\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"X-Generator: Poedit 1.6.4\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"Language: es\n"
|
||||
|
||||
#: co-authors-plus.php:287 co-authors-plus.php:382 co-authors-plus.php:1158
|
||||
msgid "Authors"
|
||||
msgstr "Autores"
|
||||
|
||||
#: co-authors-plus.php:342
|
||||
msgid ""
|
||||
"<strong>Note:</strong> To edit post authors, please enable javascript or use "
|
||||
"a javascript-capable browser"
|
||||
msgstr ""
|
||||
"<strong>Nota:</strong> Para editar autores de esta entrada, por favor "
|
||||
"habilite Javascript o use un navegador que lo soporte"
|
||||
|
||||
#: co-authors-plus.php:349 co-authors-plus.php:956
|
||||
msgid ""
|
||||
"Click on an author to change them. Drag to change their order. Click on "
|
||||
"<strong>Remove</strong> to remove them."
|
||||
msgstr ""
|
||||
"Haz click en el nombre del autor para cambiarlo; Arrástralo para cambiar el "
|
||||
"orden; Haz click en <strong>Borrar</strong> para eliminarlo."
|
||||
|
||||
#: co-authors-plus.php:425 php/class-coauthors-wp-list-table.php:148
|
||||
msgid "Posts"
|
||||
msgstr "Entradas"
|
||||
|
||||
#: co-authors-plus.php:442
|
||||
msgid "View posts by this author"
|
||||
msgstr "Ver entradas por este autor"
|
||||
|
||||
#: co-authors-plus.php:481
|
||||
msgid "No co-author exists for that term"
|
||||
msgstr "No hay co-authors para ese término"
|
||||
|
||||
#: co-authors-plus.php:951 php/class-coauthors-wp-list-table.php:205
|
||||
msgid "Edit"
|
||||
msgstr "Editar"
|
||||
|
||||
#: co-authors-plus.php:952
|
||||
msgid "Remove"
|
||||
msgstr "Borrar"
|
||||
|
||||
#: co-authors-plus.php:953
|
||||
msgid "Are you sure you want to remove this author?"
|
||||
msgstr "¿Está seguro de remover este autor?"
|
||||
|
||||
#: co-authors-plus.php:954
|
||||
msgid "Click to change this author, or drag to change their position"
|
||||
msgstr "Click para cambiar este autor, o arrastrar para cambiar la posición"
|
||||
|
||||
#: co-authors-plus.php:955
|
||||
msgid "Search for an author"
|
||||
msgstr "Buscar un autor"
|
||||
|
||||
#: co-authors-plus.php:993
|
||||
msgid "Mine"
|
||||
msgstr "Míos"
|
||||
|
||||
#: co-authors-plus.php:1230
|
||||
msgid "New comment on your post \"%s\""
|
||||
msgstr "Nuevo comentario en tu entrada \"%s\""
|
||||
|
||||
#. translators: 1: comment author, 2: author IP, 3: author domain
|
||||
#: co-authors-plus.php:1232 co-authors-plus.php:1349
|
||||
msgid "Author : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr "Autor : %1$s (IP: %2$s , %3$s)"
|
||||
|
||||
#: co-authors-plus.php:1233 co-authors-plus.php:1350
|
||||
msgid "E-mail : %s"
|
||||
msgstr "E-mail : %s"
|
||||
|
||||
#: co-authors-plus.php:1234 co-authors-plus.php:1244 co-authors-plus.php:1253
|
||||
#: co-authors-plus.php:1336 co-authors-plus.php:1343 co-authors-plus.php:1351
|
||||
msgid "URL : %s"
|
||||
msgstr "URL : %s"
|
||||
|
||||
#: co-authors-plus.php:1235 co-authors-plus.php:1352
|
||||
msgid "Whois : http://whois.arin.net/rest/ip/%s"
|
||||
msgstr "Whois : http://whois.arin.net/rest/ip/%s"
|
||||
|
||||
#: co-authors-plus.php:1236 co-authors-plus.php:1353
|
||||
msgid "Comment: "
|
||||
msgstr "Comentario: "
|
||||
|
||||
#: co-authors-plus.php:1237
|
||||
msgid "You can see all comments on this post here: "
|
||||
msgstr "Ve acá todos los comentarios de esta entrada: "
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1239
|
||||
msgid "[%1$s] Comment: \"%2$s\""
|
||||
msgstr "[%1$s] Comentario: \"%2$s\""
|
||||
|
||||
#: co-authors-plus.php:1241
|
||||
msgid "New trackback on your post \"%s\""
|
||||
msgstr "Nuevo trackback en tu entrada \"%s\""
|
||||
|
||||
#. translators: 1: website name, 2: author IP, 3: author domain
|
||||
#. translators: 1: comment author, 2: author IP, 3: author domain
|
||||
#: co-authors-plus.php:1243 co-authors-plus.php:1252
|
||||
msgid "Website: %1$s (IP: %2$s , %3$s)"
|
||||
msgstr "Sitio Web: %1$s (IP: %2$s , %3$s)"
|
||||
|
||||
#: co-authors-plus.php:1245 co-authors-plus.php:1254
|
||||
msgid "Excerpt: "
|
||||
msgstr "Resumen: "
|
||||
|
||||
#: co-authors-plus.php:1246
|
||||
msgid "You can see all trackbacks on this post here: "
|
||||
msgstr "Puedes ver acá todos los trackbacks de esta entrada: "
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1248
|
||||
msgid "[%1$s] Trackback: \"%2$s\""
|
||||
msgstr "[%1$s] Trackback: \"%2$s\""
|
||||
|
||||
#: co-authors-plus.php:1250
|
||||
msgid "New pingback on your post \"%s\""
|
||||
msgstr "Nuevo pingback en tu entrada \"%s\""
|
||||
|
||||
#: co-authors-plus.php:1255
|
||||
msgid "You can see all pingbacks on this post here: "
|
||||
msgstr "Puedes ver acá todos los pingbacks de esta entrada: "
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1257
|
||||
msgid "[%1$s] Pingback: \"%2$s\""
|
||||
msgstr "[%1$s] Pingback: \"%2$s\""
|
||||
|
||||
#: co-authors-plus.php:1260
|
||||
msgid "Permalink: %s"
|
||||
msgstr "Link permanente: %s"
|
||||
|
||||
#: co-authors-plus.php:1262 co-authors-plus.php:1359
|
||||
msgid "Trash it: %s"
|
||||
msgstr "Eliminarlo: %s"
|
||||
|
||||
#: co-authors-plus.php:1264 co-authors-plus.php:1361
|
||||
msgid "Delete it: %s"
|
||||
msgstr "Borrarlo: %s"
|
||||
|
||||
#: co-authors-plus.php:1265 co-authors-plus.php:1362
|
||||
msgid "Spam it: %s"
|
||||
msgstr "Marcar SPAM: %s"
|
||||
|
||||
#: co-authors-plus.php:1333
|
||||
msgid "A new trackback on the post \"%s\" is waiting for your approval"
|
||||
msgstr "Un nuevo trackback en la entrada \"%s\" espera tu aprobación"
|
||||
|
||||
#: co-authors-plus.php:1335 co-authors-plus.php:1342
|
||||
msgid "Website : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr "Sitio Web : %1$s (IP: %2$s , %3$s)"
|
||||
|
||||
#: co-authors-plus.php:1337
|
||||
msgid "Trackback excerpt: "
|
||||
msgstr "Resumen de trackback: "
|
||||
|
||||
#: co-authors-plus.php:1340
|
||||
msgid "A new pingback on the post \"%s\" is waiting for your approval"
|
||||
msgstr "Un nuevo pingback en la entrada \"%s\" espera tu aprobación"
|
||||
|
||||
#: co-authors-plus.php:1344
|
||||
msgid "Pingback excerpt: "
|
||||
msgstr "Resumen de pingback: "
|
||||
|
||||
#: co-authors-plus.php:1347
|
||||
msgid "A new comment on the post \"%s\" is waiting for your approval"
|
||||
msgstr "Un nuevo comentario en la entrada \"%s\" espera tu aprobación"
|
||||
|
||||
#: co-authors-plus.php:1357
|
||||
msgid "Approve it: %s"
|
||||
msgstr "Aprobarlo it: %s"
|
||||
|
||||
#: co-authors-plus.php:1364
|
||||
msgid ""
|
||||
"Currently %s comment is waiting for approval. Please visit the moderation "
|
||||
"panel:"
|
||||
msgid_plural ""
|
||||
"Currently %s comments are waiting for approval. Please visit the moderation "
|
||||
"panel:"
|
||||
msgstr[0] ""
|
||||
"%s comentario espera tu aprobación. Por favor visita el panel de moderación:"
|
||||
msgstr[1] ""
|
||||
"%s comentarios esperan tu aprobación. Por favor visita el panel de "
|
||||
"moderación:"
|
||||
|
||||
#: co-authors-plus.php:1368
|
||||
msgid "[%1$s] Please moderate: \"%2$s\""
|
||||
msgstr "[%1$s] Por favor moderar: \"%2$s\""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:77
|
||||
msgid "Guest Author"
|
||||
msgstr "Autor Invitado"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:78
|
||||
msgid "Guest Authors"
|
||||
msgstr "Autores Invitados"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:79
|
||||
msgid "All Guest Authors"
|
||||
msgstr "Todos los Autores Invitados"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:80
|
||||
msgid "Add New Guest Author"
|
||||
msgstr "Agregar Nuevo Autor Invitado"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:81
|
||||
msgid "Edit Guest Author"
|
||||
msgstr "Editar Autor Invitado"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:82
|
||||
msgid "New Guest Author"
|
||||
msgstr "Nuevo Autor Invitado"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:83
|
||||
msgid "View Guest Author"
|
||||
msgstr "Ver Autor Invitado"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:84
|
||||
msgid "Search Guest Authors"
|
||||
msgstr "Buscar Autores Invitados"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:85
|
||||
msgid "No guest authors found"
|
||||
msgstr "No se encontraron autores invitados"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:86
|
||||
msgid "No guest authors found in Trash"
|
||||
msgstr "No se encontraron autores invitados en la papelera"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:87
|
||||
msgid "Update Guest Author"
|
||||
msgstr "Actualizar Autor Invitado"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:88
|
||||
msgid "About the guest author"
|
||||
msgstr "Acerca de este autor invitado"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:97
|
||||
msgctxt "co-authors-plus"
|
||||
msgid "Add New"
|
||||
msgstr "Agregar Nuevo [co-author-plus]"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:153
|
||||
#: php/class-coauthors-guest-authors.php:159
|
||||
msgid "Guest author updated. <a href=\"%s\">View profile</a>"
|
||||
msgstr "Autor invitado actualizado. <a href=\"%s\">Ver perfil</a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:154
|
||||
msgid "Custom field updated."
|
||||
msgstr "Campo personalizado actualizado."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:155
|
||||
msgid "Custom field deleted."
|
||||
msgstr "Campo personalizado eliminado."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:156
|
||||
msgid "Guest author updated."
|
||||
msgstr "Autor invitado actualizado"
|
||||
|
||||
#. translators: %s: date and time of the revision
|
||||
#: php/class-coauthors-guest-authors.php:158
|
||||
msgid "Guest author restored to revision from %s"
|
||||
msgstr "Autor invitado restaurado desde la revisión con fecha %s"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:160
|
||||
msgid "Guest author saved."
|
||||
msgstr "Autor invitado fue guardado."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:161
|
||||
msgid ""
|
||||
"Guest author submitted. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
"Autor invitado enviado. <a target=\"_blank\" href=\"%s\">Vista previa del "
|
||||
"perfil</a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:162
|
||||
msgid ""
|
||||
"Guest author scheduled for: <strong>%1$s</strong>. <a target=\"_blank\" href="
|
||||
"\"%2$s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
"Autor invitado agendado para: <strong>%1$s</strong>. <a target=\"_blank\" "
|
||||
"href=\"%2$s\">Vista previa del perfil profile</a>"
|
||||
|
||||
#. translators: Publish box date format, see http:php.net/date
|
||||
#: php/class-coauthors-guest-authors.php:164
|
||||
msgid "M j, Y @ G:i"
|
||||
msgstr "M j, Y @ G:i"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:165
|
||||
msgid ""
|
||||
"Guest author updated. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
"Autor invitado actualizado. <a target=\"_blank\" href=\"%s\">Vista previa "
|
||||
"del perfil</a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:182
|
||||
#: php/class-coauthors-guest-authors.php:215
|
||||
#: php/class-coauthors-guest-authors.php:430
|
||||
msgid "Doin' something fishy, huh?"
|
||||
msgstr "¿Haciendo traversal, ha??"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:185
|
||||
#: php/class-coauthors-guest-authors.php:219
|
||||
msgid "You don't have permission to perform this action."
|
||||
msgstr "No tienes suficientes permisos para realizar esta acción."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:224
|
||||
#: php/class-coauthors-guest-authors.php:435
|
||||
msgid "Guest author can't be deleted because it doesn't exist."
|
||||
msgstr "Este Autor invitado no puede ser eliminado porque no existe."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:238
|
||||
msgid "Co-author does not exists. Try again?"
|
||||
msgstr "Co-autor no existe. ¿Intentarlo otra vez?"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:246
|
||||
msgid "Please make sure to pick an option."
|
||||
msgstr "Por favor selecciona una alternativa."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:386
|
||||
msgid "Guest author deleted."
|
||||
msgstr "Autor invitado eliminado."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:410
|
||||
msgid "Save"
|
||||
msgstr "Guardar"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:411
|
||||
msgid "Unique Slug"
|
||||
msgstr "URL única"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:413
|
||||
msgid "Name"
|
||||
msgstr "Nombre"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:414
|
||||
msgid "Contact Info"
|
||||
msgstr "Información de contacto"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:439
|
||||
msgid "Delete %s"
|
||||
msgstr "Eliminar %s"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:440
|
||||
msgid "You have specified this guest author for deletion:"
|
||||
msgstr "Seleccionaste este autor invitado para ser eliminado:"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:442
|
||||
msgid "What should be done with posts assigned to this guest author?"
|
||||
msgstr "¿Qué debemos hacer con las entradas asignadas a este autor invitado?"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:443
|
||||
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."
|
||||
msgstr ""
|
||||
"Nota: si quieres eliminar este autor invitado y todas sus entradas, primero "
|
||||
"debes eliminar las entradas y luego regresar acá para borrar el autor "
|
||||
"invitado."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:452
|
||||
msgid "Reassign to another co-author:"
|
||||
msgstr "Reasignar a otro co-autor:"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:458
|
||||
msgid "Leave posts assigned to the mapped user, %s."
|
||||
msgstr "Dejar entrada asignada al autor indicado, %s."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:463
|
||||
msgid "Remove byline from posts (but leave each post in its current status)."
|
||||
msgstr ""
|
||||
"Borrar atribución del autor desde las entradas (pero deja cada entrada en su "
|
||||
"estado actual)."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:466
|
||||
msgid "Confirm Deletion"
|
||||
msgstr "Confirmar eliminación"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:475
|
||||
msgid "Add New"
|
||||
msgstr "Agregar nuevo"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:536
|
||||
msgid "WordPress User Mapping"
|
||||
msgstr "Asignación de usuarios de WordPress"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:538
|
||||
msgid "-- Not mapped --"
|
||||
msgstr "-- Sin asignación --"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:651
|
||||
msgid "Guest authors cannot be created without display names."
|
||||
msgstr "No se pueden crear Autores invitados sin nombre visible."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:658
|
||||
msgid ""
|
||||
"Guest authors cannot be created with the same user_login value as a user. "
|
||||
"Try creating a profile from the user instead"
|
||||
msgstr ""
|
||||
"No se pueden crear Autores invitados con el mismo user_login que un usuario "
|
||||
"existente. Puedes intentar creando un crear un perfil de usuario."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:663
|
||||
msgid "Display name conflicts with another guest author display name."
|
||||
msgstr "Nombre visible ya está en uso por otro autor invitado."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:817
|
||||
msgid "ID"
|
||||
msgstr "ID"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:823
|
||||
#: php/class-coauthors-wp-list-table.php:143
|
||||
msgid "Display Name"
|
||||
msgstr "Nombre visible"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:829
|
||||
#: php/class-coauthors-wp-list-table.php:144
|
||||
msgid "First Name"
|
||||
msgstr "Nombre"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:834
|
||||
#: php/class-coauthors-wp-list-table.php:145
|
||||
msgid "Last Name"
|
||||
msgstr "Apellido"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:839
|
||||
msgid "Slug"
|
||||
msgstr "URL única"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:846
|
||||
#: php/class-coauthors-wp-list-table.php:146
|
||||
msgid "E-mail"
|
||||
msgstr "E-mail"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:851
|
||||
#: php/class-coauthors-wp-list-table.php:147
|
||||
msgid "Linked Account"
|
||||
msgstr "Cuenta vinculada"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:856
|
||||
msgid "Website"
|
||||
msgstr "Sitio Web"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:861
|
||||
msgid "AIM"
|
||||
msgstr "AIM"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:866
|
||||
msgid "Yahoo IM"
|
||||
msgstr "Yahoo IM"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:871
|
||||
msgid "Jabber / Google Talk"
|
||||
msgstr "Jabber / Google Talk"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:876
|
||||
msgid "Biographical Info"
|
||||
msgstr "Información biográfica"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1006
|
||||
msgid "%s is a required field"
|
||||
msgstr "%s es un campo obligatorio"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1012
|
||||
msgid "user_login cannot duplicate existing guest author or mapped user"
|
||||
msgstr ""
|
||||
"user_login no puede ser duplicado de un usuario asignado o de otro autor "
|
||||
"invitado ya existentes"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1057
|
||||
msgid "Guest author does not exist"
|
||||
msgstr "Este autor invitado no existe"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1069
|
||||
msgid "Reassignment co-author does not exist"
|
||||
msgstr "Usuario seleccionado para la reasignación no existe"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1101
|
||||
msgid "No user exists with that ID"
|
||||
msgstr "No existe un usuario con ese ID"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1158
|
||||
msgid "Edit Profile"
|
||||
msgstr "Editar Perfil"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1166
|
||||
msgid "Create Profile"
|
||||
msgstr "Crear Perfil"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:19
|
||||
msgid "Co-Authors"
|
||||
msgstr "Co-Autores"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:20
|
||||
msgid "Co-Author"
|
||||
msgstr "Co-Autor"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:81
|
||||
msgid "Show all"
|
||||
msgstr "Mostrar todos"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:82
|
||||
msgid "With linked account"
|
||||
msgstr "Con cuenta vinculada"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:83
|
||||
msgid "Without linked account"
|
||||
msgstr "Sin cuenta vinculada"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:135
|
||||
msgid "No matching guest authors were found."
|
||||
msgstr "No se encontraron autores"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:206
|
||||
msgid "Delete"
|
||||
msgstr "Borrar"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:207
|
||||
msgid "View Posts"
|
||||
msgstr "Ver Entradas"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:257
|
||||
msgid "Filter"
|
||||
msgstr "Filtrar"
|
||||
|
||||
#: php/class-wp-cli.php:153
|
||||
msgid "Please specify a valid user_login"
|
||||
msgstr "Por favor especifique un user_login válido"
|
||||
|
||||
#: php/class-wp-cli.php:156
|
||||
msgid "Please specify a valid co-author login"
|
||||
msgstr "Por favor especifique información de ingreso para coautor válida"
|
||||
|
||||
#: php/class-wp-cli.php:163
|
||||
msgid "Skipping - Post #%d already has co-authors assigned: %s"
|
||||
msgstr "Ignorando - La entrada #%d ya tiene co-autores asignados: %s"
|
||||
|
||||
#: php/class-wp-cli.php:168
|
||||
msgid "Updating - Adding %s's byline to post #%d"
|
||||
msgstr "Actualizando - Agregando información de %s a la entrada #%d"
|
||||
|
||||
#: php/class-wp-cli.php:173
|
||||
msgid "All done! %d posts were affected."
|
||||
msgstr "¡Todo listo! %d poseeos fueron afectados."
|
||||
|
||||
#: template-tags.php:82
|
||||
msgid ""
|
||||
"No post ID provided for CoAuthorsIterator constructor. Are you not in a loop "
|
||||
"or is $post not set?"
|
||||
msgstr ""
|
||||
"El constructor CoAuthorsIterator no recibió un ID de entrada como parámetro. "
|
||||
"Verifica que estás dentro del loop/bucle y que $post esté definida."
|
||||
|
||||
#: template-tags.php:136
|
||||
msgid " and "
|
||||
msgstr " y "
|
||||
|
||||
#: template-tags.php:208 template-tags.php:365
|
||||
msgid "Posts by %s"
|
||||
msgstr "Entradas por %s"
|
||||
|
||||
#: template-tags.php:257
|
||||
msgid "Visit %s’s website"
|
||||
msgstr "Visite el sitio web %s’s"
|
||||
|
||||
#. Plugin Name of the plugin/theme
|
||||
msgid "Co-Authors Plus"
|
||||
msgstr "Co-Authors Plus"
|
||||
|
||||
#. Plugin URI of the plugin/theme
|
||||
msgid "http://wordpress.org/extend/plugins/co-authors-plus/"
|
||||
msgstr "http://wordpress.org/extend/plugins/co-authors-plus/"
|
||||
|
||||
#. Description of the plugin/theme
|
||||
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."
|
||||
msgstr ""
|
||||
"Permite que varios autores sean asignados a una entrada/página. Este plugin "
|
||||
"es una versión extendida del plugin Co-Authors desarrollado por Weston Ruter."
|
||||
|
||||
#. Author of the plugin/theme
|
||||
msgid "Mohammad Jangda, Daniel Bachhuber, Automattic"
|
||||
msgstr ""
|
||||
"Mohammad Jangda, Daniel Bachhuber, Automattic. Localizado al español por "
|
||||
"@sergiomajluf"
|
||||
Binary file not shown.
@@ -0,0 +1,604 @@
|
||||
# Copyright (C) 2010 Co-Authors Plus
|
||||
# This file is distributed under the same license as the Co-Authors Plus package.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Co-Authors Plus 3.0.6\n"
|
||||
"Report-Msgid-Bugs-To: http://wordpress.org/tag/co-authors-plus\n"
|
||||
"POT-Creation-Date: 2012-11-21 21:17:39+00:00\n"
|
||||
"PO-Revision-Date: 2013-12-14 15:30+0100\n"
|
||||
"Last-Translator: Jojaba <jojaba@gmail.com>\n"
|
||||
"Language-Team: Jojaba <jojaba@gmail.com>\n"
|
||||
"Language: French\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 1.5.7\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
|
||||
#: co-authors-plus.php:287 co-authors-plus.php:382 co-authors-plus.php:1158
|
||||
msgid "Authors"
|
||||
msgstr "Auteurs"
|
||||
|
||||
#: co-authors-plus.php:342
|
||||
msgid ""
|
||||
"<strong>Note:</strong> To edit post authors, please enable javascript or use "
|
||||
"a javascript-capable browser"
|
||||
msgstr ""
|
||||
"<strong>Remarque :</strong> pour éditer les auteurs d'un article, veuillez "
|
||||
"activer JavaScript ou utiliser un navigateur gérant JavaScript"
|
||||
|
||||
#: co-authors-plus.php:349 co-authors-plus.php:956
|
||||
msgid ""
|
||||
"Click on an author to change them. Drag to change their order. Click on "
|
||||
"<strong>Remove</strong> to remove them."
|
||||
msgstr ""
|
||||
"Cliquer sur un auteur pour en changer. Glisser-déposer pour modifier "
|
||||
"l'ordre. Cliquer sur <strong>Retirer</strong> pour le retirer."
|
||||
|
||||
#: co-authors-plus.php:425 php/class-coauthors-wp-list-table.php:148
|
||||
msgid "Posts"
|
||||
msgstr "Articles"
|
||||
|
||||
#: co-authors-plus.php:442
|
||||
msgid "View posts by this author"
|
||||
msgstr "Voir les articles de cet auteur"
|
||||
|
||||
#: co-authors-plus.php:481
|
||||
msgid "No co-author exists for that term"
|
||||
msgstr "Aucun co-auteur n'existe pour ce terme"
|
||||
|
||||
#: co-authors-plus.php:951 php/class-coauthors-wp-list-table.php:205
|
||||
msgid "Edit"
|
||||
msgstr "Éditer"
|
||||
|
||||
#: co-authors-plus.php:952
|
||||
msgid "Remove"
|
||||
msgstr "Retirer"
|
||||
|
||||
#: co-authors-plus.php:953
|
||||
msgid "Are you sure you want to remove this author?"
|
||||
msgstr "Souhaitez-vous vraiment retirer cet auteur ?"
|
||||
|
||||
#: co-authors-plus.php:954
|
||||
msgid "Click to change this author, or drag to change their position"
|
||||
msgstr ""
|
||||
"Cliquer pour changer cet auteur ou glisser-déposer pour modifier sa position"
|
||||
|
||||
#: co-authors-plus.php:955
|
||||
msgid "Search for an author"
|
||||
msgstr "Rechercher un auteur"
|
||||
|
||||
#: co-authors-plus.php:993
|
||||
msgid "Mine"
|
||||
msgstr "Le mien"
|
||||
|
||||
#: co-authors-plus.php:1230
|
||||
msgid "New comment on your post \"%s\""
|
||||
msgstr "Nouveau commentaire à votre article « %s »"
|
||||
|
||||
#. translators: 1: comment author, 2: author IP, 3: author domain
|
||||
#: co-authors-plus.php:1232 co-authors-plus.php:1349
|
||||
msgid "Author : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr "Auteur : %1$s (IP : %2$s , %3$s)"
|
||||
|
||||
#: co-authors-plus.php:1233 co-authors-plus.php:1350
|
||||
msgid "E-mail : %s"
|
||||
msgstr "E-mail : %s"
|
||||
|
||||
#: co-authors-plus.php:1234 co-authors-plus.php:1244 co-authors-plus.php:1253
|
||||
#: co-authors-plus.php:1336 co-authors-plus.php:1343 co-authors-plus.php:1351
|
||||
msgid "URL : %s"
|
||||
msgstr "URL : %s"
|
||||
|
||||
#: co-authors-plus.php:1235 co-authors-plus.php:1352
|
||||
msgid "Whois : http://whois.arin.net/rest/ip/%s"
|
||||
msgstr "Whois : http://whois.arin.net/rest/ip/%s"
|
||||
|
||||
#: co-authors-plus.php:1236 co-authors-plus.php:1353
|
||||
msgid "Comment: "
|
||||
msgstr "Commentaire :"
|
||||
|
||||
#: co-authors-plus.php:1237
|
||||
msgid "You can see all comments on this post here: "
|
||||
msgstr "Vous pouvez voir tous les commentaires pour cet article ici :"
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1239
|
||||
msgid "[%1$s] Comment: \"%2$s\""
|
||||
msgstr "[%1$s] Commentaire : « %2$s »"
|
||||
|
||||
#: co-authors-plus.php:1241
|
||||
msgid "New trackback on your post \"%s\""
|
||||
msgstr "Nouveau trackback pour votre article « %s »"
|
||||
|
||||
#. translators: 1: website name, 2: author IP, 3: author domain
|
||||
#. translators: 1: comment author, 2: author IP, 3: author domain
|
||||
#: co-authors-plus.php:1243 co-authors-plus.php:1252
|
||||
msgid "Website: %1$s (IP: %2$s , %3$s)"
|
||||
msgstr "Site Web : %1$s (IP : %2$s , %3$s)"
|
||||
|
||||
#: co-authors-plus.php:1245 co-authors-plus.php:1254
|
||||
msgid "Excerpt: "
|
||||
msgstr "Extrait :"
|
||||
|
||||
#: co-authors-plus.php:1246
|
||||
msgid "You can see all trackbacks on this post here: "
|
||||
msgstr "Vous pouvez voir tous les trackbacks pour cet article ici :"
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1248
|
||||
msgid "[%1$s] Trackback: \"%2$s\""
|
||||
msgstr "[%1$s] Trackback : « %2$s »"
|
||||
|
||||
#: co-authors-plus.php:1250
|
||||
msgid "New pingback on your post \"%s\""
|
||||
msgstr "Nouveau pingback pour votre article « %s »"
|
||||
|
||||
#: co-authors-plus.php:1255
|
||||
msgid "You can see all pingbacks on this post here: "
|
||||
msgstr "Vous pouvez voir tous les pingbacks pour cet article ici :"
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1257
|
||||
msgid "[%1$s] Pingback: \"%2$s\""
|
||||
msgstr "[%1$s] Pingback : « %2$s »"
|
||||
|
||||
#: co-authors-plus.php:1260
|
||||
msgid "Permalink: %s"
|
||||
msgstr "Permalien : %s"
|
||||
|
||||
#: co-authors-plus.php:1262 co-authors-plus.php:1359
|
||||
msgid "Trash it: %s"
|
||||
msgstr "Mettre à la corbeille %s"
|
||||
|
||||
#: co-authors-plus.php:1264 co-authors-plus.php:1361
|
||||
msgid "Delete it: %s"
|
||||
msgstr "Supprimer %s"
|
||||
|
||||
#: co-authors-plus.php:1265 co-authors-plus.php:1362
|
||||
msgid "Spam it: %s"
|
||||
msgstr "Considérer comme indésirable %s"
|
||||
|
||||
#: co-authors-plus.php:1333
|
||||
msgid "A new trackback on the post \"%s\" is waiting for your approval"
|
||||
msgstr "Un nouveau trackback pour l'article « %s » attend votre approbation"
|
||||
|
||||
#: co-authors-plus.php:1335 co-authors-plus.php:1342
|
||||
msgid "Website : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr "Site Web : %1$s (IP : %2$s , %3$s)"
|
||||
|
||||
#: co-authors-plus.php:1337
|
||||
msgid "Trackback excerpt: "
|
||||
msgstr "Extrait du trackback :"
|
||||
|
||||
#: co-authors-plus.php:1340
|
||||
msgid "A new pingback on the post \"%s\" is waiting for your approval"
|
||||
msgstr "Un nouveau pingback pour l'article « %s » attend votre approbation"
|
||||
|
||||
#: co-authors-plus.php:1344
|
||||
msgid "Pingback excerpt: "
|
||||
msgstr "Extriat du pingback :"
|
||||
|
||||
#: co-authors-plus.php:1347
|
||||
msgid "A new comment on the post \"%s\" is waiting for your approval"
|
||||
msgstr "Un nouveau commentaire pour l'article « %s » attend votre approbation"
|
||||
|
||||
#: co-authors-plus.php:1357
|
||||
msgid "Approve it: %s"
|
||||
msgstr "Approuver %s"
|
||||
|
||||
#: co-authors-plus.php:1364
|
||||
msgid ""
|
||||
"Currently %s comment is waiting for approval. Please visit the moderation "
|
||||
"panel:"
|
||||
msgid_plural ""
|
||||
"Currently %s comments are waiting for approval. Please visit the moderation "
|
||||
"panel:"
|
||||
msgstr[0] ""
|
||||
"%s commentaire attend votre approbation. Veuillez vous rendre au panneau de "
|
||||
"modération :"
|
||||
msgstr[1] ""
|
||||
"%s commentaires attendent votre approbation. Veuillez vous rendre au panneau "
|
||||
"de modération :"
|
||||
|
||||
#: co-authors-plus.php:1368
|
||||
msgid "[%1$s] Please moderate: \"%2$s\""
|
||||
msgstr "[%1$s] Veuillez modérer « %2$s »"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:77
|
||||
msgid "Guest Author"
|
||||
msgstr "Auteur invité"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:78
|
||||
msgid "Guest Authors"
|
||||
msgstr "Auteurs invités"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:79
|
||||
msgid "All Guest Authors"
|
||||
msgstr "Tous les auteurs invités"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:80
|
||||
msgid "Add New Guest Author"
|
||||
msgstr "Ajouter un nouvel auteur invité"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:81
|
||||
msgid "Edit Guest Author"
|
||||
msgstr "Éditer l'auteur invité"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:82
|
||||
msgid "New Guest Author"
|
||||
msgstr "Nouvel auteur invité"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:83
|
||||
msgid "View Guest Author"
|
||||
msgstr "Afficher l'auteur invité"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:84
|
||||
msgid "Search Guest Authors"
|
||||
msgstr "Rechercher des auteurs invités"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:85
|
||||
msgid "No guest authors found"
|
||||
msgstr "Aucun auteur invité trouvé"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:86
|
||||
msgid "No guest authors found in Trash"
|
||||
msgstr "Aucun auteur invité trouvé dans la corbeille"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:87
|
||||
msgid "Update Guest Author"
|
||||
msgstr "Mettre à jour l'auteur invité"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:88
|
||||
msgid "About the guest author"
|
||||
msgstr "À propos de l'auteur invité"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:97
|
||||
msgctxt "co-authors-plus"
|
||||
msgid "Add New"
|
||||
msgstr "Nouveau"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:153
|
||||
#: php/class-coauthors-guest-authors.php:159
|
||||
msgid "Guest author updated. <a href=\"%s\">View profile</a>"
|
||||
msgstr "Auteur invité mis à jour. <a href=\"%s\">Voir le profil</a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:154
|
||||
msgid "Custom field updated."
|
||||
msgstr "Champ personnalisé mis à jour"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:155
|
||||
msgid "Custom field deleted."
|
||||
msgstr "Cahmp personnalisé supprimé."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:156
|
||||
msgid "Guest author updated."
|
||||
msgstr "Auteur invité mis à jour."
|
||||
|
||||
#. translators: %s: date and time of the revision
|
||||
#: php/class-coauthors-guest-authors.php:158
|
||||
msgid "Guest author restored to revision from %s"
|
||||
msgstr "Auteur invité rétabli à la révision datant du %s"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:160
|
||||
msgid "Guest author saved."
|
||||
msgstr "Auteur invité enregistré."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:161
|
||||
msgid ""
|
||||
"Guest author submitted. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
"Auteur invité enregistré. <a target=\"_blank\" href=\"%s\">Aperçu du pofil</"
|
||||
"a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:162
|
||||
msgid ""
|
||||
"Guest author scheduled for: <strong>%1$s</strong>. <a target=\"_blank\" href="
|
||||
"\"%2$s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
"Auteur invité prévu pour : <strong>%1$s</strong>. <a target=\"_blank\" href="
|
||||
"\"%2$s\">Aperçu du profil</a>"
|
||||
|
||||
#. translators: Publish box date format, see http:php.net/date
|
||||
#: php/class-coauthors-guest-authors.php:164
|
||||
msgid "M j, Y @ G:i"
|
||||
msgstr "j M Y à G:i"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:165
|
||||
msgid ""
|
||||
"Guest author updated. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
"Auteur invité mis à jour. <a target=\"_blank\" href=\"%s\">Aperçu du profil</"
|
||||
"a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:182
|
||||
#: php/class-coauthors-guest-authors.php:215
|
||||
#: php/class-coauthors-guest-authors.php:430
|
||||
msgid "Doin' something fishy, huh?"
|
||||
msgstr "On fait des choses bizarres ?"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:185
|
||||
#: php/class-coauthors-guest-authors.php:219
|
||||
msgid "You don't have permission to perform this action."
|
||||
msgstr "Vous n'êtes pas autorisé à faire cela."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:224
|
||||
#: php/class-coauthors-guest-authors.php:435
|
||||
msgid "Guest author can't be deleted because it doesn't exist."
|
||||
msgstr "L'auteur invité ne peut être supprimé car il n'existe pas."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:238
|
||||
msgid "Co-author does not exists. Try again?"
|
||||
msgstr "Le co-auteur n'existe pas. Essayer à nouveau ?"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:246
|
||||
msgid "Please make sure to pick an option."
|
||||
msgstr "Veuillez choisir une option."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:386
|
||||
msgid "Guest author deleted."
|
||||
msgstr "Auteur invité supprimé."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:410
|
||||
msgid "Save"
|
||||
msgstr "Enregistrer"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:411
|
||||
msgid "Unique Slug"
|
||||
msgstr "Slug unique"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:413
|
||||
msgid "Name"
|
||||
msgstr "Nom"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:414
|
||||
msgid "Contact Info"
|
||||
msgstr "Infos de contact"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:439
|
||||
msgid "Delete %s"
|
||||
msgstr "Supprimer %s"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:440
|
||||
msgid "You have specified this guest author for deletion:"
|
||||
msgstr "Vous avez indiqué vouloir supprimer cet auteur invité :"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:442
|
||||
msgid "What should be done with posts assigned to this guest author?"
|
||||
msgstr "Que faut-il faire avec les articles associés à cet auteur invité ?"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:443
|
||||
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."
|
||||
msgstr ""
|
||||
"Remarque : si vous souhaitez supprimer l'auteur invité et tous ses articles, "
|
||||
"vous devriez d'abord supprimer tous ses articles puis revenir pour supprimer "
|
||||
"l'auteur invité."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:452
|
||||
msgid "Reassign to another co-author:"
|
||||
msgstr "Réassoicer à un nouveau co-auteur :"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:458
|
||||
msgid "Leave posts assigned to the mapped user, %s."
|
||||
msgstr "Liasser les articles associés à l'utilisateur %s."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:463
|
||||
msgid "Remove byline from posts (but leave each post in its current status)."
|
||||
msgstr ""
|
||||
"Supprimer les infos sur l'article (mais laisser chaque article dans sin état "
|
||||
"actuel)"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:466
|
||||
msgid "Confirm Deletion"
|
||||
msgstr "Confirmer la suppression"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:475
|
||||
msgid "Add New"
|
||||
msgstr "Nouveau"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:536
|
||||
msgid "WordPress User Mapping"
|
||||
msgstr "Correspondance des utilisateurs WordPress"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:538
|
||||
msgid "-- Not mapped --"
|
||||
msgstr "-- Non associé --"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:651
|
||||
msgid "Guest authors cannot be created without display names."
|
||||
msgstr "Les auteurs invités ne peuvent être créés sans noms à afficher."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:658
|
||||
msgid ""
|
||||
"Guest authors cannot be created with the same user_login value as a user. "
|
||||
"Try creating a profile from the user instead"
|
||||
msgstr ""
|
||||
"Les auteurs invités ne peuvent être créés avec le même identifiant qu'un "
|
||||
"utilisateur. Essayez plutôt de créer un profil à partir de l'utilisateur."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:663
|
||||
msgid "Display name conflicts with another guest author display name."
|
||||
msgstr "Le nom affiché est en conflit avec le nom d'un autre auteur invité."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:817
|
||||
msgid "ID"
|
||||
msgstr "ID"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:823
|
||||
#: php/class-coauthors-wp-list-table.php:143
|
||||
msgid "Display Name"
|
||||
msgstr "Nom affiché"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:829
|
||||
#: php/class-coauthors-wp-list-table.php:144
|
||||
msgid "First Name"
|
||||
msgstr "Prénom"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:834
|
||||
#: php/class-coauthors-wp-list-table.php:145
|
||||
msgid "Last Name"
|
||||
msgstr "Nom"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:839
|
||||
msgid "Slug"
|
||||
msgstr "Slug"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:846
|
||||
#: php/class-coauthors-wp-list-table.php:146
|
||||
msgid "E-mail"
|
||||
msgstr "E-mail"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:851
|
||||
#: php/class-coauthors-wp-list-table.php:147
|
||||
msgid "Linked Account"
|
||||
msgstr "Compte lié"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:856
|
||||
msgid "Website"
|
||||
msgstr "Site Web"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:861
|
||||
msgid "AIM"
|
||||
msgstr "AIM"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:866
|
||||
msgid "Yahoo IM"
|
||||
msgstr "MI Yahoo"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:871
|
||||
msgid "Jabber / Google Talk"
|
||||
msgstr "Jabber / Google Talk"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:876
|
||||
msgid "Biographical Info"
|
||||
msgstr "Infos biographiques"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1006
|
||||
msgid "%s is a required field"
|
||||
msgstr "%s est un champ obligatoire"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1012
|
||||
msgid "user_login cannot duplicate existing guest author or mapped user"
|
||||
msgstr ""
|
||||
"L'identifiant ne peut être le même que celui d'un auteur invité existant ou "
|
||||
"de l'utilisateur associé"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1057
|
||||
msgid "Guest author does not exist"
|
||||
msgstr "L'auteur invité n'existe pas"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1069
|
||||
msgid "Reassignment co-author does not exist"
|
||||
msgstr "Réassociation à un auteur inexistant"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1101
|
||||
msgid "No user exists with that ID"
|
||||
msgstr "Aucun utilisateur ne possède cette ID"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1158
|
||||
msgid "Edit Profile"
|
||||
msgstr "Modifier le profil"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1166
|
||||
msgid "Create Profile"
|
||||
msgstr "Créer un profil"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:19
|
||||
msgid "Co-Authors"
|
||||
msgstr "Co-Auteurs"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:20
|
||||
msgid "Co-Author"
|
||||
msgstr "Co-Auteur"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:81
|
||||
msgid "Show all"
|
||||
msgstr "Tout afficher"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:82
|
||||
msgid "With linked account"
|
||||
msgstr "Avec compte lié"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:83
|
||||
msgid "Without linked account"
|
||||
msgstr "Sans compte lié"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:135
|
||||
msgid "No matching guest authors were found."
|
||||
msgstr "Aucun auteur invité ne correspond."
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:206
|
||||
msgid "Delete"
|
||||
msgstr "Supprimer"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:207
|
||||
msgid "View Posts"
|
||||
msgstr "Articles"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:257
|
||||
msgid "Filter"
|
||||
msgstr "Filtrer"
|
||||
|
||||
#: php/class-wp-cli.php:153
|
||||
msgid "Please specify a valid user_login"
|
||||
msgstr "Veuillez indiquer un identifiant valide"
|
||||
|
||||
#: php/class-wp-cli.php:156
|
||||
msgid "Please specify a valid co-author login"
|
||||
msgstr "Veuillez indiquer un identifiant de co-auteur valide"
|
||||
|
||||
#: php/class-wp-cli.php:163
|
||||
msgid "Skipping - Post #%d already has co-authors assigned: %s"
|
||||
msgstr "Passe - L'article #%d a déjà des co-auteurs associés : %s"
|
||||
|
||||
#: php/class-wp-cli.php:168
|
||||
msgid "Updating - Adding %s's byline to post #%d"
|
||||
msgstr "Mise à jour en cours - Ajout de l'info %s à l'article #%d"
|
||||
|
||||
#: php/class-wp-cli.php:173
|
||||
msgid "All done! %d posts were affected."
|
||||
msgstr "Terminé ! %d articles ont été concernés."
|
||||
|
||||
#: template-tags.php:82
|
||||
msgid ""
|
||||
"No post ID provided for CoAuthorsIterator constructor. Are you not in a loop "
|
||||
"or is $post not set?"
|
||||
msgstr ""
|
||||
"Aucune ID d'article n'a été fournie au constructeur CoAuthorsIterator. Ne "
|
||||
"seriez-vous pas à l'extérieur d'une boucle ou $post n'est-il pas défini ?"
|
||||
|
||||
#: template-tags.php:136
|
||||
msgid " and "
|
||||
msgstr " et "
|
||||
|
||||
#: template-tags.php:208 template-tags.php:365
|
||||
msgid "Posts by %s"
|
||||
msgstr "Articles par %s"
|
||||
|
||||
#: template-tags.php:257
|
||||
msgid "Visit %s’s website"
|
||||
msgstr "Visiter le site de %s"
|
||||
|
||||
#. Plugin Name of the plugin/theme
|
||||
msgid "Co-Authors Plus"
|
||||
msgstr "Co-Authors Plus"
|
||||
|
||||
#. Plugin URI of the plugin/theme
|
||||
msgid "http://wordpress.org/extend/plugins/co-authors-plus/"
|
||||
msgstr "http://wordpress.org/extend/plugins/co-authors-plus/"
|
||||
|
||||
#. Description of the plugin/theme
|
||||
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."
|
||||
msgstr ""
|
||||
"Permettre à plusieurs auteurs d'être associé à un même article. Ce plugin "
|
||||
"est une version étendue du plugin Co-Authors développé par Weston Ruter."
|
||||
|
||||
#. Author of the plugin/theme
|
||||
msgid "Mohammad Jangda, Daniel Bachhuber, Automattic"
|
||||
msgstr "Mohammad Jangda, Daniel Bachhuber, Automattic"
|
||||
Binary file not shown.
@@ -0,0 +1,534 @@
|
||||
# Translation of co-authors-plus in Dutch
|
||||
# This file is distributed under the same license as the co-authors-plus package.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2013-09-03 23:09+0100\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Poedit 1.5.7\n"
|
||||
"Project-Id-Version: co-authors-plus\n"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:207
|
||||
msgid "View Posts"
|
||||
msgstr "Bekijk Berichten"
|
||||
|
||||
#: co-authors-plus.php:993
|
||||
msgid "Mine"
|
||||
msgstr "Mijn"
|
||||
|
||||
msgid "Mohammad Jangda, Daniel Bachhuber, Automattic"
|
||||
msgstr "Mohammad Jangda, Daniel Bachhuber, Automattic</a>, Translation by <a href=\"http://kar.im\">Karim"
|
||||
|
||||
#: co-authors-plus.php:481
|
||||
msgid "No co-author exists for that term"
|
||||
msgstr "Geen co-auteur"
|
||||
|
||||
#: co-authors-plus.php:1230
|
||||
msgid "New comment on your post \"%s\""
|
||||
msgstr "Nieuwe reactie op je bericht \"%s\""
|
||||
|
||||
#: co-authors-plus.php:1232 co-authors-plus.php:1349
|
||||
msgid "Author : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr "Auteur : %1$s (IP: %2$s , %3$s)"
|
||||
|
||||
#: co-authors-plus.php:1233 co-authors-plus.php:1350
|
||||
msgid "E-mail : %s"
|
||||
msgstr "E-Mail: %s"
|
||||
|
||||
#: co-authors-plus.php:1234 co-authors-plus.php:1244 co-authors-plus.php:1253
|
||||
#: co-authors-plus.php:1336 co-authors-plus.php:1343 co-authors-plus.php:1351
|
||||
msgid "URL : %s"
|
||||
msgstr "URL: %s"
|
||||
|
||||
#: co-authors-plus.php:1235 co-authors-plus.php:1352
|
||||
msgid "Whois : http://whois.arin.net/rest/ip/%s"
|
||||
msgstr "Whois : http://whois.arin.net/rest/ip/%s"
|
||||
|
||||
#: co-authors-plus.php:1236 co-authors-plus.php:1353
|
||||
msgid "Comment: "
|
||||
msgstr "Reactie:"
|
||||
|
||||
#: co-authors-plus.php:1237
|
||||
msgid "You can see all comments on this post here: "
|
||||
msgstr "Je kan hier alle reacties op dit bericht zien:"
|
||||
|
||||
#: co-authors-plus.php:1239
|
||||
msgid "[%1$s] Comment: \"%2$s\""
|
||||
msgstr "[%1$s] Reacties: \"%2$s\""
|
||||
|
||||
#: co-authors-plus.php:1241
|
||||
msgid "New trackback on your post \"%s\""
|
||||
msgstr "Nieuwe trackback op je bericht \"%s\""
|
||||
|
||||
#: co-authors-plus.php:1243 co-authors-plus.php:1252
|
||||
msgid "Website: %1$s (IP: %2$s , %3$s)"
|
||||
msgstr "Website: %1$s (IP: %2$s , %3$s)"
|
||||
|
||||
#: co-authors-plus.php:1245 co-authors-plus.php:1254
|
||||
msgid "Excerpt: "
|
||||
msgstr "Fragment:"
|
||||
|
||||
#: co-authors-plus.php:1246
|
||||
msgid "You can see all trackbacks on this post here: "
|
||||
msgstr "Je kan hier alle trackbacks op dit bericht zien:"
|
||||
|
||||
#: co-authors-plus.php:1248
|
||||
msgid "[%1$s] Trackback: \"%2$s\""
|
||||
msgstr "[%1$s] Trackback: \"%2$s\""
|
||||
|
||||
#: co-authors-plus.php:1250
|
||||
msgid "New pingback on your post \"%s\""
|
||||
msgstr "Nieuwe pingback op je bericht \"%s\""
|
||||
|
||||
#: co-authors-plus.php:1255
|
||||
msgid "You can see all pingbacks on this post here: "
|
||||
msgstr "Je kan hier alle pingbacks op dit bericht zien:"
|
||||
|
||||
#: co-authors-plus.php:1257
|
||||
msgid "[%1$s] Pingback: \"%2$s\""
|
||||
msgstr "[%1$s] Pingback: \"%2$s\""
|
||||
|
||||
#: co-authors-plus.php:1260
|
||||
msgid "Permalink: %s"
|
||||
msgstr "Permalink: %s"
|
||||
|
||||
#: co-authors-plus.php:1262 co-authors-plus.php:1359
|
||||
msgid "Trash it: %s"
|
||||
msgstr "In de prullebak: %s"
|
||||
|
||||
#: co-authors-plus.php:1264 co-authors-plus.php:1361
|
||||
msgid "Delete it: %s"
|
||||
msgstr "Verwijder het: %s"
|
||||
|
||||
#: co-authors-plus.php:1265 co-authors-plus.php:1362
|
||||
msgid "Spam it: %s"
|
||||
msgstr "Als Spam markeren: %s"
|
||||
|
||||
#: co-authors-plus.php:1333
|
||||
msgid "A new trackback on the post \"%s\" is waiting for your approval"
|
||||
msgstr "Een nieuwe trackback op dit bericht \"%s\" wacht op goedkeuring"
|
||||
|
||||
#: co-authors-plus.php:1335 co-authors-plus.php:1342
|
||||
msgid "Website : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr "Website : %1$s (IP: %2$s , %3$s)"
|
||||
|
||||
#: co-authors-plus.php:1337
|
||||
msgid "Trackback excerpt: "
|
||||
msgstr "Trackback fragment:"
|
||||
|
||||
#: co-authors-plus.php:1340
|
||||
msgid "A new pingback on the post \"%s\" is waiting for your approval"
|
||||
msgstr "Een nieuwe pingback op dit bericht \"%s\" wacht op goedkeuring"
|
||||
|
||||
#: co-authors-plus.php:1344
|
||||
msgid "Pingback excerpt: "
|
||||
msgstr "Pingback fragment:"
|
||||
|
||||
#: co-authors-plus.php:1347
|
||||
msgid "A new comment on the post \"%s\" is waiting for your approval"
|
||||
msgstr "Een nieuwe reactie op dit bericht \"%s\" wacht op goedkeuring"
|
||||
|
||||
#: co-authors-plus.php:1357
|
||||
msgid "Approve it: %s"
|
||||
msgstr "Goedkeuren: %s"
|
||||
|
||||
#: co-authors-plus.php:1364
|
||||
msgid "Currently %s comment is waiting for approval. Please visit the moderation panel:"
|
||||
msgid_plural "Currently %s comments are waiting for approval. Please visit the moderation panel:"
|
||||
msgstr[0] "Er wacht momenteel %s reactie op goedkeuring. Bezoek het moderatiepaneel:"
|
||||
msgstr[1] "Er wachten momenteel %s reacties op goedkeuring. Bezoek het moderatiepaneel:"
|
||||
|
||||
#: co-authors-plus.php:1368
|
||||
msgid "[%1$s] Please moderate: \"%2$s\""
|
||||
msgstr "[%1$s] Alsjeblieft modereren: \"%2$s\""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:77
|
||||
msgid "Guest Author"
|
||||
msgstr "Gastauteur"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:78
|
||||
msgid "Guest Authors"
|
||||
msgstr "Gastauteurs"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:79
|
||||
msgid "All Guest Authors"
|
||||
msgstr "Alle Gastauteurs"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:80
|
||||
msgid "Add New Guest Author"
|
||||
msgstr "Een nieuwe gastauteur toevoegen"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:81
|
||||
msgid "Edit Guest Author"
|
||||
msgstr "Gastauteur bewerken"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:82
|
||||
msgid "New Guest Author"
|
||||
msgstr "Nieuwe Gastauteur"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:83
|
||||
msgid "View Guest Author"
|
||||
msgstr "Gastauteur bekijken"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:84
|
||||
msgid "Search Guest Authors"
|
||||
msgstr "Gastauteur zoeken"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:85
|
||||
msgid "No guest authors found"
|
||||
msgstr "Geen gastauteurs gevonden"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:86
|
||||
msgid "No guest authors found in Trash"
|
||||
msgstr "Geen gastauteurs gevonden in de prullebak"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:87
|
||||
msgid "Update Guest Author"
|
||||
msgstr "Gastauteur bijwerken"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:88
|
||||
#: php/class-coauthors-guest-authors.php:97
|
||||
msgctxt "co-authors-plus"
|
||||
msgid "Add New"
|
||||
msgstr "Toevoegen"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:153
|
||||
#: php/class-coauthors-guest-authors.php:159
|
||||
msgid "Guest author updated. <a href=\"%s\">View profile</a>"
|
||||
msgstr "Gastauteur bewerkt. <a href=\"%s\">Bekijk profiel</a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:154
|
||||
msgid "Custom field updated."
|
||||
msgstr "veld bewerkt."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:155
|
||||
msgid "Custom field deleted."
|
||||
msgstr "Veld verwijderd"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:156
|
||||
msgid "Guest author updated."
|
||||
msgstr "Gastauteur bewerkt."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:158
|
||||
msgid "Guest author restored to revision from %s"
|
||||
msgstr "Gastauteur hersteld revisie van %s"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:160
|
||||
msgid "Guest author saved."
|
||||
msgstr "Gastauteur bewaard"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:161
|
||||
msgid "Guest author submitted. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr "Gastauteur toegevoegd. <a target=\"_blank\" href=\"%s\">Bekijk profiel</a> "
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:162
|
||||
msgid "Guest author scheduled for: <strong>%1$s</strong>. <a target=\"_blank\" href=\"%2$s\">Preview profile</a>"
|
||||
msgstr "Gastauteur gepland ü <strong>%1$s</strong>. <a target=\"_blank\" href=\"%2$s\">Bekijk profiel</a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:164
|
||||
msgid "M j, Y @ G:i"
|
||||
msgstr "M j, Y @ G:i"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:165
|
||||
msgid "Guest author updated. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr "Gastauteur bewerkt. <a target=\"_blank\" href=\"%s\">Bekijk profiel</a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:182
|
||||
#: php/class-coauthors-guest-authors.php:215
|
||||
#: php/class-coauthors-guest-authors.php:430
|
||||
msgid "Doin' something fishy, huh?"
|
||||
msgstr "Ben je iets raars aan het doen?"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:185
|
||||
#: php/class-coauthors-guest-authors.php:219
|
||||
msgid "You don't have permission to perform this action."
|
||||
msgstr "Je hebt geen rechten om deze actie uit te voeren."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:224
|
||||
#: php/class-coauthors-guest-authors.php:435
|
||||
msgid "Guest author can't be deleted because it doesn't exist."
|
||||
msgstr "Deze gastauteur kan niet worden verwijderd omdat deze niet bestaat."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:238
|
||||
msgid "Co-author does not exists. Try again?"
|
||||
msgstr "Co-auteur bestaat niet. Probeer het nogmaals"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:246
|
||||
msgid "Please make sure to pick an option."
|
||||
msgstr "Kies een optie."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:386
|
||||
msgid "Guest author deleted."
|
||||
msgstr " Gastauteur verwijderd"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:410
|
||||
msgid "Save"
|
||||
msgstr "Bewaren"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:411
|
||||
msgid "Unique Slug"
|
||||
msgstr "Unieke Slug"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:413
|
||||
msgid "Name"
|
||||
msgstr "Naam"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:414
|
||||
msgid "Contact Info"
|
||||
msgstr "Contact Informatie"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:439
|
||||
msgid "Delete %s"
|
||||
msgstr "Verwijderen %s"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:440
|
||||
msgid "You have specified this guest author for deletion:"
|
||||
msgstr "Je heb deze gastauteur geselecteerd om te verwijderen"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:442
|
||||
msgid "What should be done with posts assigned to this guest author?"
|
||||
msgstr "Wat moet er met de berichten gebeuren die aan deze gastauteur zijn gekoppeld"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:443
|
||||
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."
|
||||
msgstr "Als je gastauteur en al zijn berichten wilt verwijderen dan moet je eerst de berichten verwijderen en dan de gastauteur."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:452
|
||||
msgid "Reassign to another co-author:"
|
||||
msgstr "Toewijzen aan een andere co-auteur:"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:458
|
||||
msgid "Leave posts assigned to the mapped user, %s."
|
||||
msgstr "Laat berichten toegewezen aan de verbonden gebruiker "
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:463
|
||||
msgid "Remove byline from posts (but leave each post in its current status)."
|
||||
msgstr "Verwijder de bijzin van berichten (maar behoud de status van elk bericht)"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:466
|
||||
msgid "Confirm Deletion"
|
||||
msgstr "Bevestig verwijdering"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:536
|
||||
msgid "WordPress User Mapping"
|
||||
msgstr "WordPress gebruikersverbinding"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:538
|
||||
msgid "-- Not mapped --"
|
||||
msgstr "– Niet verbonden –"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:651
|
||||
msgid "Guest authors cannot be created without display names."
|
||||
msgstr "Gastauteur kan niet worden aangemaakt zonder de beeldschermnaam."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:658
|
||||
msgid "Guest authors cannot be created with the same user_login value as a user. Try creating a profile from the user instead.
|
||||
msgstr "Gastauteur kan niet worden aangemaakt met dezelfde login naam als de gebruiker. Maak inplaats daarvan een profiel aan voor de gebruiker"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:663
|
||||
msgid "Display name conflicts with another guest author display name."
|
||||
msgstr "De beelschermnaam geeft een conflict met de gastauteur beeldschermnaam"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:829
|
||||
#: php/class-coauthors-wp-list-table.php:144
|
||||
msgid "First Name"
|
||||
msgstr "Voornaam"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:834
|
||||
#: php/class-coauthors-wp-list-table.php:145
|
||||
msgid "Last Name"
|
||||
msgstr "Achternaam"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:839
|
||||
msgid "Slug"
|
||||
msgstr "Slug"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:846
|
||||
#: php/class-coauthors-wp-list-table.php:146
|
||||
msgid "E-mail"
|
||||
msgstr "E-mail"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:851
|
||||
#: php/class-coauthors-wp-list-table.php:147
|
||||
msgid "Linked Account"
|
||||
msgstr "Verbonden Account"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:856
|
||||
msgid "Website"
|
||||
msgstr "Website"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:861
|
||||
msgid "AIM"
|
||||
msgstr "AIM"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:866
|
||||
msgid "Yahoo IM"
|
||||
msgstr "Yahoo IM"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:871
|
||||
msgid "Jabber / Google Talk"
|
||||
msgstr "Jabber / Google Talk"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:876
|
||||
msgid "Biographical Info"
|
||||
msgstr "Biografie Informatie"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1006
|
||||
msgid "%s is a required field"
|
||||
msgstr "%s is een verplicht veld"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1012
|
||||
msgid "user_login cannot duplicate existing guest author or mapped user"
|
||||
msgstr "user_login kan niet worden gedupliceert met de bestaande gastauteur of verbonden gebruiker"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1057
|
||||
msgid "Guest author does not exist"
|
||||
msgstr "Gastauteur bestaat niet"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1069
|
||||
msgid "Reassignment co-author does not exist"
|
||||
msgstr "Deze co-auteur bestaat niet"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1101
|
||||
msgid "No user exists with that ID"
|
||||
msgstr "Er bestaat geen gebruiker met deze ID"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1158
|
||||
msgid "Edit Profile"
|
||||
msgstr "Bewerk Profiel"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1166
|
||||
msgid "Create Profile"
|
||||
msgstr "Profiel aanmaken"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:19
|
||||
msgid "Co-Authors"
|
||||
msgstr "Co-Auteurs"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:20
|
||||
msgid "Co-Author"
|
||||
msgstr "Co-Auteur"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:81
|
||||
msgid "Show all"
|
||||
msgstr "Bekijk alles"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:82
|
||||
msgid "With linked account"
|
||||
msgstr "Met verbonden Account"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:83
|
||||
msgid "Without linked account"
|
||||
msgstr "Zonder verbonden account"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:135
|
||||
msgid "No matching guest authors were found."
|
||||
msgstr "Er zijn geen matches tussen gastauteurs gevonden."
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:257
|
||||
msgid "Filter"
|
||||
msgstr "Filter"
|
||||
|
||||
#: php/class-wp-cli.php:153
|
||||
msgid "Please specify a valid user_login"
|
||||
msgstr "Geef een geldige user_login op"
|
||||
|
||||
#: php/class-wp-cli.php:156
|
||||
msgid "Please specify a valid co-author login"
|
||||
msgstr "Geef een geldige co-auteur login op"
|
||||
|
||||
#: php/class-wp-cli.php:163
|
||||
msgid "Skipping - Post #%d already has co-authors assigned: %s"
|
||||
msgstr "&Sla over- Bericht #%d heeft al co-auteurs: %s"
|
||||
|
||||
#: php/class-wp-cli.php:168
|
||||
msgid "Updating - Adding %s's byline to post #%d"
|
||||
msgstr "Updaten - %s's bijzin toevoegen op bericht #%d"
|
||||
|
||||
#: php/class-wp-cli.php:173
|
||||
msgid "All done! %d posts were affected."
|
||||
msgstr "Klaart! %d berichten zijn aangepast."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:475
|
||||
msgid "Add New"
|
||||
msgstr "Voeg nieuwe toe"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:206
|
||||
msgid "Delete"
|
||||
msgstr "Verwijderen"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:823
|
||||
#: php/class-coauthors-wp-list-table.php:143
|
||||
msgid "Display Name"
|
||||
msgstr "Beeldschermnaam"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:817
|
||||
msgid "ID"
|
||||
msgstr "ID"
|
||||
|
||||
#: template-tags.php:136
|
||||
msgid " and "
|
||||
msgstr "en"
|
||||
|
||||
#: co-authors-plus.php:342
|
||||
msgid "<strong>Note:</strong> To edit post authors, please enable javascript or use a javascript-capable browser"
|
||||
msgstr "<strong>Notitie:</strong> activeer javascript of gebruikt een browser die javascript ondersrteund om bericht auteurs te bewerken"
|
||||
|
||||
#: co-authors-plus.php:349 co-authors-plus.php:956
|
||||
msgid "Click on an author to change them. Drag to change their order. Click on <strong>Remove</strong> to remove them."
|
||||
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."
|
||||
|
||||
#: co-authors-plus.php:287 co-authors-plus.php:382 co-authors-plus.php:1158
|
||||
msgid "Authors"
|
||||
msgstr "Auteurs"
|
||||
|
||||
#: co-authors-plus.php:425 php/class-coauthors-wp-list-table.php:148
|
||||
msgid "Posts"
|
||||
msgstr "Artikelen"
|
||||
|
||||
#: co-authors-plus.php:442
|
||||
msgid "View posts by this author"
|
||||
msgstr "Bekijk berichten van deze auteur"
|
||||
|
||||
#: co-authors-plus.php:951 php/class-coauthors-wp-list-table.php:205
|
||||
msgid "Edit"
|
||||
msgstr "Bewerken"
|
||||
|
||||
#: co-authors-plus.php:952
|
||||
msgid "Remove"
|
||||
msgstr "Verwijderen"
|
||||
|
||||
#: co-authors-plus.php:953
|
||||
msgid "Are you sure you want to remove this author?"
|
||||
msgstr "Weet je zeker dat je deze auteur wilt verwijderen?"
|
||||
|
||||
#: co-authors-plus.php:954
|
||||
msgid "Click to change this author, or drag to change their position"
|
||||
msgstr "Klik om deze auteur te bewerken of sleep om de positie aan te passen"
|
||||
|
||||
#: co-authors-plus.php:955
|
||||
msgid "Search for an author"
|
||||
msgstr "Zoek voor een auteur"
|
||||
|
||||
#: template-tags.php:82
|
||||
msgid "No post ID provided for CoAuthorsIterator constructor. Are you not in a loop or is $post not set?"
|
||||
msgstr "Geen bericht ID gevonden voor CoAuthorsIterator constructor. Is er geen $post ingesteld?"
|
||||
|
||||
#: template-tags.php:208 template-tags.php:365
|
||||
msgid "Posts by %s"
|
||||
msgstr "Artikelen van %s"
|
||||
|
||||
#: template-tags.php:257
|
||||
msgid "Visit %s’s website"
|
||||
msgstr "Bezoek %s’s website"
|
||||
|
||||
msgid "Co-Authors Plus"
|
||||
msgstr "Co-Authors Plus"
|
||||
|
||||
msgid "http://wordpress.org/extend/plugins/co-authors-plus/"
|
||||
msgstr "http://wordpress.org/extend/plugins/co-authors-plus/"
|
||||
|
||||
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."
|
||||
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"
|
||||
Binary file not shown.
@@ -0,0 +1,579 @@
|
||||
# Copyright (C) 2012 Co-Authors Plus
|
||||
# This file is distributed under the same license as the Co-Authors Plus package.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Co-Authors Plus\n"
|
||||
"Report-Msgid-Bugs-To: http://wordpress.org/tag/co-authors-plus\n"
|
||||
"POT-Creation-Date: 2014-03-17 15:59:18+00:00\n"
|
||||
"PO-Revision-Date: 2014-03-30 19:31+0200\n"
|
||||
"Last-Translator: Jurko Chervony <info@skinik.name>\n"
|
||||
"Language-Team: skinik <info@skinik.name>\n"
|
||||
"Language: ru_RU\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 1.6.4\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
||||
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
||||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
|
||||
#: co-authors-plus.php:300 co-authors-plus.php:401 co-authors-plus.php:487
|
||||
#: co-authors-plus.php:1290
|
||||
msgid "Authors"
|
||||
msgstr "Авторы"
|
||||
|
||||
#: co-authors-plus.php:362
|
||||
msgid ""
|
||||
"<strong>Note:</strong> To edit post authors, please enable javascript or use "
|
||||
"a javascript-capable browser"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:369 co-authors-plus.php:489 co-authors-plus.php:1095
|
||||
msgid ""
|
||||
"Click on an author to change them. Drag to change their order. Click on "
|
||||
"<strong>Remove</strong> to remove them."
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:449 php/class-coauthors-wp-list-table.php:148
|
||||
msgid "Posts"
|
||||
msgstr "Записи"
|
||||
|
||||
#: co-authors-plus.php:466
|
||||
msgid "View posts by this author"
|
||||
msgstr "Просмотреть все материалы автора"
|
||||
|
||||
#: co-authors-plus.php:531 co-authors-plus.php:548
|
||||
msgid "No co-author exists for that term"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1090 php/class-coauthors-wp-list-table.php:212
|
||||
msgid "Edit"
|
||||
msgstr "Редактировать"
|
||||
|
||||
#: co-authors-plus.php:1091
|
||||
msgid "Remove"
|
||||
msgstr "Удалить"
|
||||
|
||||
#: co-authors-plus.php:1092
|
||||
msgid "Are you sure you want to remove this author?"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1093
|
||||
msgid "Click to change this author, or drag to change their position"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1094
|
||||
msgid "Search for an author"
|
||||
msgstr "Искать автора"
|
||||
|
||||
#: co-authors-plus.php:1132
|
||||
msgid "Mine"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1402
|
||||
msgid "New comment on your post \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#. translators: 1: comment author, 2: author IP, 3: author domain
|
||||
#: co-authors-plus.php:1404 co-authors-plus.php:1521
|
||||
msgid "Author : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1405 co-authors-plus.php:1522
|
||||
msgid "E-mail : %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1406 co-authors-plus.php:1416 co-authors-plus.php:1425
|
||||
#: co-authors-plus.php:1508 co-authors-plus.php:1515 co-authors-plus.php:1523
|
||||
msgid "URL : %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1407 co-authors-plus.php:1524
|
||||
msgid "Whois : http://whois.arin.net/rest/ip/%s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1408 co-authors-plus.php:1525
|
||||
msgid "Comment: "
|
||||
msgstr "Комментарий:"
|
||||
|
||||
#: co-authors-plus.php:1409
|
||||
msgid "You can see all comments on this post here: "
|
||||
msgstr ""
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1411
|
||||
msgid "[%1$s] Comment: \"%2$s\""
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1413
|
||||
msgid "New trackback on your post \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#. translators: 1: website name, 2: author IP, 3: author domain
|
||||
#. translators: 1: comment author, 2: author IP, 3: author domain
|
||||
#: co-authors-plus.php:1415 co-authors-plus.php:1424
|
||||
msgid "Website: %1$s (IP: %2$s , %3$s)"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1417 co-authors-plus.php:1426
|
||||
msgid "Excerpt: "
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1418
|
||||
msgid "You can see all trackbacks on this post here: "
|
||||
msgstr ""
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1420
|
||||
msgid "[%1$s] Trackback: \"%2$s\""
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1422
|
||||
msgid "New pingback on your post \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1427
|
||||
msgid "You can see all pingbacks on this post here: "
|
||||
msgstr ""
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1429
|
||||
msgid "[%1$s] Pingback: \"%2$s\""
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1432
|
||||
msgid "Permalink: %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1434 co-authors-plus.php:1531
|
||||
msgid "Trash it: %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1436 co-authors-plus.php:1533
|
||||
msgid "Delete it: %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1437 co-authors-plus.php:1534
|
||||
msgid "Spam it: %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1505
|
||||
msgid "A new trackback on the post \"%s\" is waiting for your approval"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1507 co-authors-plus.php:1514
|
||||
msgid "Website : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1509
|
||||
msgid "Trackback excerpt: "
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1512
|
||||
msgid "A new pingback on the post \"%s\" is waiting for your approval"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1516
|
||||
msgid "Pingback excerpt: "
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1519
|
||||
msgid "A new comment on the post \"%s\" is waiting for your approval"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1529
|
||||
msgid "Approve it: %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1536
|
||||
msgid ""
|
||||
"Currently %s comment is waiting for approval. Please visit the moderation "
|
||||
"panel:"
|
||||
msgid_plural ""
|
||||
"Currently %s comments are waiting for approval. Please visit the moderation "
|
||||
"panel:"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: co-authors-plus.php:1540
|
||||
msgid "[%1$s] Please moderate: \"%2$s\""
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:80
|
||||
msgid "Guest Author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:81
|
||||
msgid "Guest Authors"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:82
|
||||
msgid "All Guest Authors"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:83
|
||||
msgid "Add New Guest Author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:84
|
||||
msgid "Edit Guest Author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:85
|
||||
msgid "New Guest Author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:86
|
||||
msgid "View Guest Author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:87
|
||||
msgid "Search Guest Authors"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:88
|
||||
msgid "No guest authors found"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:89
|
||||
msgid "No guest authors found in Trash"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:90
|
||||
msgid "Update Guest Author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:91
|
||||
msgid "About the guest author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:100
|
||||
msgctxt "guest author"
|
||||
msgid "Add New"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:156
|
||||
#: php/class-coauthors-guest-authors.php:162
|
||||
msgid "Guest author updated. <a href=\"%s\">View profile</a>"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:157
|
||||
msgid "Custom field updated."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:158
|
||||
msgid "Custom field deleted."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:159
|
||||
msgid "Guest author updated."
|
||||
msgstr ""
|
||||
|
||||
#. translators: %s: date and time of the revision
|
||||
#: php/class-coauthors-guest-authors.php:161
|
||||
msgid "Guest author restored to revision from %s"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:163
|
||||
msgid "Guest author saved."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:164
|
||||
msgid ""
|
||||
"Guest author submitted. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:165
|
||||
msgid ""
|
||||
"Guest author scheduled for: <strong>%1$s</strong>. <a target=\"_blank\" href="
|
||||
"\"%2$s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
|
||||
#. translators: Publish box date format, see http:php.net/date
|
||||
#: php/class-coauthors-guest-authors.php:167
|
||||
msgid "M j, Y @ G:i"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:168
|
||||
msgid ""
|
||||
"Guest author updated. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:185
|
||||
#: php/class-coauthors-guest-authors.php:218
|
||||
#: php/class-coauthors-guest-authors.php:437
|
||||
msgid "Doin' something fishy, huh?"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:188
|
||||
#: php/class-coauthors-guest-authors.php:222
|
||||
msgid "You don't have permission to perform this action."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:227
|
||||
#: php/class-coauthors-guest-authors.php:442
|
||||
msgid "Guest author can't be deleted because it doesn't exist."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:241
|
||||
msgid "Co-author does not exists. Try again?"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:249
|
||||
msgid "Please make sure to pick an option."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:393
|
||||
msgid "Guest author deleted."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:417
|
||||
msgid "Save"
|
||||
msgstr "Сохранить"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:418
|
||||
msgid "Unique Slug"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:420
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:421
|
||||
msgid "Contact Info"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:446
|
||||
msgid "Delete %s"
|
||||
msgstr "Удалить %s"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:447
|
||||
msgid "You have specified this guest author for deletion:"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:449
|
||||
msgid "What should be done with posts assigned to this guest author?"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:450
|
||||
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."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:459
|
||||
msgid "Reassign to another co-author:"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:465
|
||||
msgid "Leave posts assigned to the mapped user, %s."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:470
|
||||
msgid "Remove byline from posts (but leave each post in its current status)."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:473
|
||||
msgid "Confirm Deletion"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:482
|
||||
msgid "Add New"
|
||||
msgstr "Добавить нового"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:543
|
||||
msgid "WordPress User Mapping"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:545
|
||||
msgid "-- Not mapped --"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:679
|
||||
#: php/class-coauthors-guest-authors.php:688
|
||||
msgid "Guest authors cannot be created without display names."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:697
|
||||
msgid ""
|
||||
"Guest authors cannot be created with the same user_login value as a user. "
|
||||
"Try creating a profile from the user on the Manage Users listing instead."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:702
|
||||
msgid "Display name conflicts with another guest author display name."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:896
|
||||
msgid "ID"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:903
|
||||
#: php/class-coauthors-wp-list-table.php:143
|
||||
msgid "Display Name"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:909
|
||||
#: php/class-coauthors-wp-list-table.php:144
|
||||
msgid "First Name"
|
||||
msgstr "Имя"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:914
|
||||
#: php/class-coauthors-wp-list-table.php:145
|
||||
msgid "Last Name"
|
||||
msgstr "Фамилия"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:919
|
||||
msgid "Slug"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:926
|
||||
#: php/class-coauthors-wp-list-table.php:146
|
||||
msgid "E-mail"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:932
|
||||
#: php/class-coauthors-wp-list-table.php:147
|
||||
msgid "Linked Account"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:937
|
||||
msgid "Website"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:943
|
||||
msgid "AIM"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:948
|
||||
msgid "Yahoo IM"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:953
|
||||
msgid "Jabber / Google Talk"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:958
|
||||
msgid "Biographical Info"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1122
|
||||
msgid "%s is a required field"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1128
|
||||
msgid "user_login cannot duplicate existing guest author or mapped user"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1173
|
||||
msgid "Guest author does not exist"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1185
|
||||
msgid "Reassignment co-author does not exist"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1217
|
||||
msgid "No user exists with that ID"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1275
|
||||
msgid "Edit Profile"
|
||||
msgstr "Редактировать профиль"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1284
|
||||
msgid "Create Profile"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:19
|
||||
msgid "Co-Authors"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:20
|
||||
msgid "Co-Author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:81
|
||||
msgid "Show all"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:82
|
||||
msgid "With linked account"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:83
|
||||
msgid "Without linked account"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:135
|
||||
msgid "No matching guest authors were found."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:215
|
||||
msgid "Delete"
|
||||
msgstr "Удалить"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:217
|
||||
msgid "View Posts"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:267
|
||||
msgid "Filter"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-wp-cli.php:220
|
||||
msgid "Please specify a valid user_login"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-wp-cli.php:223
|
||||
msgid "Please specify a valid co-author login"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-wp-cli.php:230
|
||||
msgid "Skipping - Post #%d already has co-authors assigned: %s"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-wp-cli.php:235
|
||||
msgid "Updating - Adding %s's byline to post #%d"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-wp-cli.php:240
|
||||
msgid "All done! %d posts were affected."
|
||||
msgstr ""
|
||||
|
||||
#: template-tags.php:79
|
||||
msgid ""
|
||||
"No post ID provided for CoAuthorsIterator constructor. Are you not in a loop "
|
||||
"or is $post not set?"
|
||||
msgstr ""
|
||||
|
||||
#: template-tags.php:133
|
||||
msgid " and "
|
||||
msgstr " и "
|
||||
|
||||
#: template-tags.php:233 template-tags.php:468
|
||||
msgid "Posts by %s"
|
||||
msgstr "Материалы автора %s"
|
||||
|
||||
#: template-tags.php:350
|
||||
msgid "Visit %s’s website"
|
||||
msgstr ""
|
||||
|
||||
#. Plugin Name of the plugin/theme
|
||||
msgid "Co-Authors Plus"
|
||||
msgstr ""
|
||||
|
||||
#. Plugin URI of the plugin/theme
|
||||
msgid "http://wordpress.org/extend/plugins/co-authors-plus/"
|
||||
msgstr ""
|
||||
|
||||
#. Description of the plugin/theme
|
||||
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."
|
||||
msgstr ""
|
||||
|
||||
#. Author of the plugin/theme
|
||||
msgid "Mohammad Jangda, Daniel Bachhuber, Automattic"
|
||||
msgstr ""
|
||||
Binary file not shown.
@@ -0,0 +1,602 @@
|
||||
# Copyright (C) 2012 Co-Authors Plus
|
||||
# This file is distributed under the same license as the Co-Authors Plus package.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Co-Authors Plus 3.0.1-working\n"
|
||||
"Report-Msgid-Bugs-To: http://wordpress.org/tag/co-authors-plus\n"
|
||||
"POT-Creation-Date: 2012-11-21 21:17:39+00:00\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"PO-Revision-Date: 2013-10-05 23:20+0100\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"X-Generator: Poedit 1.5.7\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: co-authors-plus.php:287 co-authors-plus.php:382 co-authors-plus.php:1158
|
||||
msgid "Authors"
|
||||
msgstr "Författare"
|
||||
|
||||
#: co-authors-plus.php:342
|
||||
msgid ""
|
||||
"<strong>Note:</strong> To edit post authors, please enable javascript or use "
|
||||
"a javascript-capable browser"
|
||||
msgstr ""
|
||||
"<strong>Observera:</strong> För att editera författare, slå på javascript "
|
||||
"eller använd en javascript-kapabel webbläsare"
|
||||
|
||||
#: co-authors-plus.php:349 co-authors-plus.php:956
|
||||
msgid ""
|
||||
"Click on an author to change them. Drag to change their order. Click on "
|
||||
"<strong>Remove</strong> to remove them."
|
||||
msgstr ""
|
||||
"Klicka på författare för att ändra dem. Drag för att ändra ordning på dem. "
|
||||
"Klicka på <strong>Ta bort</strong> för att ta bort dem."
|
||||
|
||||
#: co-authors-plus.php:425 php/class-coauthors-wp-list-table.php:148
|
||||
msgid "Posts"
|
||||
msgstr "Inlägg"
|
||||
|
||||
#: co-authors-plus.php:442
|
||||
msgid "View posts by this author"
|
||||
msgstr "Visa alla inlägg av denna författare"
|
||||
|
||||
#: co-authors-plus.php:481
|
||||
msgid "No co-author exists for that term"
|
||||
msgstr "Inga medförfattare existerar för den termen"
|
||||
|
||||
#: co-authors-plus.php:951 php/class-coauthors-wp-list-table.php:205
|
||||
msgid "Edit"
|
||||
msgstr "Editera"
|
||||
|
||||
#: co-authors-plus.php:952
|
||||
msgid "Remove"
|
||||
msgstr "Ta bort"
|
||||
|
||||
#: co-authors-plus.php:953
|
||||
msgid "Are you sure you want to remove this author?"
|
||||
msgstr "Är du säker att du vill ta bort denna författare?"
|
||||
|
||||
#: co-authors-plus.php:954
|
||||
msgid "Click to change this author, or drag to change their position"
|
||||
msgstr ""
|
||||
"Klicka för att ändra denna författare, eller drag för att ändra deras "
|
||||
"position"
|
||||
|
||||
#: co-authors-plus.php:955
|
||||
msgid "Search for an author"
|
||||
msgstr "Sök en författare"
|
||||
|
||||
#: co-authors-plus.php:993
|
||||
msgid "Mine"
|
||||
msgstr "Min"
|
||||
|
||||
#: co-authors-plus.php:1230
|
||||
msgid "New comment on your post \"%s\""
|
||||
msgstr "Ny kommentear på ditt inlägg \"%s\""
|
||||
|
||||
#. translators: 1: comment author, 2: author IP, 3: author domain
|
||||
#: co-authors-plus.php:1232 co-authors-plus.php:1349
|
||||
msgid "Author : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr "Författare : %1$s (IP: %2$s , %3$s)"
|
||||
|
||||
#: co-authors-plus.php:1233 co-authors-plus.php:1350
|
||||
msgid "E-mail : %s"
|
||||
msgstr "E-postadress : %s"
|
||||
|
||||
#: co-authors-plus.php:1234 co-authors-plus.php:1244 co-authors-plus.php:1253
|
||||
#: co-authors-plus.php:1336 co-authors-plus.php:1343 co-authors-plus.php:1351
|
||||
msgid "URL : %s"
|
||||
msgstr "URL : %s"
|
||||
|
||||
#: co-authors-plus.php:1235 co-authors-plus.php:1352
|
||||
msgid "Whois : http://whois.arin.net/rest/ip/%s"
|
||||
msgstr "Whois : http://whois.arin.net/rest/ip/%s"
|
||||
|
||||
#: co-authors-plus.php:1236 co-authors-plus.php:1353
|
||||
msgid "Comment: "
|
||||
msgstr "Kommentar: "
|
||||
|
||||
#: co-authors-plus.php:1237
|
||||
msgid "You can see all comments on this post here: "
|
||||
msgstr "Du kan se alla kommentarer på detta inlägg här: "
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1239
|
||||
msgid "[%1$s] Comment: \"%2$s\""
|
||||
msgstr "[%1$s] Kommentar: \"%2$s\""
|
||||
|
||||
#: co-authors-plus.php:1241
|
||||
msgid "New trackback on your post \"%s\""
|
||||
msgstr "Ny trackback på ditt inlägg \"%s\""
|
||||
|
||||
#. translators: 1: website name, 2: author IP, 3: author domain
|
||||
#. translators: 1: comment author, 2: author IP, 3: author domain
|
||||
#: co-authors-plus.php:1243 co-authors-plus.php:1252
|
||||
msgid "Website: %1$s (IP: %2$s , %3$s)"
|
||||
msgstr "Webbplats: %1$s (IP: %2$s , %3$s)"
|
||||
|
||||
#: co-authors-plus.php:1245 co-authors-plus.php:1254
|
||||
msgid "Excerpt: "
|
||||
msgstr "Undantag: "
|
||||
|
||||
#: co-authors-plus.php:1246
|
||||
msgid "You can see all trackbacks on this post here: "
|
||||
msgstr "Du kan se alla trackbacks på detta inlägg här: "
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1248
|
||||
msgid "[%1$s] Trackback: \"%2$s\""
|
||||
msgstr "[%1$s] Trackback: \"%2$s\""
|
||||
|
||||
#: co-authors-plus.php:1250
|
||||
msgid "New pingback on your post \"%s\""
|
||||
msgstr "Ny pingback på ditt inlägg \"%s\""
|
||||
|
||||
#: co-authors-plus.php:1255
|
||||
msgid "You can see all pingbacks on this post here: "
|
||||
msgstr "Du kan se alla pingbacks på detta inlägg här: "
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1257
|
||||
msgid "[%1$s] Pingback: \"%2$s\""
|
||||
msgstr "[%1$s] Pingback: \"%2$s\""
|
||||
|
||||
#: co-authors-plus.php:1260
|
||||
msgid "Permalink: %s"
|
||||
msgstr "Permanent länk: %s"
|
||||
|
||||
#: co-authors-plus.php:1262 co-authors-plus.php:1359
|
||||
msgid "Trash it: %s"
|
||||
msgstr "Kasta i papperskorgen: %s"
|
||||
|
||||
#: co-authors-plus.php:1264 co-authors-plus.php:1361
|
||||
msgid "Delete it: %s"
|
||||
msgstr "Radera det: %s"
|
||||
|
||||
#: co-authors-plus.php:1265 co-authors-plus.php:1362
|
||||
msgid "Spam it: %s"
|
||||
msgstr "Markera som spam: %s"
|
||||
|
||||
#: co-authors-plus.php:1333
|
||||
msgid "A new trackback on the post \"%s\" is waiting for your approval"
|
||||
msgstr "En ny tackback på inlägget \"%s\" väntar på ditt godkännande"
|
||||
|
||||
#: co-authors-plus.php:1335 co-authors-plus.php:1342
|
||||
msgid "Website : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr "Webbplats : %1$s (IP: %2$s , %3$s)"
|
||||
|
||||
#: co-authors-plus.php:1337
|
||||
msgid "Trackback excerpt: "
|
||||
msgstr "Trackback undantag: "
|
||||
|
||||
#: co-authors-plus.php:1340
|
||||
msgid "A new pingback on the post \"%s\" is waiting for your approval"
|
||||
msgstr "En ny pingback på inlägget \"%s\" väntar på ditt godkännande"
|
||||
|
||||
#: co-authors-plus.php:1344
|
||||
msgid "Pingback excerpt: "
|
||||
msgstr "Pingback undantag: "
|
||||
|
||||
#: co-authors-plus.php:1347
|
||||
msgid "A new comment on the post \"%s\" is waiting for your approval"
|
||||
msgstr "En ny kommentar på inlägget \"%s\" väntar på ditt godkännande"
|
||||
|
||||
#: co-authors-plus.php:1357
|
||||
msgid "Approve it: %s"
|
||||
msgstr "Godkänn det: %s"
|
||||
|
||||
#: co-authors-plus.php:1364
|
||||
msgid ""
|
||||
"Currently %s comment is waiting for approval. Please visit the moderation "
|
||||
"panel:"
|
||||
msgid_plural ""
|
||||
"Currently %s comments are waiting for approval. Please visit the moderation "
|
||||
"panel:"
|
||||
msgstr[0] ""
|
||||
"Just nu väntar %s kommentar på godkännande. Besök moderationspanelen:"
|
||||
msgstr[1] ""
|
||||
"Just nu väntar %s kommentarer på godkännande. Besök moderationspanelen:"
|
||||
|
||||
#: co-authors-plus.php:1368
|
||||
msgid "[%1$s] Please moderate: \"%2$s\""
|
||||
msgstr "[%1$s] Moderera: \"%2$s\""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:77
|
||||
msgid "Guest Author"
|
||||
msgstr "Gästförfattare"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:78
|
||||
msgid "Guest Authors"
|
||||
msgstr "Gästförfattare"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:79
|
||||
msgid "All Guest Authors"
|
||||
msgstr "Alla gästförfattare"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:80
|
||||
msgid "Add New Guest Author"
|
||||
msgstr "Ny gästförfattare"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:81
|
||||
msgid "Edit Guest Author"
|
||||
msgstr "Editera gästförfattare"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:82
|
||||
msgid "New Guest Author"
|
||||
msgstr "Ny gästförfattare"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:83
|
||||
msgid "View Guest Author"
|
||||
msgstr "Visa gästförfattare"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:84
|
||||
msgid "Search Guest Authors"
|
||||
msgstr "Sök gästförfattare"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:85
|
||||
msgid "No guest authors found"
|
||||
msgstr "Inga gästförfattare funna"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:86
|
||||
msgid "No guest authors found in Trash"
|
||||
msgstr "Inga gästförfattare funna i papperskorgen"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:87
|
||||
msgid "Update Guest Author"
|
||||
msgstr "Uppdatera gästförfattare"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:88
|
||||
msgid "About the guest author"
|
||||
msgstr "Om gästförfattaren"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:97
|
||||
msgctxt "co-authors-plus"
|
||||
msgid "Add New"
|
||||
msgstr "Lägg till ny"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:153
|
||||
#: php/class-coauthors-guest-authors.php:159
|
||||
msgid "Guest author updated. <a href=\"%s\">View profile</a>"
|
||||
msgstr "Gästförfattare uppdaterad. <a href=\"%s\">Visa profil</a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:154
|
||||
msgid "Custom field updated."
|
||||
msgstr "Custom-fält uppdaterat."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:155
|
||||
msgid "Custom field deleted."
|
||||
msgstr "Custom-fält raderat."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:156
|
||||
msgid "Guest author updated."
|
||||
msgstr "Gästförfattare uppdaterat."
|
||||
|
||||
#. translators: %s: date and time of the revision
|
||||
#: php/class-coauthors-guest-authors.php:158
|
||||
msgid "Guest author restored to revision from %s"
|
||||
msgstr "Gästförfattare återställd till revision från %s"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:160
|
||||
msgid "Guest author saved."
|
||||
msgstr "Gästförfattare sparad."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:161
|
||||
msgid ""
|
||||
"Guest author submitted. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
"Gästförfattare inskickad. <a target=\"_blank\" href=\"%s\">Förhandsvisa "
|
||||
"profil</a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:162
|
||||
msgid ""
|
||||
"Guest author scheduled for: <strong>%1$s</strong>. <a target=\"_blank\" href="
|
||||
"\"%2$s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
"Gästförfattare schemalagd för: <strong>%1$s</strong>. <a target=\"_blank\" "
|
||||
"href=\"%2$s\">Förhandsvisa profil</a>"
|
||||
|
||||
#. translators: Publish box date format, see http:php.net/date
|
||||
#: php/class-coauthors-guest-authors.php:164
|
||||
msgid "M j, Y @ G:i"
|
||||
msgstr "M j, Y @ G:i"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:165
|
||||
msgid ""
|
||||
"Guest author updated. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
"Gästförfattare uppdaterad. <a target=\"_blank\" href=\"%s\">Förhandsvisa "
|
||||
"profil</a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:182
|
||||
#: php/class-coauthors-guest-authors.php:215
|
||||
#: php/class-coauthors-guest-authors.php:430
|
||||
msgid "Doin' something fishy, huh?"
|
||||
msgstr "Nu gör du allt något skumt, eller hur?"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:185
|
||||
#: php/class-coauthors-guest-authors.php:219
|
||||
msgid "You don't have permission to perform this action."
|
||||
msgstr "Du har inte behörighet att utföra denna åtgärd."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:224
|
||||
#: php/class-coauthors-guest-authors.php:435
|
||||
msgid "Guest author can't be deleted because it doesn't exist."
|
||||
msgstr "Gästförfattare kan inte raderas för att den inte existerar."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:238
|
||||
msgid "Co-author does not exists. Try again?"
|
||||
msgstr "Gästförfattare existerar inte. Försök igen?"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:246
|
||||
msgid "Please make sure to pick an option."
|
||||
msgstr "Var snäll och gör ett val."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:386
|
||||
msgid "Guest author deleted."
|
||||
msgstr "Gästförfattare raderad."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:410
|
||||
msgid "Save"
|
||||
msgstr "Spara"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:411
|
||||
msgid "Unique Slug"
|
||||
msgstr "Unik Slug"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:413
|
||||
msgid "Name"
|
||||
msgstr "Namn"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:414
|
||||
msgid "Contact Info"
|
||||
msgstr "Kontaktinformation"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:439
|
||||
msgid "Delete %s"
|
||||
msgstr "Radera %s"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:440
|
||||
msgid "You have specified this guest author for deletion:"
|
||||
msgstr "Du har inte angivit denna gästförfattare för radering:"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:442
|
||||
msgid "What should be done with posts assigned to this guest author?"
|
||||
msgstr "Vad ska göras med inlägg tilldelade denna gästförfattare?"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:443
|
||||
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."
|
||||
msgstr ""
|
||||
"Observera: Om du vill radera gästförfattaren och alla tillhörande inlägg så "
|
||||
"borde du först radera inläggen och sedan återvända och radera "
|
||||
"gästförfattaren."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:452
|
||||
msgid "Reassign to another co-author:"
|
||||
msgstr "Tilldela en annan gästförfattare:"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:458
|
||||
msgid "Leave posts assigned to the mapped user, %s."
|
||||
msgstr "Lämna inlägg tilldelade till den kopplade användaren, %s."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:463
|
||||
msgid "Remove byline from posts (but leave each post in its current status)."
|
||||
msgstr ""
|
||||
"Ta bort signatur från inlägg (men låt varje inlägg behålla sin nuvarande "
|
||||
"status)."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:466
|
||||
msgid "Confirm Deletion"
|
||||
msgstr "Bekräfta radering"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:475
|
||||
msgid "Add New"
|
||||
msgstr "Lägg till ny"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:536
|
||||
msgid "WordPress User Mapping"
|
||||
msgstr "WordPress Användarkoppling"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:538
|
||||
msgid "-- Not mapped --"
|
||||
msgstr "-- Inte kopplad --"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:651
|
||||
msgid "Guest authors cannot be created without display names."
|
||||
msgstr "Gästförfattare kan inte skapas utan visningsnamn."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:658
|
||||
msgid ""
|
||||
"Guest authors cannot be created with the same user_login value as a user. "
|
||||
"Try creating a profile from the user instead"
|
||||
msgstr ""
|
||||
"Gästförfattare kan inte skapas med samma \"user_login\"-värde som en "
|
||||
"användare. Försök skapa en profil utifrån den användaren istället"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:663
|
||||
msgid "Display name conflicts with another guest author display name."
|
||||
msgstr ""
|
||||
"Visningsnamn skapar konflikt med en annan gästförfattares visningsnamn."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:817
|
||||
msgid "ID"
|
||||
msgstr "Id"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:823
|
||||
#: php/class-coauthors-wp-list-table.php:143
|
||||
msgid "Display Name"
|
||||
msgstr "Visningsnamn"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:829
|
||||
#: php/class-coauthors-wp-list-table.php:144
|
||||
msgid "First Name"
|
||||
msgstr "Förnamn"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:834
|
||||
#: php/class-coauthors-wp-list-table.php:145
|
||||
msgid "Last Name"
|
||||
msgstr "Efternamn"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:839
|
||||
msgid "Slug"
|
||||
msgstr "Slug"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:846
|
||||
#: php/class-coauthors-wp-list-table.php:146
|
||||
msgid "E-mail"
|
||||
msgstr "E-postadress"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:851
|
||||
#: php/class-coauthors-wp-list-table.php:147
|
||||
msgid "Linked Account"
|
||||
msgstr "Länkat konto"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:856
|
||||
msgid "Website"
|
||||
msgstr "Webbplats"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:861
|
||||
msgid "AIM"
|
||||
msgstr "AIM"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:866
|
||||
msgid "Yahoo IM"
|
||||
msgstr "YahooIM"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:871
|
||||
msgid "Jabber / Google Talk"
|
||||
msgstr "Jabber / Google Talk"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:876
|
||||
msgid "Biographical Info"
|
||||
msgstr "Information"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1006
|
||||
msgid "%s is a required field"
|
||||
msgstr "%s är ett obligatoriskt fält"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1012
|
||||
msgid "user_login cannot duplicate existing guest author or mapped user"
|
||||
msgstr ""
|
||||
"\"user_login\" kan inte vara det samma som en existerande gästförfattare "
|
||||
"eller kopplad användare"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1057
|
||||
msgid "Guest author does not exist"
|
||||
msgstr "Gästförfattare existerar inte"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1069
|
||||
msgid "Reassignment co-author does not exist"
|
||||
msgstr "Tilldelad gästförfattare existerar inte"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1101
|
||||
msgid "No user exists with that ID"
|
||||
msgstr "Ingen användare med detta Id existerar"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1158
|
||||
msgid "Edit Profile"
|
||||
msgstr "Editera profil"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1166
|
||||
msgid "Create Profile"
|
||||
msgstr "Skapa profil"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:19
|
||||
msgid "Co-Authors"
|
||||
msgstr "Medförfattare"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:20
|
||||
msgid "Co-Author"
|
||||
msgstr "Medförfattare"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:81
|
||||
msgid "Show all"
|
||||
msgstr "Visa alla"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:82
|
||||
msgid "With linked account"
|
||||
msgstr "Med länkat konto"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:83
|
||||
msgid "Without linked account"
|
||||
msgstr "Utan länkat konto"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:135
|
||||
msgid "No matching guest authors were found."
|
||||
msgstr "Inga matchande gästförfattare kunde hittas."
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:206
|
||||
msgid "Delete"
|
||||
msgstr "Radera"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:207
|
||||
msgid "View Posts"
|
||||
msgstr "Visa inlägg"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:257
|
||||
msgid "Filter"
|
||||
msgstr "Filtrera"
|
||||
|
||||
#: php/class-wp-cli.php:153
|
||||
msgid "Please specify a valid user_login"
|
||||
msgstr "Ange ett giltigt \"user_login\"-värde"
|
||||
|
||||
#: php/class-wp-cli.php:156
|
||||
msgid "Please specify a valid co-author login"
|
||||
msgstr "Ange ett giltigt medförfattare alias"
|
||||
|
||||
#: php/class-wp-cli.php:163
|
||||
msgid "Skipping - Post #%d already has co-authors assigned: %s"
|
||||
msgstr "Hoppar över - Inlägg #%d har redan medförfattare tilldelade: %s"
|
||||
|
||||
#: php/class-wp-cli.php:168
|
||||
msgid "Updating - Adding %s's byline to post #%d"
|
||||
msgstr "Uppdaterar - Lägger till signatur för %s till inlägg #%d"
|
||||
|
||||
#: php/class-wp-cli.php:173
|
||||
msgid "All done! %d posts were affected."
|
||||
msgstr "Allt klart! %d inlägg berördes."
|
||||
|
||||
#: template-tags.php:82
|
||||
msgid ""
|
||||
"No post ID provided for CoAuthorsIterator constructor. Are you not in a loop "
|
||||
"or is $post not set?"
|
||||
msgstr ""
|
||||
"Inga inläggs-id skickades med till \"CoAuthorsIterator\"'s constructor. Är "
|
||||
"du inte i en llop eller är inte $post satt?"
|
||||
|
||||
#: template-tags.php:136
|
||||
msgid " and "
|
||||
msgstr " och "
|
||||
|
||||
#: template-tags.php:208 template-tags.php:365
|
||||
msgid "Posts by %s"
|
||||
msgstr "Inlägg av %s"
|
||||
|
||||
#: template-tags.php:257
|
||||
msgid "Visit %s’s website"
|
||||
msgstr "Besök %s’s webbplats"
|
||||
|
||||
#. Plugin Name of the plugin/theme
|
||||
msgid "Co-Authors Plus"
|
||||
msgstr "Co-Authors Plus"
|
||||
|
||||
#. Plugin URI of the plugin/theme
|
||||
msgid "http://wordpress.org/extend/plugins/co-authors-plus/"
|
||||
msgstr "http://wordpress.org/extend/plugins/co-authors-plus/"
|
||||
|
||||
#. Description of the plugin/theme
|
||||
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."
|
||||
msgstr ""
|
||||
"Tillåter att ett inlägg tilldelas flera författare. Detta tillägg är en "
|
||||
"vidareutvecklad version av \"Co-Authors\"-tillägget skrivet av Weston Ruter."
|
||||
|
||||
#. Author of the plugin/theme
|
||||
msgid "Mohammad Jangda, Daniel Bachhuber, Automattic"
|
||||
msgstr "Mohammad Jangda, Daniel Bachhuber, Automattic"
|
||||
Binary file not shown.
@@ -0,0 +1,581 @@
|
||||
# Copyright (C) 2012 Co-Authors Plus
|
||||
# This file is distributed under the same license as the Co-Authors Plus package.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Co-Authors Plus\n"
|
||||
"Report-Msgid-Bugs-To: http://wordpress.org/tag/co-authors-plus\n"
|
||||
"POT-Creation-Date: 2014-03-17 15:59:18+00:00\n"
|
||||
"PO-Revision-Date: 2014-03-30 19:29+0200\n"
|
||||
"Last-Translator: Jurko Chervony <info@skinik.name>\n"
|
||||
"Language-Team: skinik <info@skinik.name>\n"
|
||||
"Language: uk\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 1.6.4\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
||||
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
||||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Poedit-Basepath: ..\n"
|
||||
"X-Poedit-SearchPath-0: .\n"
|
||||
|
||||
#: co-authors-plus.php:300 co-authors-plus.php:401 co-authors-plus.php:487
|
||||
#: co-authors-plus.php:1290
|
||||
msgid "Authors"
|
||||
msgstr "Автори"
|
||||
|
||||
#: co-authors-plus.php:362
|
||||
msgid ""
|
||||
"<strong>Note:</strong> To edit post authors, please enable javascript or use "
|
||||
"a javascript-capable browser"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:369 co-authors-plus.php:489 co-authors-plus.php:1095
|
||||
msgid ""
|
||||
"Click on an author to change them. Drag to change their order. Click on "
|
||||
"<strong>Remove</strong> to remove them."
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:449 php/class-coauthors-wp-list-table.php:148
|
||||
msgid "Posts"
|
||||
msgstr "Публікації"
|
||||
|
||||
#: co-authors-plus.php:466
|
||||
msgid "View posts by this author"
|
||||
msgstr "Переглянути всі матеріали автора"
|
||||
|
||||
#: co-authors-plus.php:531 co-authors-plus.php:548
|
||||
msgid "No co-author exists for that term"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1090 php/class-coauthors-wp-list-table.php:212
|
||||
msgid "Edit"
|
||||
msgstr "Редагувати"
|
||||
|
||||
#: co-authors-plus.php:1091
|
||||
msgid "Remove"
|
||||
msgstr "Видалити"
|
||||
|
||||
#: co-authors-plus.php:1092
|
||||
msgid "Are you sure you want to remove this author?"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1093
|
||||
msgid "Click to change this author, or drag to change their position"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1094
|
||||
msgid "Search for an author"
|
||||
msgstr "Шукати автора"
|
||||
|
||||
#: co-authors-plus.php:1132
|
||||
msgid "Mine"
|
||||
msgstr "Моє"
|
||||
|
||||
#: co-authors-plus.php:1402
|
||||
msgid "New comment on your post \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#. translators: 1: comment author, 2: author IP, 3: author domain
|
||||
#: co-authors-plus.php:1404 co-authors-plus.php:1521
|
||||
msgid "Author : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1405 co-authors-plus.php:1522
|
||||
msgid "E-mail : %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1406 co-authors-plus.php:1416 co-authors-plus.php:1425
|
||||
#: co-authors-plus.php:1508 co-authors-plus.php:1515 co-authors-plus.php:1523
|
||||
msgid "URL : %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1407 co-authors-plus.php:1524
|
||||
msgid "Whois : http://whois.arin.net/rest/ip/%s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1408 co-authors-plus.php:1525
|
||||
msgid "Comment: "
|
||||
msgstr "Коментар:"
|
||||
|
||||
#: co-authors-plus.php:1409
|
||||
msgid "You can see all comments on this post here: "
|
||||
msgstr ""
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1411
|
||||
msgid "[%1$s] Comment: \"%2$s\""
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1413
|
||||
msgid "New trackback on your post \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#. translators: 1: website name, 2: author IP, 3: author domain
|
||||
#. translators: 1: comment author, 2: author IP, 3: author domain
|
||||
#: co-authors-plus.php:1415 co-authors-plus.php:1424
|
||||
msgid "Website: %1$s (IP: %2$s , %3$s)"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1417 co-authors-plus.php:1426
|
||||
msgid "Excerpt: "
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1418
|
||||
msgid "You can see all trackbacks on this post here: "
|
||||
msgstr ""
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1420
|
||||
msgid "[%1$s] Trackback: \"%2$s\""
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1422
|
||||
msgid "New pingback on your post \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1427
|
||||
msgid "You can see all pingbacks on this post here: "
|
||||
msgstr ""
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1429
|
||||
msgid "[%1$s] Pingback: \"%2$s\""
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1432
|
||||
msgid "Permalink: %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1434 co-authors-plus.php:1531
|
||||
msgid "Trash it: %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1436 co-authors-plus.php:1533
|
||||
msgid "Delete it: %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1437 co-authors-plus.php:1534
|
||||
msgid "Spam it: %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1505
|
||||
msgid "A new trackback on the post \"%s\" is waiting for your approval"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1507 co-authors-plus.php:1514
|
||||
msgid "Website : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1509
|
||||
msgid "Trackback excerpt: "
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1512
|
||||
msgid "A new pingback on the post \"%s\" is waiting for your approval"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1516
|
||||
msgid "Pingback excerpt: "
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1519
|
||||
msgid "A new comment on the post \"%s\" is waiting for your approval"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1529
|
||||
msgid "Approve it: %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1536
|
||||
msgid ""
|
||||
"Currently %s comment is waiting for approval. Please visit the moderation "
|
||||
"panel:"
|
||||
msgid_plural ""
|
||||
"Currently %s comments are waiting for approval. Please visit the moderation "
|
||||
"panel:"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: co-authors-plus.php:1540
|
||||
msgid "[%1$s] Please moderate: \"%2$s\""
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:80
|
||||
msgid "Guest Author"
|
||||
msgstr "Гостьовий автор"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:81
|
||||
msgid "Guest Authors"
|
||||
msgstr "Гостьові автори"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:82
|
||||
msgid "All Guest Authors"
|
||||
msgstr "Всі гостьові автори"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:83
|
||||
msgid "Add New Guest Author"
|
||||
msgstr "Додати нового гостьового автора"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:84
|
||||
msgid "Edit Guest Author"
|
||||
msgstr "Редагувати гостьового автора"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:85
|
||||
msgid "New Guest Author"
|
||||
msgstr "Новий гостьовий автор"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:86
|
||||
msgid "View Guest Author"
|
||||
msgstr "Переглянути гостьового автора"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:87
|
||||
msgid "Search Guest Authors"
|
||||
msgstr "Шукати гостьових авторів"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:88
|
||||
msgid "No guest authors found"
|
||||
msgstr "Не знайдено гостьових авторів"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:89
|
||||
msgid "No guest authors found in Trash"
|
||||
msgstr "В кошику не знайдено гостьових авторів"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:90
|
||||
msgid "Update Guest Author"
|
||||
msgstr "Оновити гостьового автора"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:91
|
||||
msgid "About the guest author"
|
||||
msgstr "Про гостьового автора"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:100
|
||||
msgctxt "guest author"
|
||||
msgid "Add New"
|
||||
msgstr "Додати нового"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:156
|
||||
#: php/class-coauthors-guest-authors.php:162
|
||||
msgid "Guest author updated. <a href=\"%s\">View profile</a>"
|
||||
msgstr "Гостьового автора оновлено. <a href=\"%s\">Переглянути</a>"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:157
|
||||
msgid "Custom field updated."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:158
|
||||
msgid "Custom field deleted."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:159
|
||||
msgid "Guest author updated."
|
||||
msgstr ""
|
||||
|
||||
#. translators: %s: date and time of the revision
|
||||
#: php/class-coauthors-guest-authors.php:161
|
||||
msgid "Guest author restored to revision from %s"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:163
|
||||
msgid "Guest author saved."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:164
|
||||
msgid ""
|
||||
"Guest author submitted. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:165
|
||||
msgid ""
|
||||
"Guest author scheduled for: <strong>%1$s</strong>. <a target=\"_blank\" href="
|
||||
"\"%2$s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
|
||||
#. translators: Publish box date format, see http:php.net/date
|
||||
#: php/class-coauthors-guest-authors.php:167
|
||||
msgid "M j, Y @ G:i"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:168
|
||||
msgid ""
|
||||
"Guest author updated. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:185
|
||||
#: php/class-coauthors-guest-authors.php:218
|
||||
#: php/class-coauthors-guest-authors.php:437
|
||||
msgid "Doin' something fishy, huh?"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:188
|
||||
#: php/class-coauthors-guest-authors.php:222
|
||||
msgid "You don't have permission to perform this action."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:227
|
||||
#: php/class-coauthors-guest-authors.php:442
|
||||
msgid "Guest author can't be deleted because it doesn't exist."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:241
|
||||
msgid "Co-author does not exists. Try again?"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:249
|
||||
msgid "Please make sure to pick an option."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:393
|
||||
msgid "Guest author deleted."
|
||||
msgstr "Гостьового автора видалено."
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:417
|
||||
msgid "Save"
|
||||
msgstr "Зберегти"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:418
|
||||
msgid "Unique Slug"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:420
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:421
|
||||
msgid "Contact Info"
|
||||
msgstr "Контактна інформація"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:446
|
||||
msgid "Delete %s"
|
||||
msgstr "Видалити %s"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:447
|
||||
msgid "You have specified this guest author for deletion:"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:449
|
||||
msgid "What should be done with posts assigned to this guest author?"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:450
|
||||
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."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:459
|
||||
msgid "Reassign to another co-author:"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:465
|
||||
msgid "Leave posts assigned to the mapped user, %s."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:470
|
||||
msgid "Remove byline from posts (but leave each post in its current status)."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:473
|
||||
msgid "Confirm Deletion"
|
||||
msgstr "Підтвердити видалення"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:482
|
||||
msgid "Add New"
|
||||
msgstr "Додати нового"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:543
|
||||
msgid "WordPress User Mapping"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:545
|
||||
msgid "-- Not mapped --"
|
||||
msgstr "-- Не визначено --"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:679
|
||||
#: php/class-coauthors-guest-authors.php:688
|
||||
msgid "Guest authors cannot be created without display names."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:697
|
||||
msgid ""
|
||||
"Guest authors cannot be created with the same user_login value as a user. "
|
||||
"Try creating a profile from the user on the Manage Users listing instead."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:702
|
||||
msgid "Display name conflicts with another guest author display name."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:896
|
||||
msgid "ID"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:903
|
||||
#: php/class-coauthors-wp-list-table.php:143
|
||||
msgid "Display Name"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:909
|
||||
#: php/class-coauthors-wp-list-table.php:144
|
||||
msgid "First Name"
|
||||
msgstr "Ім’я"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:914
|
||||
#: php/class-coauthors-wp-list-table.php:145
|
||||
msgid "Last Name"
|
||||
msgstr "Прізвище"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:919
|
||||
msgid "Slug"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:926
|
||||
#: php/class-coauthors-wp-list-table.php:146
|
||||
msgid "E-mail"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:932
|
||||
#: php/class-coauthors-wp-list-table.php:147
|
||||
msgid "Linked Account"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:937
|
||||
msgid "Website"
|
||||
msgstr "Сайт"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:943
|
||||
msgid "AIM"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:948
|
||||
msgid "Yahoo IM"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:953
|
||||
msgid "Jabber / Google Talk"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:958
|
||||
msgid "Biographical Info"
|
||||
msgstr "Опис"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1122
|
||||
msgid "%s is a required field"
|
||||
msgstr "%s — обов’язкове поле"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1128
|
||||
msgid "user_login cannot duplicate existing guest author or mapped user"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1173
|
||||
msgid "Guest author does not exist"
|
||||
msgstr "Гостьовий автор не існує"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1185
|
||||
msgid "Reassignment co-author does not exist"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1217
|
||||
msgid "No user exists with that ID"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1275
|
||||
msgid "Edit Profile"
|
||||
msgstr "Редагувати профіль"
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1284
|
||||
msgid "Create Profile"
|
||||
msgstr "Створити обліковий запис"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:19
|
||||
msgid "Co-Authors"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:20
|
||||
msgid "Co-Author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:81
|
||||
msgid "Show all"
|
||||
msgstr "Показати все"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:82
|
||||
msgid "With linked account"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:83
|
||||
msgid "Without linked account"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:135
|
||||
msgid "No matching guest authors were found."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:215
|
||||
msgid "Delete"
|
||||
msgstr "Видалити"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:217
|
||||
msgid "View Posts"
|
||||
msgstr "Переглянути мареріали"
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:267
|
||||
msgid "Filter"
|
||||
msgstr "Фільтрувати"
|
||||
|
||||
#: php/class-wp-cli.php:220
|
||||
msgid "Please specify a valid user_login"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-wp-cli.php:223
|
||||
msgid "Please specify a valid co-author login"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-wp-cli.php:230
|
||||
msgid "Skipping - Post #%d already has co-authors assigned: %s"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-wp-cli.php:235
|
||||
msgid "Updating - Adding %s's byline to post #%d"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-wp-cli.php:240
|
||||
msgid "All done! %d posts were affected."
|
||||
msgstr ""
|
||||
|
||||
#: template-tags.php:79
|
||||
msgid ""
|
||||
"No post ID provided for CoAuthorsIterator constructor. Are you not in a loop "
|
||||
"or is $post not set?"
|
||||
msgstr ""
|
||||
|
||||
#: template-tags.php:133
|
||||
msgid " and "
|
||||
msgstr " та "
|
||||
|
||||
#: template-tags.php:233 template-tags.php:468
|
||||
msgid "Posts by %s"
|
||||
msgstr "Матеріали автора %s"
|
||||
|
||||
#: template-tags.php:350
|
||||
msgid "Visit %s’s website"
|
||||
msgstr "Відвідати %s’s сайт"
|
||||
|
||||
#. Plugin Name of the plugin/theme
|
||||
msgid "Co-Authors Plus"
|
||||
msgstr ""
|
||||
|
||||
#. Plugin URI of the plugin/theme
|
||||
msgid "http://wordpress.org/extend/plugins/co-authors-plus/"
|
||||
msgstr ""
|
||||
|
||||
#. Description of the plugin/theme
|
||||
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."
|
||||
msgstr ""
|
||||
|
||||
#. Author of the plugin/theme
|
||||
msgid "Mohammad Jangda, Daniel Bachhuber, Automattic"
|
||||
msgstr ""
|
||||
@@ -0,0 +1,574 @@
|
||||
# Copyright (C) 2014 Co-Authors Plus
|
||||
# This file is distributed under the same license as the Co-Authors Plus package.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Co-Authors Plus 3.1-beta\n"
|
||||
"Report-Msgid-Bugs-To: http://wordpress.org/tag/co-authors-plus\n"
|
||||
"POT-Creation-Date: 2014-03-17 15:59:18+00:00\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"PO-Revision-Date: 2014-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
||||
#: co-authors-plus.php:300 co-authors-plus.php:401 co-authors-plus.php:487
|
||||
#: co-authors-plus.php:1290
|
||||
msgid "Authors"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:362
|
||||
msgid ""
|
||||
"<strong>Note:</strong> To edit post authors, please enable javascript or use "
|
||||
"a javascript-capable browser"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:369 co-authors-plus.php:489 co-authors-plus.php:1095
|
||||
msgid ""
|
||||
"Click on an author to change them. Drag to change their order. Click on "
|
||||
"<strong>Remove</strong> to remove them."
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:449 php/class-coauthors-wp-list-table.php:148
|
||||
msgid "Posts"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:466
|
||||
msgid "View posts by this author"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:531 co-authors-plus.php:548
|
||||
msgid "No co-author exists for that term"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1090 php/class-coauthors-wp-list-table.php:212
|
||||
msgid "Edit"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1091
|
||||
msgid "Remove"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1092
|
||||
msgid "Are you sure you want to remove this author?"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1093
|
||||
msgid "Click to change this author, or drag to change their position"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1094
|
||||
msgid "Search for an author"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1132
|
||||
msgid "Mine"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1402
|
||||
msgid "New comment on your post \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#. translators: 1: comment author, 2: author IP, 3: author domain
|
||||
#: co-authors-plus.php:1404 co-authors-plus.php:1521
|
||||
msgid "Author : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1405 co-authors-plus.php:1522
|
||||
msgid "E-mail : %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1406 co-authors-plus.php:1416 co-authors-plus.php:1425
|
||||
#: co-authors-plus.php:1508 co-authors-plus.php:1515 co-authors-plus.php:1523
|
||||
msgid "URL : %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1407 co-authors-plus.php:1524
|
||||
msgid "Whois : http://whois.arin.net/rest/ip/%s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1408 co-authors-plus.php:1525
|
||||
msgid "Comment: "
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1409
|
||||
msgid "You can see all comments on this post here: "
|
||||
msgstr ""
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1411
|
||||
msgid "[%1$s] Comment: \"%2$s\""
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1413
|
||||
msgid "New trackback on your post \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#. translators: 1: website name, 2: author IP, 3: author domain
|
||||
#. translators: 1: comment author, 2: author IP, 3: author domain
|
||||
#: co-authors-plus.php:1415 co-authors-plus.php:1424
|
||||
msgid "Website: %1$s (IP: %2$s , %3$s)"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1417 co-authors-plus.php:1426
|
||||
msgid "Excerpt: "
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1418
|
||||
msgid "You can see all trackbacks on this post here: "
|
||||
msgstr ""
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1420
|
||||
msgid "[%1$s] Trackback: \"%2$s\""
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1422
|
||||
msgid "New pingback on your post \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1427
|
||||
msgid "You can see all pingbacks on this post here: "
|
||||
msgstr ""
|
||||
|
||||
#. translators: 1: blog name, 2: post title
|
||||
#: co-authors-plus.php:1429
|
||||
msgid "[%1$s] Pingback: \"%2$s\""
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1432
|
||||
msgid "Permalink: %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1434 co-authors-plus.php:1531
|
||||
msgid "Trash it: %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1436 co-authors-plus.php:1533
|
||||
msgid "Delete it: %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1437 co-authors-plus.php:1534
|
||||
msgid "Spam it: %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1505
|
||||
msgid "A new trackback on the post \"%s\" is waiting for your approval"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1507 co-authors-plus.php:1514
|
||||
msgid "Website : %1$s (IP: %2$s , %3$s)"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1509
|
||||
msgid "Trackback excerpt: "
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1512
|
||||
msgid "A new pingback on the post \"%s\" is waiting for your approval"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1516
|
||||
msgid "Pingback excerpt: "
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1519
|
||||
msgid "A new comment on the post \"%s\" is waiting for your approval"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1529
|
||||
msgid "Approve it: %s"
|
||||
msgstr ""
|
||||
|
||||
#: co-authors-plus.php:1536
|
||||
msgid ""
|
||||
"Currently %s comment is waiting for approval. Please visit the moderation "
|
||||
"panel:"
|
||||
msgid_plural ""
|
||||
"Currently %s comments are waiting for approval. Please visit the moderation "
|
||||
"panel:"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: co-authors-plus.php:1540
|
||||
msgid "[%1$s] Please moderate: \"%2$s\""
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:80
|
||||
msgid "Guest Author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:81
|
||||
msgid "Guest Authors"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:82
|
||||
msgid "All Guest Authors"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:83
|
||||
msgid "Add New Guest Author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:84
|
||||
msgid "Edit Guest Author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:85
|
||||
msgid "New Guest Author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:86
|
||||
msgid "View Guest Author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:87
|
||||
msgid "Search Guest Authors"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:88
|
||||
msgid "No guest authors found"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:89
|
||||
msgid "No guest authors found in Trash"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:90
|
||||
msgid "Update Guest Author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:91
|
||||
msgid "About the guest author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:100
|
||||
msgctxt "guest author"
|
||||
msgid "Add New"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:156
|
||||
#: php/class-coauthors-guest-authors.php:162
|
||||
msgid "Guest author updated. <a href=\"%s\">View profile</a>"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:157
|
||||
msgid "Custom field updated."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:158
|
||||
msgid "Custom field deleted."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:159
|
||||
msgid "Guest author updated."
|
||||
msgstr ""
|
||||
|
||||
#. translators: %s: date and time of the revision
|
||||
#: php/class-coauthors-guest-authors.php:161
|
||||
msgid "Guest author restored to revision from %s"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:163
|
||||
msgid "Guest author saved."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:164
|
||||
msgid ""
|
||||
"Guest author submitted. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:165
|
||||
msgid ""
|
||||
"Guest author scheduled for: <strong>%1$s</strong>. <a target=\"_blank\" href="
|
||||
"\"%2$s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
|
||||
#. translators: Publish box date format, see http:php.net/date
|
||||
#: php/class-coauthors-guest-authors.php:167
|
||||
msgid "M j, Y @ G:i"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:168
|
||||
msgid ""
|
||||
"Guest author updated. <a target=\"_blank\" href=\"%s\">Preview profile</a>"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:185
|
||||
#: php/class-coauthors-guest-authors.php:218
|
||||
#: php/class-coauthors-guest-authors.php:437
|
||||
msgid "Doin' something fishy, huh?"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:188
|
||||
#: php/class-coauthors-guest-authors.php:222
|
||||
msgid "You don't have permission to perform this action."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:227
|
||||
#: php/class-coauthors-guest-authors.php:442
|
||||
msgid "Guest author can't be deleted because it doesn't exist."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:241
|
||||
msgid "Co-author does not exists. Try again?"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:249
|
||||
msgid "Please make sure to pick an option."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:393
|
||||
msgid "Guest author deleted."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:417
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:418
|
||||
msgid "Unique Slug"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:420
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:421
|
||||
msgid "Contact Info"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:446
|
||||
msgid "Delete %s"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:447
|
||||
msgid "You have specified this guest author for deletion:"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:449
|
||||
msgid "What should be done with posts assigned to this guest author?"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:450
|
||||
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."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:459
|
||||
msgid "Reassign to another co-author:"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:465
|
||||
msgid "Leave posts assigned to the mapped user, %s."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:470
|
||||
msgid "Remove byline from posts (but leave each post in its current status)."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:473
|
||||
msgid "Confirm Deletion"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:482
|
||||
msgid "Add New"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:543
|
||||
msgid "WordPress User Mapping"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:545
|
||||
msgid "-- Not mapped --"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:679
|
||||
#: php/class-coauthors-guest-authors.php:688
|
||||
msgid "Guest authors cannot be created without display names."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:697
|
||||
msgid ""
|
||||
"Guest authors cannot be created with the same user_login value as a user. "
|
||||
"Try creating a profile from the user on the Manage Users listing instead."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:702
|
||||
msgid "Display name conflicts with another guest author display name."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:896
|
||||
msgid "ID"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:903
|
||||
#: php/class-coauthors-wp-list-table.php:143
|
||||
msgid "Display Name"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:909
|
||||
#: php/class-coauthors-wp-list-table.php:144
|
||||
msgid "First Name"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:914
|
||||
#: php/class-coauthors-wp-list-table.php:145
|
||||
msgid "Last Name"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:919
|
||||
msgid "Slug"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:926
|
||||
#: php/class-coauthors-wp-list-table.php:146
|
||||
msgid "E-mail"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:932
|
||||
#: php/class-coauthors-wp-list-table.php:147
|
||||
msgid "Linked Account"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:937
|
||||
msgid "Website"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:943
|
||||
msgid "AIM"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:948
|
||||
msgid "Yahoo IM"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:953
|
||||
msgid "Jabber / Google Talk"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:958
|
||||
msgid "Biographical Info"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1122
|
||||
msgid "%s is a required field"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1128
|
||||
msgid "user_login cannot duplicate existing guest author or mapped user"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1173
|
||||
msgid "Guest author does not exist"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1185
|
||||
msgid "Reassignment co-author does not exist"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1217
|
||||
msgid "No user exists with that ID"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1275
|
||||
msgid "Edit Profile"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-guest-authors.php:1284
|
||||
msgid "Create Profile"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:19
|
||||
msgid "Co-Authors"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:20
|
||||
msgid "Co-Author"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:81
|
||||
msgid "Show all"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:82
|
||||
msgid "With linked account"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:83
|
||||
msgid "Without linked account"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:135
|
||||
msgid "No matching guest authors were found."
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:215
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:217
|
||||
msgid "View Posts"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-coauthors-wp-list-table.php:267
|
||||
msgid "Filter"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-wp-cli.php:220
|
||||
msgid "Please specify a valid user_login"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-wp-cli.php:223
|
||||
msgid "Please specify a valid co-author login"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-wp-cli.php:230
|
||||
msgid "Skipping - Post #%d already has co-authors assigned: %s"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-wp-cli.php:235
|
||||
msgid "Updating - Adding %s's byline to post #%d"
|
||||
msgstr ""
|
||||
|
||||
#: php/class-wp-cli.php:240
|
||||
msgid "All done! %d posts were affected."
|
||||
msgstr ""
|
||||
|
||||
#: template-tags.php:79
|
||||
msgid ""
|
||||
"No post ID provided for CoAuthorsIterator constructor. Are you not in a loop "
|
||||
"or is $post not set?"
|
||||
msgstr ""
|
||||
|
||||
#: template-tags.php:133
|
||||
msgid " and "
|
||||
msgstr ""
|
||||
|
||||
#: template-tags.php:233 template-tags.php:468
|
||||
msgid "Posts by %s"
|
||||
msgstr ""
|
||||
|
||||
#: template-tags.php:350
|
||||
msgid "Visit %s’s website"
|
||||
msgstr ""
|
||||
|
||||
#. Plugin Name of the plugin/theme
|
||||
msgid "Co-Authors Plus"
|
||||
msgstr ""
|
||||
|
||||
#. Plugin URI of the plugin/theme
|
||||
msgid "http://wordpress.org/extend/plugins/co-authors-plus/"
|
||||
msgstr ""
|
||||
|
||||
#. Description of the plugin/theme
|
||||
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."
|
||||
msgstr ""
|
||||
|
||||
#. Author of the plugin/theme
|
||||
msgid "Mohammad Jangda, Daniel Bachhuber, Automattic"
|
||||
msgstr ""
|
||||
@@ -0,0 +1,524 @@
|
||||
/*
|
||||
Version: 3.2 Timestamp: Mon Sep 10 10:38:04 PDT 2012
|
||||
*/
|
||||
.select2-container {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
/* inline-block for ie7 */
|
||||
zoom: 1;
|
||||
*display: inline;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.select2-container,
|
||||
.select2-drop,
|
||||
.select2-search,
|
||||
.select2-search input{
|
||||
/*
|
||||
Force border-box so that % widths fit the parent
|
||||
container without overlap because of margin/padding.
|
||||
|
||||
More Info : http://www.quirksmode.org/css/box.html
|
||||
*/
|
||||
-moz-box-sizing: border-box; /* firefox */
|
||||
-ms-box-sizing: border-box; /* ie */
|
||||
-webkit-box-sizing: border-box; /* webkit */
|
||||
-khtml-box-sizing: border-box; /* konqueror */
|
||||
box-sizing: border-box; /* css3 */
|
||||
}
|
||||
|
||||
.select2-container .select2-choice {
|
||||
background-color: #fff;
|
||||
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eeeeee), color-stop(0.5, white));
|
||||
background-image: -webkit-linear-gradient(center bottom, #eeeeee 0%, white 50%);
|
||||
background-image: -moz-linear-gradient(center bottom, #eeeeee 0%, white 50%);
|
||||
background-image: -o-linear-gradient(bottom, #eeeeee 0%, #ffffff 50%);
|
||||
background-image: -ms-linear-gradient(top, #eeeeee 0%, #ffffff 50%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#eeeeee', endColorstr = '#ffffff', GradientType = 0);
|
||||
background-image: linear-gradient(top, #eeeeee 0%, #ffffff 50%);
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
-moz-background-clip: padding;
|
||||
-webkit-background-clip: padding-box;
|
||||
background-clip: padding-box;
|
||||
border: 1px solid #aaa;
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
position: relative;
|
||||
height: 26px;
|
||||
line-height: 26px;
|
||||
padding: 0 0 0 8px;
|
||||
color: #444;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.select2-container.select2-drop-above .select2-choice
|
||||
{
|
||||
border-bottom-color: #aaa;
|
||||
-webkit-border-radius:0px 0px 4px 4px;
|
||||
-moz-border-radius:0px 0px 4px 4px;
|
||||
border-radius:0px 0px 4px 4px;
|
||||
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eeeeee), color-stop(0.9, white));
|
||||
background-image: -webkit-linear-gradient(center bottom, #eeeeee 0%, white 90%);
|
||||
background-image: -moz-linear-gradient(center bottom, #eeeeee 0%, white 90%);
|
||||
background-image: -o-linear-gradient(bottom, #eeeeee 0%, white 90%);
|
||||
background-image: -ms-linear-gradient(top, #eeeeee 0%,#ffffff 90%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#ffffff',GradientType=0 );
|
||||
background-image: linear-gradient(top, #eeeeee 0%,#ffffff 90%);
|
||||
}
|
||||
|
||||
.select2-container .select2-choice span {
|
||||
margin-right: 26px;
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
-o-text-overflow: ellipsis;
|
||||
-ms-text-overflow: ellipsis;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
.select2-container .select2-choice abbr {
|
||||
display: block;
|
||||
position: absolute;
|
||||
right: 26px;
|
||||
top: 8px;
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
font-size: 1px;
|
||||
background: url('select2.png') right top no-repeat;
|
||||
cursor: pointer;
|
||||
text-decoration: none;
|
||||
border:0;
|
||||
outline: 0;
|
||||
}
|
||||
.select2-container .select2-choice abbr:hover {
|
||||
background-position: right -11px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.select2-drop {
|
||||
background: #fff;
|
||||
color: #000;
|
||||
border: 1px solid #aaa;
|
||||
border-top: 0;
|
||||
position: absolute;
|
||||
top: 100%;
|
||||
-webkit-box-shadow: 0 4px 5px rgba(0, 0, 0, .15);
|
||||
-moz-box-shadow: 0 4px 5px rgba(0, 0, 0, .15);
|
||||
-o-box-shadow: 0 4px 5px rgba(0, 0, 0, .15);
|
||||
box-shadow: 0 4px 5px rgba(0, 0, 0, .15);
|
||||
z-index: 9999;
|
||||
width:100%;
|
||||
margin-top:-1px;
|
||||
|
||||
-webkit-border-radius: 0 0 4px 4px;
|
||||
-moz-border-radius: 0 0 4px 4px;
|
||||
border-radius: 0 0 4px 4px;
|
||||
}
|
||||
|
||||
.select2-drop.select2-drop-above {
|
||||
-webkit-border-radius: 4px 4px 0px 0px;
|
||||
-moz-border-radius: 4px 4px 0px 0px;
|
||||
border-radius: 4px 4px 0px 0px;
|
||||
margin-top:1px;
|
||||
border-top: 1px solid #aaa;
|
||||
border-bottom: 0;
|
||||
|
||||
-webkit-box-shadow: 0 -4px 5px rgba(0, 0, 0, .15);
|
||||
-moz-box-shadow: 0 -4px 5px rgba(0, 0, 0, .15);
|
||||
-o-box-shadow: 0 -4px 5px rgba(0, 0, 0, .15);
|
||||
box-shadow: 0 -4px 5px rgba(0, 0, 0, .15);
|
||||
}
|
||||
|
||||
.select2-container .select2-choice div {
|
||||
-webkit-border-radius: 0 4px 4px 0;
|
||||
-moz-border-radius: 0 4px 4px 0;
|
||||
border-radius: 0 4px 4px 0;
|
||||
-moz-background-clip: padding;
|
||||
-webkit-background-clip: padding-box;
|
||||
background-clip: padding-box;
|
||||
background: #ccc;
|
||||
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #ccc), color-stop(0.6, #eee));
|
||||
background-image: -webkit-linear-gradient(center bottom, #ccc 0%, #eee 60%);
|
||||
background-image: -moz-linear-gradient(center bottom, #ccc 0%, #eee 60%);
|
||||
background-image: -o-linear-gradient(bottom, #ccc 0%, #eee 60%);
|
||||
background-image: -ms-linear-gradient(top, #cccccc 0%, #eeeeee 60%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#cccccc', endColorstr = '#eeeeee', GradientType = 0);
|
||||
background-image: linear-gradient(top, #cccccc 0%, #eeeeee 60%);
|
||||
border-left: 1px solid #aaa;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
display: block;
|
||||
height: 100%;
|
||||
width: 18px;
|
||||
}
|
||||
|
||||
.select2-container .select2-choice div b {
|
||||
background: url('select2.png') no-repeat 0 1px;
|
||||
display: block;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.select2-search {
|
||||
display: inline-block;
|
||||
white-space: nowrap;
|
||||
z-index: 10000;
|
||||
min-height: 26px;
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
padding-left: 4px;
|
||||
padding-right: 4px;
|
||||
}
|
||||
|
||||
.select2-search-hidden {
|
||||
display: block;
|
||||
position: absolute;
|
||||
left: -10000px;
|
||||
}
|
||||
|
||||
.select2-search input {
|
||||
background: #fff url('select2.png') no-repeat 100% -22px;
|
||||
background: url('select2.png') no-repeat 100% -22px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, white), color-stop(0.99, #eeeeee));
|
||||
background: url('select2.png') no-repeat 100% -22px, -webkit-linear-gradient(center bottom, white 85%, #eeeeee 99%);
|
||||
background: url('select2.png') no-repeat 100% -22px, -moz-linear-gradient(center bottom, white 85%, #eeeeee 99%);
|
||||
background: url('select2.png') no-repeat 100% -22px, -o-linear-gradient(bottom, white 85%, #eeeeee 99%);
|
||||
background: url('select2.png') no-repeat 100% -22px, -ms-linear-gradient(top, #ffffff 85%, #eeeeee 99%);
|
||||
background: url('select2.png') no-repeat 100% -22px, linear-gradient(top, #ffffff 85%, #eeeeee 99%);
|
||||
padding: 4px 20px 4px 5px;
|
||||
outline: 0;
|
||||
border: 1px solid #aaa;
|
||||
font-family: sans-serif;
|
||||
font-size: 1em;
|
||||
width:100%;
|
||||
margin:0;
|
||||
height:auto !important;
|
||||
min-height: 26px;
|
||||
-webkit-box-shadow: none;
|
||||
-moz-box-shadow: none;
|
||||
box-shadow: none;
|
||||
border-radius: 0;
|
||||
-moz-border-radius: 0;
|
||||
-webkit-border-radius: 0;
|
||||
}
|
||||
|
||||
.select2-drop.select2-drop-above .select2-search input
|
||||
{
|
||||
margin-top:4px;
|
||||
}
|
||||
|
||||
.select2-search input.select2-active {
|
||||
background: #fff url('spinner.gif') no-repeat 100%;
|
||||
background: url('spinner.gif') no-repeat 100%, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, white), color-stop(0.99, #eeeeee));
|
||||
background: url('spinner.gif') no-repeat 100%, -webkit-linear-gradient(center bottom, white 85%, #eeeeee 99%);
|
||||
background: url('spinner.gif') no-repeat 100%, -moz-linear-gradient(center bottom, white 85%, #eeeeee 99%);
|
||||
background: url('spinner.gif') no-repeat 100%, -o-linear-gradient(bottom, white 85%, #eeeeee 99%);
|
||||
background: url('spinner.gif') no-repeat 100%, -ms-linear-gradient(top, #ffffff 85%, #eeeeee 99%);
|
||||
background: url('spinner.gif') no-repeat 100%, linear-gradient(top, #ffffff 85%, #eeeeee 99%);
|
||||
}
|
||||
|
||||
|
||||
.select2-container-active .select2-choice,
|
||||
.select2-container-active .select2-choices {
|
||||
-webkit-box-shadow: 0 0 5px rgba(0,0,0,.3);
|
||||
-moz-box-shadow : 0 0 5px rgba(0,0,0,.3);
|
||||
-o-box-shadow : 0 0 5px rgba(0,0,0,.3);
|
||||
box-shadow : 0 0 5px rgba(0,0,0,.3);
|
||||
border: 1px solid #5897fb;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
.select2-dropdown-open .select2-choice {
|
||||
border: 1px solid #aaa;
|
||||
border-bottom-color: transparent;
|
||||
-webkit-box-shadow: 0 1px 0 #fff inset;
|
||||
-moz-box-shadow : 0 1px 0 #fff inset;
|
||||
-o-box-shadow : 0 1px 0 #fff inset;
|
||||
box-shadow : 0 1px 0 #fff inset;
|
||||
background-color: #eee;
|
||||
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, white), color-stop(0.5, #eeeeee));
|
||||
background-image: -webkit-linear-gradient(center bottom, white 0%, #eeeeee 50%);
|
||||
background-image: -moz-linear-gradient(center bottom, white 0%, #eeeeee 50%);
|
||||
background-image: -o-linear-gradient(bottom, white 0%, #eeeeee 50%);
|
||||
background-image: -ms-linear-gradient(top, #ffffff 0%,#eeeeee 50%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
|
||||
background-image: linear-gradient(top, #ffffff 0%,#eeeeee 50%);
|
||||
-webkit-border-bottom-left-radius : 0;
|
||||
-webkit-border-bottom-right-radius: 0;
|
||||
-moz-border-radius-bottomleft : 0;
|
||||
-moz-border-radius-bottomright: 0;
|
||||
border-bottom-left-radius : 0;
|
||||
border-bottom-right-radius: 0;
|
||||
}
|
||||
|
||||
.select2-dropdown-open .select2-choice div {
|
||||
background: transparent;
|
||||
border-left: none;
|
||||
}
|
||||
.select2-dropdown-open .select2-choice div b {
|
||||
background-position: -18px 1px;
|
||||
}
|
||||
|
||||
/* results */
|
||||
.select2-results {
|
||||
margin: 4px 4px 4px 0;
|
||||
padding: 0 0 0 4px;
|
||||
position: relative;
|
||||
overflow-x: hidden;
|
||||
overflow-y: auto;
|
||||
max-height: 200px;
|
||||
}
|
||||
|
||||
.select2-results ul.select2-result-sub {
|
||||
margin: 0 0 0 0;
|
||||
}
|
||||
|
||||
.select2-results ul.select2-result-sub > li .select2-result-label { padding-left: 20px }
|
||||
.select2-results ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 40px }
|
||||
.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 60px }
|
||||
.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 80px }
|
||||
.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 100px }
|
||||
.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 110px }
|
||||
.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 120px }
|
||||
|
||||
.select2-results li {
|
||||
list-style: none;
|
||||
display: list-item;
|
||||
}
|
||||
|
||||
.select2-results li.select2-result-with-children > .select2-result-label {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.select2-results .select2-result-label {
|
||||
padding: 3px 7px 4px;
|
||||
margin: 0;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.select2-results .select2-highlighted {
|
||||
background: #3875d7;
|
||||
color: #fff;
|
||||
}
|
||||
.select2-results li em {
|
||||
background: #feffde;
|
||||
font-style: normal;
|
||||
}
|
||||
.select2-results .select2-highlighted em {
|
||||
background: transparent;
|
||||
}
|
||||
.select2-results .select2-no-results,
|
||||
.select2-results .select2-searching,
|
||||
.select2-results .select2-selection-limit {
|
||||
background: #f4f4f4;
|
||||
display: list-item;
|
||||
}
|
||||
|
||||
/*
|
||||
disabled look for already selected choices in the results dropdown
|
||||
.select2-results .select2-disabled.select2-highlighted {
|
||||
color: #666;
|
||||
background: #f4f4f4;
|
||||
display: list-item;
|
||||
cursor: default;
|
||||
}
|
||||
.select2-results .select2-disabled {
|
||||
background: #f4f4f4;
|
||||
display: list-item;
|
||||
cursor: default;
|
||||
}
|
||||
*/
|
||||
.select2-results .select2-disabled {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.select2-more-results.select2-active {
|
||||
background: #f4f4f4 url('spinner.gif') no-repeat 100%;
|
||||
}
|
||||
|
||||
.select2-more-results {
|
||||
background: #f4f4f4;
|
||||
display: list-item;
|
||||
}
|
||||
|
||||
/* disabled styles */
|
||||
|
||||
.select2-container.select2-container-disabled .select2-choice {
|
||||
background-color: #f4f4f4;
|
||||
background-image: none;
|
||||
border: 1px solid #ddd;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.select2-container.select2-container-disabled .select2-choice div {
|
||||
background-color: #f4f4f4;
|
||||
background-image: none;
|
||||
border-left: 0;
|
||||
}
|
||||
|
||||
|
||||
/* multiselect */
|
||||
|
||||
.select2-container-multi .select2-choices {
|
||||
background-color: #fff;
|
||||
background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
|
||||
background-image: -webkit-linear-gradient(top, #eeeeee 1%, #ffffff 15%);
|
||||
background-image: -moz-linear-gradient(top, #eeeeee 1%, #ffffff 15%);
|
||||
background-image: -o-linear-gradient(top, #eeeeee 1%, #ffffff 15%);
|
||||
background-image: -ms-linear-gradient(top, #eeeeee 1%, #ffffff 15%);
|
||||
background-image: linear-gradient(top, #eeeeee 1%, #ffffff 15%);
|
||||
border: 1px solid #aaa;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
cursor: text;
|
||||
overflow: hidden;
|
||||
height: auto !important;
|
||||
height: 1%;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.select2-container-multi .select2-choices {
|
||||
min-height: 26px;
|
||||
}
|
||||
|
||||
.select2-container-multi.select2-container-active .select2-choices {
|
||||
-webkit-box-shadow: 0 0 5px rgba(0,0,0,.3);
|
||||
-moz-box-shadow : 0 0 5px rgba(0,0,0,.3);
|
||||
-o-box-shadow : 0 0 5px rgba(0,0,0,.3);
|
||||
box-shadow : 0 0 5px rgba(0,0,0,.3);
|
||||
border: 1px solid #5897fb;
|
||||
outline: none;
|
||||
}
|
||||
.select2-container-multi .select2-choices li {
|
||||
float: left;
|
||||
list-style: none;
|
||||
}
|
||||
.select2-container-multi .select2-choices .select2-search-field {
|
||||
white-space: nowrap;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.select2-container-multi .select2-choices .select2-search-field input {
|
||||
color: #666;
|
||||
background: transparent !important;
|
||||
font-family: sans-serif;
|
||||
font-size: 100%;
|
||||
height: 15px;
|
||||
padding: 5px;
|
||||
margin: 1px 0;
|
||||
outline: 0;
|
||||
border: 0;
|
||||
-webkit-box-shadow: none;
|
||||
-moz-box-shadow : none;
|
||||
-o-box-shadow : none;
|
||||
box-shadow : none;
|
||||
}
|
||||
|
||||
.select2-container-multi .select2-choices .select2-search-field input.select2-active {
|
||||
background: #fff url('spinner.gif') no-repeat 100% !important;
|
||||
}
|
||||
|
||||
.select2-default {
|
||||
color: #999 !important;
|
||||
}
|
||||
|
||||
.select2-container-multi .select2-choices .select2-search-choice {
|
||||
-webkit-border-radius: 3px;
|
||||
-moz-border-radius : 3px;
|
||||
border-radius : 3px;
|
||||
-moz-background-clip : padding;
|
||||
-webkit-background-clip: padding-box;
|
||||
background-clip : padding-box;
|
||||
background-color: #e4e4e4;
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f4f4', endColorstr='#eeeeee', GradientType=0 );
|
||||
background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
|
||||
background-image: -webkit-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
||||
background-image: -moz-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
||||
background-image: -o-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
||||
background-image: -ms-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
||||
background-image: linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
||||
-webkit-box-shadow: 0 0 2px #ffffff inset, 0 1px 0 rgba(0,0,0,0.05);
|
||||
-moz-box-shadow : 0 0 2px #ffffff inset, 0 1px 0 rgba(0,0,0,0.05);
|
||||
box-shadow : 0 0 2px #ffffff inset, 0 1px 0 rgba(0,0,0,0.05);
|
||||
color: #333;
|
||||
border: 1px solid #aaaaaa;
|
||||
line-height: 13px;
|
||||
padding: 3px 5px 3px 18px;
|
||||
margin: 3px 0 3px 5px;
|
||||
position: relative;
|
||||
cursor: default;
|
||||
}
|
||||
.select2-container-multi .select2-choices .select2-search-choice span {
|
||||
cursor: default;
|
||||
}
|
||||
.select2-container-multi .select2-choices .select2-search-choice-focus {
|
||||
background: #d4d4d4;
|
||||
}
|
||||
|
||||
.select2-search-choice-close {
|
||||
display: block;
|
||||
position: absolute;
|
||||
right: 3px;
|
||||
top: 4px;
|
||||
width: 12px;
|
||||
height: 13px;
|
||||
font-size: 1px;
|
||||
background: url('select2.png') right top no-repeat;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
.select2-container-multi .select2-search-choice-close {
|
||||
left: 3px;
|
||||
}
|
||||
|
||||
|
||||
.select2-container-multi .select2-choices .select2-search-choice .select2-search-choice-close:hover {
|
||||
background-position: right -11px;
|
||||
}
|
||||
.select2-container-multi .select2-choices .select2-search-choice-focus .select2-search-choice-close {
|
||||
background-position: right -11px;
|
||||
}
|
||||
|
||||
/* disabled styles */
|
||||
|
||||
.select2-container-multi.select2-container-disabled .select2-choices{
|
||||
background-color: #f4f4f4;
|
||||
background-image: none;
|
||||
border: 1px solid #ddd;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice {
|
||||
background-image: none;
|
||||
background-color: #f4f4f4;
|
||||
border: 1px solid #ddd;
|
||||
padding: 3px 5px 3px 5px;
|
||||
}
|
||||
|
||||
.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice .select2-search-choice-close {
|
||||
display: none;
|
||||
}
|
||||
/* end multiselect */
|
||||
|
||||
.select2-result-selectable .select2-match,
|
||||
.select2-result-unselectable .select2-result-selectable .select2-match { text-decoration: underline; }
|
||||
.select2-result-unselectable .select2-match { text-decoration: none; }
|
||||
|
||||
.select2-offscreen { position: absolute; left: -10000px; }
|
||||
|
||||
/* Retina-ize icons */
|
||||
|
||||
@media only screen and (-webkit-min-device-pixel-ratio: 1.5) {
|
||||
.select2-search input, .select2-search-choice-close, .select2-container .select2-choice abbr, .select2-container .select2-choice div b {
|
||||
background-image: url(select2x2.png) !important;
|
||||
background-repeat: no-repeat !important;
|
||||
background-size: 60px 40px !important;
|
||||
}
|
||||
.select2-search input {
|
||||
background-position: 100% -21px !important;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
/*
|
||||
Copyright 2012 Igor Vaynberg
|
||||
|
||||
Version: 3.2 Timestamp: Mon Sep 10 10:38:04 PDT 2012
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this work except in
|
||||
compliance with the License. You may obtain a copy of the License in the LICENSE file, or at:
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software distributed under the License is
|
||||
distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and limitations under the License.
|
||||
*/
|
||||
(function(e){"undefined"==typeof e.fn.each2&&e.fn.extend({each2:function(g){for(var i=e([0]),m=-1,s=this.length;++m<s&&(i.context=i[0]=this[m])&&!1!==g.call(i[0],m,i););return this}})})(jQuery);
|
||||
(function(e,g){function i(a,b){var c=0,d=b.length,j;if("undefined"===typeof a)return-1;if(a.constructor===String)for(;c<d;c+=1){if(0===a.localeCompare(b[c]))return c}else for(;c<d;c+=1)if(j=b[c],j.constructor===String){if(0===j.localeCompare(a))return c}else if(j===a)return c;return-1}function m(a,b){return a===b?!0:a===g||b===g||null===a||null===b?!1:a.constructor===String?0===a.localeCompare(b):b.constructor===String?0===b.localeCompare(a):!1}function s(a,b){var c,d,j;if(null===a||1>a.length)return[];
|
||||
c=a.split(b);d=0;for(j=c.length;d<j;d+=1)c[d]=e.trim(c[d]);return c}function A(a,b,c){var c=c||g,d;return function(){var j=arguments;window.clearTimeout(d);d=window.setTimeout(function(){b.apply(c,j)},a)}}function l(a){a.preventDefault();a.stopPropagation()}function B(a,b,c){var d=a.toUpperCase().indexOf(b.toUpperCase()),b=b.length;0>d?c.push(a):(c.push(a.substring(0,d)),c.push("<span class='select2-match'>"),c.push(a.substring(d,d+b)),c.push("</span>"),c.push(a.substring(d+b,a.length)))}function C(a){var b,
|
||||
c=0,d=null,j=a.quietMillis||100;return function(h){window.clearTimeout(b);b=window.setTimeout(function(){var b=c+=1,j=a.data,n=a.transport||e.ajax,f=a.traditional||!1,g=a.type||"GET",j=j.call(this,h.term,h.page,h.context);null!==d&&d.abort();d=n.call(null,{url:a.url,dataType:a.dataType,data:j,type:g,traditional:f,success:function(d){b<c||(d=a.results(d,h.page),h.callback(d))}})},j)}}function D(a){var b=a,c,d=function(a){return""+a.text};e.isArray(b)||(d=b.text,e.isFunction(d)||(c=b.text,d=function(a){return a[c]}),
|
||||
b=b.results);return function(a){var c=a.term,f={results:[]},k;if(c==="")a.callback({results:b});else{k=function(b,f){var g,t,b=b[0];if(b.children){g={};for(t in b)b.hasOwnProperty(t)&&(g[t]=b[t]);g.children=[];e(b.children).each2(function(a,b){k(b,g.children)});g.children.length&&f.push(g)}else a.matcher(c,d(b))&&f.push(b)};e(b).each2(function(a,b){k(b,f.results)});a.callback(f)}}}function E(a){return e.isFunction(a)?a:function(b){var c=b.term,d={results:[]};e(a).each(function(){var a=this.text!==
|
||||
g,e=a?this.text:this;if(""===c||b.matcher(c,e))d.results.push(a?this:{id:this,text:this})});b.callback(d)}}function u(a){if(e.isFunction(a))return!0;if(!a)return!1;throw Error("formatterName must be a function or a falsy value");}function v(a){return e.isFunction(a)?a():a}function F(a){var b=0;e.each(a,function(a,d){d.children?b+=F(d.children):b++});return b}function H(a,b,c,d){var e=a,h=!1,f,k,n,o;if(!d.createSearchChoice||!d.tokenSeparators||1>d.tokenSeparators.length)return g;for(;;){h=-1;k=0;
|
||||
for(n=d.tokenSeparators.length;k<n&&!(o=d.tokenSeparators[k],h=a.indexOf(o),0<=h);k++);if(0>h)break;f=a.substring(0,h);a=a.substring(h+o.length);if(0<f.length&&(f=d.createSearchChoice(f,b),f!==g&&null!==f&&d.id(f)!==g&&null!==d.id(f))){h=!1;k=0;for(n=b.length;k<n;k++)if(m(d.id(f),d.id(b[k]))){h=!0;break}h||c(f)}}if(0!=e.localeCompare(a))return a}function x(a,b){var c=function(){};c.prototype=new a;c.prototype.constructor=c;c.prototype.parent=a.prototype;c.prototype=e.extend(c.prototype,b);return c}
|
||||
if(window.Select2===g){var f,w,y,z,G,q;f={TAB:9,ENTER:13,ESC:27,SPACE:32,LEFT:37,UP:38,RIGHT:39,DOWN:40,SHIFT:16,CTRL:17,ALT:18,PAGE_UP:33,PAGE_DOWN:34,HOME:36,END:35,BACKSPACE:8,DELETE:46,isArrow:function(a){a=a.which?a.which:a;switch(a){case f.LEFT:case f.RIGHT:case f.UP:case f.DOWN:return!0}return!1},isControl:function(a){switch(a.which){case f.SHIFT:case f.CTRL:case f.ALT:return!0}return a.metaKey?!0:!1},isFunctionKey:function(a){a=a.which?a.which:a;return 112<=a&&123>=a}};var I=1;G=function(){return I++};
|
||||
e(document).delegate("body","mousemove",function(a){e.data(document,"select2-lastpos",{x:a.pageX,y:a.pageY})});e(document).ready(function(){e(document).delegate("body","mousedown touchend",function(a){var b=e(a.target).closest("div.select2-container").get(0),c;b?e(document).find("div.select2-container-active").each(function(){this!==b&&e(this).data("select2").blur()}):(b=e(a.target).closest("div.select2-drop").get(0),e(document).find("div.select2-drop-active").each(function(){this!==b&&e(this).data("select2").blur()}));
|
||||
b=e(a.target);c=b.attr("for");"LABEL"===a.target.tagName&&(c&&0<c.length)&&(b=e("#"+c),b=b.data("select2"),b!==g&&(b.focus(),a.preventDefault()))})});w=x(Object,{bind:function(a){var b=this;return function(){a.apply(b,arguments)}},init:function(a){var b,c;this.opts=a=this.prepareOpts(a);this.id=a.id;a.element.data("select2")!==g&&null!==a.element.data("select2")&&this.destroy();this.enabled=!0;this.container=this.createContainer();this.containerId="s2id_"+(a.element.attr("id")||"autogen"+G());this.containerSelector=
|
||||
"#"+this.containerId.replace(/([;&,\.\+\*\~':"\!\^#$%@\[\]\(\)=>\|])/g,"\\$1");this.container.attr("id",this.containerId);var d=!1,j;this.body=function(){!1===d&&(j=a.element.closest("body"),d=!0);return j};a.element.attr("class")!==g&&this.container.addClass(a.element.attr("class").replace(/validate\[[\S ]+] ?/,""));this.container.css(v(a.containerCss));this.container.addClass(v(a.containerCssClass));this.opts.element.data("select2",this).hide().before(this.container);this.container.data("select2",
|
||||
this);this.dropdown=this.container.find(".select2-drop");this.dropdown.addClass(v(a.dropdownCssClass));this.dropdown.data("select2",this);this.results=b=this.container.find(".select2-results");this.search=c=this.container.find("input.select2-input");c.attr("tabIndex",this.opts.element.attr("tabIndex"));this.resultsPage=0;this.context=null;this.initContainer();this.initContainerWidth();this.results.bind("mousemove",function(a){var b=e.data(document,"select2-lastpos");(b===g||b.x!==a.pageX||b.y!==a.pageY)&&
|
||||
e(a.target).trigger("mousemove-filtered",a)});this.dropdown.delegate(".select2-results","mousemove-filtered",this.bind(this.highlightUnderEvent));var h=this.results,f=A(80,function(a){h.trigger("scroll-debounced",a)});h.bind("scroll",function(a){0<=i(a.target,h.get())&&f(a)});this.dropdown.delegate(".select2-results","scroll-debounced",this.bind(this.loadMoreIfNeeded));e.fn.mousewheel&&b.mousewheel(function(a,c,d,e){c=b.scrollTop();0<e&&0>=c-e?(b.scrollTop(0),l(a)):0>e&&b.get(0).scrollHeight-b.scrollTop()+
|
||||
e<=b.height()&&(b.scrollTop(b.get(0).scrollHeight-b.height()),l(a))});c.bind("keydown",function(){e.data(c,"keyup-change-value")===g&&e.data(c,"keyup-change-value",c.val())});c.bind("keyup",function(){var a=e.data(c,"keyup-change-value");a!==g&&c.val()!==a&&(e.removeData(c,"keyup-change-value"),c.trigger("keyup-change"))});c.bind("keyup-change",this.bind(this.updateResults));c.bind("focus",function(){c.addClass("select2-focused");" "===c.val()&&c.val("")});c.bind("blur",function(){c.removeClass("select2-focused")});
|
||||
this.dropdown.delegate(".select2-results","mouseup",this.bind(function(a){0<e(a.target).closest(".select2-result-selectable:not(.select2-disabled)").length?(this.highlightUnderEvent(a),this.selectHighlighted(a)):this.focusSearch();l(a)}));this.dropdown.bind("click mouseup mousedown",function(a){a.stopPropagation()});e.isFunction(this.opts.initSelection)&&(this.initSelection(),this.monitorSource());(a.element.is(":disabled")||a.element.is("[readonly='readonly']"))&&this.disable()},destroy:function(){var a=
|
||||
this.opts.element.data("select2");a!==g&&(a.container.remove(),a.dropdown.remove(),a.opts.element.removeData("select2").unbind(".select2").show())},prepareOpts:function(a){var b,c,d;b=a.element;"select"===b.get(0).tagName.toLowerCase()&&(this.select=c=a.element);c&&e.each("id multiple ajax query createSearchChoice initSelection data tags".split(" "),function(){if(this in a)throw Error("Option '"+this+"' is not allowed for Select2 when attached to a <select> element.");});a=e.extend({},{populateResults:function(b,
|
||||
c,d){var f,n=this.opts.id,o=this;f=function(b,c,j){var h,l,i,m,r,p,q;h=0;for(l=b.length;h<l;h=h+1){i=b[h];m=n(i)!==g;r=i.children&&i.children.length>0;p=e("<li></li>");p.addClass("select2-results-dept-"+j);p.addClass("select2-result");p.addClass(m?"select2-result-selectable":"select2-result-unselectable");r&&p.addClass("select2-result-with-children");p.addClass(o.opts.formatResultCssClass(i));m=e("<div></div>");m.addClass("select2-result-label");q=a.formatResult(i,m,d);q!==g&&m.html(o.opts.escapeMarkup(q));
|
||||
p.append(m);if(r){r=e("<ul></ul>");r.addClass("select2-result-sub");f(i.children,r,j+1);p.append(r)}p.data("select2-data",i);c.append(p)}};f(c,b,0)}},e.fn.select2.defaults,a);"function"!==typeof a.id&&(d=a.id,a.id=function(a){return a[d]});if(c)a.query=this.bind(function(a){var c={results:[],more:false},d=a.term,f,n,o;o=function(b,c){var e;if(b.is("option"))a.matcher(d,b.text(),b)&&c.push({id:b.attr("value"),text:b.text(),element:b.get(),css:b.attr("class")});else if(b.is("optgroup")){e={text:b.attr("label"),
|
||||
children:[],element:b.get(),css:b.attr("class")};b.children().each2(function(a,b){o(b,e.children)});e.children.length>0&&c.push(e)}};f=b.children();if(this.getPlaceholder()!==g&&f.length>0){n=f[0];e(n).text()===""&&(f=f.not(n))}f.each2(function(a,b){o(b,c.results)});a.callback(c)}),a.id=function(a){return a.id},a.formatResultCssClass=function(a){return a.css};else if(!("query"in a))if("ajax"in a){if((c=a.element.data("ajax-url"))&&0<c.length)a.ajax.url=c;a.query=C(a.ajax)}else"data"in a?a.query=D(a.data):
|
||||
"tags"in a&&(a.query=E(a.tags),a.createSearchChoice=function(a){return{id:a,text:a}},a.initSelection=function(b,c){var d=[];e(s(b.val(),a.separator)).each(function(){var b=this,c=this,j=a.tags;e.isFunction(j)&&(j=j());e(j).each(function(){if(m(this.id,b)){c=this.text;return false}});d.push({id:b,text:c})});c(d)});if("function"!==typeof a.query)throw"query function not defined for Select2 "+a.element.attr("id");return a},monitorSource:function(){this.opts.element.bind("change.select2",this.bind(function(){!0!==
|
||||
this.opts.element.data("select2-change-triggered")&&this.initSelection()}))},triggerChange:function(a){a=a||{};a=e.extend({},a,{type:"change",val:this.val()});this.opts.element.data("select2-change-triggered",!0);this.opts.element.trigger(a);this.opts.element.data("select2-change-triggered",!1);this.opts.element.click();this.opts.blurOnChange&&this.opts.element.blur()},enable:function(){this.enabled||(this.enabled=!0,this.container.removeClass("select2-container-disabled"))},disable:function(){this.enabled&&
|
||||
(this.close(),this.enabled=!1,this.container.addClass("select2-container-disabled"))},opened:function(){return this.container.hasClass("select2-dropdown-open")},positionDropdown:function(){var a=this.container.offset(),b=this.container.outerHeight(),c=this.container.outerWidth(),d=this.dropdown.outerHeight(),j=e(window).scrollTop()+document.documentElement.clientHeight,b=a.top+b,f=a.left,j=b+d<=j,g=a.top-d>=this.body().scrollTop(),k=this.dropdown.hasClass("select2-drop-above"),n;"static"!==this.body().css("position")&&
|
||||
(n=this.body().offset(),b-=n.top,f-=n.left);k?(k=!0,!g&&j&&(k=!1)):(k=!1,!j&&g&&(k=!0));k?(b=a.top-d,this.container.addClass("select2-drop-above"),this.dropdown.addClass("select2-drop-above")):(this.container.removeClass("select2-drop-above"),this.dropdown.removeClass("select2-drop-above"));a=e.extend({top:b,left:f,width:c},v(this.opts.dropdownCss));this.dropdown.css(a)},shouldOpen:function(){var a;if(this.opened())return!1;a=e.Event("open");this.opts.element.trigger(a);return!a.isDefaultPrevented()},
|
||||
clearDropdownAlignmentPreference:function(){this.container.removeClass("select2-drop-above");this.dropdown.removeClass("select2-drop-above")},open:function(){if(!this.shouldOpen())return!1;window.setTimeout(this.bind(this.opening),1);return!0},opening:function(){var a=this.containerId,b=this.containerSelector,c="scroll."+a,d="resize."+a;this.container.parents().each(function(){e(this).bind(c,function(){var a=e(b);0==a.length&&e(this).unbind(c);a.select2("close")})});e(window).bind(d,function(){var a=
|
||||
e(b);0==a.length&&e(window).unbind(d);a.select2("close")});this.clearDropdownAlignmentPreference();" "===this.search.val()&&this.search.val("");this.container.addClass("select2-dropdown-open").addClass("select2-container-active");this.updateResults(!0);this.dropdown[0]!==this.body().children().last()[0]&&this.dropdown.detach().appendTo(this.body());this.dropdown.show();this.positionDropdown();this.dropdown.addClass("select2-drop-active");this.ensureHighlightVisible();this.focusSearch()},close:function(){if(this.opened()){var a=
|
||||
this;this.container.parents().each(function(){e(this).unbind("scroll."+a.containerId)});e(window).unbind("resize."+this.containerId);this.clearDropdownAlignmentPreference();this.dropdown.hide();this.container.removeClass("select2-dropdown-open").removeClass("select2-container-active");this.results.empty();this.clearSearch();this.opts.element.trigger(e.Event("close"))}},clearSearch:function(){},ensureHighlightVisible:function(){var a=this.results,b,c,d,f;c=this.highlight();0>c||(0==c?a.scrollTop(0):
|
||||
(b=a.find(".select2-result-selectable"),d=e(b[c]),f=d.offset().top+d.outerHeight(),c===b.length-1&&(b=a.find("li.select2-more-results"),0<b.length&&(f=b.offset().top+b.outerHeight())),b=a.offset().top+a.outerHeight(),f>b&&a.scrollTop(a.scrollTop()+(f-b)),d=d.offset().top-a.offset().top,0>d&&a.scrollTop(a.scrollTop()+d)))},moveHighlight:function(a){for(var b=this.results.find(".select2-result-selectable"),c=this.highlight();-1<c&&c<b.length;){var c=c+a,d=e(b[c]);if(d.hasClass("select2-result-selectable")&&
|
||||
!d.hasClass("select2-disabled")){this.highlight(c);break}}},highlight:function(a){var b=this.results.find(".select2-result-selectable").not(".select2-disabled");if(0===arguments.length)return i(b.filter(".select2-highlighted")[0],b.get());a>=b.length&&(a=b.length-1);0>a&&(a=0);b.removeClass("select2-highlighted");e(b[a]).addClass("select2-highlighted");this.ensureHighlightVisible()},countSelectableResults:function(){return this.results.find(".select2-result-selectable").not(".select2-disabled").length},
|
||||
highlightUnderEvent:function(a){a=e(a.target).closest(".select2-result-selectable");if(0<a.length&&!a.is(".select2-highlighted")){var b=this.results.find(".select2-result-selectable");this.highlight(b.index(a))}else 0==a.length&&this.results.find(".select2-highlighted").removeClass("select2-highlighted")},loadMoreIfNeeded:function(){var a=this.results,b=a.find("li.select2-more-results"),c,d=this.resultsPage+1,e=this,f=this.search.val(),g=this.context;0!==b.length&&(c=b.offset().top-a.offset().top-
|
||||
a.height(),0>=c&&(b.addClass("select2-active"),this.opts.query({term:f,page:d,context:g,matcher:this.opts.matcher,callback:this.bind(function(c){e.opened()&&(e.opts.populateResults.call(this,a,c.results,{term:f,page:d,context:g}),!0===c.more?(b.detach().appendTo(a).text(e.opts.formatLoadMore(d+1)),window.setTimeout(function(){e.loadMoreIfNeeded()},10)):b.remove(),e.positionDropdown(),e.resultsPage=d)})})))},tokenize:function(){},updateResults:function(a){function b(){f.scrollTop(0);d.removeClass("select2-active");
|
||||
k.positionDropdown()}function c(a){f.html(k.opts.escapeMarkup(a));b()}var d=this.search,f=this.results,h=this.opts,i,k=this;if(!(!0!==a&&(!1===this.showSearchInput||!this.opened()))){d.addClass("select2-active");if(1<=h.maximumSelectionSize&&(i=this.data(),e.isArray(i)&&i.length>=h.maximumSelectionSize&&u(h.formatSelectionTooBig,"formatSelectionTooBig"))){c("<li class='select2-selection-limit'>"+h.formatSelectionTooBig(h.maximumSelectionSize)+"</li>");return}d.val().length<h.minimumInputLength&&u(h.formatInputTooShort,
|
||||
"formatInputTooShort")?c("<li class='select2-no-results'>"+h.formatInputTooShort(d.val(),h.minimumInputLength)+"</li>"):(c("<li class='select2-searching'>"+h.formatSearching()+"</li>"),i=this.tokenize(),i!=g&&null!=i&&d.val(i),this.resultsPage=1,h.query({term:d.val(),page:this.resultsPage,context:null,matcher:h.matcher,callback:this.bind(function(i){var l;this.opened()&&((this.context=i.context===g?null:i.context,this.opts.createSearchChoice&&""!==d.val()&&(l=this.opts.createSearchChoice.call(null,
|
||||
d.val(),i.results),l!==g&&null!==l&&k.id(l)!==g&&null!==k.id(l)&&0===e(i.results).filter(function(){return m(k.id(this),k.id(l))}).length&&i.results.unshift(l)),0===i.results.length&&u(h.formatNoMatches,"formatNoMatches"))?c("<li class='select2-no-results'>"+h.formatNoMatches(d.val())+"</li>"):(f.empty(),k.opts.populateResults.call(this,f,i.results,{term:d.val(),page:this.resultsPage,context:null}),!0===i.more&&u(h.formatLoadMore,"formatLoadMore")&&(f.append("<li class='select2-more-results'>"+k.opts.escapeMarkup(h.formatLoadMore(this.resultsPage))+
|
||||
"</li>"),window.setTimeout(function(){k.loadMoreIfNeeded()},10)),this.postprocessResults(i,a),b()))})}))}},cancel:function(){this.close()},blur:function(){this.close();this.container.removeClass("select2-container-active");this.dropdown.removeClass("select2-drop-active");this.search[0]===document.activeElement&&this.search.blur();this.clearSearch();this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus")},focusSearch:function(){this.search.show();this.search.focus();
|
||||
window.setTimeout(this.bind(function(){this.search.show();this.search.focus();this.search.val(this.search.val())}),10)},selectHighlighted:function(){var a=this.highlight(),b=this.results.find(".select2-highlighted").not(".select2-disabled"),c=b.closest(".select2-result-selectable").data("select2-data");c&&(b.addClass("select2-disabled"),this.highlight(a),this.onSelect(c))},getPlaceholder:function(){return this.opts.element.attr("placeholder")||this.opts.element.attr("data-placeholder")||this.opts.element.data("placeholder")||
|
||||
this.opts.placeholder},initContainerWidth:function(){var a=function(){var a,c,d,f;if("off"===this.opts.width)return null;if("element"===this.opts.width)return 0===this.opts.element.outerWidth()?"auto":this.opts.element.outerWidth()+"px";if("copy"===this.opts.width||"resolve"===this.opts.width){a=this.opts.element.attr("style");if(a!==g){a=a.split(";");d=0;for(f=a.length;d<f;d+=1)if(c=a[d].replace(/\s/g,"").match(/width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/),null!==c&&1<=c.length)return c[1]}return"resolve"===
|
||||
this.opts.width?(a=this.opts.element.css("width"),0<a.indexOf("%")?a:0===this.opts.element.outerWidth()?"auto":this.opts.element.outerWidth()+"px"):null}return e.isFunction(this.opts.width)?this.opts.width():this.opts.width}.call(this);null!==a&&this.container.attr("style","width: "+a)}});y=x(w,{createContainer:function(){return e("<div></div>",{"class":"select2-container"}).html(" <a href='#' onclick='return false;' class='select2-choice'> <span></span><abbr class='select2-search-choice-close' style='display:none;'></abbr> <div><b></b></div></a> <div class='select2-drop select2-offscreen'> <div class='select2-search'> <input type='text' autocomplete='off' class='select2-input'/> </div> <ul class='select2-results'> </ul></div>")},
|
||||
opening:function(){this.search.show();this.parent.opening.apply(this,arguments);this.dropdown.removeClass("select2-offscreen")},close:function(){this.opened()&&(this.parent.close.apply(this,arguments),this.dropdown.removeAttr("style").addClass("select2-offscreen").insertAfter(this.selection).show())},focus:function(){this.close();this.selection.focus()},isFocused:function(){return this.selection[0]===document.activeElement},cancel:function(){this.parent.cancel.apply(this,arguments);this.selection.focus()},
|
||||
initContainer:function(){var a,b=this.dropdown;this.selection=a=this.container.find(".select2-choice");this.search.bind("keydown",this.bind(function(a){if(this.enabled)if(a.which===f.PAGE_UP||a.which===f.PAGE_DOWN)l(a);else if(this.opened())switch(a.which){case f.UP:case f.DOWN:this.moveHighlight(a.which===f.UP?-1:1);l(a);break;case f.TAB:case f.ENTER:this.selectHighlighted();l(a);break;case f.ESC:this.cancel(a),l(a)}else a.which===f.TAB||f.isControl(a)||f.isFunctionKey(a)||a.which===f.ESC||!1===
|
||||
this.opts.openOnEnter&&a.which===f.ENTER||this.open()}));this.search.bind("focus",this.bind(function(){this.selection.attr("tabIndex","-1")}));this.search.bind("blur",this.bind(function(){this.opened()||this.container.removeClass("select2-container-active");window.setTimeout(this.bind(function(){this.selection.attr("tabIndex",this.opts.element.attr("tabIndex"))}),10)}));a.bind("mousedown",this.bind(function(){this.opened()?(this.close(),this.selection.focus()):this.enabled&&this.open()}));b.bind("mousedown",
|
||||
this.bind(function(){this.search.focus()}));a.bind("focus",this.bind(function(){this.container.addClass("select2-container-active");this.search.attr("tabIndex","-1")}));a.bind("blur",this.bind(function(){this.opened()||this.container.removeClass("select2-container-active");window.setTimeout(this.bind(function(){this.search.attr("tabIndex",this.opts.element.attr("tabIndex"))}),10)}));a.bind("keydown",this.bind(function(a){if(this.enabled)if(a.which===f.PAGE_UP||a.which===f.PAGE_DOWN)l(a);else if(!(a.which===
|
||||
f.TAB||f.isControl(a)||f.isFunctionKey(a)||a.which===f.ESC)&&!(!1===this.opts.openOnEnter&&a.which===f.ENTER))if(a.which==f.DELETE)this.opts.allowClear&&this.clear();else{this.open();if(a.which!==f.ENTER&&!(48>a.which)){var b=String.fromCharCode(a.which).toLowerCase();a.shiftKey&&(b=b.toUpperCase());this.search.focus();this.search.val(b)}l(a)}}));a.delegate("abbr","mousedown",this.bind(function(a){this.enabled&&(this.clear(),l(a),this.close(),this.triggerChange(),this.selection.focus())}));this.setPlaceholder();
|
||||
this.search.bind("focus",this.bind(function(){this.container.addClass("select2-container-active")}))},clear:function(){this.opts.element.val("");this.selection.find("span").empty();this.selection.removeData("select2-data");this.setPlaceholder()},initSelection:function(){if(""===this.opts.element.val())this.close(),this.setPlaceholder();else{var a=this;this.opts.initSelection.call(null,this.opts.element,function(b){b!==g&&null!==b&&(a.updateSelection(b),a.close(),a.setPlaceholder())})}},prepareOpts:function(){var a=
|
||||
this.parent.prepareOpts.apply(this,arguments);"select"===a.element.get(0).tagName.toLowerCase()&&(a.initSelection=function(a,c){var d=a.find(":selected");e.isFunction(c)&&c({id:d.attr("value"),text:d.text()})});return a},setPlaceholder:function(){var a=this.getPlaceholder();""===this.opts.element.val()&&a!==g&&!(this.select&&""!==this.select.find("option:first").text())&&(this.selection.find("span").html(this.opts.escapeMarkup(a)),this.selection.addClass("select2-default"),this.selection.find("abbr").hide())},
|
||||
postprocessResults:function(a,b){var c=0,d=this,f=!0;this.results.find(".select2-result-selectable").each2(function(a,b){if(m(d.id(b.data("select2-data")),d.opts.element.val()))return c=a,!1});this.highlight(c);!0===b&&(f=this.showSearchInput=F(a.results)>=this.opts.minimumResultsForSearch,this.dropdown.find(".select2-search")[f?"removeClass":"addClass"]("select2-search-hidden"),e(this.dropdown,this.container)[f?"addClass":"removeClass"]("select2-with-searchbox"))},onSelect:function(a){var b=this.opts.element.val();
|
||||
this.opts.element.val(this.id(a));this.updateSelection(a);this.close();this.selection.focus();m(b,this.id(a))||this.triggerChange()},updateSelection:function(a){var b=this.selection.find("span");this.selection.data("select2-data",a);b.empty();a=this.opts.formatSelection(a,b);a!==g&&b.append(this.opts.escapeMarkup(a));this.selection.removeClass("select2-default");this.opts.allowClear&&this.getPlaceholder()!==g&&this.selection.find("abbr").show()},val:function(){var a,b=null,c=this;if(0===arguments.length)return this.opts.element.val();
|
||||
a=arguments[0];if(this.select)this.select.val(a).find(":selected").each2(function(a,c){b={id:c.attr("value"),text:c.text()};return!1}),this.updateSelection(b),this.setPlaceholder();else{if(this.opts.initSelection===g)throw Error("cannot call val() if initSelection() is not defined");a?(this.opts.element.val(a),this.opts.initSelection(this.opts.element,function(a){c.opts.element.val(!a?"":c.id(a));c.updateSelection(a);c.setPlaceholder()})):this.clear()}},clearSearch:function(){this.search.val("")},
|
||||
data:function(a){var b;if(0===arguments.length)return b=this.selection.data("select2-data"),b==g&&(b=null),b;!a||""===a?this.clear():(this.opts.element.val(!a?"":this.id(a)),this.updateSelection(a))}});z=x(w,{createContainer:function(){return e("<div></div>",{"class":"select2-container select2-container-multi"}).html(" <ul class='select2-choices'> <li class='select2-search-field'> <input type='text' autocomplete='off' class='select2-input'> </li></ul><div class='select2-drop select2-drop-multi' style='display:none;'> <ul class='select2-results'> </ul></div>")},
|
||||
prepareOpts:function(){var a=this.parent.prepareOpts.apply(this,arguments);"select"===a.element.get(0).tagName.toLowerCase()&&(a.initSelection=function(a,c){var d=[];a.find(":selected").each2(function(a,b){d.push({id:b.attr("value"),text:b.text()})});e.isFunction(c)&&c(d)});return a},initContainer:function(){var a;this.searchContainer=this.container.find(".select2-search-field");this.selection=a=this.container.find(".select2-choices");this.search.bind("keydown",this.bind(function(b){if(this.enabled){if(b.which===
|
||||
f.BACKSPACE&&""===this.search.val()){this.close();var c;c=a.find(".select2-search-choice-focus");if(0<c.length){this.unselect(c.first());this.search.width(10);l(b);return}c=a.find(".select2-search-choice");0<c.length&&c.last().addClass("select2-search-choice-focus")}else a.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus");if(this.opened())switch(b.which){case f.UP:case f.DOWN:this.moveHighlight(b.which===f.UP?-1:1);l(b);return;case f.ENTER:case f.TAB:this.selectHighlighted();
|
||||
l(b);return;case f.ESC:this.cancel(b);l(b);return}if(!(b.which===f.TAB||f.isControl(b)||f.isFunctionKey(b)||b.which===f.BACKSPACE||b.which===f.ESC)&&!(!1===this.opts.openOnEnter&&b.which===f.ENTER))this.open(),(b.which===f.PAGE_UP||b.which===f.PAGE_DOWN)&&l(b)}}));this.search.bind("keyup",this.bind(this.resizeSearch));this.search.bind("blur",this.bind(function(a){this.container.removeClass("select2-container-active");this.search.removeClass("select2-focused");this.clearSearch();a.stopImmediatePropagation()}));
|
||||
this.container.delegate(".select2-choices","mousedown",this.bind(function(a){this.enabled&&!(0<e(a.target).closest(".select2-search-choice").length)&&(this.clearPlaceholder(),this.open(),this.focusSearch(),a.preventDefault())}));this.container.delegate(".select2-choices","focus",this.bind(function(){this.enabled&&(this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"),this.clearPlaceholder())}));this.clearSearch()},enable:function(){this.enabled||(this.parent.enable.apply(this,
|
||||
arguments),this.search.removeAttr("disabled"))},disable:function(){this.enabled&&(this.parent.disable.apply(this,arguments),this.search.attr("disabled",!0))},initSelection:function(){""===this.opts.element.val()&&(this.updateSelection([]),this.close(),this.clearSearch());if(this.select||""!==this.opts.element.val()){var a=this;this.opts.initSelection.call(null,this.opts.element,function(b){if(b!==g&&b!==null){a.updateSelection(b);a.close();a.clearSearch()}})}},clearSearch:function(){var a=this.getPlaceholder();
|
||||
a!==g&&0===this.getVal().length&&!1===this.search.hasClass("select2-focused")?(this.search.val(a).addClass("select2-default"),this.resizeSearch()):this.search.val(" ").width(10)},clearPlaceholder:function(){this.search.hasClass("select2-default")?this.search.val("").removeClass("select2-default"):" "===this.search.val()&&this.search.val("")},opening:function(){this.parent.opening.apply(this,arguments);this.clearPlaceholder();this.resizeSearch();this.focusSearch()},close:function(){this.opened()&&
|
||||
this.parent.close.apply(this,arguments)},focus:function(){this.close();this.search.focus()},isFocused:function(){return this.search.hasClass("select2-focused")},updateSelection:function(a){var b=[],c=[],d=this;e(a).each(function(){0>i(d.id(this),b)&&(b.push(d.id(this)),c.push(this))});a=c;this.selection.find(".select2-search-choice").remove();e(a).each(function(){d.addSelectedChoice(this)});d.postprocessResults()},tokenize:function(){var a=this.search.val(),a=this.opts.tokenizer(a,this.data(),this.bind(this.onSelect),
|
||||
this.opts);null!=a&&a!=g&&(this.search.val(a),0<a.length&&this.open())},onSelect:function(a){this.addSelectedChoice(a);this.select&&this.postprocessResults();this.opts.closeOnSelect?(this.close(),this.search.width(10)):0<this.countSelectableResults()?(this.search.width(10),this.resizeSearch(),this.positionDropdown()):this.close();this.triggerChange({added:a});this.focusSearch()},cancel:function(){this.close();this.focusSearch()},addSelectedChoice:function(a){var b=e("<li class='select2-search-choice'> <div></div> <a href='#' onclick='return false;' class='select2-search-choice-close' tabindex='-1'></a></li>"),
|
||||
c=this.id(a),d=this.getVal(),f;f=this.opts.formatSelection(a,b);b.find("div").replaceWith("<div>"+this.opts.escapeMarkup(f)+"</div>");b.find(".select2-search-choice-close").bind("mousedown",l).bind("click dblclick",this.bind(function(a){this.enabled&&(e(a.target).closest(".select2-search-choice").fadeOut("fast",this.bind(function(){this.unselect(e(a.target));this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus");this.close();this.focusSearch()})).dequeue(),
|
||||
l(a))})).bind("focus",this.bind(function(){this.enabled&&(this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"))}));b.data("select2-data",a);b.insertBefore(this.searchContainer);d.push(c);this.setVal(d)},unselect:function(a){var b=this.getVal(),c,d,a=a.closest(".select2-search-choice");if(0===a.length)throw"Invalid argument: "+a+". Must be .select2-search-choice";c=a.data("select2-data");d=i(this.id(c),b);0<=d&&(b.splice(d,1),this.setVal(b),this.select&&
|
||||
this.postprocessResults());a.remove();this.triggerChange({removed:c})},postprocessResults:function(){var a=this.getVal(),b=this.results.find(".select2-result-selectable"),c=this.results.find(".select2-result-with-children"),d=this;b.each2(function(b,c){var e=d.id(c.data("select2-data"));0<=i(e,a)?c.addClass("select2-disabled").removeClass("select2-result-selectable"):c.removeClass("select2-disabled").addClass("select2-result-selectable")});c.each2(function(a,b){0==b.find(".select2-result-selectable").length?
|
||||
b.addClass("select2-disabled"):b.removeClass("select2-disabled")});b.each2(function(a,b){if(!b.hasClass("select2-disabled")&&b.hasClass("select2-result-selectable"))return d.highlight(0),!1})},resizeSearch:function(){var a,b,c,d,f=this.search.outerWidth()-this.search.width();a=this.search;q||(c=a[0].currentStyle||window.getComputedStyle(a[0],null),q=e("<div></div>").css({position:"absolute",left:"-10000px",top:"-10000px",display:"none",fontSize:c.fontSize,fontFamily:c.fontFamily,fontStyle:c.fontStyle,
|
||||
fontWeight:c.fontWeight,letterSpacing:c.letterSpacing,textTransform:c.textTransform,whiteSpace:"nowrap"}),e("body").append(q));q.text(a.val());a=q.width()+10;b=this.search.offset().left;c=this.selection.width();d=this.selection.offset().left;b=c-(b-d)-f;b<a&&(b=c-f);40>b&&(b=c-f);this.search.width(b)},getVal:function(){var a;if(this.select)return a=this.select.val(),null===a?[]:a;a=this.opts.element.val();return s(a,this.opts.separator)},setVal:function(a){var b;this.select?this.select.val(a):(b=
|
||||
[],e(a).each(function(){0>i(this,b)&&b.push(this)}),this.opts.element.val(0===b.length?"":b.join(this.opts.separator)))},val:function(){var a,b=[],c=this;if(0===arguments.length)return this.getVal();if(a=arguments[0])if(this.setVal(a),this.select)this.select.find(":selected").each(function(){b.push({id:e(this).attr("value"),text:e(this).text()})}),this.updateSelection(b);else{if(this.opts.initSelection===g)throw Error("val() cannot be called if initSelection() is not defined");this.opts.initSelection(this.opts.element,
|
||||
function(a){var b=e(a).map(c.id);c.setVal(b);c.updateSelection(a);c.clearSearch()})}else this.opts.element.val(""),this.updateSelection([]);this.clearSearch()},onSortStart:function(){if(this.select)throw Error("Sorting of elements is not supported when attached to <select>. Attach to <input type='hidden'/> instead.");this.search.width(0);this.searchContainer.hide()},onSortEnd:function(){var a=[],b=this;this.searchContainer.show();this.searchContainer.appendTo(this.searchContainer.parent());this.resizeSearch();
|
||||
this.selection.find(".select2-search-choice").each(function(){a.push(b.opts.id(e(this).data("select2-data")))});this.setVal(a);this.triggerChange()},data:function(a){var b=this,c;if(0===arguments.length)return this.selection.find(".select2-search-choice").map(function(){return e(this).data("select2-data")}).get();a||(a=[]);c=e.map(a,function(a){return b.opts.id(a)});this.setVal(c);this.updateSelection(a);this.clearSearch()}});e.fn.select2=function(){var a=Array.prototype.slice.call(arguments,0),b,
|
||||
c,d,f,h="val destroy opened open close focus isFocused container onSortStart onSortEnd enable disable positionDropdown data".split(" ");this.each(function(){if(0===a.length||"object"===typeof a[0])b=0===a.length?{}:e.extend({},a[0]),b.element=e(this),"select"===b.element.get(0).tagName.toLowerCase()?f=b.element.attr("multiple"):(f=b.multiple||!1,"tags"in b&&(b.multiple=f=!0)),c=f?new z:new y,c.init(b);else if("string"===typeof a[0]){if(0>i(a[0],h))throw"Unknown method: "+a[0];d=g;c=e(this).data("select2");
|
||||
if(c!==g&&(d="container"===a[0]?c.container:c[a[0]].apply(c,a.slice(1)),d!==g))return!1}else throw"Invalid arguments to select2 plugin: "+a;});return d===g?this:d};e.fn.select2.defaults={width:"copy",closeOnSelect:!0,openOnEnter:!0,containerCss:{},dropdownCss:{},containerCssClass:"",dropdownCssClass:"",formatResult:function(a,b,c){b=[];B(a.text,c.term,b);return b.join("")},formatSelection:function(a){return a?a.text:g},formatResultCssClass:function(){return g},formatNoMatches:function(){return"No matches found"},
|
||||
formatInputTooShort:function(a,b){return"Please enter "+(b-a.length)+" more characters"},formatSelectionTooBig:function(a){return"You can only select "+a+" item"+(1==a?"":"s")},formatLoadMore:function(){return"Loading more results..."},formatSearching:function(){return"Searching..."},minimumResultsForSearch:0,minimumInputLength:0,maximumSelectionSize:0,id:function(a){return a.id},matcher:function(a,b){return 0<=b.toUpperCase().indexOf(a.toUpperCase())},separator:",",tokenSeparators:[],tokenizer:H,
|
||||
escapeMarkup:function(a){return a&&"string"===typeof a?a.replace(/&/g,"&"):a},blurOnChange:!1};window.Select2={query:{ajax:C,local:D,tags:E},util:{debounce:A,markMatch:B},"class":{"abstract":w,single:y,multi:z}}}})(jQuery);
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 613 B |
Binary file not shown.
|
After Width: | Height: | Size: 845 B |
Binary file not shown.
|
After Width: | Height: | Size: 1.8 KiB |
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,49 @@
|
||||
<?php
|
||||
/**
|
||||
* For themes where it's easily doable, add support for Co-Authors Plus on the frontend
|
||||
* by filtering the common template tags
|
||||
*/
|
||||
|
||||
class CoAuthors_Template_Filters {
|
||||
|
||||
function __construct() {
|
||||
add_filter( 'the_author', array( $this, 'filter_the_author' ) );
|
||||
add_filter( 'the_author_posts_link', array( $this, 'filter_the_author_posts_link' ) );
|
||||
|
||||
// Add support for Guest Authors in RSS feeds.
|
||||
add_filter( 'the_author', array( $this, 'filter_the_author_rss' ), 15 ); // Override CoAuthors_Template_Filters::filter_the_author for RSS feeds
|
||||
add_action( 'rss2_item', array( $this, 'action_add_rss_guest_authors' ) );
|
||||
}
|
||||
|
||||
function filter_the_author() {
|
||||
return coauthors( null, null, null, null, false );
|
||||
}
|
||||
|
||||
function filter_the_author_posts_link() {
|
||||
return coauthors_posts_links( null, null, null, null, false );
|
||||
}
|
||||
|
||||
function filter_the_author_rss( $the_author ) {
|
||||
if ( ! is_feed() || ! function_exists( 'coauthors' ) ) {
|
||||
return $the_author;
|
||||
}
|
||||
|
||||
$coauthors = (array) get_coauthors();
|
||||
if ( count( $coauthors ) >= 1 && isset( $coauthors[0]->display_name ) ) {
|
||||
return $coauthors[0]->display_name;
|
||||
} else {
|
||||
return $the_author;
|
||||
}
|
||||
}
|
||||
|
||||
function action_add_rss_guest_authors() {
|
||||
$coauthors = get_coauthors();
|
||||
|
||||
// remove the first guest author who is added to the first dc:creator element
|
||||
array_shift( $coauthors );
|
||||
|
||||
foreach ( $coauthors as $coauthor ) {
|
||||
echo ' <dc:creator><![CDATA[' . esc_html( $coauthor->display_name ) . "]]></dc:creator>\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,290 @@
|
||||
<?php
|
||||
//Our class extends the WP_List_Table class, so we need to make sure that it's there
|
||||
|
||||
require_once( ABSPATH . 'wp-admin/includes/screen.php' );
|
||||
require_once( ABSPATH . 'wp-admin/includes/class-wp-list-table.php' );
|
||||
|
||||
/**
|
||||
* List all of the available Co-Authors within the system
|
||||
*/
|
||||
class CoAuthors_WP_List_Table extends WP_List_Table {
|
||||
|
||||
var $is_search = false;
|
||||
|
||||
function __construct() {
|
||||
if ( ! empty( $_REQUEST['s'] ) ) {
|
||||
$this->is_search = true;
|
||||
}
|
||||
|
||||
parent::__construct( array(
|
||||
'plural' => __( 'Co-Authors', 'co-authors-plus' ),
|
||||
'singular' => __( 'Co-Author', 'co-authors-plus' ),
|
||||
) );
|
||||
}
|
||||
|
||||
/**
|
||||
* Perform Co-Authors Query
|
||||
*/
|
||||
function prepare_items() {
|
||||
global $coauthors_plus;
|
||||
|
||||
$columns = $this->get_columns();
|
||||
$hidden = array();
|
||||
$sortable = array(
|
||||
'display_name' => array( 'display_name', 'ASC' ),
|
||||
'first_name' => array( 'first_name', 'ASC' ),
|
||||
'last_name' => array( 'last_name', 'ASC' ),
|
||||
);
|
||||
$_sortable = apply_filters( 'coauthors_guest_author_sortable_columns', $this->get_sortable_columns() );
|
||||
|
||||
foreach ( (array) $_sortable as $id => $data ) {
|
||||
if ( empty( $data ) ) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$data = (array) $data;
|
||||
if ( ! isset( $data[1] ) ) {
|
||||
$data[1] = false;
|
||||
}
|
||||
|
||||
$sortable[ $id ] = $data;
|
||||
}
|
||||
|
||||
$this->_column_headers = array( $columns, $hidden, $sortable );
|
||||
|
||||
$paged = ( isset( $_REQUEST['paged'] ) ) ? intval( $_REQUEST['paged'] ) : 1;
|
||||
$per_page = 20;
|
||||
|
||||
$args = array(
|
||||
'paged' => $paged,
|
||||
'posts_per_page' => $per_page,
|
||||
'post_type' => $coauthors_plus->guest_authors->post_type,
|
||||
'post_status' => 'any',
|
||||
'orderby' => 'title',
|
||||
'order' => 'ASC',
|
||||
);
|
||||
|
||||
$args = apply_filters( 'coauthors_guest_author_query_args', $args );
|
||||
|
||||
if ( isset( $_REQUEST['orderby'] ) ) {
|
||||
switch ( $_REQUEST['orderby'] ) {
|
||||
case 'display_name':
|
||||
$args['orderby'] = 'title';
|
||||
break;
|
||||
case 'first_name':
|
||||
case 'last_name':
|
||||
$args['orderby'] = 'meta_value';
|
||||
$args['meta_key'] = $coauthors_plus->guest_authors->get_post_meta_key( $_REQUEST['orderby'] );
|
||||
break;
|
||||
}
|
||||
}
|
||||
if ( isset( $_REQUEST['order'] ) && in_array( strtoupper( $_REQUEST['order'] ), array( 'ASC', 'DESC' ) ) ) {
|
||||
$args['order'] = strtoupper( $_REQUEST['order'] );
|
||||
}
|
||||
|
||||
$this->filters = array(
|
||||
'show-all' => __( 'Show all', 'co-authors-plus' ),
|
||||
'with-linked-account' => __( 'With linked account', 'co-authors-plus' ),
|
||||
'without-linked-account' => __( 'Without linked account', 'co-authors-plus' ),
|
||||
);
|
||||
|
||||
if ( isset( $_REQUEST['filter'] ) && array_key_exists( $_REQUEST['filter'], $this->filters ) ) {
|
||||
$this->active_filter = sanitize_key( $_REQUEST['filter'] );
|
||||
} else {
|
||||
$this->active_filter = 'show-all';
|
||||
}
|
||||
|
||||
switch ( $this->active_filter ) {
|
||||
case 'with-linked-account':
|
||||
case 'without-linked-account':
|
||||
$args['meta_key'] = $coauthors_plus->guest_authors->get_post_meta_key( 'linked_account' );
|
||||
if ( 'with-linked-account' == $this->active_filter ) {
|
||||
$args['meta_compare'] = '!=';
|
||||
} else {
|
||||
$args['meta_compare'] = '=';
|
||||
}
|
||||
$args['meta_value'] = '0';
|
||||
break;
|
||||
}
|
||||
|
||||
if ( $this->is_search ) {
|
||||
add_filter( 'posts_where', array( $this, 'filter_query_for_search' ) );
|
||||
}
|
||||
|
||||
$author_posts = new WP_Query( $args );
|
||||
$items = array();
|
||||
foreach ( $author_posts->get_posts() as $author_post ) {
|
||||
$items[] = $coauthors_plus->guest_authors->get_guest_author_by( 'ID', $author_post->ID );
|
||||
}
|
||||
|
||||
if ( $this->is_search ) {
|
||||
remove_filter( 'posts_where', array( $this, 'filter_query_for_search' ) );
|
||||
}
|
||||
|
||||
$this->items = $items;
|
||||
|
||||
$this->set_pagination_args( array(
|
||||
'total_items' => $author_posts->found_posts,
|
||||
'per_page' => $per_page,
|
||||
) );
|
||||
}
|
||||
|
||||
function filter_query_for_search( $where ) {
|
||||
global $wpdb;
|
||||
$var = '%' . sanitize_text_field( $_REQUEST['s'] ) . '%';
|
||||
$where .= $wpdb->prepare( ' AND (post_title LIKE %s OR post_name LIKE %s )', $var, $var );
|
||||
return $where;
|
||||
}
|
||||
|
||||
/**
|
||||
* Either there are no co-authors, or the search doesn't match any
|
||||
*/
|
||||
function no_items() {
|
||||
esc_html_e( 'No matching co-authors were found.', 'co-authors-plus' );
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate the columns of information to be displayed on our list table
|
||||
*/
|
||||
function get_columns() {
|
||||
$columns = array(
|
||||
'display_name' => __( 'Display Name', 'co-authors-plus' ),
|
||||
'first_name' => __( 'First Name', 'co-authors-plus' ),
|
||||
'last_name' => __( 'Last Name', 'co-authors-plus' ),
|
||||
'user_email' => __( 'E-mail', 'co-authors-plus' ),
|
||||
'linked_account' => __( 'Linked Account', 'co-authors-plus' ),
|
||||
'posts' => __( 'Posts', 'co-authors-plus' ),
|
||||
);
|
||||
|
||||
$columns = apply_filters( 'coauthors_guest_author_manage_columns', $columns );
|
||||
return $columns;
|
||||
}
|
||||
|
||||
/**
|
||||
* Render a single row
|
||||
*/
|
||||
function single_row( $item ) {
|
||||
static $alternate_class = '';
|
||||
$alternate_class = ( '' === $alternate_class ? ' alternate' : '' );
|
||||
$row_class = 'guest-author-static' . $alternate_class . '"';
|
||||
|
||||
echo '<tr id="' . esc_attr( 'guest-author-' . $item->ID ) . '" class="' . esc_attr( $row_class ) . '">';
|
||||
$this->single_row_columns( $item );
|
||||
echo '</tr>';
|
||||
}
|
||||
|
||||
/**
|
||||
* Render columns, some are overridden below
|
||||
*/
|
||||
function column_default( $item, $column_name ) {
|
||||
|
||||
switch ( $column_name ) {
|
||||
case 'first_name':
|
||||
case 'last_name':
|
||||
return $item->$column_name;
|
||||
case 'user_email':
|
||||
return '<a href="' . esc_attr( 'mailto:' . $item->user_email ) . '">' . esc_html( $item->user_email ) . '</a>';
|
||||
|
||||
default:
|
||||
do_action( 'coauthors_guest_author_custom_columns', $column_name, $item->ID );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Render display name, e.g. author name
|
||||
*/
|
||||
function column_display_name( $item ) {
|
||||
|
||||
$item_edit_link = get_edit_post_link( $item->ID );
|
||||
$args = array(
|
||||
'action' => 'delete',
|
||||
'id' => $item->ID,
|
||||
'_wpnonce' => wp_create_nonce( 'guest-author-delete' ),
|
||||
);
|
||||
$item_delete_link = add_query_arg( array_map( 'rawurlencode', $args ), menu_page_url( 'view-guest-authors', false ) );
|
||||
$item_view_link = get_author_posts_url( $item->ID, $item->user_nicename );
|
||||
|
||||
$output = '';
|
||||
|
||||
$output .= coauthors_get_avatar( $item, 32 );
|
||||
|
||||
if ( current_user_can( 'edit_post', $item->ID ) ) {
|
||||
$output .= '<a href="' . esc_url( $item_edit_link ) . '">' . esc_html( $item->display_name ) . '</a>';
|
||||
} else {
|
||||
$output .= esc_html( $item->display_name );
|
||||
}
|
||||
|
||||
$actions = array();
|
||||
if ( current_user_can( 'edit_post', $item->ID ) ) {
|
||||
$actions['edit'] = '<a href="' . esc_url( $item_edit_link ) . '">' . __( 'Edit', 'co-authors-plus' ) . '</a>';
|
||||
}
|
||||
if ( current_user_can( 'delete_post', $item->ID ) ) {
|
||||
$actions['delete'] = '<a href="' . esc_url( $item_delete_link ) . '">' . __( 'Delete', 'co-authors-plus' ) . '</a>';
|
||||
}
|
||||
$actions['view'] = '<a href="' . esc_url( $item_view_link ) . '">' . __( 'View Posts', 'co-authors-plus' ) . '</a>';
|
||||
$actions = apply_filters( 'coauthors_guest_author_row_actions', $actions, $item );
|
||||
$output .= $this->row_actions( $actions, false );
|
||||
|
||||
return $output;
|
||||
}
|
||||
|
||||
/**
|
||||
* Render linked account
|
||||
*/
|
||||
function column_linked_account( $item ) {
|
||||
if ( $item->linked_account ) {
|
||||
$account = get_user_by( 'login', $item->linked_account );
|
||||
if ( $account ) {
|
||||
if ( current_user_can( 'edit_users' ) ) {
|
||||
return '<a href="' . admin_url( 'user-edit.php?user_id=' . $account->ID ) . '">' . esc_html( $item->linked_account ) . '</a>';
|
||||
}
|
||||
return $item->linked_account;
|
||||
}
|
||||
}
|
||||
return '';
|
||||
}
|
||||
|
||||
/**
|
||||
* Render the published post count column
|
||||
*/
|
||||
function column_posts( $item ) {
|
||||
global $coauthors_plus;
|
||||
$count = $coauthors_plus->get_guest_author_post_count( $item );
|
||||
|
||||
if ( ! empty( $item->linked_account ) ) {
|
||||
global $coauthors_plus;
|
||||
// Add user term count to guest author term count.
|
||||
$term = get_term_by( 'slug', 'cap-' . $item->linked_account, $coauthors_plus->coauthor_taxonomy );
|
||||
if ( is_object( $term ) ) {
|
||||
$count = $count + $term->count;
|
||||
}
|
||||
}
|
||||
return '<a href="' . esc_url( add_query_arg( 'author_name', rawurlencode( $item->user_login ), admin_url( 'edit.php' ) ) ) . '">' . $count . '</a>';
|
||||
}
|
||||
|
||||
/**
|
||||
* Allow users to filter the guest authors by various criteria
|
||||
*/
|
||||
function extra_tablenav( $which ) {
|
||||
|
||||
?><div class="alignleft actions"><?php
|
||||
if ( 'top' == $which ) {
|
||||
if ( ! empty( $this->filters ) ) {
|
||||
echo '<select name="filter">';
|
||||
foreach ( $this->filters as $key => $value ) {
|
||||
echo '<option value="' . esc_attr( $key ) . '" ' . selected( $this->active_filter, $key, false ) . '>' . esc_attr( $value ) . '</option>';
|
||||
}
|
||||
echo '</select>';
|
||||
}
|
||||
submit_button( __( 'Filter', 'co-authors-plus' ), 'secondary', false, false );
|
||||
}
|
||||
?></div><?php
|
||||
}
|
||||
|
||||
function display() {
|
||||
global $coauthors_plus;
|
||||
$this->search_box( $coauthors_plus->guest_authors->labels['search_items'], 'guest-authors' );
|
||||
parent::display();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,909 @@
|
||||
<?php
|
||||
/**
|
||||
* Co-Authors Plus commands for the WP-CLI framework
|
||||
*
|
||||
* @package wp-cli
|
||||
* @since 3.0
|
||||
* @see https://github.com/wp-cli/wp-cli
|
||||
*/
|
||||
WP_CLI::add_command( 'co-authors-plus', 'CoAuthorsPlus_Command' );
|
||||
|
||||
class CoAuthorsPlus_Command extends WP_CLI_Command {
|
||||
|
||||
/**
|
||||
* Subcommand to create guest authors based on users
|
||||
*
|
||||
* @since 3.0
|
||||
*
|
||||
* @subcommand create-guest-authors
|
||||
*/
|
||||
public function create_guest_authors( $args, $assoc_args ) {
|
||||
global $coauthors_plus;
|
||||
|
||||
$defaults = array(
|
||||
// There are no arguments at this time
|
||||
);
|
||||
$this->args = wp_parse_args( $assoc_args, $defaults );
|
||||
|
||||
$users = get_users();
|
||||
$created = 0;
|
||||
$skipped = 0;
|
||||
$progress = \WP_CLI\Utils\make_progress_bar( 'Processing guest authors...', count ( $users ) );
|
||||
foreach ( $users as $user ) {
|
||||
|
||||
$result = $coauthors_plus->guest_authors->create_guest_author_from_user_id( $user->ID );
|
||||
if ( is_wp_error( $result ) ) {
|
||||
$skipped++;
|
||||
} else {
|
||||
$created++;
|
||||
}
|
||||
$progress->tick();
|
||||
}
|
||||
$progress->finish();
|
||||
WP_CLI::line( 'All done! Here are your results:' );
|
||||
WP_CLI::line( "- {$created} guest author profiles were created" );
|
||||
WP_CLI::line( "- {$skipped} users already had guest author profiles" );
|
||||
}
|
||||
|
||||
/**
|
||||
* Create author terms for all posts that don't have them
|
||||
*
|
||||
* @subcommand create-terms-for-posts
|
||||
*/
|
||||
public function create_terms_for_posts() {
|
||||
global $coauthors_plus, $wp_post_types;
|
||||
|
||||
// Cache these to prevent repeated lookups
|
||||
$authors = array();
|
||||
$author_terms = array();
|
||||
|
||||
$args = array(
|
||||
'order' => 'ASC',
|
||||
'orderby' => 'ID',
|
||||
'post_type' => $coauthors_plus->supported_post_types,
|
||||
'posts_per_page' => 100,
|
||||
'paged' => 1,
|
||||
'update_meta_cache' => false,
|
||||
);
|
||||
|
||||
$posts = new WP_Query( $args );
|
||||
$affected = 0;
|
||||
$count = 0;
|
||||
$total_posts = $posts->found_posts;
|
||||
WP_CLI::line( "Now inspecting or updating {$posts->found_posts} total posts." );
|
||||
while ( $posts->post_count ) {
|
||||
|
||||
foreach ( $posts->posts as $single_post ) {
|
||||
|
||||
$count++;
|
||||
|
||||
$terms = cap_get_coauthor_terms_for_post( $single_post->ID );
|
||||
if ( empty( $terms ) ) {
|
||||
WP_CLI::line( sprintf( 'No co-authors found for post #%d.', $single_post->ID ) );
|
||||
}
|
||||
|
||||
if ( ! empty( $terms ) ) {
|
||||
WP_CLI::line( "{$count}/{$posts->found_posts}) Skipping - Post #{$single_post->ID} '{$single_post->post_title}' already has these terms: " . implode( ', ', wp_list_pluck( $terms, 'name' ) ) );
|
||||
continue;
|
||||
}
|
||||
|
||||
$author = ( ! empty( $authors[ $single_post->post_author ] ) ) ? $authors[ $single_post->post_author ] : get_user_by( 'id', $single_post->post_author );
|
||||
$authors[ $single_post->post_author ] = $author;
|
||||
|
||||
$author_term = ( ! empty( $author_terms[ $single_post->post_author ] ) ) ? $author_terms[ $single_post->post_author ] : $coauthors_plus->update_author_term( $author );
|
||||
$author_terms[ $single_post->post_author ] = $author_term;
|
||||
|
||||
wp_set_post_terms( $single_post->ID, array( $author_term->slug ), $coauthors_plus->coauthor_taxonomy );
|
||||
WP_CLI::line( "{$count}/{$total_posts}) Added - Post #{$single_post->ID} '{$single_post->post_title}' now has an author term for: " . $author->user_nicename );
|
||||
$affected++;
|
||||
}
|
||||
|
||||
if ( $count && 0 === $count % 500 ) {
|
||||
$this->stop_the_insanity();
|
||||
sleep( 1 );
|
||||
}
|
||||
|
||||
$args['paged']++;
|
||||
$posts = new WP_Query( $args );
|
||||
}
|
||||
WP_CLI::line( 'Updating author terms with new counts' );
|
||||
foreach ( $authors as $author ) {
|
||||
$coauthors_plus->update_author_term( $author );
|
||||
}
|
||||
|
||||
WP_CLI::success( "Done! Of {$total_posts} posts, {$affected} now have author terms." );
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Subcommand to assign co-authors to a post based on a given meta key
|
||||
*
|
||||
* @since 3.0
|
||||
*
|
||||
* @subcommand assign-coauthors
|
||||
* @synopsis [--meta_key=<key>] [--post_type=<ptype>] [--append_coauthors]
|
||||
*/
|
||||
public function assign_coauthors( $args, $assoc_args ) {
|
||||
global $coauthors_plus;
|
||||
|
||||
$defaults = array(
|
||||
'meta_key' => '_original_import_author',
|
||||
'post_type' => 'post',
|
||||
'order' => 'ASC',
|
||||
'orderby' => 'ID',
|
||||
'posts_per_page' => 100,
|
||||
'paged' => 1,
|
||||
'append_coauthors' => false,
|
||||
);
|
||||
$this->args = wp_parse_args( $assoc_args, $defaults );
|
||||
|
||||
// For global use and not a part of WP_Query
|
||||
$append_coauthors = $this->args['append_coauthors'];
|
||||
unset( $this->args['append_coauthors'] );
|
||||
|
||||
$posts_total = 0;
|
||||
$posts_already_associated = 0;
|
||||
$posts_missing_coauthor = 0;
|
||||
$posts_associated = 0;
|
||||
$missing_coauthors = array();
|
||||
|
||||
$posts = new WP_Query( $this->args );
|
||||
while ( $posts->post_count ) {
|
||||
|
||||
foreach ( $posts->posts as $single_post ) {
|
||||
$posts_total++;
|
||||
|
||||
// See if the value in the post meta field is the same as any of the existing coauthors
|
||||
$original_author = get_post_meta( $single_post->ID, $this->args['meta_key'], true );
|
||||
$existing_coauthors = get_coauthors( $single_post->ID );
|
||||
$already_associated = false;
|
||||
foreach ( $existing_coauthors as $existing_coauthor ) {
|
||||
if ( $original_author == $existing_coauthor->user_login ) {
|
||||
$already_associated = true;
|
||||
}
|
||||
}
|
||||
if ( $already_associated ) {
|
||||
$posts_already_associated++;
|
||||
WP_CLI::line( $posts_total . ': Post #' . $single_post->ID . ' already has "' . $original_author . '" associated as a coauthor' );
|
||||
continue;
|
||||
}
|
||||
|
||||
// Make sure this original author exists as a co-author
|
||||
if ( ( ! $coauthor = $coauthors_plus->get_coauthor_by( 'user_login', $original_author ) ) &&
|
||||
( ! $coauthor = $coauthors_plus->get_coauthor_by( 'user_login', sanitize_title( $original_author ) ) ) ) {
|
||||
$posts_missing_coauthor++;
|
||||
$missing_coauthors[] = $original_author;
|
||||
WP_CLI::line( $posts_total . ': Post #' . $single_post->ID . ' does not have "' . $original_author . '" associated as a coauthor but there is not a coauthor profile' );
|
||||
continue;
|
||||
}
|
||||
|
||||
// Assign the coauthor to the post
|
||||
$coauthors_plus->add_coauthors( $single_post->ID, array( $coauthor->user_nicename ), $append_coauthors );
|
||||
WP_CLI::line( $posts_total . ': Post #' . $single_post->ID . ' has been assigned "' . $original_author . '" as the author' );
|
||||
$posts_associated++;
|
||||
clean_post_cache( $single_post->ID );
|
||||
}
|
||||
|
||||
$this->args['paged']++;
|
||||
$this->stop_the_insanity();
|
||||
$posts = new WP_Query( $this->args );
|
||||
}
|
||||
|
||||
WP_CLI::line( 'All done! Here are your results:' );
|
||||
if ( $posts_already_associated ) {
|
||||
WP_CLI::line( "- {$posts_already_associated} posts already had the coauthor assigned" );
|
||||
}
|
||||
if ( $posts_missing_coauthor ) {
|
||||
WP_CLI::line( "- {$posts_missing_coauthor} posts reference coauthors that don't exist. These are:" );
|
||||
WP_CLI::line( ' ' . implode( ', ', array_unique( $missing_coauthors ) ) );
|
||||
}
|
||||
if ( $posts_associated ) {
|
||||
WP_CLI::line( "- {$posts_associated} posts now have the proper coauthor" );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Assign posts associated with a WordPress user to a co-author
|
||||
* Only apply the changes if there aren't yet co-authors associated with the post
|
||||
*
|
||||
* @since 3.0
|
||||
*
|
||||
* @subcommand assign-user-to-coauthor
|
||||
* @synopsis --user_login=<user-login> --coauthor=<coauthor>
|
||||
*/
|
||||
public function assign_user_to_coauthor( $args, $assoc_args ) {
|
||||
global $coauthors_plus, $wpdb;
|
||||
|
||||
$defaults = array(
|
||||
'user_login' => '',
|
||||
'coauthor' => '',
|
||||
);
|
||||
$assoc_args = wp_parse_args( $assoc_args, $defaults );
|
||||
|
||||
$user = get_user_by( 'login', $assoc_args['user_login'] );
|
||||
$coauthor = $coauthors_plus->get_coauthor_by( 'login', $assoc_args['coauthor'] );
|
||||
|
||||
if ( ! $user ) {
|
||||
WP_CLI::error( __( 'Please specify a valid user_login', 'co-authors-plus' ) );
|
||||
}
|
||||
|
||||
if ( ! $coauthor ) {
|
||||
WP_CLI::error( __( 'Please specify a valid co-author login', 'co-authors-plus' ) );
|
||||
}
|
||||
|
||||
$post_types = implode( "','", $coauthors_plus->supported_post_types );
|
||||
$posts = $wpdb->get_col( $wpdb->prepare( "SELECT ID FROM $wpdb->posts WHERE post_author=%d AND post_type IN ('$post_types')", $user->ID ) );
|
||||
$affected = 0;
|
||||
foreach ( $posts as $post_id ) {
|
||||
$coauthors = cap_get_coauthor_terms_for_post( $post_id );
|
||||
if ( ! empty( $coauthors ) ) {
|
||||
WP_CLI::line( sprintf(
|
||||
__( 'Skipping - Post #%d already has co-authors assigned: %s', 'co-authors-plus' ),
|
||||
$post_id,
|
||||
implode( ', ', wp_list_pluck( $coauthors, 'slug' ) )
|
||||
) );
|
||||
continue;
|
||||
}
|
||||
|
||||
$coauthors_plus->add_coauthors( $post_id, array( $coauthor->user_login ) );
|
||||
WP_CLI::line( sprintf( __( "Updating - Adding %s's byline to post #%d", 'co-authors-plus' ), $coauthor->user_login, $post_id ) );
|
||||
$affected++;
|
||||
if ( $affected && 0 === $affected % 100 ) {
|
||||
sleep( 2 );
|
||||
}
|
||||
}
|
||||
WP_CLI::success( sprintf( __( 'All done! %d posts were affected.', 'co-authors-plus' ), $affected ) );
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Subcommand to reassign co-authors based on some given format
|
||||
* This will look for terms with slug 'x' and rename to term with slug and name 'y'
|
||||
* This subcommand can be helpful for cleaning up after an import if the usernames
|
||||
* for authors have changed. During the import process, 'author' terms will be
|
||||
* created with the old user_login value. We can use this to migrate to the new user_login
|
||||
*
|
||||
* @todo support reassigning by CSV
|
||||
*
|
||||
* @since 3.0
|
||||
*
|
||||
* @subcommand reassign-terms
|
||||
* @synopsis [--author-mapping=<file>] [--old_term=<slug>] [--new_term=<slug>]
|
||||
*/
|
||||
public function reassign_terms( $args, $assoc_args ) {
|
||||
global $coauthors_plus;
|
||||
|
||||
$defaults = array(
|
||||
'author_mapping' => null,
|
||||
'old_term' => null,
|
||||
'new_term' => null,
|
||||
);
|
||||
$this->args = wp_parse_args( $assoc_args, $defaults );
|
||||
|
||||
$author_mapping = $this->args['author_mapping'];
|
||||
$old_term = $this->args['old_term'];
|
||||
$new_term = $this->args['new_term'];
|
||||
|
||||
// Get the reassignment data
|
||||
if ( $author_mapping && file_exists( $author_mapping ) ) {
|
||||
require_once( $author_mapping );
|
||||
$authors_to_migrate = $cli_user_map;
|
||||
} else if ( $author_mapping ) {
|
||||
WP_CLI::error( "author_mapping doesn't exist: " . $author_mapping );
|
||||
exit;
|
||||
}
|
||||
|
||||
// Alternate reassigment approach
|
||||
if ( $old_term && $new_term ) {
|
||||
$authors_to_migrate = array(
|
||||
$old_term => $new_term,
|
||||
);
|
||||
}
|
||||
|
||||
// For each author to migrate, check whether the term exists,
|
||||
// whether the target term exists, and only do the migration if both are met
|
||||
$results = (object) array(
|
||||
'old_term_missing' => 0,
|
||||
'new_term_exists' => 0,
|
||||
'success' => 0,
|
||||
);
|
||||
foreach ( $authors_to_migrate as $old_user => $new_user ) {
|
||||
|
||||
if ( is_numeric( $new_user ) ) {
|
||||
$new_user = get_user_by( 'id', $new_user )->user_login;
|
||||
}
|
||||
|
||||
// The old user should exist as a term
|
||||
$old_term = $coauthors_plus->get_author_term( $coauthors_plus->get_coauthor_by( 'login', $old_user ) );
|
||||
if ( ! $old_term ) {
|
||||
WP_CLI::line( "Error: Term '{$old_user}' doesn't exist, skipping" );
|
||||
$results->old_term_missing++;
|
||||
continue;
|
||||
}
|
||||
|
||||
// If the new user exists as a term already, we want to reassign all posts to that
|
||||
// new term and delete the original
|
||||
// Otherwise, simply rename the old term
|
||||
$new_term = $coauthors_plus->get_author_term( $coauthors_plus->get_coauthor_by( 'login', $new_user ) );
|
||||
if ( is_object( $new_term ) ) {
|
||||
WP_CLI::line( "Success: There's already a '{$new_user}' term for '{$old_user}'. Reassigning {$old_term->count} posts and then deleting the term" );
|
||||
$args = array(
|
||||
'default' => $new_term->term_id,
|
||||
'force_default' => true,
|
||||
);
|
||||
wp_delete_term( $old_term->term_id, $coauthors_plus->coauthor_taxonomy, $args );
|
||||
$results->new_term_exists++;
|
||||
} else {
|
||||
$args = array(
|
||||
'slug' => $new_user,
|
||||
'name' => $new_user,
|
||||
);
|
||||
wp_update_term( $old_term->term_id, $coauthors_plus->coauthor_taxonomy, $args );
|
||||
WP_CLI::line( "Success: Converted '{$old_user}' term to '{$new_user}'" );
|
||||
$results->success++;
|
||||
}
|
||||
clean_term_cache( $old_term->term_id, $coauthors_plus->coauthor_taxonomy );
|
||||
}
|
||||
|
||||
WP_CLI::line( 'Reassignment complete. Here are your results:' );
|
||||
WP_CLI::line( "- $results->success authors were successfully reassigned terms" );
|
||||
WP_CLI::line( "- $results->new_term_exists authors had their old term merged to their new term" );
|
||||
WP_CLI::line( "- $results->old_term_missing authors were missing old terms" );
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Change a term from representing one user_login value to another
|
||||
* If the term represents a guest author, the post_name will be changed
|
||||
* in addition to the term slug/name
|
||||
*
|
||||
* @since 3.0.1
|
||||
*
|
||||
* @subcommand rename-coauthor
|
||||
* @synopsis --from=<user-login> --to=<user-login>
|
||||
*/
|
||||
public function rename_coauthor( $args, $assoc_args ) {
|
||||
global $coauthors_plus, $wpdb;
|
||||
|
||||
$defaults = array(
|
||||
'from' => null,
|
||||
'to' => null,
|
||||
);
|
||||
$assoc_args = array_merge( $defaults, $assoc_args );
|
||||
|
||||
$to_userlogin = $assoc_args['to'];
|
||||
$to_userlogin_prefixed = 'cap-' . $to_userlogin;
|
||||
|
||||
$orig_coauthor = $coauthors_plus->get_coauthor_by( 'user_login', $assoc_args['from'] );
|
||||
if ( ! $orig_coauthor ) {
|
||||
WP_CLI::error( "No co-author found for {$assoc_args['from']}" );
|
||||
}
|
||||
|
||||
if ( ! $to_userlogin ) {
|
||||
WP_CLI::error( '--to param must not be empty' );
|
||||
}
|
||||
|
||||
if ( $coauthors_plus->get_coauthor_by( 'user_login', $to_userlogin ) ) {
|
||||
WP_CLI::error( 'New user_login value conflicts with existing co-author' );
|
||||
}
|
||||
|
||||
$orig_term = $coauthors_plus->get_author_term( $orig_coauthor );
|
||||
|
||||
WP_CLI::line( "Renaming {$orig_term->name} to {$to_userlogin}" );
|
||||
$rename_args = array(
|
||||
'name' => $to_userlogin,
|
||||
'slug' => $to_userlogin_prefixed,
|
||||
);
|
||||
wp_update_term( $orig_term->term_id, $coauthors_plus->coauthor_taxonomy, $rename_args );
|
||||
|
||||
if ( 'guest-author' == $orig_coauthor->type ) {
|
||||
$wpdb->update( $wpdb->posts, array( 'post_name' => $to_userlogin_prefixed ), array( 'ID' => $orig_coauthor->ID ) );
|
||||
clean_post_cache( $orig_coauthor->ID );
|
||||
update_post_meta( $orig_coauthor->ID, 'cap-user_login', $to_userlogin );
|
||||
$coauthors_plus->guest_authors->delete_guest_author_cache( $orig_coauthor->ID );
|
||||
WP_CLI::line( 'Updated guest author profile value too' );
|
||||
}
|
||||
|
||||
WP_CLI::success( 'All done!' );
|
||||
}
|
||||
|
||||
/**
|
||||
* Swap one co-author with another on all posts for which they are a co-author. Unlike rename-coauthor,
|
||||
* this leaves the original co-author term intact and works when the 'to' user already has a co-author term.
|
||||
*
|
||||
* @subcommand swap-coauthors
|
||||
* @synopsis --from=<user-login> --to=<user-login> [--post_type=<ptype>] [--dry=<dry>]
|
||||
*/
|
||||
public function swap_coauthors( $args, $assoc_args ) {
|
||||
global $coauthors_plus, $wpdb;
|
||||
|
||||
$defaults = array(
|
||||
'from' => null,
|
||||
'to' => null,
|
||||
'post_type' => 'post',
|
||||
'dry' => false,
|
||||
);
|
||||
|
||||
$assoc_args = array_merge( $defaults, $assoc_args );
|
||||
|
||||
$dry = $assoc_args['dry'];
|
||||
|
||||
$from_userlogin = $assoc_args['from'];
|
||||
$to_userlogin = $assoc_args['to'];
|
||||
|
||||
$from_userlogin_prefixed = 'cap-' . $from_userlogin;
|
||||
$to_userlogin_prefixed = 'cap-' . $to_userlogin;
|
||||
|
||||
$orig_coauthor = $coauthors_plus->get_coauthor_by( 'user_login', $from_userlogin );
|
||||
|
||||
if ( ! $orig_coauthor ) {
|
||||
WP_CLI::error( "No co-author found for $from_userlogin" );
|
||||
}
|
||||
|
||||
if ( ! $to_userlogin ) {
|
||||
WP_CLI::error( '--to param must not be empty' );
|
||||
}
|
||||
|
||||
$to_coauthor = $coauthors_plus->get_coauthor_by( 'user_login', $to_userlogin );
|
||||
|
||||
if ( ! $to_coauthor ) {
|
||||
WP_CLI::error( "No co-author found for $to_userlogin" );
|
||||
}
|
||||
|
||||
WP_CLI::line( "Swapping authorship from {$from_userlogin} to {$to_userlogin}" );
|
||||
|
||||
$query_args = array(
|
||||
'post_type' => $assoc_args['post_type'],
|
||||
'order' => 'ASC',
|
||||
'orderby' => 'ID',
|
||||
'posts_per_page' => 100,
|
||||
'paged' => 1,
|
||||
'tax_query' => array(
|
||||
array(
|
||||
'taxonomy' => $coauthors_plus->coauthor_taxonomy,
|
||||
'field' => 'slug',
|
||||
'terms' => array( $from_userlogin_prefixed ),
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
$posts = new WP_Query( $query_args );
|
||||
|
||||
$posts_total = 0;
|
||||
|
||||
WP_CLI::line( "Found $posts->found_posts posts to update." );
|
||||
|
||||
while ( $posts->post_count ) {
|
||||
foreach ( $posts->posts as $post ) {
|
||||
$coauthors = get_coauthors( $post->ID );
|
||||
|
||||
if ( ! is_array( $coauthors ) || ! count( $coauthors ) ) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$coauthors = wp_list_pluck( $coauthors, 'user_login' );
|
||||
|
||||
$posts_total++;
|
||||
|
||||
if ( ! $dry ) {
|
||||
// Remove the $from_userlogin from $coauthors
|
||||
foreach ( $coauthors as $index => $user_login ) {
|
||||
if ( $from_userlogin === $user_login ) {
|
||||
unset( $coauthors[ $index ] );
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// Add the 'to' author on
|
||||
$coauthors[] = $to_userlogin;
|
||||
|
||||
// By not passing $append = false as the 3rd param, we replace all existing coauthors
|
||||
$coauthors_plus->add_coauthors( $post->ID, $coauthors, false );
|
||||
|
||||
WP_CLI::line( $posts_total . ': Post #' . $post->ID . ' has been assigned "' . $to_userlogin . '" as a co-author' );
|
||||
|
||||
clean_post_cache( $post->ID );
|
||||
} else {
|
||||
WP_CLI::line( $posts_total . ': Post #' . $post->ID . ' will be assigned "' . $to_userlogin . '" as a co-author' );
|
||||
}
|
||||
}
|
||||
|
||||
// In dry mode, we must manually advance the page
|
||||
if ( $dry ) {
|
||||
$query_args['paged']++;
|
||||
}
|
||||
|
||||
$this->stop_the_insanity();
|
||||
|
||||
$posts = new WP_Query( $query_args );
|
||||
}
|
||||
|
||||
WP_CLI::success( 'All done!' );
|
||||
}
|
||||
|
||||
/**
|
||||
* List all of the posts without assigned co-authors terms
|
||||
*
|
||||
* @since 3.0
|
||||
*
|
||||
* @subcommand list-posts-without-terms
|
||||
* @synopsis [--post_type=<ptype>]
|
||||
*/
|
||||
public function list_posts_without_terms( $args, $assoc_args ) {
|
||||
global $coauthors_plus;
|
||||
|
||||
$defaults = array(
|
||||
'post_type' => 'post',
|
||||
'order' => 'ASC',
|
||||
'orderby' => 'ID',
|
||||
'year' => '',
|
||||
'posts_per_page' => 300,
|
||||
'paged' => 1,
|
||||
'no_found_rows' => true,
|
||||
'update_meta_cache' => false,
|
||||
);
|
||||
$this->args = wp_parse_args( $assoc_args, $defaults );
|
||||
|
||||
$posts = new WP_Query( $this->args );
|
||||
while ( $posts->post_count ) {
|
||||
|
||||
foreach ( $posts->posts as $single_post ) {
|
||||
|
||||
$terms = cap_get_coauthor_terms_for_post( $single_post->ID );
|
||||
if ( empty( $terms ) ) {
|
||||
$saved = array(
|
||||
$single_post->ID,
|
||||
addslashes( $single_post->post_title ),
|
||||
get_permalink( $single_post->ID ),
|
||||
$single_post->post_date,
|
||||
);
|
||||
WP_CLI::line( '"' . implode( '","', $saved ) . '"' );
|
||||
}
|
||||
}
|
||||
|
||||
$this->stop_the_insanity();
|
||||
|
||||
$this->args['paged']++;
|
||||
$posts = new WP_Query( $this->args );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Migrate author terms without prefixes to ones with prefixes
|
||||
* Pre-3.0, all author terms didn't have a 'cap-' prefix, which means
|
||||
* they can easily collide with terms in other taxonomies
|
||||
*
|
||||
* @since 3.0
|
||||
*
|
||||
* @subcommand migrate-author-terms
|
||||
*/
|
||||
public function migrate_author_terms( $args, $assoc_args ) {
|
||||
global $coauthors_plus;
|
||||
|
||||
$author_terms = get_terms( $coauthors_plus->coauthor_taxonomy, array( 'hide_empty' => false ) );
|
||||
WP_CLI::line( 'Now migrating up to ' . count( $author_terms ) . ' terms' );
|
||||
foreach ( $author_terms as $author_term ) {
|
||||
// Term is already prefixed. We're good.
|
||||
if ( preg_match( '#^cap\-#', $author_term->slug, $matches ) ) {
|
||||
WP_CLI::line( "Term {$author_term->slug} ({$author_term->term_id}) is already prefixed, skipping" );
|
||||
continue;
|
||||
}
|
||||
// A prefixed term was accidentally created, and the old term needs to be merged into the new (WordPress.com VIP)
|
||||
if ( $prefixed_term = get_term_by( 'slug', 'cap-' . $author_term->slug, $coauthors_plus->coauthor_taxonomy ) ) {
|
||||
WP_CLI::line( "Term {$author_term->slug} ({$author_term->term_id}) has a new term too: $prefixed_term->slug ($prefixed_term->term_id). Merging" );
|
||||
$args = array(
|
||||
'default' => $author_term->term_id,
|
||||
'force_default' => true,
|
||||
);
|
||||
wp_delete_term( $prefixed_term->term_id, $coauthors_plus->coauthor_taxonomy, $args );
|
||||
}
|
||||
|
||||
// Term isn't prefixed, doesn't have a sibling, and should be updated
|
||||
WP_CLI::line( "Term {$author_term->slug} ({$author_term->term_id}) isn't prefixed, adding one" );
|
||||
$args = array(
|
||||
'slug' => 'cap-' . $author_term->slug,
|
||||
);
|
||||
wp_update_term( $author_term->term_id, $coauthors_plus->coauthor_taxonomy, $args );
|
||||
}
|
||||
WP_CLI::success( 'All done! Grab a cold one (Affogatto)' );
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the post count and description for each author and guest author
|
||||
*
|
||||
* @since 3.0
|
||||
*
|
||||
* @subcommand update-author-terms
|
||||
*/
|
||||
public function update_author_terms() {
|
||||
global $coauthors_plus;
|
||||
$author_terms = get_terms( $coauthors_plus->coauthor_taxonomy, array( 'hide_empty' => false ) );
|
||||
WP_CLI::line( 'Now updating ' . count( $author_terms ) . ' terms' );
|
||||
foreach ( $author_terms as $author_term ) {
|
||||
$old_count = $author_term->count;
|
||||
$coauthor = $coauthors_plus->get_coauthor_by( 'user_nicename', $author_term->slug );
|
||||
$coauthors_plus->update_author_term( $coauthor );
|
||||
$coauthors_plus->update_author_term_post_count( $author_term );
|
||||
wp_cache_delete( $author_term->term_id, $coauthors_plus->coauthor_taxonomy );
|
||||
$new_count = get_term_by( 'id', $author_term->term_id, $coauthors_plus->coauthor_taxonomy )->count;
|
||||
WP_CLI::line( "Term {$author_term->slug} ({$author_term->term_id}) changed from {$old_count} to {$new_count} and the description was refreshed" );
|
||||
}
|
||||
// Create author terms for any users that don't have them
|
||||
$users = get_users();
|
||||
foreach ( $users as $user ) {
|
||||
$term = $coauthors_plus->get_author_term( $user );
|
||||
if ( empty( $term ) || empty( $term->description ) ) {
|
||||
$coauthors_plus->update_author_term( $user );
|
||||
WP_CLI::line( "Created author term for {$user->user_login}" );
|
||||
}
|
||||
}
|
||||
|
||||
// And create author terms for any Guest Authors that don't have them
|
||||
if ( $coauthors_plus->is_guest_authors_enabled() && $coauthors_plus->guest_authors instanceof CoAuthors_Guest_Authors ) {
|
||||
$args = array(
|
||||
'order' => 'ASC',
|
||||
'orderby' => 'ID',
|
||||
'post_type' => $coauthors_plus->guest_authors->post_type,
|
||||
'posts_per_page' => 100,
|
||||
'paged' => 1,
|
||||
'update_meta_cache' => false,
|
||||
'fields' => 'ids',
|
||||
);
|
||||
|
||||
$posts = new WP_Query( $args );
|
||||
$count = 0;
|
||||
WP_CLI::line( "Now inspecting or updating {$posts->found_posts} Guest Authors." );
|
||||
|
||||
while ( $posts->post_count ) {
|
||||
foreach ( $posts->posts as $guest_author_id ) {
|
||||
$count++;
|
||||
|
||||
$guest_author = $coauthors_plus->guest_authors->get_guest_author_by( 'ID', $guest_author_id );
|
||||
|
||||
if ( ! $guest_author ) {
|
||||
WP_CLI::line( 'Failed to load guest author ' . $guest_author_id );
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
$term = $coauthors_plus->get_author_term( $guest_author );
|
||||
|
||||
if ( empty( $term ) || empty( $term->description ) ) {
|
||||
$coauthors_plus->update_author_term( $guest_author );
|
||||
|
||||
WP_CLI::line( "Created author term for Guest Author {$guest_author->user_nicename}" );
|
||||
}
|
||||
}
|
||||
|
||||
$this->stop_the_insanity();
|
||||
|
||||
$args['paged']++;
|
||||
$posts = new WP_Query( $args );
|
||||
}
|
||||
}
|
||||
|
||||
WP_CLI::success( 'All done' );
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove author terms from revisions, which we've been adding since the dawn of time
|
||||
*
|
||||
* @since 3.0.1
|
||||
*
|
||||
* @subcommand remove-terms-from-revisions
|
||||
*/
|
||||
public function remove_terms_from_revisions() {
|
||||
global $wpdb;
|
||||
|
||||
$ids = $wpdb->get_col( "SELECT ID FROM $wpdb->posts WHERE post_type='revision' AND post_status='inherit'" );
|
||||
|
||||
WP_CLI::line( 'Found ' . count( $ids ) . ' revisions to look through' );
|
||||
$affected = 0;
|
||||
foreach ( $ids as $post_id ) {
|
||||
|
||||
$terms = cap_get_coauthor_terms_for_post( $post_id );
|
||||
if ( empty( $terms ) ) {
|
||||
continue;
|
||||
}
|
||||
|
||||
WP_CLI::line( "#{$post_id}: Removing " . implode( ',', wp_list_pluck( $terms, 'slug' ) ) );
|
||||
wp_set_post_terms( $post_id, array(), 'author' );
|
||||
$affected++;
|
||||
}
|
||||
WP_CLI::line( "All done! {$affected} revisions had author terms removed" );
|
||||
}
|
||||
|
||||
/**
|
||||
* Subcommand to create guest authors from an author list in a WXR file
|
||||
*
|
||||
* @subcommand create-guest-authors-from-wxr
|
||||
* @synopsis --file=<file>
|
||||
*/
|
||||
public function create_guest_authors_from_wxr( $args, $assoc_args ) {
|
||||
global $coauthors_plus;
|
||||
|
||||
$defaults = array(
|
||||
'file' => '',
|
||||
);
|
||||
$this->args = wp_parse_args( $assoc_args, $defaults );
|
||||
|
||||
if ( empty( $this->args['file'] ) || ! is_readable( $this->args['file'] ) ) {
|
||||
WP_CLI::error( 'Please specify a valid WXR file with the --file arg.' );
|
||||
}
|
||||
|
||||
if ( ! class_exists( 'WXR_Parser' ) ) {
|
||||
require_once( WP_CONTENT_DIR . '/plugins/wordpress-importer/parsers.php' );
|
||||
}
|
||||
|
||||
$parser = new WXR_Parser();
|
||||
$import_data = $parser->parse( $this->args['file'] );
|
||||
|
||||
if ( is_wp_error( $import_data ) ) {
|
||||
WP_CLI::error( 'Failed to read WXR file.' );
|
||||
}
|
||||
|
||||
// Get author nodes
|
||||
$authors = $import_data['authors'];
|
||||
|
||||
foreach ( $authors as $author ) {
|
||||
WP_CLI::line( sprintf( 'Processing author %s (%s)', $author['author_login'], $author['author_email'] ) );
|
||||
|
||||
$guest_author_data = array(
|
||||
'display_name' => $author['author_display_name'],
|
||||
'user_login' => $author['author_login'],
|
||||
'user_email' => $author['author_email'],
|
||||
'first_name' => $author['author_first_name'],
|
||||
'last_name' => $author['author_last_name'],
|
||||
'ID' => $author['author_id'],
|
||||
);
|
||||
|
||||
$guest_author_id = $this->create_guest_author( $guest_author_data );
|
||||
}
|
||||
|
||||
WP_CLI::line( 'All done!' );
|
||||
}
|
||||
|
||||
/**
|
||||
* Subcommand to create guest authors from an author list in a CSV file
|
||||
*
|
||||
* @subcommand create-guest-authors-from-csv
|
||||
* @synopsis --file=<file>
|
||||
*/
|
||||
public function create_guest_authors_from_csv( $args, $assoc_args ) {
|
||||
global $coauthors_plus;
|
||||
|
||||
$defaults = array(
|
||||
'file' => '',
|
||||
);
|
||||
$this->args = wp_parse_args( $assoc_args, $defaults );
|
||||
|
||||
if ( empty( $this->args['file'] ) || ! is_readable( $this->args['file'] ) ) {
|
||||
WP_CLI::error( 'Please specify a valid CSV file with the --file arg.' );
|
||||
}
|
||||
|
||||
$file = fopen( $this->args['file'], 'r' );
|
||||
|
||||
if ( ! $file ) {
|
||||
WP_CLI::error( 'Failed to read file.' );
|
||||
}
|
||||
|
||||
$authors = array();
|
||||
|
||||
$row = 0;
|
||||
while ( false !== ( $data = fgetcsv( $file ) ) ) {
|
||||
if ( 0 === $row ) {
|
||||
$field_keys = array_map( 'trim', $data );
|
||||
// TODO: bail if required fields not found
|
||||
} else {
|
||||
$row_data = array_map( 'trim', $data );
|
||||
$author_data = array();
|
||||
foreach ( (array) $row_data as $col_num => $val ) {
|
||||
// Don't use the value of the field key isn't set
|
||||
if ( empty( $field_keys[ $col_num ] ) ) {
|
||||
continue;
|
||||
}
|
||||
$author_data[ $field_keys[ $col_num ] ] = $val;
|
||||
}
|
||||
|
||||
$authors[] = $author_data;
|
||||
}
|
||||
$row++;
|
||||
}
|
||||
fclose( $file );
|
||||
|
||||
WP_CLI::line( 'Found ' . count( $authors ) . ' authors in CSV' );
|
||||
|
||||
foreach ( $authors as $author ) {
|
||||
WP_CLI::line( sprintf( 'Processing author %s (%s)', $author['user_login'], $author['user_email'] ) );
|
||||
|
||||
$guest_author_data = array(
|
||||
'display_name' => sanitize_text_field( $author['display_name'] ),
|
||||
'user_login' => sanitize_user( $author['user_login'] ),
|
||||
'user_email' => sanitize_email( $author['user_email'] ),
|
||||
'website' => esc_url_raw( $author['website'] ),
|
||||
'description' => wp_filter_post_kses( $author['description'] ),
|
||||
'avatar' => absint( $author['avatar'] ),
|
||||
);
|
||||
|
||||
$display_name_space_pos = strpos( $author['display_name'], ' ' );
|
||||
|
||||
if ( false !== $display_name_space_pos && empty( $author['first_name'] ) && empty( $author['last_name'] ) ) {
|
||||
$first_name = substr( $author['display_name'], 0, $display_name_space_pos );
|
||||
$last_name = substr( $author['display_name'], ( $display_name_space_pos + 1 ) );
|
||||
|
||||
$guest_author_data['first_name'] = sanitize_text_field( $first_name );
|
||||
$guest_author_data['last_name'] = sanitize_text_field( $last_name );
|
||||
} elseif ( ! empty( $author['first_name'] ) && ! empty( $author['last_name'] ) ) {
|
||||
$guest_author_data['first_name'] = sanitize_text_field( $author['first_name'] );
|
||||
$guest_author_data['last_name'] = sanitize_text_field( $author['last_name'] );
|
||||
}
|
||||
|
||||
$guest_author_id = $this->create_guest_author( $guest_author_data );
|
||||
}
|
||||
|
||||
WP_CLI::line( 'All done!' );
|
||||
}
|
||||
|
||||
private function create_guest_author( $author ) {
|
||||
global $coauthors_plus;
|
||||
$guest_author = $coauthors_plus->guest_authors->get_guest_author_by( 'user_email', $author['user_email'], true );
|
||||
|
||||
if ( ! $guest_author ) {
|
||||
$guest_author = $coauthors_plus->guest_authors->get_guest_author_by( 'user_login', $author['user_login'], true );
|
||||
}
|
||||
|
||||
if ( ! $guest_author ) {
|
||||
WP_CLI::line( '-- Not found; creating profile.' );
|
||||
|
||||
$guest_author_id = $coauthors_plus->guest_authors->create( array(
|
||||
'display_name' => $author['display_name'],
|
||||
'user_login' => $author['user_login'],
|
||||
'user_email' => $author['user_email'],
|
||||
'first_name' => $author['first_name'],
|
||||
'last_name' => $author['last_name'],
|
||||
'website' => $author['website'],
|
||||
'description' => $author['description'],
|
||||
'avatar' => $author['avatar'],
|
||||
) );
|
||||
|
||||
if ( $guest_author_id ) {
|
||||
WP_CLI::line( sprintf( '-- Created as guest author #%s', $guest_author_id ) );
|
||||
|
||||
if ( isset( $author['author_id'] ) ) {
|
||||
update_post_meta( $guest_author_id, '_original_author_id', $author['ID'] );
|
||||
}
|
||||
|
||||
update_post_meta( $guest_author_id, '_original_author_login', $author['user_login'] );
|
||||
} else {
|
||||
WP_CLI::warning( '-- Failed to create guest author.' );
|
||||
}
|
||||
} else {
|
||||
WP_CLI::line( sprintf( '-- Author already exists (ID #%s); skipping.', $guest_author->ID ) );
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Clear all of the caches for memory management
|
||||
*/
|
||||
private function stop_the_insanity() {
|
||||
global $wpdb, $wp_object_cache;
|
||||
|
||||
$wpdb->queries = array(); // or define( 'WP_IMPORTING', true );
|
||||
|
||||
if ( ! is_object( $wp_object_cache ) ) {
|
||||
return;
|
||||
}
|
||||
|
||||
$wp_object_cache->group_ops = array();
|
||||
$wp_object_cache->stats = array();
|
||||
$wp_object_cache->memcache_debug = array();
|
||||
$wp_object_cache->cache = array();
|
||||
|
||||
if ( is_callable( $wp_object_cache, '__remoteset' ) ) {
|
||||
$wp_object_cache->__remoteset(); // important
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
<?php
|
||||
|
||||
add_action( 'pre_amp_render_post', 'cap_add_amp_actions' );
|
||||
function cap_add_amp_actions() {
|
||||
add_filter( 'amp_post_template_metadata', 'cap_update_amp_json_metadata', 10, 2 );
|
||||
add_filter( 'amp_post_template_file', 'cap_set_amp_author_meta_template', 10, 3 );
|
||||
}
|
||||
|
||||
function cap_update_amp_json_metadata( $metadata, $post ) {
|
||||
$authors = get_coauthors( $post->ID );
|
||||
|
||||
$authors_json = array();
|
||||
foreach ( $authors as $author ) {
|
||||
$authors_json[] = array(
|
||||
'@type' => 'Person',
|
||||
'name' => $author->display_name,
|
||||
);
|
||||
}
|
||||
$metadata['author'] = $authors_json;
|
||||
|
||||
return $metadata;
|
||||
}
|
||||
|
||||
function cap_set_amp_author_meta_template( $file, $type, $post ) {
|
||||
if ( 'meta-author' === $type ) {
|
||||
$file = dirname( __FILE__ ) . '/amp/meta-author.php';
|
||||
}
|
||||
return $file;
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
<?php $coauthors = get_coauthors( $this->get( 'post_id' ) ); ?>
|
||||
<li class="amp-wp-byline">
|
||||
<?php coauthors(); ?>
|
||||
</li>
|
||||
@@ -0,0 +1,355 @@
|
||||
=== Co-Authors Plus ===
|
||||
Contributors: batmoo, danielbachhuber, automattic
|
||||
Tags: authors, users, multiple authors, coauthors, multi-author, publishing
|
||||
Tested up to: 5.3.1
|
||||
Requires at least: 4.1
|
||||
Stable tag: 3.4.3
|
||||
|
||||
Assign multiple bylines to posts, pages, and custom post types via a search-as-you-type input box
|
||||
|
||||
== Description ==
|
||||
|
||||
Assign multiple bylines to posts, pages, and custom post types via a search-as-you-type input box. Co-authored posts appear on a co-author's archive page and in their feed. Co-authors may edit the posts they are associated with, and co-authors who are contributors may only edit posts if they have not been published (as is core behavior).
|
||||
|
||||
Add writers as bylines without creating WordPress user accounts. Simply [create a guest author profile](http://vip.wordpress.com/documentation/add-guest-bylines-to-your-content-with-co-authors-plus/) for the writer and assign the byline as you normally would.
|
||||
|
||||
On the frontend, use the [Co-Authors Plus template tags](http://vip.wordpress.com/documentation/incorporate-co-authors-plus-template-tags-into-your-theme/) to list co-authors anywhere you'd normally list the author.
|
||||
|
||||
This plugin is an almost complete rewrite of the [Co-Authors](https://wordpress.org/plugins/co-authors/) plugin originally developed by Weston Ruter (2007). The original plugin was inspired by the '[Multiple Authors](https://txfx.net/2005/08/16/new-plugin-multiple-authors/)' plugin by Mark Jaquith (2005).
|
||||
|
||||
== Frequently Asked Questions ==
|
||||
|
||||
= How do I add Co-Authors Plus support to my theme? =
|
||||
|
||||
If you've just installed Co-Authors Plus, you might notice that the bylines are being added in the backend but aren't appearing on the frontend. You'll need to [add the template tags to your theme](http://vip.wordpress.com/documentation/incorporate-co-authors-plus-template-tags-into-your-theme/) before the bylines will appear.
|
||||
|
||||
= What happens to posts and pages when I delete a user assigned to a post or page as a coauthor? =
|
||||
|
||||
When a user is deleted from WordPress, they will be removed from all posts for which they are co-authors. If you chose to reassign their posts to another user, that user will be set as the coauthor instead.
|
||||
|
||||
= Can I use Co-Authors Plus with WordPress multisite? =
|
||||
|
||||
Yep! Co-Authors Plus can be activated on a site-by-site basis, or network-activated. If you create guest authors, however, those guest authors will exist on a site-by-site basis.
|
||||
|
||||
= Who needs permission to do what? =
|
||||
|
||||
To assign co-authors to posts, a WordPress user will need the 'edit_others_posts' capability. This is typically granted to the Editor role, but can be altered with the 'coauthors_plus_edit_authors' filter.
|
||||
|
||||
To create new guest author profiles, a WordPress will need the 'list_users' capability. This is typically granted to the Administrator role, but can be altered with the 'coauthors_guest_author_manage_cap' filter.
|
||||
|
||||
= Can I easily create a list of all co-authors? =
|
||||
|
||||
Yep! There's a template tag called `coauthors_wp_list_authors()` that accepts many of the same arguments as `wp_list_authors()`. Look in template-tags.php for more details.
|
||||
|
||||
= Can I disable Guest Authors?
|
||||
|
||||
Yep! Guest authors can be disabled entirely through an apt filter. Having the following line load on `init` will do the trick:
|
||||
`add_filter( 'coauthors_guest_authors_enabled', '__return_false' )`
|
||||
|
||||
== Upgrade Notice ==
|
||||
|
||||
= 3.1 =
|
||||
Manage co-authors from quick edit, Jetpack Open Graph support, bug fixes.
|
||||
|
||||
= 3.0.7 =
|
||||
Support for symlink installations, updated French translation, bug fixes.
|
||||
|
||||
= 3.0.4 =
|
||||
Bug fixes and the ability to automatically add co-authors to your feeds.
|
||||
|
||||
= 3.0.1 =
|
||||
Bug fixes and minor enhancements
|
||||
|
||||
== Changelog ==
|
||||
|
||||
= 3.4.3 =
|
||||
* Added author support to CPT instructions in readme FAQ
|
||||
* Added object check for user in `coauthors_set_post_author_field()`
|
||||
* Fix inefficient user query in avatar url hook
|
||||
* Fix operand typo in `get_guest_author_thumbnail()` for adding custom classes
|
||||
* Remove hardcoded default avatar and use default option
|
||||
|
||||
= 3.4.2 =
|
||||
* Fix incorrect user avatar being displayed from featured post image
|
||||
* Add check for `filter_get_avatar_url` to ensure valid second parameter
|
||||
* `add_coauthors()` accepts ID parameter now and ensures valid term slug used
|
||||
* `filter_count_user_posts` checks that user ID returns valid user object
|
||||
* Added post count instructions in readme FAQ for CPTs
|
||||
|
||||
= 3.4.1 =
|
||||
* Fix an issue that may arise in bulk edit
|
||||
|
||||
= 3.4 =
|
||||
* New filter get_coauthors for modifying coauthor data returned in get_coauthors()
|
||||
* New filter coauthors_guest_authors_exported_extra_data to allow guest author to export data as regular author
|
||||
* New filter get_avatar_url() to show avatar in JS selection
|
||||
* New parameter in coauthors_wp_list_authors() to only query authors with posts
|
||||
* Add internationalization support to title and name in author archives
|
||||
* Add safelist to skip irrelevant capabilities during permission checks
|
||||
* Add helper function get_guest_author_post_count()
|
||||
* Add parameter for outputting HTML classes in coauthors_get_avatar() template tag
|
||||
* Add --append_coauthors flag to synopsis of CLI assign-coauthors
|
||||
* Adjust CLI command create-guest-authors-from-csv to import website, avatar and description
|
||||
* Post type of "any" can be used in filters
|
||||
* Remove unnecessary is_array() check
|
||||
* Remove unnecessary action_pre_user_query()
|
||||
* Use correct args in search_authors()
|
||||
* Have filter_author_archive_title() run on author archives only
|
||||
* Improve tests coverage
|
||||
* Change posts_selection to action from filter
|
||||
* Fix number of args expected for get_the_archive_title callback
|
||||
* Fix spelling, update FAQ for disabling guest authors and credits in readme
|
||||
* Output coauthors_links_single() template tag correctly when guest author has no website
|
||||
* Number by "Mine" link shows correct listing of posts
|
||||
* Linked guest authors show accurate post counts
|
||||
* Can no longer add co-author more than once
|
||||
* No more overwriting posts with current user in `add_coauthors()`
|
||||
* Accurate post count for user when using different login
|
||||
* No more double post count for users with linked accounts
|
||||
* Fix SQL error
|
||||
* Fix "Mine" link href for Pages
|
||||
* Can delete users when guest authors functionality disabled
|
||||
* Fix incompatibility issue with Yoast of missing posts in author pages
|
||||
* Resolve undefined index warnings on author archives
|
||||
* Resolve warnings when current user has no term assigned
|
||||
|
||||
= 3.3.1 ("Gutentag") =
|
||||
* 5.0 Compat: Hide core author inputs when using the Block Editor to limit confusion (h/t jonathanstegall).
|
||||
|
||||
= 3.3.0 ("Rebecca") =
|
||||
* Fix private post viewing on front-end
|
||||
* Reduce amount of sleep
|
||||
* Author search UX issues
|
||||
* Remove associated guest user when mapped user id deleted.
|
||||
* Removed double left join on posts_join_filter
|
||||
* Fixed WP CLI create-terms-for-posts if no co-authors found
|
||||
* Pages archive now displays coauthors and quick edit works
|
||||
* Terminology updated throughout
|
||||
* Replace hardcoded 'author' with $this->$coauthor_taxonomy
|
||||
* Move parenthesis to fix esc_html and sprintf
|
||||
* Added progress to create-guest-authors so users have an idea of how long it will take
|
||||
* Deleting guest authors is less confusing
|
||||
* Guest author's featured image is avatar now
|
||||
* Removed extra image sizing
|
||||
* Remove duplicated byline
|
||||
* coauthors_wp_list_authors() has option to list only guest authors now
|
||||
* remove duplicates from linked accounts on coauthors_wp_list_authors()
|
||||
* Accurate Guest Author post count on linked accounts
|
||||
* New README.md
|
||||
* Filter author archive
|
||||
* Fix coauthors_links_single()
|
||||
* Added guest author hooks for create/delete
|
||||
* Fixes logic for DOING_AUTOSAVE check
|
||||
* user_login spaces problem when using add_coauthors
|
||||
* Adding details of filter for slow performance
|
||||
* Remove redundant test for 404 on Author Archive
|
||||
* Guest Author Counts are more accurate
|
||||
* Set $coauthors_loading
|
||||
* Fix the issue where guest authors with non-ASCII characters can't be used as co-authors
|
||||
* Fix the issue where incompatibility when `coauthors_auto_apply_template_tags` set to true
|
||||
* Unit tests/Fix warnings for template tags
|
||||
* Review and improve test coverage
|
||||
* Update class-wp-cli.php
|
||||
* Update .travis.yml file for PHPUnit tests
|
||||
* Changes to resolve issue #332 about missing coauthor meta
|
||||
|
||||
= 3.2.2 =
|
||||
* Fix broken author ordering in 4.7+ (props mslinnea)
|
||||
* Fix no moderation e-mail bug (props RobjS)
|
||||
* Cached functions in CLI commands (props jasonbahl)
|
||||
* Fix missing echos (props trepmal)
|
||||
* Add `coauthors_guest_author_query_args` filter (props trepmal)
|
||||
|
||||
= 3.2.1 (May 16, 2016) =
|
||||
* Hotfix for broken Guest Author bio metabox (props JS Morisset)
|
||||
|
||||
= 3.2 (May 12, 2016) =
|
||||
Various minor bug and security fixes
|
||||
|
||||
= 3.1.2 (Aug. 31, 2015) =
|
||||
* Minor bug fixes and coding standards changes.
|
||||
* The author's display name is now filtered through the_author in coauthors_posts_links_single()
|
||||
* New Russian and Ukrainian translations, courtesy of [Jurko Chervony](http://skinik.name/).
|
||||
|
||||
= 3.1.1 (Mar. 20, 2014) =
|
||||
* Bug fix: Co-authors selection UI should appear when creating a new post too.
|
||||
|
||||
= 3.1 (Mar. 17, 2014) =
|
||||
* Manage co-authors from Quick Edit. Props [mpatek](https://github.com/mpatek).
|
||||
* Updated Spanish translation, courtesy of [sergiomajluf](https://github.com/sergiomajluf).
|
||||
* Now matches core behavior when displaying author archive on multisite: user of the blog, or previously published author on the blog.
|
||||
* Breaking change: "Create Profile" link is no longer shown by default on the Manage Users screen. Instead, it can be enabled with the `coauthors_show_create_profile_user_link` filter.
|
||||
* Guest authors work properly with Jetpack Open Graph tags. Props [hibernation](https://github.com/hibernation).
|
||||
* Guest author profile editor now supports a few different fields. Props [alpha1](https://github.com/alpha1).
|
||||
* New `coauthors_count_published_post_types` filter for specifying the post type(s) used when calculating the user's number of published posts.
|
||||
* Bug fix: Ensure `post_author` is set to one of the co-authors assigned to a post.
|
||||
* Bug fix: Filter author feed link for guest authors on the author page. Props [hibernation](https://github.com/hibernation).
|
||||
* Packages a composer.json file for those using Composer.
|
||||
* Beginnings of unit test coverage for core features. Increased minimum required WordPress version to 3.7 because WordPress.org unit testing framework doesn't work reliabilty below that.
|
||||
|
||||
= 3.0.7 (Jan. 27, 2014) =
|
||||
* Better support for installing Co-Authors Plus as a symlinked directory. [Follow these instructions](http://kaspars.net/blog/wordpress/plugins-via-symlinks) to filter `plugins_url`.
|
||||
* Links to authors' posts pages to comply to hCard microformat, which Google depends on.
|
||||
* New `coauthors_emails()` template tag to list email addresses of the co-authors. Props [benlk](https://github.com/benlk).
|
||||
* Bug fix: Remove extraneous space between last two co-authors output. Props [johnciacia](https://github.com/johnciacia).
|
||||
* Updated French translation, courtesy of Jojaba (via email).
|
||||
|
||||
= 3.0.6 (Dec. 9, 2013) =
|
||||
* New Swedish translation, courtesy of [alundstroem](https://github.com/alundstroem)
|
||||
* Updated German translation, courtesy of [krafit](https://github.com/krafit).
|
||||
* New Dutch translation, courtesy of [kardotim](https://github.com/kardotim)
|
||||
* New filter for specifying the default author assigned to a post. Props [tannerm](https://github.com/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
|
||||
|
||||
= 3.0.5 (Feb. 18, 2013) =
|
||||
* New filter 'coauthors_search_authors_get_terms_args' allows you to increase the number of matches returned with AJAX co-author selection
|
||||
* Bug fix: If there isn't an author term yet for a co-author, avoid an erronous join that caused duplicate posts to appear.
|
||||
|
||||
= 3.0.4 (Jan. 6, 2013) =
|
||||
* Support for automatically adding co-authors to your feeds. Props [cfg](https://github.com/cfg).
|
||||
* Bug fix: No Co-Authors Plus on attachments. For now.
|
||||
* Bug fix: Better support for co-authors with non-standard user_nicenames. Props [STRML](https://github.com/STRML).
|
||||
|
||||
= 3.0.3 (Dec. 3, 2012) =
|
||||
* Bug fix: The default order for the 'author' taxonomy should be 'term_order', in order for the author positions to stick. Props [lgedeon](https://github.com/lgedeon)
|
||||
|
||||
= 3.0.2 (Nov. 23, 2012) =
|
||||
* Bug fix: Fall back to non-pretty permalinks when the author permastruct is empty, so that coauthors_posts_links() doesn't link to the homepage
|
||||
|
||||
= 3.0.1 (Nov. 21, 2012) =
|
||||
* Add your own custom columns to the guest authors table using filters. Props [cfg](https://github.com/cfg)
|
||||
* A new wp-cli subcommand for renaming co-authors and another for removing author terms mistakenly assigned to revisions
|
||||
* Bug fix: Using a featured image for a guest author avatar didn't work. Now it does.
|
||||
* Bug fix: Don't assign author terms to revisions to avoid unnecessary database bloat
|
||||
* Bug fix: Make the coauthors_wp_list_authors() template tag work again
|
||||
* Bug fix: Improve capability filtering by properly handling super admin access and situations where user_id = 0
|
||||
* Minor UI enhancements for guest authors
|
||||
|
||||
= 3.0 (Nov. 12, 2012) =
|
||||
* Create guest author profiles for bylines you'd like to assign without creating WordPress user accounts. Guest authors can have all of the same fields as normal users including display name, biography, and avatars.
|
||||
* Support for non-Latin characters in usernames and guest author names
|
||||
* wp-cli subcommands for creating, assigning, and reassigning co-authors
|
||||
* For themes using core template tags like the_author() or the_author_posts_link(), you enable Co-Authors Plus support with a simple filter
|
||||
* New author terms are now prefixed with 'cap-' to avoid collisions with global scope
|
||||
* Bug fix: Apply query filters to only post_types registered with the taxonomy. Props [Tom Ransom](https://github.com/1bigidea)
|
||||
* Filter coauthors_posts_link_single() with 'coauthors_posts_link'. Also adds rel="author". Props [Amit Sannad](https://github.com/asannad) and [Gabriel Koen](https://github.com/mintindeed)
|
||||
* Filter for the context and priorities of the Co-Authors meta boxes. Props [Tomáš Kapler](https://github.com/tkapler)
|
||||
* Renamed the post meta box for selecting authors so it applies to many post types. Props [John Blackbourn](https://github.com/johnbillion)
|
||||
|
||||
= 2.6.4 (May 7, 2012) =
|
||||
* Bug fix: Properly filter the user query so users can AJAX search against the display name field again
|
||||
* If https is used for the admin, also use the secure Gravatar URL. Props [rmcfrazier](https://github.com/rmcfrazier)
|
||||
|
||||
= 2.6.3 (Apr. 30, 2012) =
|
||||
* AJAX user search is back to searching against user login, display name, email address and user ID. The method introduced in v2.6.2 didn't scale well
|
||||
* French translation courtesy of Sylvain Bérubé
|
||||
* Spanish translation courtesy of Alejandro Arcos
|
||||
* Bug fix: Resolved incorrect caps check against user editing an already published post. [See forum thread](http://wordpress.org/support/topic/multiple-authors-cant-edit-pages?replies=17#post-2741243)
|
||||
|
||||
= 2.6.2 (Mar. 6, 2012) =
|
||||
* AJAX user search matches against first name, last name, and nickname fields too, in addition to display name, user login, and email address
|
||||
* Comment moderation and approved notifications are properly sent to all co-authors with the correct caps
|
||||
* Filter required capability for user to be returned in an AJAX search with 'coauthors_edit_author_cap'
|
||||
* Filter out administrators and other non-authors from AJAX search with 'coauthors_edit_ignored_authors'
|
||||
* Automatically adds co-authors to Edit Flow's story budget and calendar views
|
||||
* Bug fix: Don't set post_author value to current user when quick editing a post. This doesn't appear in the UI anywhere, but adds the post to the current user's list of posts
|
||||
* Bug fix: Properly cc other co-authors on new comment email notifications
|
||||
* Bug fix: If a user has already been added as an author to a post, don't show them in the AJAX search again
|
||||
* Bug fix: Allow output constants to be defined in a theme's functions.php file and include filters you can use instead
|
||||
|
||||
= 2.6.1 (Dec. 30, 2011) =
|
||||
* Fix mangled usernames because of sanitize_key http://wordpress.org/support/topic/plugin-co-authors-plus-26-not-working-with-wp-33
|
||||
|
||||
= 2.6 (Dec. 22, 2011) =
|
||||
* Sortable authors: Drag and drop the order of the authors as you'd like them to appear ([props kingkool68](http://profiles.wordpress.org/users/kingkool68/))
|
||||
* Search for authors by display name (instead of nicename which was essentially the same as user_login)
|
||||
* Option to remove the first author when there are two or more so it's less confusing
|
||||
* Bumped requirements to WordPress 3.1
|
||||
* Bug fix: Update the published post count for each user more reliably
|
||||
|
||||
= 2.5.3 (Aug. 14, 2011) =
|
||||
* Bug fix: Removed extra comma when only two authors were listed. If you used the COAUTHORS_DEFAULT_BETWEEN_LAST constant, double-check what you have
|
||||
|
||||
= 2.5.2 (Apr. 23, 2011) =
|
||||
* Bug: Couldn't query terms and authors at the same time (props nbaxley)
|
||||
* Bug: Authors with empty fields (e.g. first name) were displaying blank in some cases
|
||||
* Bug: authors with spaces in usernames not getting saved (props MLmsw, Ruben S. and others!)
|
||||
* Bug: revisions getting wrong user attached (props cliquenoir!)
|
||||
|
||||
= 2.5.1 (Mar. 26, 2011) =
|
||||
* Fix with author post count (throwing errors)
|
||||
|
||||
= 2.5 (Mar. 26, 2011) =
|
||||
* Custom Post Type Support
|
||||
* Compatibility with WP 3.0 and 3.1
|
||||
* Gravatars
|
||||
* Lots and lots and lots of bug fixes
|
||||
* Thanks to everyone who submitted bugs, fixes, and suggestions! And for your patience!
|
||||
|
||||
= 2.1.1 (Oct. 16, 2009) =
|
||||
* Fix for coauthors not being added if their username is different from display name
|
||||
* Fixes to readme.txt (fixes for textual and punctuation errors, language clarification, minor formatting changes) courtesy of [Waldo Jaquith](http://www.vqronline.org)
|
||||
|
||||
= 2.1 (Oct. 11, 2009) =
|
||||
* Fixed issues related to localization. Thanks to Jan Zombik <zombik@students.uni-mainz.de> for the fixes.
|
||||
* Added set_time_limit to update function to get around timeout issues when upgrading plugin
|
||||
|
||||
= 2.0 (Oct. 11, 2009) =
|
||||
* Plugin mostly rewritten to make use of taxonomy instead of post_meta
|
||||
* Can now see all authors of a post under the author column from Edit Posts page
|
||||
* All authors of a post are now notified on a new comment
|
||||
* Various javascript enhancements
|
||||
* New option to allow subscribers to be added as authors
|
||||
* All Authors can edit they posts of which they are coauthors
|
||||
* FIX: Issues with wp_coauthors_list function
|
||||
* FIX: Issues with coauthored posts not showing up on author archives
|
||||
|
||||
= 1.2.0 (Jun. 16, 2012) =
|
||||
* FIX: Added compatibility for WordPress 2.8
|
||||
* FIX: Added new template tags (get_the_coauthor_meta & the_coauthor_meta) to fix issues related to displaying author info on author archive pages. See [Other Notes](http://wordpress.org/extend/plugins/co-authors-plus/other_notes/) for details.
|
||||
* FIX: Plugin should now work for plugins not using the 'wp_' DB prefix
|
||||
* FIX: Coauthors should no longer be alphabetically reordered when the post is updated
|
||||
* FIX: Plugin now used WordPress native AJAX calls to tighten security
|
||||
* DOCS: Added details about the new template tags
|
||||
|
||||
= 1.1.5 (Apr. 26, 2009) =
|
||||
* FIX: Not searching Updated SQL query for autosuggest to search through first name, last name, and nickname
|
||||
* FIX: When editing an author, and clicking on a suggested author, the original author was not be removed
|
||||
* DOCS: Added code comments to javascript; more still to be added
|
||||
* DOCS: Updated readme information
|
||||
|
||||
= 1.1.4 (Apr. 25, 2009) =
|
||||
* Disabled "New Author" output in suggest box, for now
|
||||
* Hopefully fixed SVN issue (if you're having trouble with the plugin, please delete the plugin and reinstall)
|
||||
|
||||
= 1.1.3 (Apr. 23, 2009) =
|
||||
* Add blur event to disable input box
|
||||
* Limit only one edit at a time.
|
||||
* Checked basic cross-browser compatibility (Firefox 3 OS X, Safari 3 OS X, IE7 Vista).
|
||||
* Add suggest javascript plugin to Edit Page.
|
||||
|
||||
= 1.1.2 (Apr. 19, 2009) =
|
||||
* Disabled form submit when enter pressed.
|
||||
|
||||
= 1.1.1 (Apr. 15, 2009) =
|
||||
* Changed SQL query to return only contributor-level and above users.
|
||||
|
||||
= 1.1.0 (Apr. 14, 2009) =
|
||||
* Initial beta release.
|
||||
|
||||
== Installation ==
|
||||
|
||||
1. IMPORTANT: Please disable the original Co-Authors plugin (if you are using it) before installing Co-Authors Plus
|
||||
1. Extract the coauthors-plus.zip file and upload its contents to the `/wp-content/plugins/` directory. Alternately, you can install directly from the Plugin directory within your WordPress Install.
|
||||
1. Activate the plugin through the "Plugins" menu in WordPress.
|
||||
1. Place the appropriate [co-authors template tags](http://vip.wordpress.com/documentation/incorporate-co-authors-plus-template-tags-into-your-theme/) in your template.
|
||||
1. Add co-authors to your posts and pages.
|
||||
|
||||
== Screenshots ==
|
||||
|
||||
1. Multiple authors can be added to a Post, Page, or Custom Post Type using an auto-complete interface.
|
||||
2. The order of your co-authors can be changed by drag and drop.
|
||||
3. Guest authors allow you to assign bylines without creating WordPress user accounts. You can also override existing WordPress account meta by mapping a guest author to a WordPress user.
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 20 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 25 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 15 KiB |
@@ -0,0 +1,720 @@
|
||||
<?php
|
||||
|
||||
function get_coauthors( $post_id = 0 ) {
|
||||
global $post, $post_ID, $coauthors_plus, $wpdb;
|
||||
|
||||
$coauthors = array();
|
||||
$post_id = (int) $post_id;
|
||||
if ( ! $post_id && $post_ID ) {
|
||||
$post_id = $post_ID;
|
||||
}
|
||||
|
||||
if ( ! $post_id && $post ) {
|
||||
$post_id = $post->ID;
|
||||
}
|
||||
|
||||
if ( $post_id ) {
|
||||
$coauthor_terms = cap_get_coauthor_terms_for_post( $post_id );
|
||||
if ( is_array( $coauthor_terms ) && ! empty( $coauthor_terms ) ) {
|
||||
foreach ( $coauthor_terms as $coauthor ) {
|
||||
$coauthor_slug = preg_replace( '#^cap\-#', '', $coauthor->slug );
|
||||
$post_author = $coauthors_plus->get_coauthor_by( 'user_nicename', $coauthor_slug );
|
||||
// In case the user has been deleted while plugin was deactivated
|
||||
if ( ! empty( $post_author ) ) {
|
||||
$coauthors[] = $post_author;
|
||||
}
|
||||
}
|
||||
} else if ( ! $coauthors_plus->force_guest_authors ) {
|
||||
if ( $post && $post_id == $post->ID ) {
|
||||
$post_author = get_userdata( $post->post_author );
|
||||
} else {
|
||||
$post_author = get_userdata( $wpdb->get_var( $wpdb->prepare( "SELECT post_author FROM $wpdb->posts WHERE ID = %d", $post_id ) ) );
|
||||
}
|
||||
if ( ! empty( $post_author ) ) {
|
||||
$coauthors[] = $post_author;
|
||||
}
|
||||
} // the empty else case is because if we force guest authors, we don't ever care what value wp_posts.post_author has.
|
||||
}
|
||||
// remove duplicate $coauthors objects from mapping user accounts to guest authors accounts
|
||||
$coauthors = array_unique( $coauthors, SORT_REGULAR );
|
||||
$coauthors = apply_filters( 'get_coauthors', $coauthors, $post_id );
|
||||
return $coauthors;
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks to see if the the specified user is author of the current global post or post (if specified)
|
||||
* @param object|int $user
|
||||
* @param int $post_id
|
||||
*/
|
||||
function is_coauthor_for_post( $user, $post_id = 0 ) {
|
||||
global $post;
|
||||
|
||||
if ( ! $post_id && $post ) {
|
||||
$post_id = $post->ID;
|
||||
}
|
||||
|
||||
if ( ! $post_id ) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if ( ! $user ) {
|
||||
return false;
|
||||
}
|
||||
|
||||
$coauthors = get_coauthors( $post_id );
|
||||
if ( is_numeric( $user ) ) {
|
||||
$user = get_userdata( $user );
|
||||
$user = $user->user_login;
|
||||
} else if ( isset( $user->user_login ) ) {
|
||||
$user = $user->user_login;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
|
||||
foreach ( $coauthors as $coauthor ) {
|
||||
if ( $user == $coauthor->user_login || $user == $coauthor->linked_account ) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
class CoAuthorsIterator {
|
||||
var $position = -1;
|
||||
var $original_authordata;
|
||||
var $current_author;
|
||||
var $authordata_array;
|
||||
var $count;
|
||||
|
||||
function __construct( $postID = 0 ) {
|
||||
global $post, $authordata, $wpdb;
|
||||
$postID = (int) $postID;
|
||||
if ( ! $postID && $post ) {
|
||||
$postID = (int) $post->ID;
|
||||
}
|
||||
|
||||
if ( ! $postID ) {
|
||||
trigger_error( esc_html__( 'No post ID provided for CoAuthorsIterator constructor. Are you not in a loop or is $post not set?', 'co-authors-plus' ) ); // return null;
|
||||
}
|
||||
|
||||
$this->original_authordata = $this->current_author = $authordata;
|
||||
$this->authordata_array = get_coauthors( $postID );
|
||||
|
||||
$this->count = count( $this->authordata_array );
|
||||
}
|
||||
|
||||
function iterate() {
|
||||
global $authordata;
|
||||
$this->position++;
|
||||
|
||||
//At the end of the loop
|
||||
if ( $this->position > $this->count - 1 ) {
|
||||
$authordata = $this->current_author = $this->original_authordata;
|
||||
$this->position = -1;
|
||||
return false;
|
||||
}
|
||||
|
||||
//At the beginning of the loop
|
||||
if ( 0 === $this->position && ! empty( $authordata ) ) {
|
||||
$this->original_authordata = $authordata;
|
||||
}
|
||||
|
||||
$authordata = $this->current_author = $this->authordata_array[ $this->position ];
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function get_position() {
|
||||
if ( $this->position === -1 ) {
|
||||
return false;
|
||||
}
|
||||
return $this->position;
|
||||
}
|
||||
function is_last() {
|
||||
return $this->position === $this->count - 1;
|
||||
}
|
||||
function is_first() {
|
||||
return $this->position === 0;
|
||||
}
|
||||
function count() {
|
||||
return $this->count;
|
||||
}
|
||||
function get_all() {
|
||||
return $this->authordata_array;
|
||||
}
|
||||
}
|
||||
|
||||
//Helper function for the following new template tags
|
||||
function coauthors__echo( $tag, $type = 'tag', $separators = array(), $tag_args = null, $echo = true ) {
|
||||
|
||||
// Define the standard output separator. Constant support is for backwards compat.
|
||||
// @see https://github.com/danielbachhuber/Co-Authors-Plus/issues/12
|
||||
$default_before = ( defined( 'COAUTHORS_DEFAULT_BEFORE' ) ) ? COAUTHORS_DEFAULT_BEFORE : '';
|
||||
$default_between = ( defined( 'COAUTHORS_DEFAULT_BETWEEN' ) ) ? COAUTHORS_DEFAULT_BETWEEN : ', ';
|
||||
$default_between_last = ( defined( 'COAUTHORS_DEFAULT_BETWEEN_LAST' ) ) ? COAUTHORS_DEFAULT_BETWEEN_LAST : __( ' and ', 'co-authors-plus' );
|
||||
$default_after = ( defined( 'COAUTHORS_DEFAULT_AFTER' ) ) ? COAUTHORS_DEFAULT_AFTER : '';
|
||||
|
||||
if ( ! isset( $separators['before'] ) || null === $separators['before'] ) {
|
||||
$separators['before'] = apply_filters( 'coauthors_default_before', $default_before );
|
||||
}
|
||||
if ( ! isset( $separators['between'] ) || null === $separators['between'] ) {
|
||||
$separators['between'] = apply_filters( 'coauthors_default_between', $default_between );
|
||||
}
|
||||
if ( ! isset( $separators['betweenLast'] ) || null === $separators['betweenLast'] ) {
|
||||
$separators['betweenLast'] = apply_filters( 'coauthors_default_between_last', $default_between_last );
|
||||
}
|
||||
if ( ! isset( $separators['after'] ) || null === $separators['after'] ) {
|
||||
$separators['after'] = apply_filters( 'coauthors_default_after', $default_after );
|
||||
}
|
||||
|
||||
$output = '';
|
||||
|
||||
$i = new CoAuthorsIterator();
|
||||
$output .= $separators['before'];
|
||||
$i->iterate();
|
||||
do {
|
||||
$author_text = '';
|
||||
|
||||
if ( 'tag' === $type ) {
|
||||
$author_text = $tag( $tag_args );
|
||||
} elseif ( 'field' === $type && isset( $i->current_author->$tag ) ) {
|
||||
$author_text = $i->current_author->$tag;
|
||||
} elseif ( 'callback' === $type && is_callable( $tag ) ) {
|
||||
$author_text = call_user_func( $tag, $i->current_author );
|
||||
}
|
||||
|
||||
// Fallback to user_login if we get something empty
|
||||
if ( empty( $author_text ) ) {
|
||||
$author_text = $i->current_author->user_login;
|
||||
}
|
||||
|
||||
// Append separators
|
||||
if ( $i->count() - $i->position == 1 ) { // last author or only author
|
||||
$output .= $author_text;
|
||||
} elseif ( $i->count() - $i->position == 2 ) { // second to last
|
||||
$output .= $author_text . $separators['betweenLast'];
|
||||
} else {
|
||||
$output .= $author_text . $separators['between'];
|
||||
}
|
||||
} while ( $i->iterate() );
|
||||
|
||||
$output .= $separators['after'];
|
||||
|
||||
if ( $echo ) {
|
||||
echo $output;
|
||||
}
|
||||
|
||||
return $output;
|
||||
}
|
||||
|
||||
/**
|
||||
* Outputs the co-authors display names, without links to their posts.
|
||||
* Co-Authors Plus equivalent of the_author() template tag.
|
||||
*
|
||||
* @param string $between Delimiter that should appear between the co-authors
|
||||
* @param string $betweenLast Delimiter that should appear between the last two co-authors
|
||||
* @param string $before What should appear before the presentation of co-authors
|
||||
* @param string $after What should appear after the presentation of co-authors
|
||||
* @param bool $echo Whether the co-authors should be echoed or returned. Defaults to true.
|
||||
*/
|
||||
function coauthors( $between = null, $betweenLast = null, $before = null, $after = null, $echo = true ) {
|
||||
return coauthors__echo('display_name', 'field', array(
|
||||
'between' => $between,
|
||||
'betweenLast' => $betweenLast,
|
||||
'before' => $before,
|
||||
'after' => $after,
|
||||
), null, $echo );
|
||||
}
|
||||
|
||||
/**
|
||||
* Outputs the co-authors display names, with links to their posts.
|
||||
* Co-Authors Plus equivalent of the_author_posts_link() template tag.
|
||||
*
|
||||
* @param string $between Delimiter that should appear between the co-authors
|
||||
* @param string $betweenLast Delimiter that should appear between the last two co-authors
|
||||
* @param string $before What should appear before the presentation of co-authors
|
||||
* @param string $after What should appear after the presentation of co-authors
|
||||
* @param bool $echo Whether the co-authors should be echoed or returned. Defaults to true.
|
||||
*/
|
||||
function coauthors_posts_links( $between = null, $betweenLast = null, $before = null, $after = null, $echo = true ) {
|
||||
|
||||
global $coauthors_plus_template_filters;
|
||||
|
||||
$modify_filter = ! empty( $coauthors_plus_template_filters ) && $coauthors_plus_template_filters instanceof CoAuthors_Template_Filters;
|
||||
|
||||
if ( $modify_filter ) {
|
||||
|
||||
/**
|
||||
* Removing "the_author" filter so that it won't get called in loop and append names for each author.
|
||||
*
|
||||
* Ref : https://github.com/Automattic/Co-Authors-Plus/issues/279
|
||||
*/
|
||||
remove_filter( 'the_author', array( $coauthors_plus_template_filters, 'filter_the_author' ) );
|
||||
}
|
||||
|
||||
$coauthors_posts_links = coauthors__echo( 'coauthors_posts_links_single', 'callback', array(
|
||||
'between' => $between,
|
||||
'betweenLast' => $betweenLast,
|
||||
'before' => $before,
|
||||
'after' => $after,
|
||||
), null, $echo );
|
||||
|
||||
if ( $modify_filter ) {
|
||||
add_filter( 'the_author', array( $coauthors_plus_template_filters, 'filter_the_author' ) );
|
||||
}
|
||||
|
||||
return $coauthors_posts_links;
|
||||
}
|
||||
|
||||
/**
|
||||
* Outputs a single co-author linked to their post archive.
|
||||
*
|
||||
* @param object $author
|
||||
* @return string
|
||||
*/
|
||||
function coauthors_posts_links_single( $author ) {
|
||||
// Return if the fields we are trying to use are not sent
|
||||
if ( ! isset( $author->ID, $author->user_nicename, $author->display_name ) ) {
|
||||
_doing_it_wrong(
|
||||
'coauthors_posts_links_single',
|
||||
'Invalid author object used',
|
||||
'3.2'
|
||||
);
|
||||
return;
|
||||
}
|
||||
$args = array(
|
||||
'before_html' => '',
|
||||
'href' => get_author_posts_url( $author->ID, $author->user_nicename ),
|
||||
'rel' => 'author',
|
||||
'title' => sprintf( __( 'Posts by %s', 'co-authors-plus' ), apply_filters( 'the_author', $author->display_name ) ),
|
||||
'class' => 'author url fn',
|
||||
'text' => apply_filters( 'the_author', $author->display_name ),
|
||||
'after_html' => '',
|
||||
);
|
||||
$args = apply_filters( 'coauthors_posts_link', $args, $author );
|
||||
$single_link = sprintf(
|
||||
'<a href="%1$s" title="%2$s" class="%3$s" rel="%4$s">%5$s</a>',
|
||||
esc_url( $args['href'] ),
|
||||
esc_attr( $args['title'] ),
|
||||
esc_attr( $args['class'] ),
|
||||
esc_attr( $args['rel'] ),
|
||||
esc_html( $args['text'] )
|
||||
);
|
||||
return $args['before_html'] . $single_link . $args['after_html'];
|
||||
}
|
||||
|
||||
/**
|
||||
* Outputs the co-authors first names, without links to their posts.
|
||||
*
|
||||
* @param string $between Delimiter that should appear between the co-authors
|
||||
* @param string $betweenLast Delimiter that should appear between the last two co-authors
|
||||
* @param string $before What should appear before the presentation of co-authors
|
||||
* @param string $after What should appear after the presentation of co-authors
|
||||
* @param bool $echo Whether the co-authors should be echoed or returned. Defaults to true.
|
||||
*/
|
||||
function coauthors_firstnames( $between = null, $betweenLast = null, $before = null, $after = null, $echo = true ) {
|
||||
return coauthors__echo('get_the_author_meta', 'tag', array(
|
||||
'between' => $between,
|
||||
'betweenLast' => $betweenLast,
|
||||
'before' => $before,
|
||||
'after' => $after,
|
||||
), 'first_name', $echo );
|
||||
}
|
||||
|
||||
/**
|
||||
* Outputs the co-authors last names, without links to their posts.
|
||||
*
|
||||
* @param string $between Delimiter that should appear between the co-authors
|
||||
* @param string $betweenLast Delimiter that should appear between the last two co-authors
|
||||
* @param string $before What should appear before the presentation of co-authors
|
||||
* @param string $after What should appear after the presentation of co-authors
|
||||
* @param bool $echo Whether the co-authors should be echoed or returned. Defaults to true.
|
||||
*/
|
||||
function coauthors_lastnames( $between = null, $betweenLast = null, $before = null, $after = null, $echo = true ) {
|
||||
return coauthors__echo( 'get_the_author_meta', 'tag', array(
|
||||
'between' => $between,
|
||||
'betweenLast' => $betweenLast,
|
||||
'before' => $before,
|
||||
'after' => $after,
|
||||
), 'last_name', $echo );
|
||||
}
|
||||
|
||||
/**
|
||||
* Outputs the co-authors nicknames, without links to their posts.
|
||||
*
|
||||
* @param string $between Delimiter that should appear between the co-authors
|
||||
* @param string $betweenLast Delimiter that should appear between the last two co-authors
|
||||
* @param string $before What should appear before the presentation of co-authors
|
||||
* @param string $after What should appear after the presentation of co-authors
|
||||
* @param bool $echo Whether the co-authors should be echoed or returned. Defaults to true.
|
||||
*/
|
||||
function coauthors_nicknames( $between = null, $betweenLast = null, $before = null, $after = null, $echo = true ) {
|
||||
return coauthors__echo( 'get_the_author_meta', 'tag', array(
|
||||
'between' => $between,
|
||||
'betweenLast' => $betweenLast,
|
||||
'before' => $before,
|
||||
'after' => $after,
|
||||
), 'nickname', $echo );
|
||||
}
|
||||
|
||||
/**
|
||||
* Outputs the co-authors display names, with links to their websites if they've provided them.
|
||||
*
|
||||
* @param string $between Delimiter that should appear between the co-authors
|
||||
* @param string $betweenLast Delimiter that should appear between the last two co-authors
|
||||
* @param string $before What should appear before the presentation of co-authors
|
||||
* @param string $after What should appear after the presentation of co-authors
|
||||
* @param bool $echo Whether the co-authors should be echoed or returned. Defaults to true.
|
||||
*/
|
||||
function coauthors_links( $between = null, $betweenLast = null, $before = null, $after = null, $echo = true ) {
|
||||
|
||||
global $coauthors_plus_template_filters;
|
||||
|
||||
$modify_filter = ! empty( $coauthors_plus_template_filters ) && $coauthors_plus_template_filters instanceof CoAuthors_Template_Filters;
|
||||
|
||||
if ( $modify_filter ) {
|
||||
|
||||
/**
|
||||
* Removing "the_author" filter so that it won't get called in loop and append names for each author.
|
||||
*
|
||||
* Ref : https://github.com/Automattic/Co-Authors-Plus/issues/279
|
||||
*/
|
||||
remove_filter( 'the_author', array( $coauthors_plus_template_filters, 'filter_the_author' ) );
|
||||
}
|
||||
|
||||
$coauthors_links = coauthors__echo( 'coauthors_links_single', 'callback', array(
|
||||
'between' => $between,
|
||||
'betweenLast' => $betweenLast,
|
||||
'before' => $before,
|
||||
'after' => $after,
|
||||
), null, $echo );
|
||||
|
||||
if ( $modify_filter ) {
|
||||
add_filter( 'the_author', array( $coauthors_plus_template_filters, 'filter_the_author' ) );
|
||||
}
|
||||
|
||||
return $coauthors_links;
|
||||
}
|
||||
|
||||
/**
|
||||
* Outputs the co-authors email addresses
|
||||
*
|
||||
* @param string $between Delimiter that should appear between the email addresses
|
||||
* @param string $betweenLast Delimiter that should appear between the last two email addresses
|
||||
* @param string $before What should appear before the presentation of email addresses
|
||||
* @param string $after What should appear after the presentation of email addresses
|
||||
* @param bool $echo Whether the co-authors should be echoed or returned. Defaults to true.
|
||||
*/
|
||||
function coauthors_emails( $between = null, $betweenLast = null, $before = null, $after = null, $echo = true ) {
|
||||
return coauthors__echo( 'get_the_author_meta', 'tag', array(
|
||||
'between' => $between,
|
||||
'betweenLast' => $betweenLast,
|
||||
'before' => $before,
|
||||
'after' => $after,
|
||||
), 'user_email', $echo );
|
||||
}
|
||||
|
||||
/**
|
||||
* Outputs a single co-author, linked to their website if they've provided one.
|
||||
*
|
||||
* @param object $author
|
||||
* @return string
|
||||
*/
|
||||
function coauthors_links_single( $author ) {
|
||||
if ( 'guest-author' === $author->type && get_the_author_meta( 'website' ) ) {
|
||||
return sprintf( '<a href="%s" title="%s" rel="author external">%s</a>',
|
||||
esc_url( get_the_author_meta( 'website' ) ),
|
||||
esc_attr( sprintf( __( 'Visit %s’s website' ), esc_html( get_the_author() ) ) ),
|
||||
esc_html( get_the_author() )
|
||||
);
|
||||
}
|
||||
elseif ( get_the_author_meta( 'url' ) ) {
|
||||
return sprintf( '<a href="%s" title="%s" rel="author external">%s</a>',
|
||||
esc_url( get_the_author_meta( 'url' ) ),
|
||||
esc_attr( sprintf( __( 'Visit %s’s website' ), esc_html( get_the_author() ) ) ),
|
||||
esc_html( get_the_author() )
|
||||
);
|
||||
}
|
||||
else {
|
||||
return esc_html( get_the_author() );
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Outputs the co-authors IDs
|
||||
*
|
||||
* @param string $between Delimiter that should appear between the co-authors
|
||||
* @param string $betweenLast Delimiter that should appear between the last two co-authors
|
||||
* @param string $before What should appear before the presentation of co-authors
|
||||
* @param string $after What should appear after the presentation of co-authors
|
||||
* @param bool $echo Whether the co-authors should be echoed or returned. Defaults to true.
|
||||
*/
|
||||
function coauthors_ids( $between = null, $betweenLast = null, $before = null, $after = null, $echo = true ) {
|
||||
return coauthors__echo( 'ID', 'field', array(
|
||||
'between' => $between,
|
||||
'betweenLast' => $betweenLast,
|
||||
'before' => $before,
|
||||
'after' => $after,
|
||||
), null, $echo );
|
||||
}
|
||||
|
||||
/**
|
||||
* Outputs the co-authors Meta Data
|
||||
*
|
||||
* @param string $field Required The user field to retrieve.[login, email, nicename, display_name, url, type]
|
||||
* @param string $user_id Optional The user ID for meta
|
||||
*
|
||||
* @return array $meta Value of the user field
|
||||
*/
|
||||
function get_the_coauthor_meta( $field, $user_id = false ) {
|
||||
global $coauthors_plus;
|
||||
|
||||
if ( ! $user_id ) {
|
||||
$coauthors = get_coauthors();
|
||||
}
|
||||
else {
|
||||
$coauthor_data = $coauthors_plus->get_coauthor_by( 'id', $user_id );
|
||||
$coauthors = array();
|
||||
if ( ! empty( $coauthor_data ) ) {
|
||||
$coauthors[] = $coauthor_data;
|
||||
}
|
||||
}
|
||||
|
||||
$meta = array();
|
||||
|
||||
if ( in_array( $field, array( 'login', 'pass', 'nicename', 'email', 'url', 'registered', 'activation_key', 'status' ) ) ) {
|
||||
$field = 'user_' . $field;
|
||||
}
|
||||
|
||||
foreach ( $coauthors as $coauthor ) {
|
||||
$user_id = $coauthor->ID;
|
||||
|
||||
if ( isset( $coauthor->type ) && 'user_url' === $field ) {
|
||||
if ( 'guest-author' === $coauthor->type ) {
|
||||
$field = 'website';
|
||||
}
|
||||
}
|
||||
else if ( 'website' === $field ) {
|
||||
$field = 'user_url';
|
||||
}
|
||||
|
||||
if ( isset( $coauthor->$field ) ) {
|
||||
$meta[ $user_id ] = $coauthor->$field;
|
||||
}
|
||||
else {
|
||||
$meta[ $user_id ] = '';
|
||||
}
|
||||
}
|
||||
|
||||
return $meta;
|
||||
}
|
||||
|
||||
|
||||
function the_coauthor_meta( $field, $user_id = 0 ) {
|
||||
// TODO: need before after options
|
||||
$coauthor_meta = get_the_coauthor_meta( $field, $user_id );
|
||||
foreach ( $coauthor_meta as $meta ) {
|
||||
echo esc_html( $meta );
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* List all the *co-authors* of the blog, with several options available.
|
||||
* optioncount (boolean) (false): Show the count in parenthesis next to the author's name.
|
||||
* show_fullname (boolean) (false): Show their full names.
|
||||
* hide_empty (boolean) (true): Don't show authors without any posts.
|
||||
* feed (string) (''): If isn't empty, show links to author's feeds.
|
||||
* feed_image (string) (''): If isn't empty, use this image to link to feeds.
|
||||
* echo (boolean) (true): Set to false to return the output, instead of echoing.
|
||||
* authors_with_posts_only (boolean) (false): If true, don't query for authors with no posts.
|
||||
* @param array $args The argument array.
|
||||
* @return null|string The output, if echo is set to false.
|
||||
*/
|
||||
function coauthors_wp_list_authors( $args = array() ) {
|
||||
global $coauthors_plus;
|
||||
|
||||
$defaults = array(
|
||||
'optioncount' => false,
|
||||
'show_fullname' => false,
|
||||
'hide_empty' => true,
|
||||
'feed' => '',
|
||||
'feed_image' => '',
|
||||
'feed_type' => '',
|
||||
'echo' => true,
|
||||
'style' => 'list',
|
||||
'html' => true,
|
||||
'number' => 20, // A sane limit to start to avoid breaking all the things
|
||||
'guest_authors_only' => false,
|
||||
'authors_with_posts_only' => false,
|
||||
);
|
||||
|
||||
$args = wp_parse_args( $args, $defaults );
|
||||
$return = '';
|
||||
|
||||
$term_args = array(
|
||||
'orderby' => 'name',
|
||||
'number' => (int) $args['number'],
|
||||
/*
|
||||
* Historically, this was set to always be `0` ignoring `$args['hide_empty']` value
|
||||
* To avoid any backwards incompatibility, inventing `authors_with_posts_only` that defaults to false
|
||||
*/
|
||||
'hide_empty' => (boolean) $args['authors_with_posts_only'],
|
||||
);
|
||||
$author_terms = get_terms( $coauthors_plus->coauthor_taxonomy, $term_args );
|
||||
|
||||
$authors = array();
|
||||
foreach ( $author_terms as $author_term ) {
|
||||
// Something's wrong in the state of Denmark
|
||||
if ( false === ( $coauthor = $coauthors_plus->get_coauthor_by( 'user_login', $author_term->name ) ) ) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$authors[ $author_term->name ] = $coauthor;
|
||||
|
||||
// only show guest authors if the $args is set to true
|
||||
if ( ! $args['guest_authors_only'] || $authors[ $author_term->name ]->type === 'guest-author' ) {
|
||||
$authors[ $author_term->name ]->post_count = $author_term->count;
|
||||
}
|
||||
else {
|
||||
unset( $authors[ $author_term->name ] );
|
||||
}
|
||||
}
|
||||
|
||||
$authors = apply_filters( 'coauthors_wp_list_authors_array', $authors );
|
||||
|
||||
// remove duplicates from linked accounts
|
||||
$linked_accounts = array_unique( array_column( $authors, 'linked_account' ) );
|
||||
foreach ( $linked_accounts as $linked_account ) {
|
||||
unset( $authors[$linked_account] );
|
||||
}
|
||||
|
||||
foreach ( (array) $authors as $author ) {
|
||||
|
||||
$link = '';
|
||||
|
||||
if ( $args['show_fullname'] && ( $author->first_name && $author->last_name ) ) {
|
||||
$name = "$author->first_name $author->last_name";
|
||||
} else {
|
||||
$name = $author->display_name;
|
||||
}
|
||||
|
||||
if ( ! $args['html'] ) {
|
||||
if ( 0 === $author->post_count ) {
|
||||
if ( ! $args['hide_empty'] ) {
|
||||
$return .= $name . ', ';
|
||||
}
|
||||
} else {
|
||||
$return .= $name . ', ';
|
||||
}
|
||||
|
||||
// No need to go further to process HTML.
|
||||
continue;
|
||||
}
|
||||
|
||||
if ( ! ( 0 === $author->post_count && $args['hide_empty'] ) && 'list' == $args['style'] ) {
|
||||
$return .= '<li>';
|
||||
}
|
||||
if ( 0 === $author->post_count ) {
|
||||
if ( ! $args['hide_empty'] ) {
|
||||
$link = $name;
|
||||
}
|
||||
} else {
|
||||
$link = '<a href="' . get_author_posts_url( $author->ID, $author->user_nicename ) . '" title="' . esc_attr( sprintf( __( 'Posts by %s', 'co-authors-plus' ), $name ) ) . '">' . esc_html( $name ) . '</a>';
|
||||
|
||||
if ( ( ! empty( $args['feed_image'] ) ) || ( ! empty( $args['feed'] ) ) ) {
|
||||
$link .= ' ';
|
||||
if ( empty( $args['feed_image'] ) ) {
|
||||
$link .= '(';
|
||||
}
|
||||
$link .= '<a href="' . esc_url( get_author_feed_link( $author->ID, $args['feed_type'] ) ) . '"';
|
||||
|
||||
$alt = '';
|
||||
$title = '';
|
||||
|
||||
if ( ! empty( $args['feed'] ) ) {
|
||||
|
||||
$title = ' title="' . esc_attr( $args['feed'] ) . '"';
|
||||
$alt = ' alt="' . esc_attr( $args['feed'] ) . '"';
|
||||
$name = $args['feed'];
|
||||
$link .= $title;
|
||||
}
|
||||
|
||||
$link .= '>';
|
||||
|
||||
if ( ! empty( $args['feed_image'] ) ) {
|
||||
$link .= '<img src="' . esc_url( $args['feed_image'] ) . "\" style=\"border: none;\"$alt$title" . ' />';
|
||||
} else {
|
||||
$link .= $name;
|
||||
}
|
||||
|
||||
$link .= '</a>';
|
||||
|
||||
if ( empty( $args['feed_image'] ) ) {
|
||||
$link .= ')';
|
||||
}
|
||||
}
|
||||
|
||||
if ( $args['optioncount'] ) {
|
||||
$link .= ' ('. $author->post_count . ')';
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! ( 0 === $author->post_count && $args['hide_empty'] ) && 'list' == $args['style'] ) {
|
||||
$return .= $link . '</li>';
|
||||
} else if ( ! $args['hide_empty'] ) {
|
||||
$return .= $link . ', ';
|
||||
}
|
||||
}
|
||||
|
||||
$return = trim( $return, ', ' );
|
||||
|
||||
if ( ! $args['echo'] ) {
|
||||
return $return;
|
||||
}
|
||||
echo $return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieve a Co-Author's Avatar.
|
||||
*
|
||||
* Since Guest Authors doesn't enforce unique email addresses, simply loading the avatar by email won't work when
|
||||
* multiple Guest Authors share the same address.
|
||||
*
|
||||
* This is a replacement for using get_avatar(), which only operates on email addresses and cannot differentiate
|
||||
* between Guest Authors (who may share an email) and regular user accounts
|
||||
*
|
||||
* @param object $coauthor The Co Author or Guest Author object.
|
||||
* @param int $size The desired size.
|
||||
* @param string $default Optional. URL for the default image or a default type. Accepts '404'
|
||||
* (return a 404 instead of a default image), 'retro' (8bit), 'monsterid'
|
||||
* (monster), 'wavatar' (cartoon face), 'indenticon' (the "quilt"),
|
||||
* 'mystery', 'mm', or 'mysteryman' (The Oyster Man), 'blank' (transparent GIF),
|
||||
* or 'gravatar_default' (the Gravatar logo). Default is the value of the
|
||||
* 'avatar_default' option, with a fallback of 'mystery'.
|
||||
* @param string $alt Optional. Alternative text to use in <img> tag. Default false.
|
||||
* @param array|string $class Optional. Array or string of additional classes to add to the <img> element. Default null.
|
||||
* @return string The image tag for the avatar, or an empty string if none could be determined.
|
||||
*/
|
||||
function coauthors_get_avatar( $coauthor, $size = 32, $default = '', $alt = false, $class = null ) {
|
||||
global $coauthors_plus;
|
||||
|
||||
if ( ! is_object( $coauthor ) ) {
|
||||
return '';
|
||||
}
|
||||
|
||||
if ( isset( $coauthor->type ) && 'guest-author' == $coauthor->type ) {
|
||||
$guest_author_thumbnail = $coauthors_plus->guest_authors->get_guest_author_thumbnail( $coauthor, $size, $class );
|
||||
|
||||
if ( $guest_author_thumbnail ) {
|
||||
return $guest_author_thumbnail;
|
||||
}
|
||||
}
|
||||
|
||||
// Make sure we're dealing with an object for which we can retrieve an email
|
||||
if ( isset( $coauthor->user_email ) ) {
|
||||
return get_avatar( $coauthor->user_email, $size, $default, $alt, array( 'class' => $class ) );
|
||||
}
|
||||
|
||||
// Nothing matched, an invalid object was passed.
|
||||
return '';
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
function coauthors_plus_upgrade( $from ) {
|
||||
// TODO: handle upgrade failures
|
||||
|
||||
if ( $from < 2.0 ) {
|
||||
coauthors_plus_upgrade_20();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Upgrade to 2.0
|
||||
* Updates coauthors from old meta-based storage to taxonomy-based
|
||||
*/
|
||||
function coauthors_plus_upgrade_20() {
|
||||
global $coauthors_plus;
|
||||
|
||||
// Get all posts with meta_key _coauthor
|
||||
$all_posts = get_posts( array( 'numberposts' => '-1', 'meta_key' => '_coauthor' ) );
|
||||
|
||||
|
||||
foreach ( $all_posts as $single_post ) {
|
||||
// reset execution time limit
|
||||
set_time_limit( 60 );
|
||||
|
||||
// create new array
|
||||
$coauthors = array();
|
||||
// get author id -- try to use get_profile
|
||||
$coauthor = get_user_by( 'id', (int) $single_post->post_author );
|
||||
if ( is_object( $coauthor ) ) {
|
||||
$coauthors[] = $coauthor->user_login;
|
||||
}
|
||||
// get coauthors id
|
||||
$legacy_coauthors = get_post_meta( $single_post->ID, '_coauthor' );
|
||||
|
||||
if ( is_array( $legacy_coauthors ) ) {
|
||||
foreach ( $legacy_coauthors as $legacy_coauthor ) {
|
||||
$legacy_coauthor_login = get_user_by( 'id', (int) $legacy_coauthor );
|
||||
if ( is_object( $legacy_coauthor_login ) && ! in_array( $legacy_coauthor_login->user_login, $coauthors ) ) {
|
||||
$coauthors[] = $legacy_coauthor_login->user_login;
|
||||
}
|
||||
}
|
||||
}
|
||||
$coauthors_plus->add_coauthors( $single_post->ID, $coauthors );
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user