diff --git a/.idea/compiler.xml b/.idea/compiler.xml index e3df0cbda2e9..d9c7dcdd7264 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -11,22 +11,9 @@ - + - - - - - - - - - - - - - diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt index e8d5e03cad1d..701f2c572fc9 100644 --- a/RELEASE-NOTES.txt +++ b/RELEASE-NOTES.txt @@ -1,6 +1,15 @@ +16.4 +----- + 16.3 ----- +* [***] Site Creation: Adds an option to pick a home page design when creating a WordPress.com site. * [*] Posts Settings: removed deprecated location setting [https://github.com/wordpress-mobile/WordPress-Android/pull/13404] +* [**] Block Editor: Button block - Add link picker to the block settings [https://github.com/WordPress/gutenberg/pull/26206] +* [***] Block Editor: Adding support for selecting different unit of value in Cover and Columns blocks [https://github.com/WordPress/gutenberg/pull/26161] +* [*] Block Editor: Fix theme colors syncing with the editor [https://github.com/WordPress/gutenberg/pull/26821] +* [***] Stories: New feature for WordPress.com and Jetpack sites: Use photos and videos to create engaging and tappable fullscreen slideshows. [https://github.com/wordpress-mobile/WordPress-Android/pull/13459] +* [**] Reader: introduced a Follow/Unfollow button in comments screen to follow a post conversation and get notified by e-mail. Not supported for self-hosted sites not Jetpack connected. [https://github.com/wordpress-mobile/WordPress-Android/pull/13473] 16.2 ----- diff --git a/WordPress/build.gradle b/WordPress/build.gradle index ac2ba443ac6d..d55e149ab6fb 100644 --- a/WordPress/build.gradle +++ b/WordPress/build.gradle @@ -54,9 +54,9 @@ android { if (project.hasProperty("versionName")) { versionName project.property("versionName") } else { - versionName "alpha-259" + versionName "alpha-260" } - versionCode 960 + versionCode 963 minSdkVersion rootProject.minSdkVersion targetSdkVersion rootProject.targetSdkVersion @@ -71,7 +71,7 @@ android { buildConfigField "boolean", "FEATURE_ANNOUNCEMENT_AVAILABLE", "false" buildConfigField "boolean", "GUTENBERG_MENTIONS", "true" buildConfigField "boolean", "MODAL_LAYOUT_PICKER", "true" - buildConfigField "boolean", "HOME_PAGE_PICKER", "false" + buildConfigField "boolean", "HOME_PAGE_PICKER", "true" buildConfigField "boolean", "UNIFIED_LOGIN_AVAILABLE", "true" buildConfigField "boolean", "WP_STORIES_AVAILABLE", "true" buildConfigField "boolean", "ANY_FILE_UPLOAD", "true" @@ -81,6 +81,7 @@ android { buildConfigField "boolean", "ENABLE_FEATURE_CONFIGURATION", "true" buildConfigField "boolean", "MY_SITE_IMPROVEMENTS", "false" buildConfigField "boolean", "BACKUP_AVAILABLE", "false" + buildConfigField "boolean", "FOLLOW_UNFOLLOW_COMMENTS", "false" } // Gutenberg's dependency - react-native-video is using @@ -97,15 +98,14 @@ android { dimension "buildType" // Only set the release version if one isn't provided if (!project.hasProperty("versionName")) { - versionName "16.2-rc-2" + versionName "16.3-rc-1" } - versionCode 959 + versionCode 962 buildConfigField "boolean", "ME_ACTIVITY_AVAILABLE", "false" buildConfigField "boolean", "TENOR_AVAILABLE", "false" buildConfigField "long", "REMOTE_CONFIG_FETCH_INTERVAL", "3600" buildConfigField "boolean", "GUTENBERG_MENTIONS", "true" - buildConfigField "boolean", "HOME_PAGE_PICKER", "false" - buildConfigField "boolean", "WP_STORIES_AVAILABLE", "false" + buildConfigField "boolean", "WP_STORIES_AVAILABLE", "true" buildConfigField "boolean", "ANY_FILE_UPLOAD", "false" buildConfigField "boolean", "ENABLE_FEATURE_CONFIGURATION", "false" } @@ -120,7 +120,6 @@ android { wasabi { // "hot" version, can be installed along release, alpha or beta versions applicationId "org.wordpress.android.beta" dimension "buildType" - buildConfigField "boolean", "HOME_PAGE_PICKER", "true" // Enable this for testing consolidated media picker // buildConfigField "boolean", "CONSOLIDATED_MEDIA_PICKER", "true" } @@ -128,7 +127,6 @@ android { jalapeno { // Pre-Alpha version, used for PR builds, can be installed along release, alpha, beta, dev versions applicationId "org.wordpress.android.prealpha" dimension "buildType" - buildConfigField "boolean", "HOME_PAGE_PICKER", "false" } } diff --git a/WordPress/metadata/release_notes.txt b/WordPress/metadata/release_notes.txt index d21993f60dae..fb17e12a18fd 100644 --- a/WordPress/metadata/release_notes.txt +++ b/WordPress/metadata/release_notes.txt @@ -1,4 +1,8 @@ -Block editor enhancements: We’ve improved the overall performance and speed, which you might notice when you open the editor to create a new post. We’ve also improved the Image block, with better support for uploading multiple images. - -Other updates and fixes: Your app now uses a new Media Picker when you select files for posts, your site icon, Gravatar, and other places. We also fixed a bug on pure self-hosted sites on HTTP that prevented featured images from displaying in the Posts List. +* [***] Site Creation: Adds an option to pick a home page design when creating a WordPress.com site. +* [*] Posts Settings: removed deprecated location setting [https://github.com/wordpress-mobile/WordPress-Android/pull/13404] +* [**] Block Editor: Button block - Add link picker to the block settings [https://github.com/WordPress/gutenberg/pull/26206] +* [***] Block Editor: Adding support for selecting different unit of value in Cover and Columns blocks [https://github.com/WordPress/gutenberg/pull/26161] +* [*] Block Editor: Fix theme colors syncing with the editor [https://github.com/WordPress/gutenberg/pull/26821] +* [***] Stories: New feature for WordPress.com and Jetpack sites: Use photos and videos to create engaging and tappable fullscreen slideshows. [https://github.com/wordpress-mobile/WordPress-Android/pull/13459] +* [**] Reader: introduced a Follow/Unfollow button in comments screen to follow a post conversation and get notified by e-mail. Not supported for self-hosted sites not Jetpack connected. [https://github.com/wordpress-mobile/WordPress-Android/pull/13473] diff --git a/WordPress/metadata/release_notes_short.txt b/WordPress/metadata/release_notes_short.txt index 859aa8dbd104..e69de29bb2d1 100644 --- a/WordPress/metadata/release_notes_short.txt +++ b/WordPress/metadata/release_notes_short.txt @@ -1,3 +0,0 @@ -Block editor: We’ve improved the overall performance, which you may notice when you start a new post. The Image block now has better support for uploading multiple images. - -More updates: Your app uses a new Media Picker when you select files. We also fixed a bug on pure self-hosted sites on HTTP that affected featured images in the Posts List. \ No newline at end of file diff --git a/WordPress/src/androidTest/java/org/wordpress/android/e2e/pages/MySitesPage.java b/WordPress/src/androidTest/java/org/wordpress/android/e2e/pages/MySitesPage.java index 297f59052dc9..3dd8d0fec10a 100644 --- a/WordPress/src/androidTest/java/org/wordpress/android/e2e/pages/MySitesPage.java +++ b/WordPress/src/androidTest/java/org/wordpress/android/e2e/pages/MySitesPage.java @@ -16,6 +16,7 @@ import static androidx.test.espresso.matcher.ViewMatchers.withText; import static org.hamcrest.Matchers.allOf; import static org.wordpress.android.support.WPSupportUtils.clickOn; +import static org.wordpress.android.support.WPSupportUtils.isElementDisplayed; import static org.wordpress.android.support.WPSupportUtils.longClickOn; public class MySitesPage { @@ -49,6 +50,10 @@ public void removeSite(String siteName) { public void startNewPost() { clickOn(R.id.fab_button); + if (isElementDisplayed(R.id.design_bottom_sheet)) { + // If Stories are enabled, FAB opens a bottom sheet with options - select the 'Blog post' option + clickOn(onView(withText(R.string.my_site_bottom_sheet_add_post))); + } } public void gotoSiteSettings() { diff --git a/WordPress/src/main/java/org/wordpress/android/modules/AppComponent.java b/WordPress/src/main/java/org/wordpress/android/modules/AppComponent.java index 6ac4abd7d785..40be6e40a322 100644 --- a/WordPress/src/main/java/org/wordpress/android/modules/AppComponent.java +++ b/WordPress/src/main/java/org/wordpress/android/modules/AppComponent.java @@ -157,6 +157,7 @@ import org.wordpress.android.ui.reader.services.discover.ReaderDiscoverLogic; import org.wordpress.android.ui.reader.services.discover.ReaderDiscoverService; import org.wordpress.android.ui.reader.services.update.ReaderUpdateLogic; +import org.wordpress.android.ui.reader.views.ReaderCommentsPostHeaderView; import org.wordpress.android.ui.reader.views.ReaderExpandableTagsView; import org.wordpress.android.ui.reader.views.ReaderLikingUsersView; import org.wordpress.android.ui.reader.views.ReaderPostDetailHeaderView; @@ -427,6 +428,8 @@ public interface AppComponent extends AndroidInjector { void inject(ReaderBlogAdapter object); + void inject(ReaderCommentsPostHeaderView object); + void inject(ReleaseNotesActivity object); void inject(WPWebViewActivity object); diff --git a/WordPress/src/main/java/org/wordpress/android/push/NotificationsProcessingService.java b/WordPress/src/main/java/org/wordpress/android/push/NotificationsProcessingService.java index 41ba7e0cb632..0202f9a29af8 100644 --- a/WordPress/src/main/java/org/wordpress/android/push/NotificationsProcessingService.java +++ b/WordPress/src/main/java/org/wordpress/android/push/NotificationsProcessingService.java @@ -49,6 +49,7 @@ import org.wordpress.android.util.AppLog.T; import org.wordpress.android.util.LocaleManager; import org.wordpress.android.util.analytics.AnalyticsUtils; +import org.wordpress.android.util.analytics.AnalyticsUtils.AnalyticsCommentActionSource; import org.wordpress.android.util.analytics.AnalyticsUtils.QuickActionTrackPropertyValue; import java.util.ArrayList; @@ -543,15 +544,19 @@ private void likeComment() { return; } + SiteModel site = mSiteStore.getSiteBySiteId(mNote.getSiteId()); + // Bump analytics + // TODO klymyam remove legacy comment tracking after new comments are shipped and new funnels are made AnalyticsUtils.trackWithBlogPostDetails( AnalyticsTracker.Stat.NOTIFICATION_QUICK_ACTIONS_LIKED, mNote.getSiteId(), mNote.getPostId()); + AnalyticsUtils.trackCommentActionWithSiteDetails(Stat.COMMENT_QUICK_ACTION_LIKED, + AnalyticsCommentActionSource.NOTIFICATIONS, site); AnalyticsUtils.trackQuickActionTouched( QuickActionTrackPropertyValue.LIKE, - mSiteStore.getSiteBySiteId(mNote.getSiteId()), + site, mNote.buildComment()); - SiteModel site = mSiteStore.getSiteBySiteId(mNote.getSiteId()); if (site != null) { mDispatcher.dispatch(CommentActionBuilder.newLikeCommentAction( new RemoteLikeCommentPayload(site, mNote.getCommentId(), true))); @@ -567,18 +572,24 @@ private void approveComment() { return; } + SiteModel site = mSiteStore.getSiteBySiteId(mNote.getSiteId()); + // Bump analytics + // TODO klymyam remove legacy comment tracking after new comments are shipped and new funnels are made AnalyticsUtils.trackWithBlogPostDetails( AnalyticsTracker.Stat.NOTIFICATION_QUICK_ACTIONS_APPROVED, mNote.getSiteId(), mNote.getPostId()); + AnalyticsUtils.trackCommentActionWithSiteDetails(Stat.COMMENT_QUICK_ACTION_APPROVED, + AnalyticsCommentActionSource.NOTIFICATIONS, site); + AnalyticsUtils.trackQuickActionTouched( QuickActionTrackPropertyValue.APPROVE, - mSiteStore.getSiteBySiteId(mNote.getSiteId()), + site, mNote.buildComment()); // Update pseudo comment (built from the note) CommentModel comment = mNote.buildComment(); comment.setStatus(CommentStatus.APPROVED.toString()); - SiteModel site = mSiteStore.getSiteBySiteId(mNote.getSiteId()); + if (site == null) { AppLog.e(T.NOTIFS, "Impossible to approve a comment on a site that is not in the App. SiteId: " + mNote.getSiteId()); @@ -621,7 +632,8 @@ private void replyToComment() { mDispatcher.dispatch(CommentActionBuilder.newCreateNewCommentAction(payload)); // Bump analytics - AnalyticsUtils.trackCommentReplyWithDetails(true, site, comment); + AnalyticsUtils.trackCommentReplyWithDetails(true, + site, comment, AnalyticsCommentActionSource.NOTIFICATIONS); AnalyticsUtils.trackQuickActionTouched(QuickActionTrackPropertyValue.REPLY_TO, site, comment); } else { // cancel the current notification diff --git a/WordPress/src/main/java/org/wordpress/android/ui/activitylog/BackupDownloadProgressChecker.kt b/WordPress/src/main/java/org/wordpress/android/ui/activitylog/BackupDownloadProgressChecker.kt index 17515c63c70b..bd9c649b0201 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/activitylog/BackupDownloadProgressChecker.kt +++ b/WordPress/src/main/java/org/wordpress/android/ui/activitylog/BackupDownloadProgressChecker.kt @@ -21,8 +21,8 @@ class BackupDownloadProgressChecker @Inject constructor( private val activityLogStore: ActivityLogStore, @param:Named(DEFAULT_SCOPE) private val defaultScope: CoroutineScope ) { - suspend fun startNow(site: SiteModel, restoreId: Long): OnBackupDownloadStatusFetched? { - return start(site, restoreId, true) + suspend fun startNow(site: SiteModel, downloadId: Long): OnBackupDownloadStatusFetched? { + return start(site, downloadId, true) } suspend fun start( diff --git a/WordPress/src/main/java/org/wordpress/android/ui/activitylog/BackupDownloadStatusService.kt b/WordPress/src/main/java/org/wordpress/android/ui/activitylog/BackupDownloadStatusService.kt new file mode 100644 index 000000000000..238b6ded7751 --- /dev/null +++ b/WordPress/src/main/java/org/wordpress/android/ui/activitylog/BackupDownloadStatusService.kt @@ -0,0 +1,212 @@ +package org.wordpress.android.ui.activitylog + +import androidx.lifecycle.LiveData +import androidx.lifecycle.MutableLiveData +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Job +import kotlinx.coroutines.launch +import org.wordpress.android.fluxc.model.SiteModel +import org.wordpress.android.fluxc.model.activity.ActivityLogModel +import org.wordpress.android.fluxc.model.activity.BackupDownloadStatusModel +import org.wordpress.android.fluxc.store.ActivityLogStore +import org.wordpress.android.fluxc.store.ActivityLogStore.BackupDownloadError +import org.wordpress.android.fluxc.store.ActivityLogStore.BackupDownloadPayload +import org.wordpress.android.fluxc.store.ActivityLogStore.BackupDownloadRequestTypes +import org.wordpress.android.fluxc.store.ActivityLogStore.BackupDownloadStatusError +import org.wordpress.android.fluxc.store.ActivityLogStore.FetchBackupDownloadStatePayload +import org.wordpress.android.fluxc.store.ActivityLogStore.OnBackupDownload +import org.wordpress.android.modules.UI_SCOPE +import javax.inject.Inject +import javax.inject.Named +import javax.inject.Singleton + +// todo: annmarie - add tracking key - may be rewindId const val REWIND_ID_TRACKING_KEY = "rewind_id" + +@Singleton +class BackupDownloadStatusService @Inject constructor( + private val activityLogStore: ActivityLogStore, + private val backupDownloadProgressChecker: BackupDownloadProgressChecker, + @param:Named(UI_SCOPE) private val uiScope: CoroutineScope +) { + private val mutableBackupDownloadAvailable = MutableLiveData() + private val mutableBackupDownloadError = MutableLiveData() + private val mutableBackupDownloadStatusFetchError = MutableLiveData() + private val mutableBackupDownloadProgress = MutableLiveData() + private var site: SiteModel? = null + private var activityLogModelItem: ActivityLogModel? = null + private var backupDownloadProgressCheckerJob: Job? = null + private var fetchBackupDownloadJob: Job? = null + + val preparingBackupDownloadActivityLogModel: ActivityLogModel? + get() = activityLogModelItem + + val backupDownloadAvailable: LiveData = mutableBackupDownloadAvailable + val backupDownloadError: LiveData = mutableBackupDownloadError + val backupDownloadStatusFetchError: LiveData = mutableBackupDownloadStatusFetchError + val backupDownloadProgress: LiveData = mutableBackupDownloadProgress + + val isBackupDownloadInProgress: Boolean + get() = backupDownloadProgress.value?.progress != null + + val isBackupDownloadAvailable: Boolean + get() = backupDownloadAvailable.value == true + + fun backupDownload(rewindId: String, site: SiteModel, types: BackupDownloadRequestTypes) = + uiScope.launch { + // todo: annmarie - implement tracking here once naming has been decided + // AnalyticsUtils.trackWithSiteDetails( + // AnalyticsTracker.Stat.ACTIVITY_LOG_PREPARE_BACKUP_DOWNLOAD_STARTED, + // site, mutableMapOf(REWIND_ID_TRACKING_KEY to rewindId as Any)) + + updateBackupDownloadProgress(rewindId, 0) + mutableBackupDownloadAvailable.value = false + mutableBackupDownloadError.value = null + + val backupDownloadResult = activityLogStore.backupDownload( + BackupDownloadPayload( + site, + rewindId, + types + ) + ) + onBackupDownload(backupDownloadResult) + } + + fun start(site: SiteModel) { + if (this.site == null) { + this.site = site + requestStatusUpdate() + reloadBackupDownloadStatus() + } + } + + fun stop() { + backupDownloadProgressCheckerJob?.cancel() + fetchBackupDownloadJob?.cancel() + if (site != null) { + site = null + } + } + + fun requestStatusUpdate() { + site?.let { + fetchBackupDownloadJob?.cancel() + fetchBackupDownloadJob = uiScope.launch { + val backupDownloadStatus = activityLogStore.fetchBackupDownloadState( + FetchBackupDownloadStatePayload(it) + ) + onBackupDownloadStatusFetched( + backupDownloadStatus.error, + backupDownloadStatus.isError + ) + } + } + } + + private fun reloadBackupDownloadStatus() { + site?.let { + val state = activityLogStore.getBackupDownloadStatusForSite(it) + state?.let { + updateBackupDownloadStatus(state) + } + } + } + + private fun updateBackupDownloadStatus(backupDownloadStatus: BackupDownloadStatusModel?) { + mutableBackupDownloadAvailable.value = backupDownloadStatus?.progress == null + + if (backupDownloadStatus != null) { + val downloadId = backupDownloadStatus.downloadId + if (backupDownloadProgressCheckerJob?.isActive != true) { + site?.let { + backupDownloadProgressCheckerJob = uiScope.launch { + val backupDownloadStatusFetched = backupDownloadProgressChecker.startNow( + it, + downloadId + ) + onBackupDownloadStatusFetched( + backupDownloadStatusFetched?.error, + backupDownloadStatusFetched?.isError == true + ) + } + } + } + updateBackupDownloadProgress( + backupDownloadStatus.rewindId, + backupDownloadStatus.progress + ) + if (backupDownloadStatus.progress == null) { + backupDownloadProgressCheckerJob?.cancel() + } + } else { + mutableBackupDownloadProgress.setValue(null) + } + } + + private fun onBackupDownloadStatusFetched( + backupDownloadStatusError: BackupDownloadStatusError?, + isError: Boolean + ) { + mutableBackupDownloadStatusFetchError.value = backupDownloadStatusError + if (isError) { + backupDownloadProgressCheckerJob?.cancel() + } + reloadBackupDownloadStatus() + } + + private fun onBackupDownload(event: OnBackupDownload) { + mutableBackupDownloadError.value = event.error + if (event.isError) { + mutableBackupDownloadAvailable.value = true + reloadBackupDownloadStatus() + updateBackupDownloadProgress( + event.rewindId, + 0, + event.error?.type?.toString() + ) + return + } + site?.let { + event.downloadId?.let { downloadId -> + backupDownloadProgressCheckerJob = uiScope.launch { + val backupDownloadStatusFetched = backupDownloadProgressChecker.start( + it, + downloadId + ) + onBackupDownloadStatusFetched( + backupDownloadStatusFetched?.error, + backupDownloadStatusFetched?.isError == true + ) + } + } + } + } + + private fun updateBackupDownloadProgress( + rewindId: String?, + progress: Int?, + backupDownloadError: String? = null + ) { + var activityItem = if (rewindId != null) activityLogStore.getActivityLogItemByRewindId( + rewindId + ) else null + if (activityItem == null && activityLogModelItem != null && activityLogModelItem?.rewindID == rewindId) { + activityItem = activityLogModelItem + } + if (activityItem != null) { + activityLogModelItem = activityItem + } + val backupDownloadProgress = BackupDownloadProgress( + activityItem, + progress, + backupDownloadError + ) + mutableBackupDownloadProgress.value = backupDownloadProgress + } + + data class BackupDownloadProgress( + val activityLogItem: ActivityLogModel?, + val progress: Int?, + val failureReason: String? = null + ) +} diff --git a/WordPress/src/main/java/org/wordpress/android/ui/activitylog/list/filter/ActivityLogTypeFilterViewModel.kt b/WordPress/src/main/java/org/wordpress/android/ui/activitylog/list/filter/ActivityLogTypeFilterViewModel.kt index 040367871ea6..1b058d5ffeb5 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/activitylog/list/filter/ActivityLogTypeFilterViewModel.kt +++ b/WordPress/src/main/java/org/wordpress/android/ui/activitylog/list/filter/ActivityLogTypeFilterViewModel.kt @@ -92,15 +92,15 @@ class ActivityLogTypeFilterViewModel @Inject constructor( } private fun onItemClicked(itemId: Int) { - (_uiState.value as? Content)?.let { it -> - val updatedList = it.items.map { - if (it is ListItemUiState.ActivityType && it.id == itemId) { - it.copy(checked = !it.checked) + (_uiState.value as? Content)?.let { content -> + val updatedList = content.items.map { itemUiState -> + if (itemUiState is ListItemUiState.ActivityType && itemUiState.id == itemId) { + itemUiState.copy(checked = !itemUiState.checked) } else { - it + itemUiState } } - _uiState.postValue(it.copy(items = updatedList)) + _uiState.postValue(content.copy(items = updatedList)) } } diff --git a/WordPress/src/main/java/org/wordpress/android/ui/comments/CommentDetailFragment.java b/WordPress/src/main/java/org/wordpress/android/ui/comments/CommentDetailFragment.java index 3b1058330a77..01fe634199bf 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/comments/CommentDetailFragment.java +++ b/WordPress/src/main/java/org/wordpress/android/ui/comments/CommentDetailFragment.java @@ -96,6 +96,7 @@ import org.wordpress.android.util.ViewUtilsKt; import org.wordpress.android.util.WPLinkMovementMethod; import org.wordpress.android.util.analytics.AnalyticsUtils; +import org.wordpress.android.util.analytics.AnalyticsUtils.AnalyticsCommentActionSource; import org.wordpress.android.util.image.ImageManager; import org.wordpress.android.util.image.ImageType; import org.wordpress.android.widgets.SuggestionAutoCompleteText; @@ -119,8 +120,22 @@ public class CommentDetailFragment extends ViewPagerFragment implements Notifica private static final String KEY_REPLY_TEXT = "KEY_REPLY_TEXT"; private static final int INTENT_COMMENT_EDITOR = 1010; - private static final int FROM_BLOG_COMMENT = 1; - private static final int FROM_NOTE = 2; + + enum CommentSource { + NOTIFICATION, + SITE_COMMENTS; + + AnalyticsCommentActionSource toAnalyticsCommentActionSource() { + switch (this) { + case NOTIFICATION: + return AnalyticsCommentActionSource.NOTIFICATIONS; + case SITE_COMMENTS: + return AnalyticsCommentActionSource.SITE_COMMENTS; + } + throw new IllegalArgumentException( + this + " CommentSource is not mapped to corresponding AnalyticsCommentActionSource"); + } + } private CommentModel mComment; private SiteModel mSite; @@ -167,6 +182,8 @@ public class CommentDetailFragment extends ViewPagerFragment implements Notifica private OnCommentActionListener mOnCommentActionListener; private OnNoteCommentActionListener mOnNoteCommentActionListener; + private CommentSource mCommentSource; + /* * these determine which actions (moderation, replying, marking as spam) to enable * for this comment - all actions are enabled when opened from the comment list, only @@ -180,7 +197,7 @@ public class CommentDetailFragment extends ViewPagerFragment implements Notifica static CommentDetailFragment newInstance(SiteModel site, CommentModel commentModel) { CommentDetailFragment fragment = new CommentDetailFragment(); Bundle args = new Bundle(); - args.putInt(KEY_MODE, FROM_BLOG_COMMENT); + args.putSerializable(KEY_MODE, CommentSource.SITE_COMMENTS); args.putInt(KEY_SITE_LOCAL_ID, site.getId()); args.putLong(KEY_COMMENT_ID, commentModel.getRemoteCommentId()); fragment.setArguments(args); @@ -193,7 +210,7 @@ static CommentDetailFragment newInstance(SiteModel site, CommentModel commentMod public static CommentDetailFragment newInstance(final String noteId, final String replyText) { CommentDetailFragment fragment = new CommentDetailFragment(); Bundle args = new Bundle(); - args.putInt(KEY_MODE, FROM_NOTE); + args.putSerializable(KEY_MODE, CommentSource.NOTIFICATION); args.putString(KEY_NOTE_ID, noteId); args.putString(KEY_REPLY_TEXT, replyText); fragment.setArguments(args); @@ -205,11 +222,13 @@ public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ((WordPress) getActivity().getApplication()).component().inject(this); - switch (getArguments().getInt(KEY_MODE)) { - case FROM_BLOG_COMMENT: + mCommentSource = (CommentSource) getArguments().getSerializable(KEY_MODE); + + switch (mCommentSource) { + case SITE_COMMENTS: setComment(getArguments().getLong(KEY_COMMENT_ID), getArguments().getInt(KEY_SITE_LOCAL_ID)); break; - case FROM_NOTE: + case NOTIFICATION: setNote(getArguments().getString(KEY_NOTE_ID)); setReplyText(getArguments().getString(KEY_REPLY_TEXT)); break; @@ -589,6 +608,8 @@ public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == INTENT_COMMENT_EDITOR && resultCode == Activity.RESULT_OK) { reloadComment(); + AnalyticsUtils.trackCommentActionWithSiteDetails(Stat.COMMENT_EDITED, + mCommentSource.toAnalyticsCommentActionSource(), mSite); } } @@ -838,19 +859,50 @@ public void onFailure(int statusCode) { } } - private void trackModerationFromNotification(final CommentStatus newStatus) { + // TODO klymyam remove legacy comment tracking after new comments are shipped and new funnels are made + private void trackModerationEvent(final CommentStatus newStatus) { switch (newStatus) { case APPROVED: - AnalyticsTracker.track(Stat.NOTIFICATION_APPROVED); + if (mCommentSource == CommentSource.NOTIFICATION) { + AnalyticsTracker.track(Stat.NOTIFICATION_APPROVED); + } + AnalyticsUtils.trackCommentActionWithSiteDetails(Stat.COMMENT_APPROVED, + mCommentSource.toAnalyticsCommentActionSource(), mSite); break; case UNAPPROVED: - AnalyticsTracker.track(Stat.NOTIFICATION_UNAPPROVED); + if (mCommentSource == CommentSource.NOTIFICATION) { + AnalyticsTracker.track(Stat.NOTIFICATION_UNAPPROVED); + } + AnalyticsUtils.trackCommentActionWithSiteDetails(Stat.COMMENT_UNAPPROVED, + mCommentSource.toAnalyticsCommentActionSource(), mSite); break; case SPAM: - AnalyticsTracker.track(Stat.NOTIFICATION_FLAGGED_AS_SPAM); + if (mCommentSource == CommentSource.NOTIFICATION) { + AnalyticsTracker.track(Stat.NOTIFICATION_FLAGGED_AS_SPAM); + } + AnalyticsUtils.trackCommentActionWithSiteDetails(Stat.COMMENT_SPAMMED, + mCommentSource.toAnalyticsCommentActionSource(), mSite); + break; + case UNSPAM: + AnalyticsUtils.trackCommentActionWithSiteDetails(Stat.COMMENT_UNSPAMMED, + mCommentSource.toAnalyticsCommentActionSource(), mSite); break; case TRASH: - AnalyticsTracker.track(Stat.NOTIFICATION_TRASHED); + if (mCommentSource == CommentSource.NOTIFICATION) { + AnalyticsTracker.track(Stat.NOTIFICATION_TRASHED); + } + AnalyticsUtils.trackCommentActionWithSiteDetails(Stat.COMMENT_TRASHED, + mCommentSource.toAnalyticsCommentActionSource(), mSite); + break; + case UNTRASH: + AnalyticsUtils.trackCommentActionWithSiteDetails(Stat.COMMENT_UNTRASHED, + mCommentSource.toAnalyticsCommentActionSource(), mSite); + break; + case DELETED: + AnalyticsUtils.trackCommentActionWithSiteDetails(Stat.COMMENT_DELETED, + mCommentSource.toAnalyticsCommentActionSource(), mSite); + break; + case ALL: break; } } @@ -868,10 +920,23 @@ private void moderateComment(CommentStatus newStatus) { mPreviousStatus = mComment.getStatus(); + // Restoring comment from trash or spam works by approving it, but we want to track the actual action + // instead of generic Approve action + CommentStatus statusToTrack; + if (CommentStatus.fromString(mPreviousStatus) == CommentStatus.SPAM && newStatus == CommentStatus.APPROVED) { + statusToTrack = CommentStatus.UNSPAM; + } else if (CommentStatus.fromString(mPreviousStatus) == CommentStatus.TRASH + && newStatus == CommentStatus.APPROVED) { + statusToTrack = CommentStatus.UNTRASH; + } else { + statusToTrack = newStatus; + } + + trackModerationEvent(statusToTrack); + // Fire the appropriate listener if we have one if (mNote != null && mOnNoteCommentActionListener != null) { mOnNoteCommentActionListener.onModerateCommentForNote(mNote, newStatus); - trackModerationFromNotification(newStatus); dispatchModerationAction(newStatus); } else if (mOnCommentActionListener != null) { mOnCommentActionListener.onModerateComment(mSite, mComment, newStatus); @@ -920,7 +985,8 @@ private void submitReply() { mIsSubmittingReply = true; - AnalyticsUtils.trackCommentReplyWithDetails(false, mSite, mComment); + AnalyticsUtils.trackCommentReplyWithDetails( + false, mSite, mComment, mCommentSource.toAnalyticsCommentActionSource()); // Pseudo comment reply CommentModel reply = new CommentModel(); @@ -1037,7 +1103,6 @@ private void performModerateAction() { announceCommentStatusChangeForAccessibility( currentStatus == CommentStatus.TRASH ? CommentStatus.UNTRASH : newStatus); - mComment.setStatus(newStatus.toString()); setModerateButtonForStatus(newStatus); AniUtils.startAnimation(mBtnModerateIcon, R.anim.notifications_button_scale); moderateComment(newStatus); @@ -1167,7 +1232,13 @@ private void likeComment(boolean forceLike) { ReaderAnim.animateLikeButton(mBtnLikeIcon, mBtnLikeComment.isActivated()); // Bump analytics - AnalyticsTracker.track(mBtnLikeComment.isActivated() ? Stat.NOTIFICATION_LIKED : Stat.NOTIFICATION_UNLIKED); + // TODO klymyam remove legacy comment tracking after new comments are shipped and new funnels are made + if (mCommentSource == CommentSource.NOTIFICATION) { + AnalyticsTracker.track(mBtnLikeComment.isActivated() ? Stat.NOTIFICATION_LIKED : Stat.NOTIFICATION_UNLIKED); + } + AnalyticsUtils.trackCommentActionWithSiteDetails( + mBtnLikeComment.isActivated() ? Stat.COMMENT_LIKED : Stat.COMMENT_UNLIKED, + mCommentSource.toAnalyticsCommentActionSource(), mSite); if (mNotificationsDetailListFragment != null && mComment != null) { // Optimistically set comment to approved when liking an unapproved comment diff --git a/WordPress/src/main/java/org/wordpress/android/ui/comments/CommentsActivity.java b/WordPress/src/main/java/org/wordpress/android/ui/comments/CommentsActivity.java index 501f8bf5bc99..c8252788627d 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/comments/CommentsActivity.java +++ b/WordPress/src/main/java/org/wordpress/android/ui/comments/CommentsActivity.java @@ -268,6 +268,7 @@ private void moderateComment(CommentModel comment, CommentStatus newStatus) { } else { // Actual moderation (push the modified comment). comment.setStatus(newStatus.toString()); + mDispatcher.dispatch(CommentActionBuilder.newUpdateCommentAction(comment)); mDispatcher.dispatch(CommentActionBuilder.newPushCommentAction(new RemoteCommentPayload(mSite, comment))); } } diff --git a/WordPress/src/main/java/org/wordpress/android/ui/comments/CommentsDetailActivity.java b/WordPress/src/main/java/org/wordpress/android/ui/comments/CommentsDetailActivity.java index ff0b48187ef9..9fec406c8586 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/comments/CommentsDetailActivity.java +++ b/WordPress/src/main/java/org/wordpress/android/ui/comments/CommentsDetailActivity.java @@ -18,6 +18,7 @@ import org.greenrobot.eventbus.ThreadMode; import org.wordpress.android.R; import org.wordpress.android.WordPress; +import org.wordpress.android.analytics.AnalyticsTracker.Stat; import org.wordpress.android.fluxc.Dispatcher; import org.wordpress.android.fluxc.action.CommentAction; import org.wordpress.android.fluxc.generated.CommentActionBuilder; @@ -34,6 +35,8 @@ import org.wordpress.android.util.AppLog; import org.wordpress.android.util.NetworkUtils; import org.wordpress.android.util.ToastUtils; +import org.wordpress.android.util.analytics.AnalyticsUtils; +import org.wordpress.android.util.analytics.AnalyticsUtils.AnalyticsCommentActionSource; import org.wordpress.android.widgets.WPViewPager; import org.wordpress.android.widgets.WPViewPagerTransformer; @@ -113,6 +116,12 @@ public void onCreate(Bundle savedInstanceState) { // Asynchronously loads comments and build the adapter loadDataInViewPager(); + + if (savedInstanceState == null) { + // track initial comment view + AnalyticsUtils.trackCommentActionWithSiteDetails( + Stat.COMMENT_VIEWED, AnalyticsCommentActionSource.SITE_COMMENTS, mSite); + } } @Override @@ -231,6 +240,9 @@ public void onPageSelected(int position) { final CommentModel comment = mAdapter.getCommentAtPosition(position); if (comment != null) { mCommentId = comment.getRemoteCommentId(); + // track subsequent comment views + AnalyticsUtils.trackCommentActionWithSiteDetails( + Stat.COMMENT_VIEWED, AnalyticsCommentActionSource.SITE_COMMENTS, mSite); } } }; diff --git a/WordPress/src/main/java/org/wordpress/android/ui/notifications/NotificationsDetailActivity.java b/WordPress/src/main/java/org/wordpress/android/ui/notifications/NotificationsDetailActivity.java index c211ef72b1b2..cffc7e37432a 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/notifications/NotificationsDetailActivity.java +++ b/WordPress/src/main/java/org/wordpress/android/ui/notifications/NotificationsDetailActivity.java @@ -26,6 +26,7 @@ import org.wordpress.android.R; import org.wordpress.android.WordPress; import org.wordpress.android.analytics.AnalyticsTracker; +import org.wordpress.android.analytics.AnalyticsTracker.Stat; import org.wordpress.android.datasets.NotificationsTable; import org.wordpress.android.fluxc.model.CommentStatus; import org.wordpress.android.fluxc.model.SiteModel; @@ -55,6 +56,8 @@ import org.wordpress.android.util.AppLog; import org.wordpress.android.util.StringUtils; import org.wordpress.android.util.ToastUtils; +import org.wordpress.android.util.analytics.AnalyticsUtils; +import org.wordpress.android.util.analytics.AnalyticsUtils.AnalyticsCommentActionSource; import org.wordpress.android.widgets.WPSwipeSnackbar; import org.wordpress.android.widgets.WPViewPager; import org.wordpress.android.widgets.WPViewPagerTransformer; @@ -145,6 +148,10 @@ public void onCreate(Bundle savedInstanceState) { if (!getIntent().getBooleanExtra(NotificationsListFragment.NOTE_INSTANT_REPLY_EXTRA, false)) { getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN); } + // track initial comment note view + if (savedInstanceState == null) { + trackCommentNote(note); + } } private void updateUIAndNote(boolean doRefresh) { @@ -225,6 +232,8 @@ public void onPageSelected(int position) { setActionBarTitleForNote(currentNote); markNoteAsRead(currentNote); NotificationsActions.updateSeenTimestamp(currentNote); + // track subsequent comment note views + trackCommentNote(currentNote); } } @@ -236,6 +245,14 @@ public void onPageScrollStateChanged(int state) { mViewPager.addOnPageChangeListener(mOnPageChangeListener); } + private void trackCommentNote(Note note) { + if (note.isCommentType()) { + SiteModel site = mSiteStore.getSiteBySiteId(note.getSiteId()); + AnalyticsUtils.trackCommentActionWithSiteDetails( + Stat.COMMENT_VIEWED, AnalyticsCommentActionSource.NOTIFICATIONS, site); + } + } + public void showHideToolbar(boolean hide) { if (getSupportActionBar() != null) { if (hide) { diff --git a/WordPress/src/main/java/org/wordpress/android/ui/notifications/NotificationsListFragmentPage.kt b/WordPress/src/main/java/org/wordpress/android/ui/notifications/NotificationsListFragmentPage.kt index fd867d60f60e..750797bfafda 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/notifications/NotificationsListFragmentPage.kt +++ b/WordPress/src/main/java/org/wordpress/android/ui/notifications/NotificationsListFragmentPage.kt @@ -69,7 +69,7 @@ class NotificationsListFragmentPage : ViewPagerFragment(), OnScrollToTopListener private val showNewUnseenNotificationsRunnable = Runnable { if (isAdded) { - notifications_list.addOnScrollListener(mOnScrollListener) + notifications_list?.addOnScrollListener(mOnScrollListener) } } diff --git a/WordPress/src/main/java/org/wordpress/android/ui/prefs/SiteSettingsFragment.java b/WordPress/src/main/java/org/wordpress/android/ui/prefs/SiteSettingsFragment.java index 53ab1572a80c..10f4173c16a1 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/prefs/SiteSettingsFragment.java +++ b/WordPress/src/main/java/org/wordpress/android/ui/prefs/SiteSettingsFragment.java @@ -562,6 +562,7 @@ public boolean onPreferenceClick(Preference preference) { showListEditorDialog(R.string.site_settings_blacklist_title, R.string.site_settings_blacklist_description); } else if (preference == mJpWhitelistPref) { + AnalyticsTracker.track(Stat.SITE_SETTINGS_JETPACK_WHITELISTED_IPS_VIEWED); mEditingList = mSiteSettings.getJetpackWhitelistKeys(); showListEditorDialog(R.string.jetpack_brute_force_whitelist_title, R.string.site_settings_jetpack_whitelist_description); @@ -615,6 +616,9 @@ public boolean onPreferenceChange(Preference preference, Object newValue) { } if (preference == mJpWhitelistPref) { + if (mJpWhitelistPref.getSummary() != mSiteSettings.getJetpackProtectWhitelistSummary()) { + AnalyticsTracker.track(Stat.SITE_SETTINGS_JETPACK_WHITELISTED_IPS_CHANGED); + } mJpWhitelistPref.setSummary(mSiteSettings.getJetpackProtectWhitelistSummary()); } else if (preference == mJpMonitorActivePref) { mJpMonitorActivePref.setChecked((Boolean) newValue); diff --git a/WordPress/src/main/java/org/wordpress/android/ui/reader/FollowCommentsUiState.kt b/WordPress/src/main/java/org/wordpress/android/ui/reader/FollowCommentsUiState.kt new file mode 100644 index 000000000000..8677a805a609 --- /dev/null +++ b/WordPress/src/main/java/org/wordpress/android/ui/reader/FollowCommentsUiState.kt @@ -0,0 +1,16 @@ +package org.wordpress.android.ui.reader + +data class FollowCommentsUiState( + val type: FollowCommentsUiStateType, + val showFollowButton: Boolean = false, + val isFollowing: Boolean = false, + val animate: Boolean = false, + val onFollowButtonClick: ((Boolean) -> Unit)? = null +) + +enum class FollowCommentsUiStateType { + DISABLED, + LOADING, + GONE, + VISIBLE_WITH_STATE +} diff --git a/WordPress/src/main/java/org/wordpress/android/ui/reader/ReaderCommentListActivity.java b/WordPress/src/main/java/org/wordpress/android/ui/reader/ReaderCommentListActivity.java index 0e52588cb978..de5933ae5437 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/reader/ReaderCommentListActivity.java +++ b/WordPress/src/main/java/org/wordpress/android/ui/reader/ReaderCommentListActivity.java @@ -24,6 +24,7 @@ import androidx.appcompat.app.ActionBar; import androidx.appcompat.widget.Toolbar; import androidx.lifecycle.ViewModelProvider; +import androidx.lifecycle.ViewModelProviders; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearSmoothScroller; import androidx.recyclerview.widget.RecyclerView; @@ -38,6 +39,7 @@ import org.wordpress.android.R; import org.wordpress.android.WordPress; import org.wordpress.android.analytics.AnalyticsTracker; +import org.wordpress.android.analytics.AnalyticsTracker.Stat; import org.wordpress.android.datasets.ReaderCommentTable; import org.wordpress.android.datasets.ReaderPostTable; import org.wordpress.android.datasets.SuggestionTable; @@ -67,6 +69,7 @@ import org.wordpress.android.ui.suggestion.service.SuggestionEvents; import org.wordpress.android.ui.suggestion.util.SuggestionServiceConnectionManager; import org.wordpress.android.ui.suggestion.util.SuggestionUtils; +import org.wordpress.android.ui.utils.UiHelpers; import org.wordpress.android.util.AppLog; import org.wordpress.android.util.AppLog.T; import org.wordpress.android.util.DisplayUtils; @@ -76,6 +79,8 @@ import org.wordpress.android.util.ViewUtilsKt; import org.wordpress.android.util.WPActivityUtils; import org.wordpress.android.util.analytics.AnalyticsUtils; +import org.wordpress.android.util.analytics.AnalyticsUtils.AnalyticsCommentActionSource; +import org.wordpress.android.util.config.FollowUnfollowCommentsFeatureConfig; import org.wordpress.android.util.helpers.SwipeToRefreshHelper; import org.wordpress.android.util.widgets.CustomSwipeRefreshLayout; import org.wordpress.android.widgets.RecyclerItemDecoration; @@ -92,6 +97,8 @@ import static org.wordpress.android.ui.CommentFullScreenDialogFragment.RESULT_SELECTION_START; import static org.wordpress.android.util.WPSwipeToRefreshHelper.buildSwipeToRefreshHelper; +import kotlin.Unit; + public class ReaderCommentListActivity extends LocaleAwareActivity { private static final String KEY_REPLY_TO_COMMENT_ID = "reply_to_comment_id"; private static final String KEY_HAS_UPDATED_COMMENTS = "has_updated_comments"; @@ -121,8 +128,10 @@ public class ReaderCommentListActivity extends LocaleAwareActivity { private String mInterceptedUri; private SiteModel mSite; + @Inject FollowUnfollowCommentsFeatureConfig mFollowUnfollowCommentsFeatureConfig; @Inject SiteStore mSiteStore; @Inject AccountStore mAccountStore; + @Inject UiHelpers mUiHelpers; @Inject ViewModelProvider.Factory mViewModelFactory; private ReaderCommentListViewModel mViewModel; @@ -143,7 +152,7 @@ public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ((WordPress) getApplication()).component().inject(this); setContentView(R.layout.reader_activity_comment_list); - mViewModel = mViewModelFactory.create(ReaderCommentListViewModel.class); + mViewModel = ViewModelProviders.of(this, mViewModelFactory).get(ReaderCommentListViewModel.class); AppBarLayout appBarLayout = findViewById(R.id.appbar_main); @@ -166,6 +175,25 @@ public void onCreate(Bundle savedInstanceState) { } }); + if (mFollowUnfollowCommentsFeatureConfig.isEnabled()) { + mViewModel.getSnackbarEvents().observe(this, event -> + event.applyIfNotHandled(holder -> { + WPSnackbar.make(mRecyclerView, + mUiHelpers.getTextOfUiString(this, holder.getMessage()), + Snackbar.LENGTH_LONG) + .show(); + return Unit.INSTANCE; + }) + ); + + mViewModel.getUpdateFollowUiState().observe(this, uiState -> { + if (mCommentAdapter != null) { + mCommentAdapter.updateFollowingState(uiState); + } + } + ); + } + Toolbar toolbar = findViewById(R.id.toolbar_main); setSupportActionBar(toolbar); @@ -189,12 +217,18 @@ public void onCreate(Bundle savedInstanceState) { mCommentId = getIntent().getLongExtra(ReaderConstants.ARG_COMMENT_ID, 0); mInterceptedUri = getIntent().getStringExtra(ReaderConstants.ARG_INTERCEPTED_URI); } + if (mFollowUnfollowCommentsFeatureConfig.isEnabled()) { + mViewModel.start(mBlogId, mPostId); + } mSwipeToRefreshHelper = buildSwipeToRefreshHelper( (CustomSwipeRefreshLayout) findViewById(R.id.swipe_to_refresh), new SwipeToRefreshHelper.RefreshListener() { @Override public void onRefreshStarted() { + if (mFollowUnfollowCommentsFeatureConfig.isEnabled()) { + mViewModel.onSwipeToRefresh(); + } updatePostAndComments(); } } @@ -604,6 +638,8 @@ && getCommentAdapter().refreshComment(mCommentId)) { AnalyticsUtils.trackWithReaderPostDetails( AnalyticsTracker.Stat.READER_ARTICLE_COMMENT_LIKED, mPost); + AnalyticsUtils.trackCommentActionWithReaderPostDetails(Stat.COMMENT_LIKED, + AnalyticsCommentActionSource.READER, mPost); } else { ToastUtils.showToast(ReaderCommentListActivity.this, R.string.reader_toast_err_generic); @@ -777,6 +813,8 @@ public void onActionResult(boolean succeeded, ReaderComment newComment) { getCommentAdapter().refreshPost(); setReplyToCommentId(0, false); mEditComment.getAutoSaveTextHelper().clearSavedText(mEditComment); + AnalyticsUtils.trackCommentActionWithReaderPostDetails(Stat.COMMENT_REPLIED_TO, + AnalyticsCommentActionSource.READER, mPost); } else { mEditComment.setText(commentText); mSubmitReplyBtn.setEnabled(true); diff --git a/WordPress/src/main/java/org/wordpress/android/ui/reader/ReaderCommentListViewModel.kt b/WordPress/src/main/java/org/wordpress/android/ui/reader/ReaderCommentListViewModel.kt index 5f2c776578b6..3a35b35ca2ca 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/reader/ReaderCommentListViewModel.kt +++ b/WordPress/src/main/java/org/wordpress/android/ui/reader/ReaderCommentListViewModel.kt @@ -1,24 +1,55 @@ package org.wordpress.android.ui.reader import androidx.lifecycle.LiveData +import androidx.lifecycle.MediatorLiveData import androidx.lifecycle.MutableLiveData import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.Job import kotlinx.coroutines.delay import kotlinx.coroutines.launch +import org.wordpress.android.modules.BG_THREAD import org.wordpress.android.modules.UI_THREAD +import org.wordpress.android.ui.pages.SnackbarMessageHolder +import org.wordpress.android.ui.reader.FollowCommentsUiStateType.DISABLED +import org.wordpress.android.ui.reader.FollowCommentsUiStateType.GONE +import org.wordpress.android.ui.reader.FollowCommentsUiStateType.LOADING +import org.wordpress.android.ui.reader.FollowCommentsUiStateType.VISIBLE_WITH_STATE +import org.wordpress.android.ui.reader.usecases.ReaderCommentsFollowUseCase.FollowCommentsState +import org.wordpress.android.ui.reader.usecases.ReaderCommentsFollowUseCase.FollowCommentsState.Failure +import org.wordpress.android.ui.reader.usecases.ReaderCommentsFollowUseCase.FollowCommentsState.FollowCommentsNotAllowed +import org.wordpress.android.ui.reader.usecases.ReaderCommentsFollowUseCase.FollowCommentsState.FollowStateChanged +import org.wordpress.android.ui.reader.usecases.ReaderCommentsFollowUseCase.FollowCommentsState.Loading +import org.wordpress.android.ui.reader.usecases.ReaderCommentsFollowUseCase.FollowCommentsState.UserNotAuthenticated +import org.wordpress.android.util.config.FollowUnfollowCommentsFeatureConfig import org.wordpress.android.util.distinct +import org.wordpress.android.util.map import org.wordpress.android.viewmodel.Event import org.wordpress.android.viewmodel.ScopedViewModel import javax.inject.Inject import javax.inject.Named class ReaderCommentListViewModel -@Inject constructor(@Named(UI_THREAD) mainDispatcher: CoroutineDispatcher) : ScopedViewModel( - mainDispatcher -) { +@Inject constructor( + private val followCommentsHandler: ReaderFollowCommentsHandler, + @Named(UI_THREAD) private val mainDispatcher: CoroutineDispatcher, + @Named(BG_THREAD) private val bgDispatcher: CoroutineDispatcher, + private val followUnfollowCommentsFeatureConfig: FollowUnfollowCommentsFeatureConfig +) : ScopedViewModel(mainDispatcher) { + private var isStarted = false + private var followStatusGetJob: Job? = null + private var followStatusSetJob: Job? = null + + private val _snackbarEvents = MediatorLiveData>() + val snackbarEvents: LiveData> = _snackbarEvents + + private val _updateFollowStatus = MediatorLiveData() + val updateFollowUiState: LiveData = + _updateFollowStatus.map { state -> buildFollowCommentsUiState(state) } + private val _scrollTo = MutableLiveData>() val scrollTo: LiveData> = _scrollTo.distinct() + private var blogId: Long = 0 + private var postId: Long = 0 private var scrollJob: Job? = null @@ -31,4 +62,83 @@ class ReaderCommentListViewModel } data class ScrollPosition(val position: Int, val isSmooth: Boolean) + + fun start(blogId: Long, postId: Long) { + if (isStarted) return + isStarted = true + + this.blogId = blogId + this.postId = postId + + _updateFollowStatus.value = FollowCommentsNotAllowed + + init() + } + + fun onSwipeToRefresh() { + if (!followUnfollowCommentsFeatureConfig.isEnabled()) return + + getFollowConversationStatus(blogId, postId, false) + } + + private fun init() { + _snackbarEvents.addSource(followCommentsHandler.snackbarEvents) { event -> + _snackbarEvents.value = event + } + + _updateFollowStatus.addSource(followCommentsHandler.followStatusUpdate) { event -> + _updateFollowStatus.value = event + } + + getFollowConversationStatus(blogId, postId, true) + } + + private fun onFollowConversationClicked(askSubscribe: Boolean) { + if (!followUnfollowCommentsFeatureConfig.isEnabled()) return + followStatusSetJob?.cancel() + followStatusSetJob = launch(bgDispatcher) { + followCommentsHandler.handleFollowCommentsClicked(blogId, postId, askSubscribe) + } + } + + private fun getFollowConversationStatus(blogId: Long, postId: Long, isInit: Boolean) { + if (!followUnfollowCommentsFeatureConfig.isEnabled()) return + followStatusGetJob?.cancel() + followStatusGetJob = launch(bgDispatcher) { + followCommentsHandler.handleFollowCommentsStatusRequest(blogId, postId, isInit) + } + } + + private fun buildFollowCommentsUiState(followCommentsState: FollowCommentsState): FollowCommentsUiState { + return FollowCommentsUiState( + type = when (followCommentsState) { + Loading -> LOADING + is FollowStateChanged -> VISIBLE_WITH_STATE + is Failure, FollowCommentsNotAllowed -> DISABLED + UserNotAuthenticated -> GONE + }, + showFollowButton = followCommentsState !is UserNotAuthenticated, + isFollowing = if (followCommentsState is FollowStateChanged) { + followCommentsState.isFollowing + } else { + false + }, + animate = if (followCommentsState is FollowStateChanged) { + !followCommentsState.isInit + } else { + false + }, + onFollowButtonClick = if (followCommentsState !is UserNotAuthenticated) { + ::onFollowConversationClicked + } else { + null + } + ) + } + + override fun onCleared() { + super.onCleared() + followStatusGetJob?.cancel() + followStatusSetJob?.cancel() + } } diff --git a/WordPress/src/main/java/org/wordpress/android/ui/reader/ReaderFollowCommentsHandler.kt b/WordPress/src/main/java/org/wordpress/android/ui/reader/ReaderFollowCommentsHandler.kt new file mode 100644 index 000000000000..53ab76fc8f87 --- /dev/null +++ b/WordPress/src/main/java/org/wordpress/android/ui/reader/ReaderFollowCommentsHandler.kt @@ -0,0 +1,68 @@ +package org.wordpress.android.ui.reader + +import androidx.lifecycle.LiveData +import androidx.lifecycle.MediatorLiveData +import kotlinx.coroutines.CoroutineDispatcher +import org.wordpress.android.modules.BG_THREAD +import org.wordpress.android.ui.pages.SnackbarMessageHolder +import org.wordpress.android.ui.reader.usecases.ReaderCommentsFollowUseCase +import org.wordpress.android.ui.reader.usecases.ReaderCommentsFollowUseCase.FollowCommentsState +import org.wordpress.android.viewmodel.Event +import javax.inject.Inject +import javax.inject.Named +import kotlinx.coroutines.flow.collect +import kotlinx.coroutines.flow.flowOn +import org.wordpress.android.ui.reader.usecases.ReaderCommentsFollowUseCase.FollowCommentsState.Failure +import org.wordpress.android.ui.reader.usecases.ReaderCommentsFollowUseCase.FollowCommentsState.FollowCommentsNotAllowed +import org.wordpress.android.ui.reader.usecases.ReaderCommentsFollowUseCase.FollowCommentsState.FollowStateChanged +import org.wordpress.android.ui.reader.usecases.ReaderCommentsFollowUseCase.FollowCommentsState.Loading +import org.wordpress.android.ui.reader.usecases.ReaderCommentsFollowUseCase.FollowCommentsState.UserNotAuthenticated + +class ReaderFollowCommentsHandler @Inject constructor( + private val readerCommentsFollowUseCase: ReaderCommentsFollowUseCase, + @Named(BG_THREAD) private val bgDispatcher: CoroutineDispatcher +) { + private val _snackbarEvents = MediatorLiveData>() + val snackbarEvents: LiveData> = _snackbarEvents + + private val _followStatusUpdate = MediatorLiveData() + val followStatusUpdate: LiveData = _followStatusUpdate + + suspend fun handleFollowCommentsClicked(blogId: Long, postId: Long, askSubscribe: Boolean) { + readerCommentsFollowUseCase.setMySubscriptionToPost(blogId, postId, askSubscribe) + .flowOn(bgDispatcher).collect { state -> + manageState(state) + } + } + + suspend fun handleFollowCommentsStatusRequest(blogId: Long, postId: Long, isInit: Boolean) { + readerCommentsFollowUseCase.getMySubscriptionToPost(blogId, postId, isInit) + .flowOn(bgDispatcher).collect { state -> + manageState(state) + } + } + + private fun manageState(state: FollowCommentsState) { + when (state) { + is FollowStateChanged -> { + _followStatusUpdate.postValue(state) + state.userMessage?.let { + _snackbarEvents.postValue(Event(SnackbarMessageHolder(it))) + } + } + is Failure -> { + _followStatusUpdate.postValue(state) + _snackbarEvents.postValue(Event(SnackbarMessageHolder(state.error))) + } + Loading -> { + _followStatusUpdate.postValue(state) + } + FollowCommentsNotAllowed -> { + _followStatusUpdate.postValue(state) + } + UserNotAuthenticated -> { + _followStatusUpdate.postValue(state) + } + } + } +} diff --git a/WordPress/src/main/java/org/wordpress/android/ui/reader/adapters/ReaderCommentAdapter.java b/WordPress/src/main/java/org/wordpress/android/ui/reader/adapters/ReaderCommentAdapter.java index 215f77ca6076..93a57ff776a2 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/reader/adapters/ReaderCommentAdapter.java +++ b/WordPress/src/main/java/org/wordpress/android/ui/reader/adapters/ReaderCommentAdapter.java @@ -16,6 +16,7 @@ import org.wordpress.android.R; import org.wordpress.android.WordPress; import org.wordpress.android.analytics.AnalyticsTracker; +import org.wordpress.android.analytics.AnalyticsTracker.Stat; import org.wordpress.android.datasets.ReaderCommentTable; import org.wordpress.android.datasets.ReaderPostTable; import org.wordpress.android.fluxc.store.AccountStore; @@ -24,6 +25,7 @@ import org.wordpress.android.models.ReaderCommentList; import org.wordpress.android.models.ReaderPost; import org.wordpress.android.ui.comments.CommentUtils; +import org.wordpress.android.ui.reader.FollowCommentsUiState; import org.wordpress.android.ui.reader.ReaderActivityLauncher; import org.wordpress.android.ui.reader.ReaderAnim; import org.wordpress.android.ui.reader.ReaderInterfaces; @@ -43,6 +45,8 @@ import org.wordpress.android.util.NetworkUtils; import org.wordpress.android.util.ToastUtils; import org.wordpress.android.util.analytics.AnalyticsUtils; +import org.wordpress.android.util.analytics.AnalyticsUtils.AnalyticsCommentActionSource; +import org.wordpress.android.util.config.FollowUnfollowCommentsFeatureConfig; import org.wordpress.android.util.image.ImageManager; import org.wordpress.android.util.image.ImageType; @@ -79,6 +83,7 @@ public class ReaderCommentAdapter extends RecyclerView.Adapter + postSubscribersApiCallsProvider.getCanFollowComments(blogId, continuation) + } + + if (!canFollowComments) { + emit(FollowCommentsState.FollowCommentsNotAllowed) + } else { + val status: PostSubscribersCallResult = suspendCoroutine { continuation -> + postSubscribersApiCallsProvider.getMySubscriptionToPost(blogId, postId, continuation) + } + + when (status) { + is Success -> { + emit( + FollowCommentsState.FollowStateChanged( + blogId, + postId, + status.isFollowing, + isInit + ) + ) + } + is Failure -> { + emit(FollowCommentsState.Failure(blogId, postId, UiStringText(status.error))) + } + } + } + } + } + } + + suspend fun setMySubscriptionToPost( + blogId: Long, + postId: Long, + subscribe: Boolean + ): Flow = flow { + val properties = mutableMapOf() + + properties.addFollowAction(subscribe) + + emit(FollowCommentsState.Loading) + + if (!networkUtilsWrapper.isNetworkAvailable()) { + emit(FollowCommentsState.Failure(blogId, postId, UiStringRes(R.string.error_network_connection))) + properties.addFollowActionResult(ERROR, NO_NETWORK.errorMessage) + } else { + val status: PostSubscribersCallResult = suspendCoroutine { continuation -> + if (subscribe) { + postSubscribersApiCallsProvider.subscribeMeToPost(blogId, postId, continuation) + } else { + postSubscribersApiCallsProvider.unsubscribeMeFromPost(blogId, postId, continuation) + } + } + + when (status) { + is Success -> { + emit( + FollowCommentsState.FollowStateChanged( + blogId, + postId, + status.isFollowing, + false, + UiStringRes( + if (status.isFollowing) + R.string.reader_follow_comments_subscribe_success + else + R.string.reader_follow_comments_unsubscribe_success + ) + ) + ) + properties.addFollowActionResult(SUCCEEDED) + } + is Failure -> { + emit(FollowCommentsState.Failure(blogId, postId, UiStringText(status.error))) + properties.addFollowActionResult(ERROR, status.error) + } + } + } + + val post = readerPostTableWrapper.getBlogPost(blogId, postId, true) + + analyticsUtilsWrapper.trackFollowCommentsWithReaderPostDetails( + Stat.COMMENT_FOLLOW_CONVERSATION, + blogId, + postId, + post, + properties + ) + } + + sealed class FollowCommentsState { + object Loading : FollowCommentsState() + + data class FollowStateChanged( + val blogId: Long, + val postId: Long, + val isFollowing: Boolean, + val isInit: Boolean = false, + val userMessage: UiString? = null + ) : FollowCommentsState() + + data class Failure( + val blogId: Long, + val postId: Long, + val error: UiString + ) : FollowCommentsState() + + object FollowCommentsNotAllowed : FollowCommentsState() + + object UserNotAuthenticated : FollowCommentsState() + } + + private enum class AnalyticsFollowCommentsAction(val action: String) { + FOLLOW_COMMENTS("followed"), + UNFOLLOW_COMMENTS("unfollowed") + } + + private enum class AnalyticsFollowCommentsActionResult(val actionResult: String) { + SUCCEEDED("succeeded"), + ERROR("error") + } + + private enum class AnalyticsFollowCommentsGenericError(val errorMessage: String) { + NO_NETWORK("no_network") + } + + private fun MutableMap.addFollowAction(subscribe: Boolean): MutableMap { + this[FOLLOW_COMMENT_ACTION] = if (subscribe) { + FOLLOW_COMMENTS.action + } else { + UNFOLLOW_COMMENTS.action + } + return this + } + + private fun MutableMap.addFollowActionResult( + result: AnalyticsFollowCommentsActionResult, + errorMessage: String? = null + ): MutableMap { + this[FOLLOW_COMMENT_ACTION_RESULT] = result.actionResult + errorMessage?.also { + this[FOLLOW_COMMENT_ACTION_ERROR] = errorMessage + } + return this + } +} diff --git a/WordPress/src/main/java/org/wordpress/android/ui/reader/utils/PostSubscribersApiCallsProvider.kt b/WordPress/src/main/java/org/wordpress/android/ui/reader/utils/PostSubscribersApiCallsProvider.kt new file mode 100644 index 000000000000..f9ad6610a630 --- /dev/null +++ b/WordPress/src/main/java/org/wordpress/android/ui/reader/utils/PostSubscribersApiCallsProvider.kt @@ -0,0 +1,202 @@ +package org.wordpress.android.ui.reader.utils + +import com.android.volley.VolleyError +import com.wordpress.rest.RestRequest.ErrorListener +import com.wordpress.rest.RestRequest.Listener +import org.json.JSONObject +import org.wordpress.android.R +import org.wordpress.android.WordPress +import org.wordpress.android.ui.reader.utils.PostSubscribersApiCallsProvider.PostSubscribersCallResult.Failure +import org.wordpress.android.ui.reader.utils.PostSubscribersApiCallsProvider.PostSubscribersCallResult.Success +import org.wordpress.android.util.AppLog +import org.wordpress.android.util.AppLog.T +import org.wordpress.android.util.VolleyUtils +import org.wordpress.android.viewmodel.ContextProvider +import javax.inject.Inject +import kotlin.coroutines.Continuation +import kotlin.coroutines.resume + +class PostSubscribersApiCallsProvider @Inject constructor( + private val contextProvider: ContextProvider +) { + fun getCanFollowComments(blogId: Long, cont: Continuation) { + val endPointPath = "/sites/$blogId/" + + val listener = Listener { jsonObject -> + val result = canFollowComments(blogId, jsonObject) + AppLog.d( + T.READER, + "getCanFollowComments > Succeeded [blogId=$blogId - result = $result]" + ) + cont.resume(result is Success) + } + val errorListener = ErrorListener { volleyError -> + AppLog.d( + T.READER, + "getCanFollowComments > Failed [blogId=$blogId - volleyError = $volleyError]" + ) + cont.resume(false) + } + + WordPress.getRestClientUtilsV1_1().get( + endPointPath, + listener, + errorListener + ) + } + + fun getMySubscriptionToPost(blogId: Long, postId: Long, cont: Continuation) { + val endPointPath = "/sites/$blogId/posts/$postId/subscribers/mine" + + val listener = Listener { jsonObject -> + val result = isFollowing(jsonObject) + AppLog.d( + T.READER, + "getMySubscriptionToPost > Succeeded [blogId=$blogId - postId=$postId - result = $result]" + ) + cont.resume(result) + } + val errorListener = ErrorListener { volleyError -> + val error = getErrorStringAndLog("getMySubscriptionToPost", blogId, postId, volleyError) + cont.resume(Failure(error)) + } + + WordPress.getRestClientUtilsV1_1().get( + endPointPath, + listener, + errorListener + ) + } + + fun subscribeMeToPost(blogId: Long, postId: Long, cont: Continuation) { + val endPointPath = "/sites/$blogId/posts/$postId/subscribers/new" + + val listener = Listener { jsonObject -> + val result = wasSubscribed(jsonObject) + AppLog.d( + T.READER, + "subscribeMeToPost > Succeeded [blogId=$blogId - postId=$postId - result = $result]" + ) + cont.resume(result) + } + val errorListener = ErrorListener { volleyError -> + val error = getErrorStringAndLog("subscribeMeToPost", blogId, postId, volleyError) + cont.resume(Failure(error)) + } + + WordPress.getRestClientUtilsV1_1().post( + endPointPath, + listener, + errorListener + ) + } + + fun unsubscribeMeFromPost(blogId: Long, postId: Long, cont: Continuation) { + val endPointPath = "/sites/$blogId/posts/$postId/subscribers/mine/delete" + + val listener = Listener { jsonObject -> + val result = wasUnsubscribed(jsonObject) + AppLog.d( + T.READER, + "unsubscribeMeFromPost > Succeeded [blogId=$blogId - postId=$postId - result = $result]" + ) + cont.resume(result) + } + val errorListener = ErrorListener { volleyError -> + val error = getErrorStringAndLog("unsubscribeMeFromPost", blogId, postId, volleyError) + cont.resume(Failure(error)) + } + + WordPress.getRestClientUtilsV1_1().post( + endPointPath, + listener, + errorListener + ) + } + + private fun getErrorStringAndLog( + functionName: String, + blogId: Long, + postId: Long, + volleyError: VolleyError? + ): String { + var error = VolleyUtils.errStringFromVolleyError(volleyError) + return if (error.isNullOrEmpty()) { + AppLog.d( + T.READER, + "$functionName > Failed with empty string " + + "[blogId=$blogId - postId=$postId - volleyError = $volleyError]" + ) + contextProvider.getContext().getString(R.string.reader_follow_comments_get_status_error) + } else { + AppLog.d( + T.READER, + "$functionName > Failed [blogId=$blogId - postId=$postId - error = $error]" + ) + error + } + } + + private fun isFollowing(json: JSONObject?): PostSubscribersCallResult { + return json?.let { + if (it.has("i_subscribe")) { + Success(it.optBoolean("i_subscribe", false)) + } else { + Failure(contextProvider.getContext().getString(R.string.reader_follow_comments_bad_format_response)) + } + } ?: Failure(contextProvider.getContext().getString(R.string.reader_follow_comments_null_response)) + } + + private fun canFollowComments(blogId: Long, json: JSONObject?): PostSubscribersCallResult { + return json?.let { + if (it.has("ID") && it.optLong("ID", -1) == blogId) { + Success(false) + } else { + Failure(contextProvider.getContext().getString(R.string.reader_follow_comments_bad_format_response)) + } + } ?: Failure(contextProvider.getContext().getString(R.string.reader_follow_comments_null_response)) + } + + private fun wasSubscribed(json: JSONObject?): PostSubscribersCallResult { + return json?.let { + val success = it.optBoolean("success", false) + val subscribed = it.optBoolean("i_subscribe", false) + + if (success) { + if (subscribed) { + Success(true) + } else { + Failure(contextProvider.getContext().getString( + R.string.reader_follow_comments_could_not_subscribe_error + )) + } + } else { + Failure(contextProvider.getContext().getString(R.string.reader_follow_comments_bad_format_response)) + } + } ?: Failure(contextProvider.getContext().getString(R.string.reader_follow_comments_null_response)) + } + + private fun wasUnsubscribed(json: JSONObject?): PostSubscribersCallResult { + return json?.let { + val success = it.optBoolean("success", false) + val subscribed = it.optBoolean("i_subscribe", true) + + if (success) { + if (!subscribed) { + Success(false) + } else { + Failure(contextProvider.getContext().getString( + R.string.reader_follow_comments_could_not_unsubscribe_error + )) + } + } else { + Failure(contextProvider.getContext().getString(R.string.reader_follow_comments_bad_format_response)) + } + } ?: Failure(contextProvider.getContext().getString(R.string.reader_follow_comments_null_response)) + } + + sealed class PostSubscribersCallResult { + data class Success(val isFollowing: Boolean) : PostSubscribersCallResult() + data class Failure(val error: String) : PostSubscribersCallResult() + } +} diff --git a/WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderCommentsPostHeaderView.java b/WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderCommentsPostHeaderView.java index 0050cefd6d3c..3027cc08ffe2 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderCommentsPostHeaderView.java +++ b/WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderCommentsPostHeaderView.java @@ -2,26 +2,37 @@ import android.content.Context; import android.util.AttributeSet; +import android.view.View; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; +import androidx.annotation.Nullable; import androidx.core.graphics.ColorUtils; +import com.facebook.shimmer.ShimmerFrameLayout; + import org.wordpress.android.R; import org.wordpress.android.WordPress; import org.wordpress.android.models.ReaderPost; +import org.wordpress.android.ui.reader.FollowCommentsUiState; +import org.wordpress.android.ui.reader.FollowCommentsUiStateType; import org.wordpress.android.ui.reader.utils.ReaderUtils; import org.wordpress.android.util.ContextExtensionsKt; import org.wordpress.android.util.DateTimeUtils; import org.wordpress.android.util.GravatarUtils; +import org.wordpress.android.util.config.FollowUnfollowCommentsFeatureConfig; import org.wordpress.android.util.image.ImageManager; import org.wordpress.android.util.image.ImageType; +import javax.inject.Inject; + /** * topmost view in reader comment adapter - show info about the post */ public class ReaderCommentsPostHeaderView extends LinearLayout { + @Inject FollowUnfollowCommentsFeatureConfig mFollowUnfollowCommentsFeatureConfig; + public ReaderCommentsPostHeaderView(Context context) { super(context); initView(context); @@ -38,6 +49,7 @@ public ReaderCommentsPostHeaderView(Context context, AttributeSet attrs, int def } private void initView(Context context) { + ((WordPress) context.getApplicationContext()).component().inject(this); inflate(context, R.layout.reader_comments_post_header_view, this); setBackgroundColor(ColorUtils @@ -45,7 +57,10 @@ private void initView(Context context) { getResources().getInteger(R.integer.selected_list_item_opacity))); } - public void setPost(final ReaderPost post) { + public void setPost( + final ReaderPost post, + final FollowCommentsUiState followButtonState + ) { if (post == null) { return; } @@ -81,5 +96,54 @@ public void setPost(final ReaderPost post) { avatarUrl = post.getPostAvatarForDisplay(avatarSz); ImageManager.getInstance().loadIntoCircle(imgAvatar, ImageType.AVATAR, avatarUrl); } + + if (mFollowUnfollowCommentsFeatureConfig.isEnabled()) { + setFollowButtonState(followButtonState); + } + } + + public void setFollowButtonState(@Nullable final FollowCommentsUiState followButtonState) { + if (null == followButtonState) return; + + ReaderFollowButton followCommentsButton = findViewById(R.id.button_follow_comments); + ShimmerFrameLayout container = findViewById(R.id.shimmer_view_container); + View skeleton = findViewById(R.id.button_skeleton); + + boolean isButtonEnabled = followButtonState.getType() != FollowCommentsUiStateType.DISABLED + && followButtonState.getType() != FollowCommentsUiStateType.LOADING; + + followCommentsButton.setEnabled(isButtonEnabled); + + boolean isContainerVisible = container.getVisibility() == View.VISIBLE; + if (isContainerVisible != followButtonState.getShowFollowButton()) { + container.setVisibility(followButtonState.getShowFollowButton() ? View.VISIBLE : View.GONE); + } + + if (followButtonState.getType() == FollowCommentsUiStateType.LOADING) { + if (skeleton.getVisibility() != View.VISIBLE) { + skeleton.setVisibility(View.VISIBLE); + followCommentsButton.setVisibility(View.GONE); + container.showShimmer(true); + } + } else { + skeleton.setVisibility(View.GONE); + followCommentsButton.setVisibility(View.VISIBLE); + container.hideShimmer(); + } + + if (followButtonState.getType() == FollowCommentsUiStateType.VISIBLE_WITH_STATE) { + if (followButtonState.getAnimate()) { + followCommentsButton.setIsFollowedAnimated(followButtonState.isFollowing()); + } else { + followCommentsButton.setIsFollowed(followButtonState.isFollowing()); + } + } + + if (followButtonState.getOnFollowButtonClick() != null) { + followCommentsButton.setOnClickListener( + v -> followButtonState.getOnFollowButtonClick().invoke(!followButtonState.isFollowing())); + } else { + followCommentsButton.setOnClickListener(null); + } } } diff --git a/WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderFollowButton.kt b/WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderFollowButton.kt index a650764ba3f1..adfd861d7dfb 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderFollowButton.kt +++ b/WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderFollowButton.kt @@ -12,6 +12,7 @@ import android.view.View import android.view.animation.AccelerateDecelerateInterpolator import com.google.android.material.button.MaterialButton import org.wordpress.android.R +import org.wordpress.android.ui.reader.views.ReaderFollowButtonType.FOLLOW_SITE /** * Follow button used in reader detail @@ -23,6 +24,7 @@ class ReaderFollowButton @JvmOverloads constructor( ) : MaterialButton(context, attrs, defStyleAttr) { private var isFollowed = false private var showCaption = false + private var followButtonType = FOLLOW_SITE init { initView(context, attrs) @@ -34,10 +36,21 @@ class ReaderFollowButton @JvmOverloads constructor( attrs?.let { val array = context.theme.obtainStyledAttributes(attrs, R.styleable.ReaderFollowButton, 0, 0) showCaption = array.getBoolean(R.styleable.ReaderFollowButton_wpShowFollowButtonCaption, true) + + try { + val buttonTypeValue = array.getInteger(R.styleable.ReaderFollowButton_wpReaderFollowButtonType, -1) + if (buttonTypeValue != -1) { + followButtonType = ReaderFollowButtonType.fromInt(buttonTypeValue) + } + } finally { + array.recycle() + } } if (!showCaption) { hideCaptionAndEnlargeIcon(context) } + + updateFollowTextAndIcon() } private fun hideCaptionAndEnlargeIcon(context: Context) { @@ -49,13 +62,13 @@ class ReaderFollowButton @JvmOverloads constructor( private fun updateFollowTextAndIcon() { if (showCaption) { - setText(if (isFollowed) R.string.reader_btn_unfollow else R.string.reader_btn_follow) + setText(if (isFollowed) followButtonType.captionFollowing else followButtonType.captionFollow) } isSelected = isFollowed val drawableId = if (isFollowed) { - R.drawable.ic_reader_following_white_24dp + followButtonType.iconFollowing } else { - R.drawable.ic_reader_follow_white_24dp + followButtonType.iconFollow } icon = context.resources.getDrawable(drawableId, context.theme) } diff --git a/WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderFollowButtonType.kt b/WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderFollowButtonType.kt new file mode 100644 index 000000000000..d4a2a558c3d8 --- /dev/null +++ b/WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderFollowButtonType.kt @@ -0,0 +1,37 @@ +package org.wordpress.android.ui.reader.views + +import androidx.annotation.DrawableRes +import androidx.annotation.StringRes +import org.wordpress.android.R + +enum class ReaderFollowButtonType( + val value: Int, + @StringRes val captionFollow: Int, + @StringRes val captionFollowing: Int, + @DrawableRes val iconFollow: Int, + @DrawableRes val iconFollowing: Int +) { + FOLLOW_SITE( + 0, + R.string.reader_btn_follow, + R.string.reader_btn_unfollow, + R.drawable.ic_reader_follow_white_24dp, + R.drawable.ic_reader_following_white_24dp + ), + // Note: even though AS does not catch it and it says it is not used, FOLLOW_COMMENTS is actually used currently + // by fromInt function to evaluate wpReaderFollowButtonType attr for example in the ReaderFollowButton that + // is placed in reader_comments_post_header_view.xml. Mind of this before to remove! + FOLLOW_COMMENTS( + 1, + R.string.reader_btn_follow_comments, + R.string.reader_btn_following_comments, + R.drawable.ic_reader_follow_conversation_white_24dp, + R.drawable.ic_reader_following_conversation_white_24dp + ); + + companion object { + fun fromInt(value: Int): ReaderFollowButtonType = + values().firstOrNull { it.value == value } + ?: throw IllegalArgumentException("ReaderFollowButtonType wrong value $value") + } +} diff --git a/WordPress/src/main/java/org/wordpress/android/ui/sitecreation/misc/SiteCreationTracker.kt b/WordPress/src/main/java/org/wordpress/android/ui/sitecreation/misc/SiteCreationTracker.kt index 2445f585aabc..0b243b05ab32 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/sitecreation/misc/SiteCreationTracker.kt +++ b/WordPress/src/main/java/org/wordpress/android/ui/sitecreation/misc/SiteCreationTracker.kt @@ -118,7 +118,7 @@ class SiteCreationTracker @Inject constructor(val tracker: AnalyticsTrackerWrapp fun trackSiteDesignPreviewLoaded(template: String) { tracker.track( - AnalyticsTracker.Stat.ENHANCED_SITE_CREATION_SUCCESS_PREVIEW_LOADED, + AnalyticsTracker.Stat.ENHANCED_SITE_CREATION_SITE_DESIGN_PREVIEW_LOADED, mapOf("template" to template) ) } diff --git a/WordPress/src/main/java/org/wordpress/android/ui/sitecreation/previews/SiteCreationPreviewFragment.kt b/WordPress/src/main/java/org/wordpress/android/ui/sitecreation/previews/SiteCreationPreviewFragment.kt index 4238d94ac655..39ccba32a58c 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/sitecreation/previews/SiteCreationPreviewFragment.kt +++ b/WordPress/src/main/java/org/wordpress/android/ui/sitecreation/previews/SiteCreationPreviewFragment.kt @@ -121,6 +121,7 @@ class SiteCreationPreviewFragment : SiteCreationBaseFormFragment(), viewModel.preloadPreview.observe(this, Observer { url -> url?.let { sitePreviewWebView.webViewClient = URLFilteredWebViewClient(url, this@SiteCreationPreviewFragment) + sitePreviewWebView.settings.userAgentString = WordPress.getUserAgent() sitePreviewWebView.loadUrl(url) } }) diff --git a/WordPress/src/main/java/org/wordpress/android/ui/sitecreation/theme/DesignPreviewFragment.kt b/WordPress/src/main/java/org/wordpress/android/ui/sitecreation/theme/DesignPreviewFragment.kt index 3fee927af937..8c05f54918d3 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/sitecreation/theme/DesignPreviewFragment.kt +++ b/WordPress/src/main/java/org/wordpress/android/ui/sitecreation/theme/DesignPreviewFragment.kt @@ -67,7 +67,7 @@ class DesignPreviewFragment : FullscreenBottomSheetDialogFragment() { when (state) { is Loading -> { progressBar.setVisible(true) - webView.setVisible(true) + webView.setVisible(false) errorView.setVisible(false) webView.loadUrl(url) } @@ -89,6 +89,7 @@ class DesignPreviewFragment : FullscreenBottomSheetDialogFragment() { chooseButton.setOnClickListener { viewModel.onPreviewChooseTapped() } + webView.settings.userAgentString = WordPress.getUserAgent() webView.webViewClient = object : WebViewClient() { override fun onPageFinished(view: WebView?, url: String?) { super.onPageFinished(view, url) diff --git a/WordPress/src/main/java/org/wordpress/android/util/analytics/AnalyticsUtils.java b/WordPress/src/main/java/org/wordpress/android/util/analytics/AnalyticsUtils.java index f22d4afe18a9..fc2317cc5c40 100644 --- a/WordPress/src/main/java/org/wordpress/android/util/analytics/AnalyticsUtils.java +++ b/WordPress/src/main/java/org/wordpress/android/util/analytics/AnalyticsUtils.java @@ -76,6 +76,7 @@ public class AnalyticsUtils { private static final String NEWS_CARD_ORIGIN = "origin"; private static final String NEWS_CARD_VERSION = "version"; private static final String SITE_TYPE_KEY = "site_type"; + private static final String COMMENT_ACTION_SOURCE = "source"; public static final String HAS_GUTENBERG_BLOCKS_KEY = "has_gutenberg_blocks"; public static final String HAS_WP_STORIES_BLOCKS_KEY = "has_wp_stories_blocks"; @@ -307,15 +308,26 @@ public static void trackQuickActionTouched(QuickActionTrackPropertyValue type, * @param isQuickReply Whether is a quick reply or not * @param site The site object * @param comment The comment object + * @param source The source of the comment action */ public static void trackCommentReplyWithDetails(boolean isQuickReply, SiteModel site, - CommentModel comment) { - AnalyticsTracker.Stat stat = isQuickReply ? AnalyticsTracker.Stat.NOTIFICATION_QUICK_ACTIONS_REPLIED_TO - : AnalyticsTracker.Stat.NOTIFICATION_REPLIED_TO; + CommentModel comment, AnalyticsCommentActionSource source) { + AnalyticsTracker.Stat legacyTracker = null; + if (source == AnalyticsCommentActionSource.NOTIFICATIONS) { + legacyTracker = isQuickReply ? AnalyticsTracker.Stat.NOTIFICATION_QUICK_ACTIONS_REPLIED_TO + : AnalyticsTracker.Stat.NOTIFICATION_REPLIED_TO; + } + + AnalyticsTracker.Stat stat = isQuickReply ? Stat.COMMENT_QUICK_ACTION_REPLIED_TO + : Stat.COMMENT_REPLIED_TO; if (site == null || !SiteUtils.isAccessedViaWPComRest(site)) { AppLog.w(AppLog.T.STATS, "The passed blog obj is null or it's not a wpcom or Jetpack." + " Tracking analytics without blog info"); AnalyticsTracker.track(stat); + + if (legacyTracker != null) { + AnalyticsTracker.track(legacyTracker); + } return; } @@ -325,8 +337,13 @@ public static void trackCommentReplyWithDetails(boolean isQuickReply, SiteModel properties.put(POST_ID_KEY, comment.getRemotePostId()); properties.put(COMMENT_ID_KEY, comment.getRemoteCommentId()); properties.put(SITE_TYPE_KEY, AnalyticsSiteType.toStringFromSiteModel(site)); + properties.put(COMMENT_ACTION_SOURCE, source.toString()); AnalyticsTracker.track(stat, properties); + + if (legacyTracker != null) { + AnalyticsTracker.track(legacyTracker, properties); + } } @@ -351,13 +368,21 @@ public static void trackWithSiteId(AnalyticsTracker.Stat stat, long blogID) { * @param post The reader post to track */ public static void trackWithReaderPostDetails(AnalyticsTracker.Stat stat, ReaderPost post) { + trackWithReaderPostDetails(stat, post, null); + } + + public static void trackWithReaderPostDetails(AnalyticsTracker.Stat stat, ReaderPost post, + Map properties) { if (post == null) { return; } + if (properties == null) { + properties = new HashMap<>(); + } + // wpcom/jetpack posts should pass: feed_id, feed_item_id, blog_id, post_id, is_jetpack // RSS pass should pass: feed_id, feed_item_id, is_jetpack - Map properties = new HashMap<>(); if (post.isWP() || post.isJetpack) { properties.put(BLOG_ID_KEY, post.blogId); properties.put(POST_ID_KEY, post.postId); @@ -365,6 +390,7 @@ public static void trackWithReaderPostDetails(AnalyticsTracker.Stat stat, Reader properties.put(FEED_ID_KEY, post.feedId); properties.put(FEED_ITEM_ID_KEY, post.feedItemId); properties.put(IS_JETPACK_KEY, post.isJetpack); + properties.put(SITE_TYPE_KEY, AnalyticsSiteType.toStringFromReaderPost(post)); AnalyticsTracker.track(stat, properties); @@ -648,8 +674,79 @@ static AnalyticsSiteType fromSiteModel(SiteModel siteModel) { return BLOG; } + static AnalyticsSiteType fromReaderPost(ReaderPost readerPost) { + if (readerPost.isWpForTeams) { + return P2; + } + + return BLOG; + } + static String toStringFromSiteModel(SiteModel siteModel) { return fromSiteModel(siteModel).toString(); } + + static String toStringFromReaderPost(ReaderPost readerPost) { + return fromReaderPost(readerPost).toString(); + } + } + + public enum AnalyticsCommentActionSource { + NOTIFICATIONS { + public String toString() { + return "notifications"; + } + }, + SITE_COMMENTS { + public String toString() { + return "site_comments"; + } + }, + READER { + public String toString() { + return "reader"; + } + } + } + + public static void trackCommentActionWithSiteDetails(AnalyticsTracker.Stat stat, + AnalyticsCommentActionSource actionSource, SiteModel site) { + Map properties = new HashMap<>(); + properties.put(COMMENT_ACTION_SOURCE, actionSource.toString()); + + AnalyticsUtils.trackWithSiteDetails(stat, site, properties); + } + + + public static void trackCommentActionWithReaderPostDetails(AnalyticsTracker.Stat stat, + AnalyticsCommentActionSource actionSource, ReaderPost post) { + Map properties = new HashMap<>(); + properties.put(COMMENT_ACTION_SOURCE, actionSource.toString()); + + AnalyticsUtils.trackWithReaderPostDetails(stat, post, properties); + } + + public static void trackFollowCommentsWithReaderPostDetails( + AnalyticsTracker.Stat stat, + long blogId, + long postId, + ReaderPost post, + Map properties + ) { + if (post != null) { + AnalyticsUtils.trackWithReaderPostDetails(stat, post, properties); + } else { + AppLog.w(AppLog.T.READER, "The passed post obj is null." + + " Tracking analytics without post details info"); + // let's log basic info + if (properties == null) { + properties = new HashMap<>(); + } + + properties.put(BLOG_ID_KEY, blogId); + properties.put(POST_ID_KEY, postId); + + AnalyticsTracker.track(stat, properties); + } } } diff --git a/WordPress/src/main/java/org/wordpress/android/util/analytics/AnalyticsUtilsWrapper.kt b/WordPress/src/main/java/org/wordpress/android/util/analytics/AnalyticsUtilsWrapper.kt index b3375e00e272..a8af357ebcde 100644 --- a/WordPress/src/main/java/org/wordpress/android/util/analytics/AnalyticsUtilsWrapper.kt +++ b/WordPress/src/main/java/org/wordpress/android/util/analytics/AnalyticsUtilsWrapper.kt @@ -29,4 +29,12 @@ class AnalyticsUtilsWrapper @Inject constructor(private val appContext: Context) fun trackWithReaderPostDetails(stat: AnalyticsTracker.Stat, post: ReaderPost) = AnalyticsUtils.trackWithReaderPostDetails(stat, post) + + fun trackFollowCommentsWithReaderPostDetails( + stat: AnalyticsTracker.Stat, + blogId: Long, + postId: Long, + post: ReaderPost?, + properties: Map? + ) = AnalyticsUtils.trackFollowCommentsWithReaderPostDetails(stat, blogId, postId, post, properties) } diff --git a/WordPress/src/main/java/org/wordpress/android/util/config/FollowUnfollowCommentsFeatureConfig.kt b/WordPress/src/main/java/org/wordpress/android/util/config/FollowUnfollowCommentsFeatureConfig.kt new file mode 100644 index 000000000000..ea72547d551a --- /dev/null +++ b/WordPress/src/main/java/org/wordpress/android/util/config/FollowUnfollowCommentsFeatureConfig.kt @@ -0,0 +1,21 @@ +package org.wordpress.android.util.config + +import org.wordpress.android.BuildConfig +import org.wordpress.android.annotation.Feature +import org.wordpress.android.util.config.FollowUnfollowCommentsFeatureConfig.Companion.FOLLOW_UNFOLLOW_COMMENTS_REMOTE_FIELD +import javax.inject.Inject + +/** + * Configuration of the Follow Unfollow Comments + */ +@Feature(FOLLOW_UNFOLLOW_COMMENTS_REMOTE_FIELD, true) +class FollowUnfollowCommentsFeatureConfig +@Inject constructor(appConfig: AppConfig) : FeatureConfig( + appConfig, + BuildConfig.FOLLOW_UNFOLLOW_COMMENTS, + FOLLOW_UNFOLLOW_COMMENTS_REMOTE_FIELD +) { + companion object { + const val FOLLOW_UNFOLLOW_COMMENTS_REMOTE_FIELD = "follow_unfollow_comments_enabled" + } +} diff --git a/WordPress/src/main/res/color/secondary_gray_20_disabled_selector.xml b/WordPress/src/main/res/color/secondary_gray_20_disabled_selector.xml new file mode 100644 index 000000000000..7cabda4fc734 --- /dev/null +++ b/WordPress/src/main/res/color/secondary_gray_20_disabled_selector.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/WordPress/src/main/res/drawable/ic_reader_follow_conversation_white_24dp.xml b/WordPress/src/main/res/drawable/ic_reader_follow_conversation_white_24dp.xml new file mode 100644 index 000000000000..1cda78fc35e4 --- /dev/null +++ b/WordPress/src/main/res/drawable/ic_reader_follow_conversation_white_24dp.xml @@ -0,0 +1,12 @@ + + + + diff --git a/WordPress/src/main/res/drawable/ic_reader_following_conversation_white_24dp.xml b/WordPress/src/main/res/drawable/ic_reader_following_conversation_white_24dp.xml new file mode 100644 index 000000000000..e72fceb38ec4 --- /dev/null +++ b/WordPress/src/main/res/drawable/ic_reader_following_conversation_white_24dp.xml @@ -0,0 +1,12 @@ + + + + diff --git a/WordPress/src/main/res/layout-land/site_creation_header_item.xml b/WordPress/src/main/res/layout-land/site_creation_header_item.xml index 93b7fbb07313..e3e0131ca2e9 100644 --- a/WordPress/src/main/res/layout-land/site_creation_header_item.xml +++ b/WordPress/src/main/res/layout-land/site_creation_header_item.xml @@ -4,7 +4,6 @@ xmlns:tools="http://schemas.android.com/tools" style="@style/SiteCreationHeaderLinearLayoutStyle" android:paddingStart="@dimen/site_creation_segments_content_padding_horizontal" - android:paddingTop="@dimen/site_creation_segments_content_padding_vertical" android:paddingEnd="@dimen/site_creation_segments_content_padding_horizontal" android:paddingBottom="@dimen/site_creation_segments_content_padding_vertical"> diff --git a/WordPress/src/main/res/layout-sw600dp/home_page_picker_bottom_toolbar.xml b/WordPress/src/main/res/layout-sw600dp/home_page_picker_bottom_toolbar.xml index 25d356e64ef1..b9ea6d9eb1b5 100644 --- a/WordPress/src/main/res/layout-sw600dp/home_page_picker_bottom_toolbar.xml +++ b/WordPress/src/main/res/layout-sw600dp/home_page_picker_bottom_toolbar.xml @@ -13,7 +13,7 @@ @@ -11,7 +11,7 @@ android:id="@+id/appBarLayout" android:layout_width="match_parent" android:layout_height="wrap_content" - android:background="?attr/categoriesBackground" + android:background="?attr/layoutPickerBackground" android:fitsSystemWindows="false"> diff --git a/WordPress/src/main/res/layout/home_page_picker_preview_fragment.xml b/WordPress/src/main/res/layout/home_page_picker_preview_fragment.xml index 4d314c6cea4a..c2ab6f1d5bbc 100644 --- a/WordPress/src/main/res/layout/home_page_picker_preview_fragment.xml +++ b/WordPress/src/main/res/layout/home_page_picker_preview_fragment.xml @@ -19,7 +19,8 @@ + android:layout_height="match_parent" + android:layout_marginTop="@dimen/margin_small_medium"> + android:layout_gravity="center" /> diff --git a/WordPress/src/main/res/layout/mlp_editor_preview_toolbar.xml b/WordPress/src/main/res/layout/mlp_editor_preview_toolbar.xml index c847f07372bd..d8577c1c01a1 100644 --- a/WordPress/src/main/res/layout/mlp_editor_preview_toolbar.xml +++ b/WordPress/src/main/res/layout/mlp_editor_preview_toolbar.xml @@ -14,7 +14,7 @@ diff --git a/WordPress/src/main/res/layout/modal_layout_picker_error.xml b/WordPress/src/main/res/layout/modal_layout_picker_error.xml index 251a9f782f5f..97f20eeedbc8 100644 --- a/WordPress/src/main/res/layout/modal_layout_picker_error.xml +++ b/WordPress/src/main/res/layout/modal_layout_picker_error.xml @@ -4,7 +4,7 @@ android:id="@+id/errorLayout" android:layout_width="match_parent" android:layout_height="@dimen/mlp_layouts_row_height" - android:background="?attr/categoriesBackground"> + android:background="?attr/layoutPickerBackground"> @@ -69,7 +69,7 @@ android:id="@+id/categoriesRecyclerView" android:layout_width="match_parent" android:layout_height="@dimen/mlp_categories_bar_height" - android:background="?attr/categoriesBackground" + android:background="?attr/layoutPickerBackground" android:clipToPadding="false" android:descendantFocusability="beforeDescendants" android:orientation="horizontal" @@ -89,7 +89,7 @@ android:id="@+id/layoutsRecyclerView" android:layout_width="match_parent" android:layout_height="match_parent" - android:background="?attr/categoriesBackground" + android:background="?attr/layoutPickerBackground" android:layout_marginBottom="@dimen/toolbar_content_offset" android:clipToPadding="false" android:descendantFocusability="beforeDescendants" diff --git a/WordPress/src/main/res/layout/modal_layout_picker_layouts_skeleton.xml b/WordPress/src/main/res/layout/modal_layout_picker_layouts_skeleton.xml index dd14fe391a29..795383146ef1 100644 --- a/WordPress/src/main/res/layout/modal_layout_picker_layouts_skeleton.xml +++ b/WordPress/src/main/res/layout/modal_layout_picker_layouts_skeleton.xml @@ -5,7 +5,7 @@ android:layout_width="match_parent" android:layout_height="@dimen/mlp_layouts_row_height" android:layout_marginTop="@dimen/margin_extra_large" - android:background="?attr/categoriesBackground"> + android:background="?attr/layoutPickerBackground"> @@ -65,11 +67,47 @@ android:id="@+id/text_post_dateline" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginBottom="@dimen/margin_large" android:ellipsize="end" android:maxLines="2" android:textAppearance="?attr/textAppearanceCaption" tools:text="text_post_date" /> + + + + + + + + + + + + + diff --git a/WordPress/src/main/res/layout/site_creation_activity.xml b/WordPress/src/main/res/layout/site_creation_activity.xml index 4fc2787e3437..37fc3d13c814 100644 --- a/WordPress/src/main/res/layout/site_creation_activity.xml +++ b/WordPress/src/main/res/layout/site_creation_activity.xml @@ -3,7 +3,8 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:baselineAligned="true" - android:orientation="vertical"> + android:orientation="vertical" + android:background="?attr/layoutPickerBackground"> diff --git a/WordPress/src/main/res/layout/site_creation_search_input_item.xml b/WordPress/src/main/res/layout/site_creation_search_input_item.xml index 47f90c7aa970..47eb4cd8d607 100644 --- a/WordPress/src/main/res/layout/site_creation_search_input_item.xml +++ b/WordPress/src/main/res/layout/site_creation_search_input_item.xml @@ -40,7 +40,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" - android:background="?attr/colorSurface" + android:background="?attr/layoutPickerBackground" tools:visibility="invisible"> + لم تتم إضافة شريحة واحدة أو أكثر إلى قصتك لأن القصص لا تدعم ملفات GIF في الوقت الحالي. الرجاء اختيار صورة ثابتة أو خلفية فيديو بدلاً من ذلك. + لا يمكن تحرير القصة + لا يمكن تحرير القصة + ملفات GIF غير مدعومة + تم تحرير هذه القصة على جهاز مختلف وقد تكون القدرة محدودة على تحرير كائنات معينة. + تعذر تحميل الوسائط لهذه القصة. تحقق من اتصالك بالإنترنت وحاول مرة أخرى بعد لحظات. + لم نتمكن من العثور على ملفات وسائط لهذه القصة على الموقع. + تمت إزالة الوسائط. حاول تحرير قصتك. + تحرير قصة محدودة + التخطيطات غير متوفرة دون اتصال انترنت + يرجى التحقق من اتصالك بالإنترنت وإعادة المحاولة. + حذف + التالي + تمّ + تجاهل التغييرات؟ + لن يتم حفظ أي تغييرات تم إجراؤها. + تجاهل + النص + الخلفية + اضغط على إعادة المحاولة عند معاودة الاتصال بالإنترنت. + حدث خطأ أثناء تحديد التصميم. + فحص + مرحبًا! + لا توجد مقالات حديثة + العثور على بريدك الإلكتروني المتصل + الاستمرار في تخزين بيانات الاعتماد + حاول متابعة المزيد من المواضيع لتوسيع البحث + متابعة المواضيع + أُعجب <b>Madison Ruiz</b> بمقالتك + لقد تلقيت <b>50 إعجاب</b> على موقعك اليوم + قام <b>Johan Brandt</b> بالردّ على مقالتك تخطي اختيار اختر تخطيط الصفحة الرئيسية المفضَّل لديك. يمكنك تخصيصه أو تغييره لاحقًا. @@ -66,7 +97,7 @@ Language: ar رجوع البدء بواسطة - اتباع الموضوعات لاكتشاف مدونات جديدة + متابعة المواضيع لاكتشاف مدونات جديدة فتح الموقع الإلكتروني يتعر وسم هذا المرجع بأنه بريد مزعج عدم الوسم بأنه بريد مزعج @@ -95,7 +126,6 @@ Language: ar الحصول على رابط تسجيل الدخول عن طريق البريد الإلكتروني حسناً، لا يمكننا العثور على حساب WordPress.com متصلاً بعنوان البريد الإلكتروني هذا. الإبلاغ عن هذه المقالة - زاوية مرحبًا بك في القارئ. اكتشف ملايين المدونات في متناول يديك. حدث خطأ داخلي في الخادم إجراؤك غير مسموح به @@ -141,7 +171,6 @@ Language: ar خطأ تغيير محاذاة النص تغيير لون النص - حذف الشريحة حذف شريحة القصة؟ تجاهل بدون عنوان @@ -155,13 +184,10 @@ Language: ar معاينة إلتقاط الملصقات - المزيد صوت نصّ تم الحفظ جاري الحفظ - تمّ - التالي إغلاق تم الحفظ إعادة المحاولة @@ -400,10 +426,10 @@ Language: ar ماذا يقول الناس نوفِّر مجموعة من الخدمات لمساعدتك على تحقيق النتائج التي تسعى إليها. ألستَ متأكِّدًا مما تحتاج إليه؟، أو كم تبلغ تكلفته؟ يمكننا توضيح الخدمات المناسبة لك، وإبلاغك بالمزيد عن الرسوم التي نطلبها. ابق على اتصال من خلال المعلومات الواردة ادناه. نحن فريق صغير من الاحترافيين الموهوبين الذين يتمتعون بمجموعة كبيرة من المهارات والخبرات. نحب ما نفعله ونقوم به بشغف. نتطلع إلى العمل معك. + سيرغب الزائرون في معرفة الموجودين على الجانب الآخر من الصفحة. استخدم هذه المساحة للكتابة عن نفسك أو موقعك أو شركتك أو أي شيء تريده. استعن بالتوصيات الواردة أدناه للاقتباس من الآخرين الذين يتحدثون حول الأمر نفسه بأسلوبهم الخاص. والت ديزني ترغب بالعمل معنا؟ رسالة التحذير - سيرغب الزائرون في معرفة الموجودين على الجانب الآخر من الصفحة. استخدم هذه المساحة للكتابة عن نفسك أو موقعك أو شركتك أو أي شيء تريده. استعن بالتوصيات الواردة أدناه للاقتباس من الآخرين الذين يتحدثون حول الأمر نفسه بأسلوبهم الخاص. المنصب أو المسمى الوظيفي اسم المشروع سالي سميث @@ -526,7 +552,6 @@ Language: ar تعذر علينا الوصول إلى <b>ملف XMLRPC</b> على موقعك. سيتعين عليك الوصول إلى مضيفك لحل هذا الأمر. تقريبًا هناك! يتعين علينا فقط التحقق من صحة عنوان بريدك الإلكتروني المتصل بـ Jetpack <b>%1$s</b> تسجيل الدخول باستخدام بيانات اعتماد الموقع %1$s الخاصة بك - إرسال رسالة تحقق عبر البريد الإلكتروني المتابعة صفحة الموقع تسجيل الدخول باستخدام بيانات اعتماد الموقع. @@ -553,7 +578,6 @@ Language: ar فكّ التجميع أنقر هنا لإظهار المساعدة أنقر لإخفاء لوحة المفاتيح - الحجم إضافة عنوان الشريط الجانبي إظهار القسم إعادة تعيين المكوِّن diff --git a/WordPress/src/main/res/values-cs/strings.xml b/WordPress/src/main/res/values-cs/strings.xml index 9651adec0374..68678882d1ec 100644 --- a/WordPress/src/main/res/values-cs/strings.xml +++ b/WordPress/src/main/res/values-cs/strings.xml @@ -6,10 +6,8 @@ Generator: GlotPress/3.0.0-alpha.2 Language: cs_CZ --> - Poslat ověřovací email Přeložit Název: - Velikost Vybrat stát Vybrat zemi Další diff --git a/WordPress/src/main/res/values-de/strings.xml b/WordPress/src/main/res/values-de/strings.xml index 85ef267be431..877f7577c24b 100644 --- a/WordPress/src/main/res/values-de/strings.xml +++ b/WordPress/src/main/res/values-de/strings.xml @@ -1,11 +1,33 @@ + Löschen + Beim Auswählen des Designs ist ein Fehler aufgetreten. + Weiter + Fertig + Änderungen verwerfen? + Verwerfen + Text + Hintergrund + Layouts sind offline nicht verfügbar + Änderungen werden nicht gespeichert. + Bitte überprüfe deine Internetverbindung und versuche es erneut. + Tippe auf „Erneut versuchen“, wenn du wieder online bist. + Willkommen! + Scannen + Keine aktuellen Beiträge + Mit Store-Anmeldedaten fortfahren + Verbundene E-Mail-Adresse suchen + Themen folgen + Folge mehreren Themen, um deine Suche zu erweitern + <b>Johan Brandt</b> hat auf deinen Beitrag geantwortet + Heute hast du auf deiner Website <b>50 \"Gefällt mir\"-Angaben</b> erhalten: + <b>Madison Ruiz</b> gefällt dein Beitrag Scrollbares Block-Menü geöffnet. Wähle einen Block aus. Scrollbares Block-Menü geschlossen. Überspringen @@ -39,6 +61,7 @@ Language: de Sieh mithilfe von umfassenden Analysen dabei zu, wie deine Zielgruppe wächst. Mit dem leistungsstarken Editor kannst du auch von unterwegs aus Beiträge veröffentlichen. Willkommen beim beliebtesten Website-Baukasten der Welt. + Kommentare und Benachrichtigungen in Echtzeit anzeigen. Laden der Medien fehlgeschlagen Websites, denen du folgen möchtest „%s“ wird nicht vollständig unterstützt @@ -65,7 +88,7 @@ Language: de Zurück Erste Schritte Von - Folge Themen, um neue Blogs zu entdecken + Folge Themen, um neue Blogs zu entdecken Als Spam markieren Dieser Referrer kann nicht als Spam markiert werden Spam-Markierung aufheben @@ -94,7 +117,6 @@ Language: de Dieser Kommentar kann nicht angezeigt werden Artikel durchsuchen Diesen Beitrag melden - Winkel Willkommen beim Reader. Entdecke mit nur einem Klick Millionen von Blogs. Es ist ein interner Serverfehler aufgetreten Deine Aktion ist nicht zulässig @@ -137,7 +159,6 @@ Language: de fehlerhaft Textausrichtung ändern Textfarbe ändern - Slide löschen Verwerfen Löschen Ohne Titel @@ -148,19 +169,16 @@ Language: de Story-Slide entfernen? Vorschau Text - Mehr Ton Gespeichert TEILEN Erneut versuchen Gespeichert Schließen - Weiter Erneut versuchen Seite erstellen Leere Seite erstellen Folie - Fertig Teilen auf In Fotos gespeichert Wird gespeichert … @@ -520,7 +538,6 @@ Language: de Wir konnten wegen eines Problems mit dem <b>SSL-Zertifikat</b> nicht auf deine Website zugreifen. Du musst dich an deinen Host wenden, um dies zu beheben. Wir konnten nicht auf deine Website zugreifen, da <b>HTTP-Authentifizierung</b> erforderlich ist. Du musst dich an deinen Host wenden, um dies zu beheben. Folgen - Bestätigungs-E-Mail senden Fast geschafft! Wir müssen nur noch deine mit Jetpack verbundene E-Mail-Adresse bestätigen <b>%1$s</b> Mit deinen Anmeldedaten der Website %1$s anmelden Wir konnten nicht auf die <b>XMLRPC-Datei</b> deiner Website zugreifen. Du musst dich an deinen Host wenden, um dies zu beheben. @@ -549,7 +566,6 @@ Language: de Zum Ausblenden der Tastatur hier tippen Zum Anzeigen der Hilfe hier tippen Fang an zu schreiben… - Größe Plugin für Seitenleisten-Titel Abschnitt anzeigen Block %s. Dieser Block hat ungültigen Inhalt diff --git a/WordPress/src/main/res/values-el/strings.xml b/WordPress/src/main/res/values-el/strings.xml index ba1c37d20cb6..b785f77131c3 100644 --- a/WordPress/src/main/res/values-el/strings.xml +++ b/WordPress/src/main/res/values-el/strings.xml @@ -23,7 +23,6 @@ Language: el_GR Λήψη βίντεο Λήψη φωτογραφίας Ξεκινήστε να γράφετε … - Μέγεθος Εμφάνιση ενότητας %s μπλοκ. Αυτό το μπλοκ έχει μη έγκυρο περιεχόμενο %s μπλοκ. Είναι άδειο diff --git a/WordPress/src/main/res/values-en-rAU/strings.xml b/WordPress/src/main/res/values-en-rAU/strings.xml index 6dbaef928194..09c8cd68b57b 100644 --- a/WordPress/src/main/res/values-en-rAU/strings.xml +++ b/WordPress/src/main/res/values-en-rAU/strings.xml @@ -340,7 +340,7 @@ Language: en_AU Create Site Search Domains This is where people will find you on the internet. - Choose a domain name for your site + Choose a domain No available addresses matching your search Error communicating with the server, please try again There was a problem diff --git a/WordPress/src/main/res/values-en-rCA/strings.xml b/WordPress/src/main/res/values-en-rCA/strings.xml index 612c628f6075..5852c8066d79 100644 --- a/WordPress/src/main/res/values-en-rCA/strings.xml +++ b/WordPress/src/main/res/values-en-rCA/strings.xml @@ -1,11 +1,110 @@ + One or more slides have not been added to your Story because Stories don\'t support GIF files at the moment. Please choose a static image or video background instead. + GIF files not supported + We couldn\'t find the media for this story on the site. + Can\'t edit Story + Unable to load media for this story. Check your internet connection and try again in a moment. + Can\'t edit Story + This story was edited on a different device and the ability to edit certain objects may be limited. + Limited Story Editing + Media has been removed. Try editing your Story. + Background + Text + Discard + Any changes made will not be saved. + Discard changes? + Done + Next + Delete + There was an error while selecting the design. + Please check your internet connection and retry. + Tap retry when you\'re back online. + Layouts not available while offline + Continue with store credentials + Find your connected email + Follow topics + Try following more topics to broaden the search + No recent posts + Welcome! + Scan + <b>Johan Brandt</b> responded to your post + You received <b>50 likes</b> on your site today + <b>Madison Ruiz</b> liked your post + Scrollable block menu opened. Select a block. + Scrollable block menu closed. + Skip + Choose + Pick your favourite homepage layout. You can customize or change it later. + Choose a design + Tap retry when you\'re back online or create a blank page using the button below. + Layouts not available while offline + Tap retry or create a blank page using the button below. + Layouts not available due to an error + Add Category + Add New Category + Categories + Not set + Categories + Museums in London + The World\'s Best Fans + My Top Ten Cafes + Politics + Music + Gardening + Football + Cooking + Art + Rock n\' Roll Weekly + Web News + Pamela Nguyen + I am so inspired by photographer Cameron Karsten’s work. I will be trying these techniques on my next + Getting Inspired + Follow your favourite sites and discover new reads. + Watch your audience grow with in-depth analytics. + See comments and notifications in real time. + With the powerful editor you can post on the go. + Welcome to the world’s most popular website builder. + Media loading failed + Sites to follow + We are working hard to add more blocks with each release. + \'%s\' is not fully–supported + Help button + Edit using web editor + Choose images + Create Story Post + They’re published as a new blog post on your site so your audience never misses out on a thing. + Story posts don\'t disappear + Combine photos, videos, and text to create engaging and tappable story posts that your visitors will love. + Now stories are for everyone + Example story title + How to create a story post + You\'ve got early access to Story Posts and we\'d love for you to give it a try. + Introducing Story Posts + Blank page created + Page created + Layout Preview + %1$s was denied access to your photos. To fix this, edit your permissions and turn on %2$s and %3$s. + Media insert failed. + Media insert failed: %s + Choose from WordPress Media Library + Back + Get Started + Follow topics to discover new blogs + By + This referrer can\'t be marked as spam + Unmark as Spam + Mark as Spam + Open Website + Uploading gif media + Uploading stock media + Uploading media Select item Search or type URL Add this telephone link @@ -27,7 +126,6 @@ Language: en_CA Unable to show this comment Browse for items Report this post - Angle Welcome to Reader. Discover millions of blogs at your fingertips. Internal server error occurred Your action is not allowed @@ -76,7 +174,6 @@ Language: en_CA This slide has not been saved yet. If you delete this slide, you will lose any edits you have made. This slide will be removed from your story. Delete story slide? - Delete slide Change text colour Change text alignment errored @@ -86,8 +183,6 @@ Language: en_CA Retry Saved Close - Next - Done Share to SHARE Saved to photos @@ -98,7 +193,6 @@ Language: en_CA Flip Sound Text - More Stickers Flash Flip camera @@ -453,7 +547,6 @@ Language: en_CA Almost there! We just need to verify your Jetpack connected email address <b>%1$s</b> Log in with site credentials. Log in with your %1$s site credentials - Send verification email Site page Following Likes @@ -478,7 +571,6 @@ Language: en_CA Take a Photo or Video Take a Photo Start writing… - Size Sidebar title plugin Show section %s block. This block has invalid content @@ -872,7 +964,7 @@ Language: en_CA Create Site Search Domains This is where people will find you on the internet. - Choose a domain name for your site + Choose a domain No available addresses matching your search Error communicating with the server, please try again There was a problem diff --git a/WordPress/src/main/res/values-en-rGB/strings.xml b/WordPress/src/main/res/values-en-rGB/strings.xml index 6d7eff95485a..171854b49eef 100644 --- a/WordPress/src/main/res/values-en-rGB/strings.xml +++ b/WordPress/src/main/res/values-en-rGB/strings.xml @@ -1,11 +1,39 @@ + One or more slides have not been added to your Story because Stories don\'t support GIF files at the moment. Please choose a static image or video background instead. + GIF files not supported + We couldn\'t find the media for this story on the site. + Can\'t edit Story + Unable to load media for this story. Check your internet connection and try again in a moment. + Can\'t edit Story + This story was edited on a different device and the ability to edit certain objects may be limited. + Limited Story Editing + Media has been removed. Try editing your Story. + Background + Text + Discard + Any changes made will not be saved. + Discard changes? + Done + Next + Delete + There was an error while selecting the design. + Please check your internet connection and retry. + Tap retry when you\'re back online. + Layouts not available while offline + Continue with store credentials + Find your connected email + Follow topics + Try following more topics to broaden the search + No recent posts + Welcome! + Scan <b>Johan Brandt</b> responded to your post You received <b>50 likes</b> on your site today <b>Madison Ruiz</b> liked your post @@ -68,7 +96,7 @@ Language: en_GB Choose from WordPress Media Library Back Get Started - Follow topics to discover new blogs + Follow topics to discover new blogs By This referrer can\'t be marked as spam Unmark as Spam @@ -98,7 +126,6 @@ Language: en_GB Unable to show this comment Browse for items Report this post - Angle Welcome to Reader. Discover millions of blogs at your fingertips. Internal server error occurred Your action is not allowed @@ -147,7 +174,6 @@ Language: en_GB This slide has not been saved yet. If you delete this slide, you will lose any edits you have made. This slide will be removed from your story. Delete story slide? - Delete slide Change text colour Change text alignment errored @@ -157,8 +183,6 @@ Language: en_GB Retry Saved Close - Next - Done Share to SHARE Saved to photos @@ -169,7 +193,6 @@ Language: en_GB Flip Sound Text - More Stickers Flash Flip camera @@ -530,7 +553,6 @@ Language: en_GB Almost there! We just need to verify your Jetpack connected email address <b>%1$s</b> Log in with site credentials. Log in with your %1$s site credentials - Send verification email Site page Following Likes @@ -556,7 +578,6 @@ Language: en_GB Take a Photo or Video Take a Photo Start writing… - Size Sidebar title plugin Show section %s block. This block has invalid content @@ -950,7 +971,7 @@ Language: en_GB Create Site Search Domains This is where people will find you on the internet. - Choose a domain name for your site + Choose a domain No available addresses matching your search Error communicating with the server, please try again There was a problem diff --git a/WordPress/src/main/res/values-es-rCO/strings.xml b/WordPress/src/main/res/values-es-rCO/strings.xml index 9a24170de151..b626381dca2b 100644 --- a/WordPress/src/main/res/values-es-rCO/strings.xml +++ b/WordPress/src/main/res/values-es-rCO/strings.xml @@ -68,7 +68,6 @@ Language: es_CO Elige desde la biblioteca de medios de WordPress Volver Primeros pasos - Sigue temáticas y descubre nuevos blogs Por Este referido no puede ser marcado como spam Desmarcar como spam @@ -98,7 +97,6 @@ Language: es_CO No se puede mostrar este comentario Navegar por elementos Informar de esta entrada - Ángulo Bienvenido al Lector. Descubre millones de blogs a tu alcance. Ha ocurrido un error interno del servidor Tu acción no está permitida @@ -147,7 +145,6 @@ Language: es_CO Esta diapositiva aún no ha sido guardada. Si borras esta diapositiva, perderás cualquier edición que hayas hecho. Esta diapositiva será eliminada de tu historia. ¿Borrar la diapositiva de la historia? - Borrar la diapositiva Cambiar el color del texto Cambiar la alineación del texto con error @@ -157,8 +154,6 @@ Language: es_CO Reintentar Guardado Cerrar - Siguiente - Hecho Compartir con COMPARTIR Guardado en fotos @@ -169,7 +164,6 @@ Language: es_CO Girar Sonido Texto - Más Pegatinas Flash Girar la cámara @@ -530,7 +524,6 @@ Language: es_CO ¡Ya casi estamos! Solo necesitamos verificar tu dirección de correo electrónico conectada a Jetpack <b>%1$s</b> Accede con las credenciales del sitio. Accede con las credenciales del sitio %1$s - Enviar el correo electrónico de verificación Página del sitio Siguiendo Me gusta @@ -556,7 +549,6 @@ Language: es_CO Haz una foto o un vídeo Haz una foto Empieza a escribir… - Tamaño Título del plugin en la barra lateral Mostrar la sección Bloque %s. Este bloque tiene contenido no válido diff --git a/WordPress/src/main/res/values-es-rMX/strings.xml b/WordPress/src/main/res/values-es-rMX/strings.xml index 9e9f2fa3576a..5ec47236279b 100644 --- a/WordPress/src/main/res/values-es-rMX/strings.xml +++ b/WordPress/src/main/res/values-es-rMX/strings.xml @@ -68,7 +68,6 @@ Language: es_MX Inserción del medio fallida. Volver por - Sigue temáticas y descubre nuevos blogs Primeros pasos Subiendo medios Subiendo medios de inventarios @@ -102,7 +101,6 @@ Language: es_MX Tu acción no está permitida Ha ocurrido un error interno del servidor Bienvenido al Lector. Descubre millones de blogs a tu alcance. - Ángulo Seleccionar un layout Nota: el layout de la columna puede variar entre temas y tamaños de pantalla Crear una entrada @@ -144,7 +142,6 @@ Language: es_MX con error Cambiar la alineación del texto Cambiar el color del texto - Borrar la diapositiva ¿Borrar la diapositiva de la historia? Esta diapositiva será eliminada de tu historia. Esta diapositiva aún no ha sido guardada. Si borras esta diapositiva, perderás cualquier edición que hayas hecho. @@ -162,7 +159,6 @@ Language: es_MX Girar la cámara Flash Pegatinas - Más Texto Sonido Girar @@ -173,8 +169,6 @@ Language: es_MX Guardado en fotos COMPARTIR Compartir con - Hecho - Siguiente Cerrar Guardado Reintentar @@ -529,7 +523,6 @@ Language: es_MX No hemos podido acceder en tu sitio al <b>archivo XMLRCP</b>. Tendrás que contactar con tu alojamiento para solucionarlo. ¡Ya casi estamos! Solo necesitamos verificar tu dirección de correo electrónico conectada a Jetpack <b>%1$s</b> Accede con las credenciales del sitio %1$s - Enviar el correo electrónico de verificación Siguiendo Página del sitio Accede con las credenciales del sitio. @@ -556,7 +549,6 @@ Language: es_MX Empieza a escribir… Toma un video Toma una foto o un video - Tamaño Título del plugin en la barra lateral Mostrar la sección Bloque %s. Este bloque tiene contenido no válido diff --git a/WordPress/src/main/res/values-es-rVE/strings.xml b/WordPress/src/main/res/values-es-rVE/strings.xml index 3a64c06ff865..eda7c8de5676 100644 --- a/WordPress/src/main/res/values-es-rVE/strings.xml +++ b/WordPress/src/main/res/values-es-rVE/strings.xml @@ -1,11 +1,39 @@ + Una o más diapositivas no se han añadido a tu historia porque en este momento las historias no son compatibles con archivos GIF. Por favor, elige una imagen estática o un vídeo de fondo en su lugar. + Los archivos GIF no son compatibles + No hemos podido encontrar en el sitio los medios para esta historia. + No se puede editar la historia + No ha sido posible subir medios a esta historia. Comprueba tu conexión a Internet e inténtalo de nuevo dentro de un momento. + No se puede editar la historia + Esta historia se ha editado en un dispositivo diferente y la posibilidad de editar ciertos objetos puede estar limitada. + Edición limitada de la historia + Los medios han sido eliminados. Intenta editar tu historia. + Fondo + Texto + Descartar + Cualquier cambio realizado no se guardará. + ¿Descartar los cambios? + Hecho + Siguiente + Borrar + Ha habido un error al seleccionar el diseño. + Por favor, revisa tu conexión a Internet e inténtalo de nuevo. + Toca en reintentar cuando vuelvas a estar conectado. + Los diseños no están disponibles sin conexión + Continuar con las credenciales de la tienda + Encuentra tu correo electrónico conectado + Seguir temáticas + Intenta seguir más temáticas para ampliar la búsqueda + No hay entradas recientes + ¡Bienvenido! + Explorar <b>Juan Gómez</b> ha respondido en tu entrada Hoy has recibido <b>50 me gusta</b> en tu sitio A <b>Madison Ruíz</b> le ha gustado tu entrada @@ -68,7 +96,7 @@ Language: es_VE Elige desde la biblioteca de medios de WordPress Volver Primeros pasos - Sigue temáticas y descubre nuevos blogs + Sigue temáticas para descubrir nuevos blogs por Este referido no puede ser marcado como spam Desmarcar como spam @@ -98,7 +126,6 @@ Language: es_VE No se puede mostrar este comentario Navegar por elementos Informar de esta entrada - Ángulo Bienvenido al Lector. Descubre millones de blogs a tu alcance. Ha ocurrido un error interno del servidor Tu acción no está permitida @@ -147,7 +174,6 @@ Language: es_VE Esta diapositiva aún no ha sido guardada. Si borras esta diapositiva, perderás cualquier edición que hayas hecho. Esta diapositiva será eliminada de tu historia. ¿Borrar la diapositiva de la historia? - Borrar la diapositiva Cambiar el color del texto Cambiar la alineación del texto con error @@ -157,8 +183,6 @@ Language: es_VE Reintentar Guardado Cerrar - Siguiente - Hecho Compartir con COMPARTIR Guardado en fotos @@ -169,7 +193,6 @@ Language: es_VE Girar Sonido Texto - Más Pegatinas Flash Girar la cámara @@ -530,7 +553,6 @@ Language: es_VE ¡Ya casi estamos! Solo necesitamos verificar tu dirección de correo electrónico conectada a Jetpack <b>%1$s</b> Accede con las credenciales del sitio. Accede con las credenciales del sitio %1$s - Enviar el correo electrónico de verificación Página del sitio Siguiendo Me gusta @@ -556,7 +578,6 @@ Language: es_VE Haz una foto o un vídeo Haz una foto Empieza a escribir… - Tamaño Título del plugin en la barra lateral Mostrar la sección Bloque %s. Este bloque tiene contenido no válido diff --git a/WordPress/src/main/res/values-es/strings.xml b/WordPress/src/main/res/values-es/strings.xml index 49084ead8791..e0898006bc82 100644 --- a/WordPress/src/main/res/values-es/strings.xml +++ b/WordPress/src/main/res/values-es/strings.xml @@ -1,11 +1,39 @@ + Una o más diapositivas no se han añadido a tu historia porque en este momento las historias no son compatibles con archivos GIF. Por favor, elige una imagen estática o un vídeo de fondo en su lugar. + Los archivos GIF no son compatibles + No hemos podido encontrar en el sitio los medios para esta historia. + No se puede editar la historia + No ha sido posible subir medios a esta historia. Comprueba tu conexión a Internet e inténtalo de nuevo dentro de un momento. + No se puede editar la historia + Esta historia se ha editado en un dispositivo diferente y la posibilidad de editar ciertos objetos puede estar limitada. + Edición limitada de la historia + Los medios han sido eliminados. Intenta editar tu historia. + Fondo + Texto + Descartar + Cualquier cambio realizado no se guardará. + ¿Descartar cambios? + Hecho + Siguiente + Borrar + Ocurrió un error al seleccionar el diseño. + Por favor, revisa tu conexión a Internet e inténtalo de nuevo. + Toca en reintentar cuando vuelvas a estar conectado. + Los diseños no están disponibles sin conexión + Continuar con las credenciales de la tienda + Encuentra tu correo electrónico conectado + Seguir temas + Prueba a seguir más temas para ampliar la búsqueda + No hay entradas recientes + ¡Bienvenido! + Explorar <b>Juan Gómez</b> ha respondido en tu entrada Hoy has recibido <b>50 me gusta</b> en tu sitio A <b>Madison Ruíz</b> le ha gustado tu entrada @@ -68,7 +96,7 @@ Language: es Elige desde la biblioteca de medios de WordPress Volver Primeros pasos - Sigue temáticas y descubre nuevos blogs + Sigue temáticas para descubrir nuevos blogs por Este referido no puede ser marcado como spam Desmarcar como spam @@ -98,7 +126,6 @@ Language: es No se puede mostrar este comentario Navegar por elementos Informar de esta entrada - Ángulo Bienvenido al Lector. Descubre millones de blogs a tu alcance. Ha ocurrido un error interno del servidor Tu acción no está permitida @@ -147,7 +174,6 @@ Language: es Esta diapositiva aún no ha sido guardada. Si borras esta diapositiva, perderás cualquier edición que hayas hecho. Esta diapositiva será eliminada de tu historia. ¿Borrar la diapositiva de la historia? - Borrar la diapositiva Cambiar el color del texto Cambiar la alineación del texto con error @@ -157,8 +183,6 @@ Language: es Reintentar Guardado Cerrar - Siguiente - Hecho Compartir con COMPARTIR Guardado en fotos @@ -169,7 +193,6 @@ Language: es Girar Sonido Texto - Más Pegatinas Flash Girar la cámara @@ -530,7 +553,6 @@ Language: es ¡Ya casi estamos! Solo necesitamos verificar tu dirección de correo electrónico conectada a Jetpack <b>%1$s</b> Accede con las credenciales del sitio. Accede con las credenciales de tu sitio %1$s - Enviar el correo electrónico de verificación Página del sitio Siguiendo Me gusta @@ -556,7 +578,6 @@ Language: es Haz una foto o un vídeo Haz una foto Empieza a escribir… - Tamaño Título del plugin en la barra lateral Mostrar la sección Bloque %s. Este bloque tiene contenido no válido diff --git a/WordPress/src/main/res/values-fr/strings.xml b/WordPress/src/main/res/values-fr/strings.xml index cf0de24165cb..4c034aae9a46 100644 --- a/WordPress/src/main/res/values-fr/strings.xml +++ b/WordPress/src/main/res/values-fr/strings.xml @@ -1,11 +1,28 @@ + Arrière-plan + Texte + Rejeter + Aucune modification effectuée n’a été enregistrée. + Annuler les modifications ? + Terminé + Suivant + Supprimer + Une erreur s’est produite lors de la sélection du design. + Veuillez vérifier votre connexion internet, puis réessayez. + Appuyez sur Réessayer lorsque vous êtes de nouveau en ligne. + Mises en page non disponibles hors connexion + Continuer avec les identifiants de connexion de la boutique + Trouver votre e-mail connecté + Suivre des sujets + Pas d’articles récents. + Bienvenue ! <b>Johan Brandt</b> a répondu à votre article Vous avez reçu <b>50 « J’aime »</b> sur votre site aujourd\'hui <b>Madison Ruiz</b> a aimé votre article @@ -68,7 +85,6 @@ Language: fr Choisir dans la bibliothèque des médias WordPress Retour Premiers pas - Suivre des thèmes pour découvrir de nouveaux blogs Par Ce référent ne peut pas être marqué comme indésirable Marquer comme sain @@ -98,7 +114,6 @@ Language: fr Impossible d’afficher ce commentaire Parcourir les éléments. Signaler cet article - Angle Bienvenue sur le Lecteur. Découvrez des millions de blogs à portée de main. Une erreur interne du serveur s’est produite Votre action n’est pas autorisée @@ -147,7 +162,6 @@ Language: fr Cette diapositive n’a pas encore été enregistrée. Si vous supprimez cette diapositive, vous perdrez toutes les modifications que vous avez apportées. Cette diapositive sera supprimée de votre story. Supprimer la diapositive de la story ? - Supprimer la diapositive Modifier la couleur du texte Modifier l’alignement du texte erroné @@ -157,8 +171,6 @@ Language: fr Réessayer Enregistrée Fermer - Suivante - Terminé Partager vers PARTAGER Enregistré dans les photos @@ -169,7 +181,6 @@ Language: fr Retourner Son Texte - Plus Autocollants Flash Retourner l’appareil photo @@ -530,7 +541,6 @@ Language: fr Vous y êtes presque ! Nous devons juste vérifier votre adresse e-mail connectée à Jetpack <b>%1$s</b> Connectez-vous avec vos identifiants au site. Connexion avec vos identifiants au site %1$s - Envoyer l’e-mail de vérification Page du site Abonné J’aime @@ -556,7 +566,6 @@ Language: fr Prendre une photo ou une vidéo Prendre une photo Commencez à écrire… - Taille Extension du titre de la colonne latérale Afficher la section Bloc %s. Le contenu de ce bloc n’est pas valide diff --git a/WordPress/src/main/res/values-gl/strings.xml b/WordPress/src/main/res/values-gl/strings.xml index 02ab9e5102c2..d7d8890ea125 100644 --- a/WordPress/src/main/res/values-gl/strings.xml +++ b/WordPress/src/main/res/values-gl/strings.xml @@ -284,7 +284,6 @@ Language: gl_ES Non puidemos acceder no teu sitio ao <b>arquivo XMLRCP</b>. Terás que contactar co teu aloxamento para solucionalo. Xa case estamos! Só necesitamos verificar o teu enderezo de correo electrónico conectado a Jetpack <b>%1$s</b> Accede coas credenciais do teu sitio %1$s - Enviar o correo electrónico de verificación Páxina do sitio Seguindo Gústame @@ -309,7 +308,6 @@ Language: gl_ES Fai unha foto ou un vídeo Fai unha foto Empeza a escribir… - Tamaño Título do plugin na barra lateral Amosar a sección Bloque %s. Este bloque ten contido non válido diff --git a/WordPress/src/main/res/values-he/strings.xml b/WordPress/src/main/res/values-he/strings.xml index 2ee352d1e433..9b95b4639d23 100644 --- a/WordPress/src/main/res/values-he/strings.xml +++ b/WordPress/src/main/res/values-he/strings.xml @@ -1,11 +1,69 @@ + רקע + טקסט + ביטול + השינויים לא יישמרו. + לבטל את השינויים? + בוצע + הבא + למחוק + אירעה שגיאה בעת בחירת העיצוב. + יש לבדוק את החיבור לאינטרנט ולנסות שוב. + יש להקיש כדי לנסות שוב במצב מקוון. + הפריסות אינן זמינות במצב לא מקוון + להמשיך עם פרטי הכניסה של החנות + למצוא את כתובת האימייל המחוברת שלך + לעקוב אחר נושאים + כדאי לעקוב אחרי נושאים נוספים כדי להרחיב את החיפוש + אין פוסטים אחרונים + ברוך בואך! + לסרוק + <b>ישראל ישראלי</b> הגיב לפוסט שלך + קיבלת <b>‏50 ליקיים</b> באתר שלך היום + <b>ישראלה ישראלה</b> סימנה לייק בפוסט שלך + תפריט בלוק לגלילה פתוח. יש לבחור בלוק. + תפריט בלוק לגלילה סגור. + לדלג + לבחור + יש לבחור את הפריסה המועדפת עליך לעמוד הבית. אפשר להתאים אישית או לשנות אותה מאוחר יותר. + לבחור עיצוב + יש להקיש כדי לנסות שוב במצב מקוון או ליצור עמוד ריק בעזרת הכפתור למטה. + הפריסות אינן זמינות במצב לא מקוון + יש להקיש כדי לנסות שוב או ליצור עמוד ריק בעזרת הכפתור למטה. + הפריסות אינן זמינות בשל שגיאה + להוסיף קטגוריה + קטגוריה חדשה + קטגוריות + לא הוגדר + קטגוריות + מוזיאונים בלונדון + המעריצים הכי נאמנים בעולם + העשירייה הפותחת של בתי הקפה שלי + פוליטיקה + מוזיקה + גינון + פוטבול + בישול + אומנות + רוקנרול שבועי + חדשות באינטרנט + פמלה גואן + העבודות של הצלם קמרון קרסטן הן השראה עצומה עבורי. את הטכניקות האלה אביא לידי ביטוי בפעם הבאה שאצור + לקבל השראה + כדאי לעקוב אחר האתרים המועדפים שלך ולגלות חומרי קריאה חדשים. + באמצעות ניתוחי עומק ניתן לעקוב אחר הצמיחה של קהל המבקרים. + להציג תגובות והודעות בזמן אמת. + העורך העוצמתי הזה מאפשר לפרסם מכל מקום. + ברוך בואך לכלי הפופולרי ביותר בעולם לבניית אתרי אינטרנט. + העלאת מדיה נכשלה + אתרים למעקב אנחנו מקדישים מאמץ רב כדי להוסיף עוד בלוקים בכל גרסה. \'%s\' לא נתמך באופן מלא כפתור עזרה @@ -29,7 +87,6 @@ Language: he_IL לבחור מתוך ספריית המדיה של WordPress חזרה מתחילים כאן - לעקוב אחר נושאים כדי לגלות בלוגים חדשים לפי לא ניתן לסמן את מקור ההפניה כזבל לבטל את הסימון כתגובת זבל @@ -58,7 +115,6 @@ Language: he_IL לא ניתן להציג תגובה זו לחפש פריטים דיווח על פוסט זה - זווית ברוכים הבאים ל-Reader. גישה מהירה למיליוני בלוגים. אירעה שגיאת שרת פנימית הפעולה שביצעת לא מותרת @@ -107,7 +163,6 @@ Language: he_IL השקופית הזאת טרם נשמרה. אם השקופית תימחק, כל העריכות שביצעת יאבדו. השקופית תוסר מהסטורי שלך. האם למחוק את השקופית? - למחוק את השקופית לשנות את צבע הטקסט לשנות את היישור של הטקסט אירעה שגיאה @@ -117,8 +172,6 @@ Language: he_IL יש לנסות שוב נשמר לסגור - הבא - בוצע לשתף אל שיתוף נשמר בתמונות @@ -129,7 +182,6 @@ Language: he_IL לשנות כיוון שמע טקסט - עוד מדבקות מבזק לשנות את כיוון המצלמה @@ -154,6 +206,7 @@ Language: he_IL לבחור תמונה או וידאו לבחור תמונה הבלוק הוסר + יש להזין את כתובת האתר החדש שלך להמשיך עם WordPress.com אישור הרשמה אם בחרת להמשיך עם Google או ועדיין אין לך חשבון ב-WordPress.com, חשבון ייווצר עבורך ויש הסכמה מצידך ⁦%1$s⁩לתנאי השירות⁦%2$s⁩ שלנו. @@ -486,7 +539,6 @@ Language: he_IL כמעט סיימת! אנחנו רק צריכים לאמת שהשירות של Jetpack מחובר לכתובת האימייל שלך <b>%1$s</b> יש להתחבר עם פרטי הכניסה של האתר. יש להתחבר עם פרטי הכניסה שלך לאתר %1$s - לשלוח את הודעת האימייל לאישור עמוד האתר מעקב לייקים @@ -512,7 +564,6 @@ Language: he_IL לצלם תמונה או וידאו לצלם תמונה להתחיל לכתוב… - גודל תוסף לכותרת הסרגל הצדי להציג את המקטע הבלוק %s. בלוק זה כולל תוכן לא חוקי diff --git a/WordPress/src/main/res/values-hr/strings.xml b/WordPress/src/main/res/values-hr/strings.xml index 2a0d7875ee99..d28648af58e2 100644 --- a/WordPress/src/main/res/values-hr/strings.xml +++ b/WordPress/src/main/res/values-hr/strings.xml @@ -7,15 +7,12 @@ Language: hr --> Zatvori - Sljedeće - Gotovo Podijeli Pokušaj ponovno Spremljeno Spremanje Zvuk Tekst - Više Naljepnice Ništa Sljedbenik diff --git a/WordPress/src/main/res/values-id/strings.xml b/WordPress/src/main/res/values-id/strings.xml index 66cd3d531d01..3577ab29e741 100644 --- a/WordPress/src/main/res/values-id/strings.xml +++ b/WordPress/src/main/res/values-id/strings.xml @@ -1,11 +1,69 @@ + Latar Belakang + Teks + Batal + Perubahan yang dibuat tidak akan tersimpan. + Buang perubahan? + Selesai + Selanjutnya + Hapus + Terjadi error saat memilih desain. + Harap periksa koneksi internet Anda lalu coba lagi. + Ketuk coba lagi saat Anda kembali online. + Tata letak tidak tersedia saat offline + Lanjutkan dengan kredensial toko + Temukan email Anda yang terhubung + Ikuti topik + Coba ikuti lebih banyak topik untuk memperluas pencarian + Tak ada pos terbaru + Selamat datang! + Pindai + <b>Johan Brandt</b> menanggapi pos Anda + Anda menerima <b>50 suka</b> di situs Anda hari ini + <b>Madison Ruiz</b> menyukai pos Anda + Menu blok yang dapat digulir terbuka. Pilih blok. + Menu blok yang dapat digulir tertutup. + Lewati + Pilih + Pilih tata letak halaman beranda favorit Anda. Anda selalu dapat menyesuaikan atau mengubahnya nanti. + Pilih desain + Ketuk coba lagi setelah Anda kembali online atau buat halaman kosong dengan tombol di bawah ini. + Tata letak tidak tersedia saat offline + Ketuk coba lagi atau buat halaman kosong dengan tombol di bawah ini. + Tata letak tersedia karena error + Tambahkan Kategori + Tambah Kategori Baru + Kategori + Tidak ditentukan + Kategori + Museum di London + Penggemar Terbaik di Dunia + Sepuluh Kafe Favorit Saya + Politik + Musik + Berkebun + Sepakbola + Memasak + Seni + Rock n\' Roll Mingguan + Berita Web + Pamela Nguyen + Saya sangat terinspirasi oleh karya fotografer Cameron Karsten. Saya akan mencoba teknik ini selanjutnya + Dapatkan Inspirasi + Ikuti situs favorit Anda dan temukan bacaan-bacaan baru. + Perhatikan audiens Anda tumbuh dengan analisis mendalam. + Dengan editor yang hebat, Anda dapat langsung menerbitkan pos. + Selamat datang di pembuat situs web terpopuler di dunia. + Lihat komentar dan pemberitahuan secara real-time. + Gagal memuat media + Rekomendasi situs Kami berusaha keras untuk menambahkan banyak blok setiap rilis. \'%s\' tidak sepenuhnya didukung Tombol Bantuan @@ -29,7 +87,6 @@ Language: id Pilih dari Pustaka Media WordPress Kembali Memulai - Ikuti topik untuk menemukan blog baru Oleh Perujuk ini tidak dapat ditandai sebagai spam Hilangkan tanda sebagai Spam @@ -58,7 +115,6 @@ Language: id Tidak dapat menampilkan komentar ini Telusuri item Melaporkan Pos Ini - Sudut Selamat datang di Pembaca. Temukan jutaan blog dengan ujung jari Anda. Terjadi kesalahan server internal Tindakan Anda tidak diizinkan @@ -107,7 +163,6 @@ Language: id Slide ini belum disimpan. Jika menghapus slide ini, seluruh pengeditan yang Anda lakukan akan dibuang. Slide ini akan dihapus dari cerita Anda. Hapus slide cerita? - Hapus slide Ubah warna teks Ubah perataan teks error @@ -117,8 +172,6 @@ Language: id Coba lagi Disimpan Tutup - Selanjutnya - Selesai Bagikan ke BAGIKAN Disimpan ke foto @@ -129,7 +182,6 @@ Language: id Balik Suara Teks - Lainnya Stiker Flash Balik kamera @@ -159,6 +211,7 @@ Language: id Lanjutkan dengan WordPress.com Konfirmasi pendaftaran Jika Anda melanjutkan dengan Google dan belum memiliki akun WordPress.com, Anda akan membuat akun dan menyetujui %1$sKetentuan Layanan%2$s kami. + Masukkan alamat situs Anda yang sudah ada Dengan melanjutkan, Anda menyetujui %1$sKetentuan Layanan%2$s kami. Kami akan mengirimi Anda email berisi tautan pendaftaran untuk membuat akun WordPress.com baru. Kami akan menggunakan alamat email ini untuk membuat akun WordPress.com baru Anda. @@ -488,7 +541,6 @@ Language: id Kami tidak dapat mengakses <b>file XMLRPC</b> situs Anda. Anda harus menghubungi host untuk mengatasi masalah ini. Hampir selesai! Kami hanya perlu memverifikasi alamat email Anda yang terhubung dengan Jetpack <b>%1$s</b> Login dengan kredensial situs %1$s - Kirim email verifikasi Mengikuti Halaman situs Login dengan kredensial situs. @@ -515,7 +567,6 @@ Language: id Potret atau Rekam Video Ambil Foto Mulai menulis… - Ukuran Plugin judul bilah sisi Tampilkan bagian %s blok. Blok ini memiliki konten yang tidak valid diff --git a/WordPress/src/main/res/values-it/strings.xml b/WordPress/src/main/res/values-it/strings.xml index e67b0c9ed205..fbcb353a13bb 100644 --- a/WordPress/src/main/res/values-it/strings.xml +++ b/WordPress/src/main/res/values-it/strings.xml @@ -1,11 +1,12 @@ + Oggi hai ricevuto <b>50 Mi piace</b> al tuo sito Menu del blocco a scorrimento aperto. Seleziona un blocco. Menu del blocco a scorrimento chiuso. Salta @@ -37,6 +38,7 @@ Language: it Lasciati ispirare Segui i tuoi siti preferiti e scopri nuove letture. Guarda il tuo pubblico crescere con analisi approfondite. + Visualizza i commenti e le notifiche in tempo reale. Con l\'editor potente puoi pubblicare anche durante i tuoi spostamenti. Benvenuto nel costruttore di siti web più popolare del mondo. Caricamento dei file multimediali non riuscito @@ -63,7 +65,6 @@ Language: it Scegli dalla Libreria multimediale di WordPress Indietro Inizia ora - Segui gli argomenti per scoprire nuovi blog Da Questo referrer non può essere contrassegnato come spam Annulla contrassegno come spam @@ -93,7 +94,6 @@ Language: it Impossibile mostrare questo commento Sfoglia gli elementi Segnala questo articolo - Angolo Benvenuto al Reader Scopri milioni di blog con il tocco delle dita. Si è verificato un errore del server interno L\'azione non è consentita @@ -142,7 +142,6 @@ Language: it Questa diapositiva non è ancora stata salvata. Se elimini questa diapositiva, eventuali modifiche andranno perse. Questa diapositiva sarà rimossa dalla tua storia. Eliminare la diapositiva della storia? - Elimina diapositiva Modifica colore del testo Modifica allineamento del testo errore @@ -152,8 +151,6 @@ Language: it Riprova Salvataggio completato Chiudi - Successivo - Fatto Condividi con CONDIVISIONE Salvato nelle foto @@ -164,7 +161,6 @@ Language: it Inverti Suono Testo - Altro Adesivi Flash Inverti fotocamera @@ -525,7 +521,6 @@ Language: it Ci sei quasi! Dobbiamo solamente verificare il tuo indirizzo e-mail connesso a Jetpack <b>%1$s</b> Accedi con le credenziali del sito. Accedi con le credenziali del sito %1$s - Invia email di verifica Pagina del sito Stai seguendo Mi piace @@ -551,7 +546,6 @@ Language: it Fai un video o scatta una foto Scatta una foto Inizia a scrivere… - Dimensione Plugin del titolo sulla barra laterale Mostra sezione Blocco %s. Questo blocco ha contenuti non validi diff --git a/WordPress/src/main/res/values-ja/strings.xml b/WordPress/src/main/res/values-ja/strings.xml index 162ff37f51a0..7ab89f065e0e 100644 --- a/WordPress/src/main/res/values-ja/strings.xml +++ b/WordPress/src/main/res/values-ja/strings.xml @@ -1,11 +1,69 @@ + 背景 + テキスト + 保存しない + 行った変更はすべて保存されません。 + 変更を破棄しますか ? + 終了 + 次へ + 削除 + デザインの選択中にエラーが発生しました。 + ネットワーク接続を確認して、もう一度お試しください。 + オンラインに戻ったら、「再試行」をタップします。 + レイアウトはオフラインでは利用できません + ストアのログイン情報で続ける + 連携済みのメールアドレスを検索 + トピックをフォロー + もっと多くのトピックをフォローして、検索を広げてみてください + 最近の投稿はありません + ようこそ ! + スキャン + <b>Johan Brandt</b> さんが投稿に返信しました + 今日サイトで<b>50回「いいね」</b>されました + <b>Madison Ruiz</b> さんが投稿に「いいね」しました + スクロール可能なブロックメニューが開きました。 ブロックを選択します。 + スクロール可能なブロックメニューが閉じられました。 + スキップ + 選択 + お気に入りのホームページのレイアウトを選択します。 後でカスタマイズまたは変更できます。 + デザインを選択 + オンラインに戻ったら「再試行」をタップするか、以下のボタンを使用して白紙のページを作成します。 + レイアウトはオフラインでは利用できません + 「再試行」をタップするか、以下のボタンを使用して白紙のページを作成します。 + レイアウトがエラーにより利用できません + カテゴリーを追加 + 新規カテゴリーを追加 + カテゴリー + 未設定 + カテゴリー + ロンドンの博物館 + 世界最高のファン + 私のお気に入りカフェトップ10 + 政治 + ミュージック + 園芸 + フットボール + クッキング + アート + 今週のロックンロール + ウェブニュース + Pamela Nguyen + 写真家の Cameron Karsten 氏の作品にはとても感銘を受けました。 この技術を今度試すつもりです + インスピレーションを受ける + お気に入りのサイトをフォローして新しい読み物を発見しましょう。 + 詳細な分析により、オーディエンスの成長を見守れます。 + コメントと通知をリアルタイムで表示します。 + 強力なエディターで、外出中も投稿できます。 + 世界で最も人気のサイト構築サービスへようこそ。 + メディア読み込み失敗 + フォローするサイト リリースごとにブロックを追加できるよう努めています。 「%s」は完全にはサポートされていません ヘルプボタン @@ -29,7 +87,6 @@ Language: ja_JP WordPress メディアライブラリから選択 戻る 今すぐ始める - トピックをフォローして新しいブログを見つける By このリファラーはスパムとしてマークできません スパムとしてのマークを解除 @@ -59,7 +116,6 @@ Language: ja_JP このコメントを表示できません 項目を閲覧 この投稿を報告 - 角度 Reader へようこそ。何百万ものブログの中から、お気に入りを発見しましょう。 内部サーバーエラーが発生しました 操作は許可されていません @@ -108,7 +164,6 @@ Language: ja_JP このスライドはまだ保存されていません。 このスライドを削除すると、編集内容がすべて失われます。 このスライドはストーリーから削除されます。 ストーリーのスライドを削除しますか ? - スライドを削除 テキストの色を変更 テキストの配置を変更 エラーが発生 @@ -118,8 +173,6 @@ Language: ja_JP 再試行 保存しました 閉じる - 次へ - 終了 以下と共有 共有 写真に保存しました @@ -130,7 +183,6 @@ Language: ja_JP 反転 音声 テキスト - その他 ステッカー フラッシュ カメラを反転 @@ -157,6 +209,7 @@ Language: ja_JP 画像または動画を選択 画像を選択 削除したブロック + 既存のサイトアドレスを入力 WordPress.com で続ける 登録の確認 Google を引き続き使用し、WordPress.com アカウントをまだお持ちでない場合は、アカウントを作成して WordPress.com の%1$s利用規約%2$sに同意します。 @@ -490,7 +543,6 @@ Language: ja_JP もう少しです !最後に、Jetpack に連携したメールアドレス <b>%1$s</b> を確認します サイトのログイン情報でログインします。 %1$s サイトのログイン情報でログインします。 - 確認メールを送信 サイトのページ フォロー中 いいね @@ -516,7 +568,6 @@ Language: ja_JP 写真または動画を撮る 写真を撮る 執筆を開始… - サイズ サイドバータイトルプラグイン セクションを表示 %sブロック。このブロックは無効なコンテンツです diff --git a/WordPress/src/main/res/values-kmr/strings.xml b/WordPress/src/main/res/values-kmr/strings.xml index a87c7448fb0f..0c5af159af9c 100644 --- a/WordPress/src/main/res/values-kmr/strings.xml +++ b/WordPress/src/main/res/values-kmr/strings.xml @@ -1,32 +1,96 @@ + Paşrû + Nivîs + Biavêje + Guhertinên hatine kirin ew ê neyên tomarkirin. + Guhertinan biavêje? + Qediya + Pêşve + Jê bibe + Di bijartina sêwirê de çewtiyek derket. + Ji kerema xwe, girêdana înterneta xwe kontrol bike û dîsa biceribîne. + Dema ku tu ji nû ve serhêl bû li dîsa biceribîneyê bitikîne. + Di derhêlbûnê(offline) de raxistin ne berdest in + Bi agahiyên xwe yên firoşgehê re dewam bike + Emaila xwe ya girêdayî bibîne + Mijaran bişopîne + Ji bo berfirehkirina lêgerînê hewl bide mijarên zêdetir, bişopîne + Şandiyên nû tune ye + Bi xêr hatî! + venerîn + <b>Johan Brandt</b> bersiv da şandiya te + Te îro li ser malpera xwe <b>50 likes</b> ecibandin sitend + <b>Madison Ruiz</b> şandiya te eciband + Menuya biloka şemîtonkî vebû. Bilokekê hilbijêre. + Menuya biloka şemîtonkî hate girtin. + Derbas bibe + Hilbijêre + Raxistina serrûpelê ya tu jê hez dikî, hilbijêre. Tu dikarî piştre wê li gorî xwe bitaybetîne an jî biguherîne. + Sêwirekê hilbijêre + Dema ku tu ji nû ve serhêl bû li dîsa biceribîneyê bitikîne an jî bi rêya bikaranîna bişkoka jêrîn rûpeleke vala biafirîne. + Di derhêlbûnê(offline) de raxistin ne berdest in + Li dîsa biceribîneyê bitikîne an jî bi rêya bikaranîna bişkoka jêrîn rûpeleke vala biafirîne. + Ji ber hebûna çewtiyekê raxistin nayên bikaranîn + Kategorî tevlî bike + Kategoriya nû tevlî bike + Kategorî + Nesazkirî + Kategorî + Muzeyên li Londonê + Piştevanên Herî Baş ên Cîhanê + Deh kafeyên min ên sereke + Siyaset + Muzîk + Baxçevanî + Futbol + Xwarin + Huner + Heftane Rock n\' Roll + Nûçeyên Webê + Pamela Nguyen + Karê wênekêş Cameron Karsten\'ê min zêde han dide. Ez ê van teknîkan piştre biceribînim + Îlhamê Bistîne + Malperên xwe yên favorî bişopîne û xwendinên nû keşf bike. + Bi analîzên berfireh binêrin gelo girseya we çawa mezin dibe. + Di dema rasteqîne de şîrove û danezanan bibîne. + Bi edîtora bihêz re tu dikarî di meşê de jî şandiyan biweşîne. + Tu bi xêr hatî avakera malperan a herî populer. + Medya nehat barkirin + Malperên şopandinê Ji bo em karibin bi her guhertoyê re blokên zêdetir tevlî bikin, em pir dixebitin. \'%s\' bi temamî nayê piştgirîkirin Bişkoka alîkariyê - Bi bikaranîna webê sererast bike + Bi bikaranîna edîtora webê sererast bike Wêneyan hilbijêre Şandiya Çîrokî Biafirîne + Ew li malpera te wekî şandiyeke nû ya blogî tê weşandin bi vî awayî girseya te ti tiştî ji dest xwe bernade. Şandiyên çîrokî wenda nabin + Wêne, vîdyo û nivîsan li hev bîne û ji wan, şandiyên çîrokî yên balkêş çêke ku mêvanên te bikarin bitikînin wan û ji wan gelekî hez bikin. Niha çîrok ji bo her kesî ne Sernavê çîrokê - mînak Şandiya çîrokî çawa tê afirandin + Ji bo Şandiyên Çîrokî gihîna te ya bilez heye û em dixwazin tu wê biceribînî. + Danasîna Şandiyên Çîrokî Rûpela vala hat afirandin Rûpel hat afirandin - Pêşdîtina rêkxistinê - %1$s red kir ku bigihe wêneyên te. Bo çarekirina vê, destûrên xwe biguherîne û %2$s û %3$s veke. + Pêşdîtina Raxistinê + Hewla %1$s\'ê ya ji bo bigihîje wêneyên te hat redkirin. Ji bo vêya çareser bikî, destûrên xwe sererast bike, %2$s û %3$s\'ê veke. Tevlîkirina medyayê bi ser neket. Tevlîkirina medyayê bi ser neket: %s Ji Medyageha WordPressê Hilbijêre Paşve Dest Pê Bike - Ji bo blogên nû keşf bikî, mijaran bişopîne + Ji bo blogên nû keşf bikî, mijaran bişopîne Ji hêla + Ev şander wekî spam nayê nîşankirin + Wekî Spam nîşan neke Wekî Spam nîşan bike Malperê Veke Hilxistina medyaya gif\'ê @@ -43,7 +107,7 @@ Language: ku_TR Lîstikî Bihêz Klasîk - Serabera + Casual Ji bo tomarkirina vîdyoyê divê tu destûra tomarkirina dengî bidî sepanê %s %s hat hilbijartin @@ -53,13 +117,12 @@ Language: ku_TR Ev şîrove nayê nîşandan Hêmanan bibîne Vê şandiyê rapor bike - Qozî Tu bi xêr hatî Xwînerê. Bi milyonan blog li benda keşfkirina te ne. Çewtiya servera navxweyî rû da Destûr ji bo çalakiya te nayê dayîn %1$s hêmanên zêdetir - Planekê hilbijêre - Nîşe: Di navbera pergala sitûnî, rûkar û ebatên ekranan de dibê ku cudabûn xwuya bikin + Raxistinekê hilbijêre + Not: Dibe ku raxistina stûnî di navbera tema û mezinahiyên ekranê de cuda bê xuyan Şandî an jî çîrokekê biafirîne Rûpelekê biafirîne Şandiyekê biafirîne @@ -71,7 +134,7 @@ Language: ku_TR Blokê li dawiya wê bizeliqîne Sernavê rûpelê. %s Sernavê rûpelê. Vala - Di jenandina vîdeoya te de çewtiyek rû da + Di lêxistina vîdyoya te de çewtiyek derket Ev cîhaz piştgiriya Camera2 API\'ê nake. Vîdyo nehat tomarkirin Çewtiya tomarkirina wêneyê @@ -102,7 +165,6 @@ Language: ku_TR Ev pêşek hîn nehatiye tomarkirin. Heke tu vê pêşekê jê bibî tu yê hemû guhertinan ji dest bidî. Ev pêşek ew ê ji çîroka te were rakirin. Pêşeka çîrokî jê bibe? - Pêşekê jê bibe Rengê nivîsê biguherîne Spartina nivîsê biguherîne çewtî derket @@ -112,8 +174,6 @@ Language: ku_TR Dîsa biceribîne Hat tomarkirin Bigire - Pêşve - Qediya Parve bike bi: PARVE BIKE Li wêneyan tomar bû @@ -124,7 +184,6 @@ Language: ku_TR Berovajî bike Deng Nivîs - Zêdetir Stickers Flaş Kamerayê bizîvirîne @@ -132,25 +191,26 @@ Language: ku_TR Pêşdîtin Rûpelekê biafirîne Rûpeleke vala biafirîne - Ji nav rûpelsaziyên berê hilbijêrin û destpê bikin. An ji pelekî vala dest pê bikin. - Rêkxistinekê Hilbijêre + Ji nav raxistinên pirrengî yên berê çêkirî hilbijêre û dest pê bike. An jî bi rûpeleke vala re dest pê bike. + Raxistinekê hilbijêre Sernavekî bide çîroka xwe Şandî an jî çîrokekê biafirîne Şandî, rûpel an jî çîrokekê biafirîne Li %1$s Biafirîne\'yê bitikîne. %2$s Piştre<b>Şandiya Blogê</b> hilbijêre Ji cîhazê hilbijêre Şandiya çîrokî - guhertina gotûbêja îkona malpera min pêdivî bi peyamek jetpack heye. + Ji bo tu di malperên WordPressê yên xwehewan de îkona malperê biguherînî pêveka Jetpackê hewce ye. Pengizîna rûpela girêdayî nayê dîtin Dosye nayê barkirin.\nBi ser kotaya Bîrgehê ket. Bi ser kotaya Bîrgehê ket Dosye tevlî bike - Vîdeoyê Dîscihke - Vîdyo an wêneyê dîscihke + Vîdyoyê biguherîne + Vîdyo an jî wêneyê biguherîne Vîdyo Hilbijêre Vîdyo an jî wêne hilbijêre Wêne Hilbijêre Blok hat rakirin + Navnîşana malpera xwe ya heyî bikevê Bi WordPress.com\'ê re dewam bike Pejirandina tomarbûnê Heke tu bi Googleê re dewam bikî û hesabê te yê WordPress\'ê tune be, dema tu ajimêrekê biafirînî tu pê re %1$sMercên Xizmetê%2$s yên me qebûl dikî. @@ -194,7 +254,7 @@ Language: ku_TR Guhertinên netomarkirî Girêdanê di gerokê de veke Diçe beşa taybetkirina gradyanê - Diçe bijêra rengê taybet + Diçe bijêra rengên taybet Cûreya Gradyanê Ji bo vebijarkekê hilbijêrî, ducar bitikîne Gradyanê taybet bike @@ -230,16 +290,16 @@ Language: ku_TR Demsazkirî Demweşan Hişyariya nihêniyê ya CCPA\'yê bixwîne - Qanûna Nihênîtiya Xerîdaran ya Californiayê (\"CCPA\") me mecbûr dike em şêniyên Californiayê agahdar bikin; derbarê wan kategoriyên agahiyên kesane de yên ku em kom dikin û parve dikin, herwiha ka em wan agahiyên kesane ji kû distînin û em wan çawa û çima bi kar tînin. + Qanûna Ewlehiya Mezêxeran a Kalîforniyayê (\"CCPA\") li me ferz dike ji bo em zêdetir agahiyan bidin şêniyên Kalîforniyayê; derbarê kategoriyên agahiyên şexsî de yên ku em kom dikin û parve dikin, em wan agahiyên şexsî ji ku bi dest dixin û em wan çawa û çima bi kar tînin. Hişyariya nihêniyê ji bo bikarhênerên Kalîforniyayê Rewş & Xuyanî Aniha Hildemîne %1$s · %2$s - Rûpelsaziya destpêkê biceribînin + Raxistina destpêkê biceribîne Menuya çalakiyên blokê veke - Behskirinê tevlîke - Ji bo Pelê Jêrîn yê bi vebijêrkên berdest vebe, du caran bitepîne - Ji bo Pelê Çalakiyan yê bi vebijêrkên berdest vebe, du caran bitepîne + Behskirinê tevlî bike + Ji bo ku Rûpela Jêrîn bi vebijarkên berdest re vebe, ducar bitikîne + Ji bo Rûpela Çalakiyan bi vebijarkên berdest re vebe, ducar bitikîne Em aniha nikarin rûpelan vekin. Ji kerema xwe piştre dîsa biceribîne Bike Rûpela Şandiyan Wekî Serrûpel saz bike @@ -255,7 +315,7 @@ Language: ku_TR Sazkariyên serrûpelê nayên tomarkirin Bipejirîne Barkirina rûpelan bi ser neket - An serrûpeleke şandiyên te yên herî dawî nîşan dide (bloga klasîk) an jî rûpeleke sabit/statîk hilbijêre. + Ji bo şandiyên te yên herî dawî lê bên nîşandan, serrûpelekê (bloga klasîk) an jî rûpeleke sabît/statîk hilbijêre. Sazkariyên Serrûpelê Serrûpel Rûpela şandiyan nehat hildemandin @@ -272,7 +332,7 @@ Language: ku_TR Di WordPress\'ê De Çi Nû Ne %d\'ê tevlî bike biqusîne - Pelge nehat barkirin, jkx dîsa biceribîne. + Dosye nehat barkirin, ji kerema xwe dîsa biceribîne. Pêşdîtina Wêneyê Biçûk Vê medyayê bi kar bîne Vê vîdyoyê bi kar bîne @@ -320,7 +380,7 @@ Language: ku_TR Gihînî naveroka malpereke taybet nebû. Dibe ku hinek medya neyên bikaranîn Gihînî naveroka malpereke taybet dibe Wêne nehat qirpandin û tomarkirin, jkx dîsa biceribîne. - Barkirina wêneyê pêk nehat.\nJi bo dîsa biceribîne, bitepîne. + Barkirina wêneyê pêk nehat.\nJi bo dîsa biceribînî, bitepîne. Wêneyê pêş bibîne Formata rûpela nenas Me nekarî vê çalakiyê temam bikin û vê rûpelê bişinînin ji bo vekolînê. @@ -349,7 +409,7 @@ Language: ku_TR Rûpel li cîhazê hat tomarkirin Rûpel bi serhêlî hat tomarkirin Ji bo kurterêya QuickPress\'ê, blogê hilbijêre - Sazandian Teserrufa Beteryayê + Ji hêla tasarûfa bateryayê tê sazkirin Tarî Ronî Xuyang @@ -360,9 +420,9 @@ Language: ku_TR Peyama Hişyariyê Tu dixwazî bi me re bixebitî? Walt Disney - Dê serdêr bixwazin pê bizanin yê li wî aliyê rûpelê kî ye. Ji bo li ser xwe, malpera xwe, karê xwe an jî her çi tiştê dixwazî binivîsînî vê qadê bi kar bîne. Ji bo ji ber gotinên xelkê yên li ser heman tiştan dipeyivin bigirî, helwestên li jêrê bi kar bîne. + Mêvan ew ê bixwazin bizanibin ka kî li aliyê din ê rûpelê ye. Ji bo derbarê xwe, malpera xwe, karê xwe an jî her çi tiştê dixwazî binivîsînî vê qadê bi kar bîne. Bi rêya bikaranîna qada referansan, li ser heman mijarê cî bide kesên din bila bi gotinên xwe nêrînên xwe diyar bikin. DYA - Ev naverokên nimûneyî ne, ji bo taybetiyên wî nîşan bidin li Kirasî hatine tevlîkirin. Wan jê bibe an jî li şûna wan peyv û medyayên xwe dayîne. + Ev naveroka nimûne ye ji bo taybetiyên wê nîşan bide li şablonê hatiye zêdekirin. Wê rake an jî li şûna wê gotin û medyayên xwe bi cî bike. Ji bo mirov dest pê bike, divê dev ji axiftinê berde û dest bi kar bike. Tîm Peyama Serkevtinê @@ -374,8 +434,8 @@ Language: ku_TR Navê Projeyê Pozisyon an jî Nasnav Portfolyo - Tenê jêgirê nîşan bide - Portfolyoya min çendîn projeyên min di seranserê kariyera xwe de ava kirine nîşan dide. Li jêrê agahiyên min yên têkiliyê bibîne û bi min re têkilî dayîne. + Tenê jêgirtinê nîşan bide + Portfoliyoya min projeyên cihêreng ên ku di seranserê kariyera min de hatine afirandin, nîşan dide. Tu dikarî li jêrê agahiyên min bibînî û bi min re têkevî têkiliyê. Girêdana: Ka em biaxivin 👋 Dudilî nebe, tu dikarî ji agahiyên têkiliyê yên li jêr xwe bigihînî me an jî bi bikaranîna formê, peyamekê ji me re bişînî. Ka were em bi hev re tiştekî ava bikin! @@ -417,7 +477,7 @@ Language: ku_TR Karta nû tevlî bike Karta amarên nû tevlî bike Ji bo şandiyên ji mijarên spesifîk bibînî bişkoka fîtreyê bi kar bîne - Malper an Etîketê Hilbijêrin, Paceya Hilpekok + Malper an jî Etîketê Hilbijêre, Pencereya Pop Up Hilbijartî Ji bo şandiyan fîltre bikî Malperekê an Etîketekê bibijêre Fîltreya heyî rake @@ -439,7 +499,7 @@ Language: ku_TR Fîltre bike Sernivîsa vîdyoyê. %s Vîdyoyê sererast bike - Ji bo rêkxistinekê bibijêrî du caran bitepîne + Ji bo raxistinekê hilbijêrî, ducar bitikîne Kurtekodekê tevlî bike… Nivîskarê şandiyê Şandiyekê biafirîne @@ -480,11 +540,10 @@ Language: ku_TR Me nekarî xwe bigihînin malpera te. Ji bo çareserkirina vê pirsgirêkê hewce ye tu xwe bigihînî hewangeha(host) xwe. Ji ber pirsgirêkeke eleqedarî <b>Sertîfîkaya SSL</b>ê me nekarî xwe bigihînin malpera te. Ji bo çareserkirina vê pirsgirêkê hewce ye tu xwe bigihînî hewangeha(host) xwe. Me nekarî xwe bigihînin malpera te ji ber ku hewceyî bi <b>Rastandina HTTP</b>ê heye. Ji bo vê çareser bikî divê tu bi hewangerê xwe re têkilî dayînî. - Me nekarî xwe bigihînin </b>dosyeya XMLPRC<b>ê ya li ser malpera te. Divê tu bi hewangerê xwe re têkilî dayînî ji bo vê çareser bikî. + Me nekarî xwe bigihînin <b>dosyeya XMLRPC</b>\'ê ya li ser malpera te. Divê tu bi hewangerê xwe re têkilî dayînî ji bo vê çareser bikî. Hindikek ma! Tenê divê em navnîşana emaila te ya bi Jetpack\'ê ve girêdayî piştrast bikin <b>%1$s</b> Bi agahiyên xwe yên malperê têkeve. Bi agahiyên xwe yên malpera %1$sê têkeve - Emaila pejirandinê bişîne Rûpela malperê Şopandî Ecibandî @@ -501,7 +560,7 @@ Language: ku_TR Em aniha nikarin şandiyan vekin. Ji kerema xwe piştre dîsa biceribîne Em aniha nikarin daneyan ji bo malpera te bar bikin. Piştre dîsa biceribîne Medyageha WordPress\'ê - Komê Jihev Veqetîne + Komê belav bike Wergerîne Sernav: Ji bo klavyeyê veşêrî, bitikîne @@ -510,7 +569,6 @@ Language: ku_TR Vîdyo an jî Wêne Bikişîne Wêneyekî Bikişîne Dest bi nivîsandinê bike… - Mezinahî Pêveka sernavê kêlekbendê Beşê nîşan bide Bloka %s. Di vê blokê de naveroka nederbasdar heye @@ -554,7 +612,7 @@ Language: ku_TR Nirxê heyî %s ye Naverok… Ji cîhazê hilbijêre - Kêlekbenda Şerhan + Kêlekbenda Têbîniyan Çewtiyeke nenas qewimî. Jkx dîsa hewl bide. Nivîsa alternatîv VÎDYO TEVLÎ BIKE @@ -562,17 +620,17 @@ Language: ku_TR WÊNE AN VÎDYO TEVLÎ BIKE WÊNE TEVLÎ BIKE BLOKÊ TEVLÎ VIR BIKE - Tebîniyeke zêde devlîke + Tebîniyekê tevlî bike Raveyekê tevlî bike - Ji bo şandiyekê li lîsteya xwe qeyd bikî bitikîne bişkoka Tevlî Şandiyên Qeydkirî Bike. + Ji bo tu şandiyekê li lîsteya xwe qeyd bikî, ji bo tomarkirina şandiyan li \"Tevlî bike\"yê bitikîne. \"%1$d hêman li lîsteyê hatin barkirin.\" Danezan Girtî Vekirî Heke tu ji bo vê malperê danezanan bigirî, ew ê danezanên li ser \"hilpeka danezanan\" tên xuyan neçalak bike. Piştî ku te ji bo vê malperê danezan çalak kirin, tu dikarî cûreya danezanan saz bikî. Ji bo danezanên vê malperê di hilpeka danezanan de bibînî, danezanên vê malperê veke. - Ji hilpeka danezanan ji bo vê malperê nîşandana danezanan çalak bike - Ji hilpeka danezanan ji bo vê malperê nîşandana danezanan neçalak bike + Ji bo vê malperê di hilpeka danezanan de nîşandana danezanan çalak bike + Ji bo vê malperê di hilpeka danezanan de nîşandana danezanan neçalak bike Danezanên ji bo vê malperê Danezanên ji bo vê malperê Tu aniha ji bo rûpelên nû edîtora blokê bi kar tînî, bijî! Heke tu bixwazî vegere edîtora klasîk, here \'Malpera Min\' > \'Sazkariyên Malperê\'. @@ -597,7 +655,7 @@ Language: ku_TR Rûpeleke vala nayê pêşdîtin Şandiyeke vala nayê pêşdîtin Pêşdîtin nayê bikaranîn - Çewtî: di tomarkirina şandiyê ya berî pêşdîtinê de + Dema ku şandî berî pêşdîtinê dihat tomarkirin çewtî derket Pêşdîtin tê çêkirin… Tomar dibe… Te li ser vê şandiyê guhertinên netomarkirî çêkir @@ -626,7 +684,7 @@ Language: ku_TR Sazkariyên performansa Jetpack\'ê bibîne û biguherîne Performans û Lez Zêdetir - Li şûna lêgerîna WordPress\'ê ya cihgirtî tecrûbeyeke lêgerînê ya pêşketîtir saz bike + Li şûna lêgerîna WordPressê ya heyî, lêgerîneke pêşketîtir saz bike Lêgerîna Pêşketî Lêgerîna Jetpack\'ê Hewandina Vîdyoyên Bê-reklam @@ -637,12 +695,12 @@ Language: ku_TR Girtî Vekirî Lezkera Malperê - Tenê bi barkirina wêneyên li ser ekranê dixuyin re leza malperê xwe zêde bike. + Tenê wêneyên li ser ekranê dixuyin bar bike û leza malperê xwe zêde bike. Performans Daxistin Dosye - Daxistinên pelgeyan - Rêjejimarên daxistina pelgeyan berî 28ê Pûşpera 2019an nehatiye tomarkirin. + Daxistina dosyeyan + Amarên daxistina dosyeyan beriya 28ê Hezîrana 2019an nehatine tomarkirin. Navçedema malperê (UTC - %s) Navçedema malperê (UTC + %s) Navçedema malperê (UTC) @@ -653,7 +711,7 @@ Language: ku_TR Parve bike Paşve here Pêşve here - Ji bo li ser \"%s\" ê biweşînî di sepana te %s ya WordPressê de\n\"%s\" hat demsazkirin + \"%s\" hat demsazkirin ji bo ku li ser \"%s\"ê di sepana te ya WordPressê de were weşandin \n %s Şandiya Demsazkirî ya WordPressê: \"%s\" \"%s\" dê di 10 xulekan de were weşandin \"%s\" dê di demjimêrekê de were weşandin @@ -669,10 +727,10 @@ Language: ku_TR Tevlî salnameyê bike Danezan Dem û Dîrok - Alîkarî hewce ye ji bo dîtina e-peyama ku tu pê dihate girêdan? - Malpera di vê adrêsê de ne malpereke WordPressê ye. Ji bo ku em karibin pê re têkiliyê deynin divê ser malperê WordPress sazkirî be. - Xêra xwe temamiya adrêsa malperê têkeve, mîna \"example.com\". - Bi WordPressê têkeve, ji bo girêdana %1$s + Ji bo ku tu emaila pê ve têketinê dikî bibînî, alîkarî lazim e? + Malpera li ser vê navnîşanê ne malpereke WordPressê ye. Ji bo ku em lê bên girêdan divê li malperê WordPress sazkirî be. + Ji kerema xwe temama navnîşana malperê têkeve, mîna \"example.com\". + J bo girêdana bi %1$s\'ê re têkeve hesabê xwe yê WordPress.com\'ê Dîtin Şandî %1$s: %2$s, %3$s: %4$s @@ -681,7 +739,7 @@ Language: ku_TR Veşêre Fireh bike Grafîk hat hildemandin. - %1$s %2$s bo dewra %3$s, ji dewra berê hate guhertin - %4$s + %1$s %2$s ji bo heyama: %3$s\'ê, guhertina ji heyama berî niha - %4$s Daneyên karta bijartî tê barkirin Edîtor Fireh bike @@ -697,16 +755,16 @@ Language: ku_TR Medya tê hilxistin.\nJi kerema xwe ji bo vebijêrkan, bitepîne. Girêdanê di pencereyeke/hilpekeke nû de veke Ji bo amarên xwe bibînî, têkeve hesabê WordPress.com\'ê. - Li gor lêgerîna te ti şandî nehatin dîtin + Li gorî lêgerîna te ti şandî nehatin dîtin Li şandiyan bigere Mirov di înternetê de ew ê te li vir bibînin. Navê navpereke(domain) premiûm hilbijêre - Di hemû planên WordPress.com\'ê de navperên(domain) taybet hene. Aniha navpera xwe ya premiûm bêpere tomar bike. + Di hemû pakêtên WordPress.com\'ê de navperên(domain) taybet hene. Aniha navpera xwe ya premiûm bi belaşî tomar bike. Bi nêrînekê Îro Hemû-dem Dîtinên vê hefteyê - Ji bo tevlîkirina alavokekê, ji kerema xwe têkeve sepana WordPressê. + Ji bo widgetekê tevlî bikî, ji kerema xwe têkeve sepana WordPressê. Înternet tune ye Dane nehatin barkirin Cûre @@ -719,24 +777,24 @@ Language: ku_TR Malper Hemû-dem Dîtinên vê hefteyê - Alavok tevlî bike - Nûyandina hûrgiliyên pêvekan ji her tim bêhtir dewam dike. Ji kerema xwe paşê dîsa kontrol bike. - Eger te navperek nû tomar kiribe, ji kerema xwe li bende be heta em sazkirina wê biqedînin û paşê dîsa biceribîne.\n\nEger na, wisa dixuyê ku şaşiyek pêk hatiye û dibe ku taybetiya pêvekê ji bo vê malperê ne guncan be. + Widget tevlî bike + Nûkirina hûrguliyên pêvekê ji dema normal zêdetir didome. Ji kerema xwe paşê dîsa kontrol bike. + Heke te navê domainekê tomar kiribe, ji kerema xwe heya em sazkirina wê temam bikin li bendê bimîne û paşê dîsa biceribîne.\n\nHeke na, dibe ku hinek çewtî derketibin û belkî taybetmendiya pêvekê ji bo vê malperê neyê bikaranîn. Herêm (Tune ye) - Bi tomarkirina vê navperê tu %1$sşert û merc%2$s ên me dipejirînî. - Li girêdana xwe ya torê venêre û dîsa biceribîne. + Bi tomarkirina vê domainê re tu %1$sşert û merc%2$sên me dipejirînî + Înterneta xwe kontrol bike û dîsa biceribîne. Ev rûpel niha nayê barkirin. - Sazkarî nehatin wergirtin: Hin API ji bo vê tevîhevkirina IDya sepana OAuthê û ajimêrê ne guncan in. + Sazkarî nehatin sitendin: Hinek API ji bo vê ID\'ya sepana OAuth\'ê û kombînasyona hesêb nayên bikaranîn. Bi sazkirina Jetpackê tu %1$smerc û rêbazên%2$s me dipejirînî. Înternet tune ye. Sererastkirin hat neçalakkirin. - Ji bo sepanê dîsa girê bidî malpera xwe yî xwe-hewandî, pêborîna nû ya malperê binivîse vir. + Ji bo ku tu vê sepanê ji nû ve bi malpera xwe ya xwe-hewan ve girêdî, pêborîna nû ya malperê li vir binivîse. Pêborîn hat hildemandin Pêborînê hildemîne Navê navperê(domain) tê tomarkirin… Herêmê Hilbijêre Welat Hilbijêre bidomîne - navê navpera we <b>%s</b> tê sazkirin.\nMalpera we ji coşê dide çirifîtka! + navê domaina te <b>%s</b> tê sazkirin. Malpera te ji kêfan\n çirifîtkan diavêje! Bijî! Domain\'ê Tomar Bike Koda Posteyê @@ -748,11 +806,11 @@ Language: ku_TR Koda Welêt Telefon Organîzasyon (li gor daxwazê) - Ji bo rehetiya te, me agahiyên te yên pêwendiya WordPress.comê\n ji berê de tije kir. Ji kerema xwe bala xwe bidê, bê ka ji dil agahiyên tu dixwazî ji bo vê navperê bi kar bînî ew in an na. + Ji bo rehetiya te, me agahiyên te yên têkiliyê yên WordPress.com\'ê\n ji berê vê dagirt. Ji kerema xwe, kontrol bike bê ka agahiyên rast ên tu dixwazî ji bo vê domainê hatiye bikaranin. Agahiyên têkiliyê yên navperê(domain) - Bi eşkereyî tomar bike - Bi Parastina Nepenîtiyê, veşartî tomar bike - Divê xwediyên navperan di agahîdankek giştî ya hemû navperan de agahiyên xwe yî pêwendiyê parve bikin. Bi Parastina Nepenîtiyê, em agahiyên xwe di şûna yên te de parve dikin û hemû danûstandinan radigihînin te. + Wekî anonîm tomar bike + Bi Parastina Nepeniyê re, bi taybetî tomar bike + Divê xwediyên domainê agahiyên xwe yên têkiliyê di danegeheke ku hemû domainên anonîm dihewîne de parve bikin.\n Bi saya taybetiya Privacy Protectionê, em li şûna agahiyên te agahiyên xwe diweşînin û em bi awayekî veşartî her danûstendinê ji te re dişînin. Parastina Nihêniyê Ji kerema xwe %s a derbasdar bikevê Domain\'ê Hilbijêre @@ -781,11 +839,11 @@ Language: ku_TR Veguhezîne jêrê Veguhezîne jorê Sazkariyên hêmana amaran - Şandî vedigere reşnivîsê + Şandî vedigere nav reşnivîsan Şandî tê vegerandin Şandî hat vegerandin Şandî tê jêbirin - Jêbirina vê şandiyê dê guhertinên netomarkirî jî rake. Bi rastî jî tu dixwazî dewam bikî? + Jêbirina vê şandiyê ew ê guhertinên netomarkirî jî rake. Tu bi rastî jî dixwazî dewam bikî? Guhertinên cîgehî Veguhezîne Reşnivîsê Derbasî xuyanga lîsteyî bibe @@ -796,28 +854,28 @@ Language: ku_TR Te hîn ti şandî neweşandiye Ji kerema xwe bi navê bikarhêner û pêborînê têkeve. Ji kerema xwe li şûna navnîşana emaila xwe bi navê bikarîner ê WordPress.com\'ê têkeve. - Navîna peyvan/şandiyê + Peyv/şandî (kêm-zêde) Tevahiya peyvan - Navîna ecibandinan/şandiyê + Ecibandin/şandî (kêm-zêde) Tevahiya ecibandinan - Navîna şîroveyan/şandiyê + Şîrove/şandî (kêm-zêde) Tevahiya şîroveyan Şandî Sal Îsal Malpera li ser vê navnîşanê ne malpereke WordPressê ye. Ji bo em lê bên girêdan divê malper WordPressê bi kar bîne. - Çavdêriya krediyên navper a berdest bi serneket. + Krêdiya domainên berdest nehat kontrolkirin Krediyên navperê têne çavdêrîkirin Domain\'ê tomar bike - Bo sazkirina pêvekan divê tu bibe xwediyê navpereke taybet ya ku têkîldarî malpera te yî. + Ji bo sazkirina pêvekan divê tu bibe xwediyê domaineke taybet a ku têkîldarî malpera te ye. Pêvekê saz bike Tu yê piştre karibî xuyanga malpera xwe kesane bikî Demweşan: %s - Demsaz bike bo: %s + Demsaz bike ji bo: %s Demweşan: %s - Hat demsazkirin bo: %s + Demsazkirî ji bo: %s Hefteyên Dawî - Pêşandinên Navîn yê Rojane + Dîtinên rojane kêm-zêde Dîtin Heyam Meh û Sal @@ -825,14 +883,14 @@ Language: ku_TR Îro Demjimêra Herî Baş Roja Herî Baş - Rêjêjimarên têne pêşandayîn: + Amarên tên nîşandan: Na spas Piştre Aniha deng bidê Çavê me li rêya betilî! Heke kêfa te ji sepanê re hatibe, ji dengdayîna te ya li Google Play Storeê em ê kêfxweş bibin. Kêfa te ji WordPressê re hat? Şandî veguherî rewşa reşnivîsê - Çalakiya Şandinê + Çalakiya Nivîsînê Malper hîn nehatiye barkirin Şandiyên zêdetir Şandiyên kêmtir @@ -859,27 +917,27 @@ Language: ku_TR Kêfa xwe bi berhema qediyayî bîne! Îkona malperekê hilxîne Mêvanên te ew ê îkona te di gerokên xwe de bibînin. Ji bo xuyangeke profesyonel û balkêş îkoneke taybet tevlî bike. - Ji bo plana derbasdar û ên din ên berdest bibînî pê li %1$s Plan %2$s ê bike - Ji bo rûpeleke nû biafirînî pêlî %1$s Rûpel Tevlî Bike %2$s yê bike. - Ji bo domandinê %1$s Rûpel %2$sê bitepîne. - Ji bo performansa malpera xwe bibîne pêlî %1$s Rêjejimar %2$sê bike. - Ji bo yeka din bar bike, pêlî %1$s Nîşaneka Te ya Malperê %2$s bike - Yekem şandiya xwe bike reşnivîs û biweşîne. - Em ê ji bo binyadên avakirin û mezinkirina malpera te ji te re rêberiyê bikin. - Me hinek guhertin di lîsteya te ya çavdêriyê de kir. - Ji bo alikariya mezinkirina girseya te, me zêdetir peywir tevlî kir. - Planan venasîne - Di planên mûçekarî de agahî derbarê alavên bazargerî û SEOyê bi dest bixe. + Ji bo tu pakêta xwe ya heyî û pakêtên din ên berdest bibînî li %1$sPakêt%2$s\'ê bitepîne + Ji bo rûpeleke nû biafirînî li %1$sRûpel Tevlî Bike%2$s\'yê bitepîne. + Ji bo domandinê li %1$sRûpel%2$s\'ê bitepîne. + Ji bo tu performansa malpera xwe bibînî li %1$sAmar%2$s\'an bitepîne. + Ji bo yeka din lê hilxînî, li %1$sÎkona Malpera Te%2$s\'yê bitepîne + Şandiya xwe ya ewil bike reşnivîs û biweşîne. + Em ê ji bo bingehên avakirin û mezinkirina malpera te ji te re rêberiyê bikin. + Me hinek guhertin di lîsteya te ya kontrolê de kir + Ji bo ku tu girseya temaşevanên xwe mezin bikî, me gelek peywir tevlî kirin. + Pakêtan keşf bike + Di derbarê alavên SEO\'yê û bazarkirinê yên pakêtên bipere de, agahî bi dest bixe. Parvekirina şandiyê biçalakîne - Ji bo ajimêrên xwe yên medyayên civakî, şandiyên nû bi otomatîkî parve bike. + Şandiyên nû di hesabên xwe yên medyaya civakî de bixweber parve bike. Fontên nivîsan eyar bike, wêneyan tevlî bike û zêdetir. Rûpeleke nû biafirîne Ji bo naverokên girîng rûpelekê tevlî bike. Çêkirina rûpela \"Derbar\"ê ew ê destpêkeke mezin be. Amarên malpera xwe kontrol bike - Di derbarê performansa malpera xwe de agahiyên rojane bi dest bixe. + Agahiyên li ser performansa malpera xwe hildemîne. Li rûkaran bigere - Bi dehan vebijêrkên pergalê vebibîne û ahengiya bêkêmasî bibîne. - Rakirina Gavên Pêş dê hemû gerên vê malperê veşêre. Ev çalakî nayê vegerandin. + Bi dehan vebijarkên raxistinan keşf bike û ya li gorî xwe bibîne. + Rakirina Gavên Pêşve ew ê hemû gerên vê malperê veşêre. Ev çalakî nayê vegerandin. Gavên Pêş Rake Vêya rake Te lîsteya xwe temam kir. Her bijî te karekî baş kir. @@ -887,7 +945,7 @@ Language: ku_TR Peywirê derbas bike teng bike fireh bike - Bîranînok + Bîranîner Heyama pêş hilbijêre Heyama paşî hilbijêre %1$d%% ji dîtinan @@ -903,21 +961,21 @@ Language: ku_TR Malperê Biafirîne Malperê Biafirîne Li Domainan Bigere - Vê derê ew cih e ku dê mirov te li înternetê têde bibînîn. - Ji bo malpera xwe navekî navperê hilbijêre - Tu navnîşana derbasdar û lêgerîna te li hev nayên - Şaşiyeke di ragihandina rajekarê de pêk hat, ji kerema xwe dîsa biceribîne + Mirov di înternetê de ew ê te li vir bibînin. + Ji bo malpera xwe navekî domainê hilbijêre + Li gorî lêgerîna te ti navnîşan nehat dîtin + Di têkîliya bi serverê re çewtî derket, ji kerema xwe dîsa biceribîne Pirsgirêkek hebû Pirsgirêkek hebû - Ev ê ji bo pêşniyardayînê alîkariya me bike. Lê, tê qet sînordar nebe — wiha dê hemû malper pêşkevin! - Tu dixwazî malpereke çawa çê bike ji mere bibêje + Ev ji bo pêşniyardayînê ji me re dibe alîkar. Lê tu qet sînordar nabe — wiha dê hemû malper pêşkevin! + Ji me re bibêje tu dixwazî malpereke çawa çêkî Malpera te hat afirandin! %1$d / %2$d Malperê Biafirîne Pêşniyar hatin hildemandin Malpera xwe-hewandî ya nû hatiye tevlîkirin, nehat hilbijartin. Nakokiya guhertoyê - Ji bo alîkariya pêşxistinê ya performansa sepanê, desture bide raporê hilweşînên otomatîk. + Ji bo em karibin performansa sepanê baştir bikin destûre bide raporên hilweşînên otomatîk. Raporên hilweşînê Vegerîne Guhertoya webê hat avêtin @@ -926,13 +984,13 @@ Language: ku_TR Web\'ê Biavêje Cîgehiyê Biavêje Cîgehî\nDi %s\'an de hat tomarkirin\n\nWeb\nDi %s\'an de hat tomarkirin\n - Du guhertoyên nakok yê vê şandiyê hene. Guhertoya tu dixwazî ya avêtinê hilbijêre.\n\n\n + Du guhertoyên bi nakok ên vê şandiyê hene. Guhertoya ku tu dixwazî jê biavêjî, hilbijêre.\n\n Nakokiya senkronîzeyê çareser bike - Ji bo vê heyamê dane tune - Ji medyayê cih rake - Rêjejimar vêga nayên vekirin. Paştre dîsa biceribîne. + Ji bo vê heyamê dane tune ye + Ji medyayê cîgehê rake + Em niha nikarin amaran vekin. Ji kerema xwe paşê dîsa biceribîne Ji ber çewtiya torê hinek medya nehatin barkirin. - Lêgerîna te û ti medya li hev nehat + Li gorî lêgerîna te ti medya nehat dîtin Ji bo tu GIF\'an tevlî Medyageha xwe bikî, lê bigere! Dîtin Nivîskar @@ -962,9 +1020,9 @@ Language: ku_TR Zêdetir bibîne Şandiyê parve bike Şandiya biafirîne - Ji weşana %2$s vir ve %1$s. Heta nuha şandeya te çawa performans kiriye, li vir e: + Ji weşandina %2$s\'ê û vir ve %1$s bûye. Heta niha performansa şandiya te wiha ye: Ji weşana %2$s vir ve %1$s. Topa xwe bigindire û bi riya parvekirinê dîtinên şandeya xwe zêde bike: - Te hîn ti şandî neweşandiye. Dema te dest bi weşanê kir dê kurteya şandiya te ya dawî li vir xuya bike: + Te hîn ti şandî neweşandiye. Dema te dest bi weşandinê kir ew ê kurteya şandiya te ya dawî li vir xuya bike: Etîket û Kategorî Hemû-dem %1$s - %2$s @@ -980,9 +1038,9 @@ Language: ku_TR Nivîskar Şandî û Rûpel Nivîskar - Ji vir ve + Jê û vir ve: Şopîner - Tevahî %1$s Şopîner: %2$s + Tevahî %1$s şopîner: %2$s Email WordPress.com Kûrbînan bi rê ve bibe @@ -1001,12 +1059,12 @@ Language: ku_TR Paşve Pêşve %1$s hat bikaranîn - Ji kerema xwe têkeve WordPress.com-ekê an jî malpereke WordPressê ya xwe-hewandî û girêdayî Jetpackê. + Ji kerema xwe têkeve WordPress.com\'ê an jî malpereke WordPressê ya xwe-hewan û girêdayî Jetpackê Revizyon tê barkirin Revizyon hat barkirin Bar bike - Şandî li ser %1$s di %2$s de hat afirandin - Rûpel li ser %1$s di %2$s de hat afirandin + Şandî di %1$s , %2$s\'an de hat afirandin + Rûpel di %1$s , %2$s\'an de hat afirandin Hîn raborî tune ye Dema ku te guhertin li ser şandiya xwe kir, tu yê karibî raboriyê li vir bibînî Dema ku te guhertinek li ser rûpela xwe kir, tu yê karibî raboriyê li vir bibînî @@ -1017,88 +1075,88 @@ Language: ku_TR Wêneyê biçûk Raborî Rûpela hilbijartî ne berdest e - Vekolîna Hilawîstî - Rûpelên we yên jêbirî tune - Ti rûpelên te yên demsazkirî nîn e - Ti rûpelên te yên reşnivîs nîn e - Te hîn ti rûpel neweşandiye. + Li benda nirxandinê + Ti rûpelên te yên hatine jêbirin tune ye + Ti rûpelên te yên demsazkirî tune ye + Ti rûpelên te yên reşnivîs tune ye + Te hîn ti rûpel neweşandiye Li rûpelan bigere - Lêgerînên te bi ti rûpelan re hevber nebû - Bi Mayînde Jê Bîbe - Veguhêze jêbirdnakê - Vegerîne Reşnivîsê + Li gorî lêgerîna te ti rûpel nehatin dîtin + Bi mayînde jê bîbe + Veguhêze jêbirdankê + Veguhezîne Reşnivîsê Dêûbavan diyar bike Bibîne - Bo jêbirdankê hat veguhêstin + Çû jêbirdankê Demsazkirî Reşnivîs - Weşandî - Me gelek caran koda piştrastkirinê a SMSê şand — navberekî bide û di nav xulekekî de dîsa bixwaze. - Ti ajimêrên WordPress.comê bi vê ajimêra Googleê re hevberî hev nehatin. - Lêgerînên te bi ti malperan re hevber nebû - Lêgerînên te bi ti malperan re hevber nebû - Rûpela mak hat guhertin + Hat weşandin + Melek gelek caran kodên pejirandinê yên SMS\'ê şand. Hinekî bisekîne û piştî xulekekê yeka din daxwaz bike. + Ti hesabekî WordPress.com\'ê bi vî hesabê Googleê re hevberî hev nehatin. + Li gorî lêgerîna te ti malper nehat dîtin + Li gorî lêgerîna te ti malper nehat dîtin + Make-rûpel hat guhertin Rûpel bi awayekî mayînde hate jêbirin Rûpel hat demsazkirin Rûpel hat weşandin Rûpel hat jêbirin - Rûpel bo reşnivîsê hate vegerandin - Asta bilind - Bi rastî jî tu dixwazî rûpela %s jê bibe? - Di guhertina rûpela mak de pirsgirêkek heye - Di guhartina rewşa rûpelê de pirsgirêkek çê bû - Di jêbirina rûpelê de pirsgirêkek çê bû - Makê Saz Bike - vira bitepîne + Rûpel veguhezî nav Reşnivîsan bû + Asta herî bilind + Tu bi rastî jî dixwazî rûpela %s\'ê jê bibî? + Di guhertina make-rûpelê depirsgirêkek derket + Di guhertina rewşa rûpelê de pirsgirêkek derket + Di jêbirina rûpelê de pirsgirêkek derket + Dêûbav diyar bike + vir bitepîne Malpera xwe biafirîne - Malpera xwe bînin rewşa xebitînê + Malpera xwe rake ser lingan û biweşîne. Malpera xwe bibîne - Ji bo tu pêşdîtina malpera xwe bibînî %1$s Malperê Bibîne %2$s yê bitepîne + Ji bo tu pêşdîtina malpera xwe bibînî li %1$sMalperê Bibîne%2$s\'yê bitepîne Malpera xwe parve bike - Ji bo domandinê %1$s Parvekirin %2$s ê bitepîne - Ji bo tevlîkirina ajimêrên medyaya civakî %1$s Pêwendî %2$s yê bitepîne - Ajimêrên xwe yên medyaya civakî girê bide – malpera te dê şandiyên nû wekî otomatîk parve bike. + Ji bo domandinê li %1$sParvekirin%2$s\'ê bitepîne + Ji bo tu hesabên xwe yên medyaya civakî tevlî bikî li %1$sGirêdan%2$s\'ê bitepîne + Hesabên xwe yên medyaya civakî girêbide – malpera te ew ê şandiyên nû bixweber parve bike. Şandiyekê biweşîne - Ji bo şandiyeke nû biafirînî %1$s Şandî Biafirîne %2$s yê bitepîne + Ji bo şandiyeke nû biafirînî li %1$sŞandî Biafirîne%2$s\'yê bitepîne Ji bo dest pê bikî alîkariyeke biçûk dixwazî? Bipejirîne Qet Na Spas Malperên din bişopîne - Ji bo malperên heman berjewendîdar bibînî li %1$s Lêbigere %2$s yê bitepîne - Ji bo domandinê %1$s Xwîner %2$s ê bitepîne - Li malperan bigere ên dinûqûtin dilê te û wan bişopîne bo rojanekirinên şandeyên wan. + Ji bo tu malperên têkildarî mijarên wekhev bibînî li %1$sLê bigere%2$s\'yê bitepîne + Ji bo domandinê li %1$sXwîner%2$s\'ê bitepîne + Malperên ku îlhamê didine te bibîne û wan bişopîne ji bo ku hayê te ji hildemandinên weşanên wan çêbibe. Malpera xwe taybet bike - Ji bo domandinê %1$s Rûkar %2$s ê bitepîne - Ji bo dest bi kesanekirina malpera xwe bike %1$s Kesane Bike %2$s yê bitepîne + Ji bo dewam bikî li %1$sRûkar%2$s\'an bitepîne + Ji bo dest bi taybetkirina malpera xwe bikî li %1$sTaybet Bike%2$s\'yê bitepîne Rûkarekî hilbijêre - Ji bo rûkarên nû vebibîne %1$s Rûkar %2$s ê bitepîne + Ji bo tu rûkarên nû bibînî li %1$sRûkar%2$s\'an bitepîne Ji bo ahengeke bêkêmasî, çavekî li hemû rûkarên me bigerîne. Here Betal bike Ne niha Zêdetir - Ti malperên te nîn e - Etîketa şopkirî tune ye - Etîketan tevlî vir bike ji bo dîtina şandeyan ên ku favoriyên te ne - Ji bo girêdana Jetpackê di ajimêra xwe ya WordPress.comê keve. + Ti malperên te tune ye + Mijarên şopandî tune ye + Ji bo ku tu şandiyên têkildarî mijarên xwe yên favorî bibinî, mijaran tevlî vir bike + Ji bo Jetpackê girêbidî têkeve hesabê xwe yê WordPress.com\'ê yê tu bi kar tînî. Dîsa Biceribîne Bidomîne - Jetpack di vêgavê de nehat sazkirin. + Jetpack niha nayê sazkirin. Pirsgirêkek hebû Jetpack hat sazkirin - Jetpack li malperate tê sazkirin. Qedandina vê kirariyê dê çend xulekan bigire + Jetpack li malpera te tê sazkirin. Qedandina vê kirariyê dê çend xulekan bigire. Jetpack tê sazkirin - Dê agahiyên nasnameya malpera te neyê veşartin wê tenê ji bo sazkirina Jetpackê were bi kar anîn. + Dê agahiyên nasnameya malpera te neyê veşartin ew ê tenê ji bo sazkirina Jetpackê werin bi kar anîn. Jetpack\'ê Saz Bike Jetpack Jetpack PPP - Ji bo bikaranîna rêjejimarên malpera te ya WordPressê, divê tu pêvekên Jetpackê saz bikî. - Lêgerînen te bi ti rûkaran re hevber nebû + Ji bo ku tu Amarên malpera xwe ya WordPressê bi kar bînî divê tu pêveka Jetpackê saz bikî. + Li gorî lêgerîna te ti rûkar nehat dîtin Tu dixwazî çi bibînî? - Tu etîket û lêgerîna te li hev nayên + Li gorî lêgerîna te ti etîket nehat dîtin Ti etîketên te tune ye - Etîketên xwe yên tu pir bi kar tînî tevlî vir bike, bi saya vê dikarin nivîsên te yên etîketkirî bi hêsanî hilbijêrin + Etîketên xwe yên tu pir bi kar tînî tevlî vir bike, bi saya vê ew ê bikarin di dema etîketkirinê de şandiyên te bi hêsanî hilbijêrin Etîketekê biafirîne Lêgerîna te û ti medya li hev nayên Tu yê ji WordPressê derkevî? @@ -1114,8 +1172,8 @@ Language: ku_TR Malperên tu dişopînî tune ye Hîn ecibandin tune ye Hîn şopîner tune ye - Ji ber ku tu di plana azad de yî, tu yê di çalakiyên xwe de bûyerên sînorkirî bibînî. - Dema ku te guhertin li malpera xwe kir, dê bikaribî raboriya çalakiyên xwe li vir bibînî + Ji ber ku tu di pakêta azad de yî, tu yê di çalakiyên xwe de bûyerên sînordar bibînî. + Dema ku te guhertin li malpera xwe kir, tu yê bikarî raboriya çalakiyên xwe li vir bibînî Hîn çalakî tune ye Şandiyekê biafirîne Rûpelekê biafirîne @@ -1124,20 +1182,20 @@ Language: ku_TR galeriya wêneyan îkona malperê wêneyê rûkarê - taybetiyên wêneyê + wêneyê bijarde Biavêje wêneyê profîlê Demkî Email Ji kerema xwe navnîşana emaila xwe bikevê - Ji bo domandinê ji kerema xwe navnîşana xwe ya epeyamê û nav têxîne - Ji \'Alîkarî & Piştgirîyê ve peyameke nû + Ji bo domandinê ji kerema xwe, email û navê xwe bikevê + Peyameke nû ji \'Alîkarî û Piştgirî\'yê heye WordPress Saz nebû Emaila têkiliyê Tomargeha sepanê Bilêtên Min - Tu bawer î malpera xwe vegerînî li şûna %1$s berê %2$s? Dê ev, hemû naverok û vebijarkên ku hatine çêkirin an guhertin ji wê demê ve rake. + Tu bi rastî jî dixwazî malpera xwe vegerînî rewşa %1$s %2$s\'ê? Ev, ew ê hemû naverok û vebijarkên ji wê demê û vir ve hatine afirandin an jî guhertin, ji holê rake. Malperê Vegerîne Vegerandin didome Vedigere rewşa %1$s %2$s\'ê @@ -1146,9 +1204,9 @@ Language: ku_TR Malpera te bi serkeftî hat vegerandin\nVegeriya rewşa %1$s %2$s\'ê Malpera te bi serkeftî hat vegerandin\nVedigere rewşa %1$s %2$s\'ê Bişkoka Tomargeha Çalakiyan - Yên bi otomatikî tê rêvebirin + Bixweber tên birevêbirin Vê şandiyê tomar bike û kengî tu bixwazî wê bixwînî lê vegere. Ew ê tenê li ser vê cîhazê berdest be, şandiyên qeydkirî bi cîhazên te yên din re senkronîze nabin. - Şandiyan ji bo Piştre Tomar Bike + Şandiyan ji bo \"Paşê\" tomar bike Lêgerîn nayê kirin Ti encam nehatin dîtin Çavkaniya şandiyê bixwîne @@ -1159,10 +1217,10 @@ Language: ku_TR Agahiyên têketinê Girêdana sêhrî hat şandin Têketina girêdana sêhrî - Têketina navnîşanê ya malperê - Têketina navnîşanê ya epeyamê - Vebijêrkek din: - Li %s ê bitepîne ji bo tomarkirina şandeyeke li lîsteya te. + Bi navnîşana malperê re têkeve + Bi navnîşana emailê re têkeve + Vebijarkek din: + Ji bo şandiyê li lîsteya xwe tomar bikî li %s\'ê bitepîne. Heta niha ti şandî nehatiye tomarkirin! Şandî hat tomarkirin Hemûyan Bibîne @@ -1176,10 +1234,10 @@ Language: ku_TR Betal bike Rake Biguherîne - Destûra te bo serrastkirina nîşaneka malperê tune ye. - Destûra te bo tevlîkirina nîşaneka malperê tune ye. - Tu çawa dixwazî nîşanekê serrast bike? - Tu dixwazî nîşanekeke malperê tevlî bikî? + Destûra te ji bo sererastkirina îkona malperê tune ye. + Destûra te ji bo tevlîkirina îkona malperê tune ye. + Tu dixwazî îkonê çawa sererast bikî? + Tu dixwazî îkona malperê tevlî bikî? Îkona Malperê ev malper Biçalakîne @@ -1195,27 +1253,27 @@ Language: ku_TR Polîtîkaya nihêniyê bixwîne Hin aliyên sêyem jî tê de, em alavên şopandinê yên din bi kar tînin. Di derheqê wan û kontrolkirina wan de bixwîne. Polîtîkaya Aliyên Sêyem - Ev agahî alîkariya me dikin ji bo pêşverbirina berhemên me, ji bo kêrhatîtirkirina bazariya me, ji bo taybetkirina ceribeyên te yên WordPress.comê û ji bo bi dûrûdirêj qalkirina me di rêbaza me ya veşariyê de. + Ev agahî ji bo ku em berhemên xwe çêtir bikin, bazarê ji bo we têkildartir bikin û tecrûbeya we ya WordPress.com\'ê kesane bikin ji me re dibin alîkar. Zêdetirî wan di polîtîkaya nihêniyê de bi hûrgulî hatiye ravekirin. Polîtîkaya Nihêniyê Dema têketina te ya ajimêra WordPress.comê, di derheqê bikaranîna xizmetan de bi alavê me ya analîzê re agahî parve bikin. - Rêbaza Xurekê + Polîtîkaya Xurekê Sazkariyên nihêniyê Agahî berhev bike Şandî hat şandin Hesabê te tune ye? %1$sTomar Bibe%2$s - Taybetiya pêvekê pêwîstî bi rewşa baş a malperê dike. - Taybetiya pêvekê pêwîst dike ku endamtiya bingehîn a navperê bi vê bikarhênerê ve girêdayî be. - Taybetiya pêvekê pêwîstî bi berjewendiya rêvebirê dike. + Taybetiya pêvekê hewce dike ku malper di rewşeke baş de be. + Taybetiya pêvekê hewce dike ku abonetiya bingehîn a domainê bi vî bikarhênerî ve girêdayî be. + Taybetiya pêvekê îmtiyazên rêvebir hewce dike. Pêvek li malperên VIPê nayê sazkirin. - Ji ber sînordarkirinên qada dîskê pêvek nayê sazkirin. - Taybetiya pêvekê pêwîstî bi navnîşana epeyameke piştrastkirî dike. - Taybetiya pêvekê pêwist dike ku malper gelemperî be. - Taybetiya pêvekê pêwistî bi planeke business dike. - Taybetiya pêvekê pêwistî bi navpereke taybet dike. + Ji ber sînordariyên qada dîskê pêvek nayê sazkirin. + Taybetiya pêvekê navnîşana emaileke piştrastkirî hewce dike. + Taybetiya pêvekê hewce dike ku malper anonîm be. + Taybetiya pêvekê pakêteke karsaziyê hewce dike. + Taybetiya pêvekê domaineke taybet hewce dike. Em sazkirina dawî dikin — hema hema qediya… Pêvek tê sazkirin… Saz Bike - Dibe ku sazkirina pêveka yekem xulekekê bigire. Di vê demê de tê nikaribî guhertinan li ser malpera xwe bikî. + Dibe ku sazkirina pêveka yekem xulekekê bigire. Di vê demê de tu yê nikaribî guhertinan li ser malpera xwe bikî. Pêvekê saz bike Danezan Şîroveyên nû bi emailê ji min re bîşîne @@ -1225,12 +1283,12 @@ Language: ku_TR Şandiyên nû Ji bo şandiyên nû yên vê malperê danezanan bistîne Şandiyên nû bi emalê ji min re bişîne - Hemû Malperên Ez Dişopînim + Hemû malperên ez dişopînim Malperên Şopandî - Kesê bi cîhazê danezanan dixwîne + Kesê ku bi cîhazê danezanan dixwîne Mirovên li grafîk û planan dinêrin %s li ser %s - Bi rastî jî tu dixwazî vê şandiyê bi awayekî mayînde jê bibî? + Tu bi rastî jî dixwazî vê şandiyê bi awayekî mayînde jê bibî? Girîng Giştî Vî wêneyî bi kar bîne @@ -1251,7 +1309,7 @@ Language: ku_TR wêne jê bibe Vîdyoyê bilîzîne - Vîdyoya berpêş bilîzîne + vîdyoya bijarde bilîzîne logoya pêvekê sernavê pêvekê ji nav medyayên WordPress\'ê hilbijêre @@ -1295,14 +1353,14 @@ Language: ku_TR Şîrove hat jêbirin Ecibandina şîroveyê hat rakirin Şîrove hat ecibandin - Pejira şîroveyê hat rakirin + Pejirandina şîroveyê hat rakirin Şîrove hat pejirandin Hûrgiliya danezanê %s Wêneyê Sererast Bike Malper hilbijêre Hesabê nû - Bi vî hesabî têketî ye - Hûrgiliya kesê + Bi vî hesabî têketî ye: + Hûrguliya şexsî Hûrgiliya dosyeyê Bişkokên parvekirinê Danezan @@ -1314,10 +1372,10 @@ Language: ku_TR Lîsans Notên guhertoyê Avatara te hat hilxistin û di demeke nêzîk de ew ê berdest bibe. - Xuya ye te destûrên pêdivî yên ji bo vê taybetiyê girtiye.<br/><br/>Ji bo guhertina wê destûrên xwe serrast bike û ji çalakbûna <strong>%s</strong>ê piştrast bibe. + Xuya ye te ji bo vê taybetiyê destûrên hewce girtine.<br/><br/>Ji bo guhertina vê, destûrên xwe sererast bike û ji çalakbûna <strong>%s</strong>\'ê piştrast bibe. Destûr - Berpêş - Ji ber ku modula Jetpacka te ya Parvekirinê neçalak e, tu nikare bigihêje sazkariyên pervekirinê. + Bijarde + Ji ber ku modula Parvekirinê ya Jetpack\'a te neçalak e, tu nikarî bigihîjî sazkariyên pervekirinê. Modula parvekirinê neçalak e Guherto %s © %1$d %2$s @@ -1362,9 +1420,9 @@ Language: ku_TR Googleê pir dereng bersiv da. Dibe ku heta girêdana te ya înternetê bihêztir bibe tu bisekinî. Navê bikarhêner biguherîne Ji bo pêşniyarên zêdetir, binivîse - Navê te ya heyî %1$s%2$s%3$s e/ye. Ji xeynî çend awarteyan, kesên din dê tenê navê te ya dîtinê %4$s%5$s%6$s bibînin. - Ji %1$s%2$s%3$s ê navê bikarhêner nehat pêşniyazkirin. Ji bo ku pêşniyazan bistîne, ji kerema xwe zêdetir tîp an jî hejmar binivîse. - Dema ku pêşniyarên navên bikarhêneran dihat stendin çewtiyek pêk hat. + %1$s%2$s%3$s navê te yê heyî ye. Ji bilî çend îstisnayan, kesên din ew ê tenê navê te yê dixuye %4$s%5$s%6$s, bibînin. + %1$s%2$s%3$s navê bikarhêner pêşniyar nekir. Ji bo tu pêşniyaran bistînî, ji kerema xwe zêdetir tîp an jî hejmaran binivîse. + Di sitendina pêşniyarên navê bikarhêneriyê de çewtiyek derket. Bila guhertina navê bikarhêner betal bibe? Biavêje Tomar bike @@ -1377,14 +1435,14 @@ Language: ku_TR Email tê şandin Dîsa Bîceribîne Bigire - Di şandina epeyamê de pirsgirêk çebû. Tu dikarî niha dîsa biceribîne an jî bigire û piştre biceribîne. + Di şandina emailê de hin pirsgirêk derketibûn. Tu dikarî niha dîsa biceribînî an jî bigirî û paşê dîsa biceribînî. Navê bikarhêner - Tu her timî dikarî wekî berî niha bi girêdanekê têketinê bike lê heke tu bixwazî em dikarin pêborînekê jî ji te re saz bikin. + Tu her timî dikarî wekî berî niha bi girêdanekê têketinê bikî lê heke tu bixwazî em dikarin pêborînekê jî ji te re saz bikin. Pêborîn (li gor daxwazê) - Navê Xuya + Navê Dixuye Dîsa biceribîne - Vegerîne - Di hildemandina ajimêra te de hinek pirsgirêk çêbûn. Ji bo domandinê tu dikarî guhertinên xwe vegerîne an jî dîsa biceribîne. + Vegerîne rewşa berê + Di hildemandina hesabê te de hinek pirsgirêk çêbûn. Tu dikarî dîsa biceribînî an jî ji bo domandinê guhertinên xwe vegerînî. Di hilxistina avatara te de hinek pirsgirêk derketin. Ji bo tu hesabê xwe yê nû yê WordPress.com\'ê biafirînî, ji kerema xwe navnîşana emaila xwe bikevê. Di kontrolkirina navnîşana emailê de hinek pirsgirêk derketin. @@ -1404,9 +1462,9 @@ Language: ku_TR Saz Bike Biecibîne Malpera nû tevlî bike - Ji bo karsazî, kovar an jî bologeke şexsî malpereke nû biafirîne; an jî bi sazkirineke WordPressê ya heyî re girê bidin. - Ji bo agahiyên kêrhatî ji malpera te ya WordPressê bê amûra te, divê tu pêveka Jetpackê saz bike. Tu dixwazî Jetpackê saz bikî? - Wêneyên dereng barkirinê + Ji bo karsazî, kovar an jî bologeke şexsî malpereke nû biafirîne; an jî li sazkirineke WordPressê ya heyî girêde. + Ji bo danezanên kêrhatî ji malpera te ya WordPressê bên cîhaza te, divê tu pêveka Jetpackê saz bikî. Tu dixwazî Jetpackê saz bikî? + Wêneyên dereng hatine barkirin Jetpack\'ê saz bike Nivîsê biguherîne Guhertoya WordPress\'a Te @@ -1442,14 +1500,14 @@ Language: ku_TR Etîketa Nû Tevlî Bike Daxuyanî Etîket - Malpera te ya WordPress.com piştgiriyê dide bikaranîna Rûpelên Mobîlê yên Lezandî ku peyaneke bi serokatiya Googleê ye û di amûrên mobîlan de mudeta barkirinê bibandorî dilezîne - Rûpelên Mobîlê yên Lezandî (RML) + Malpera we ya WordPressê piştgiriyê dide pelên mobîl. Ev pel ji bo malper zu werê barkirin bi pêşdebirina google tên birêvebirin. + Rûpelên Mobîl ên Lezandî (AMP) Navçedem nehatin barkirin Di derbarê formata dem û dîrokê de zêdetir bizane Formata taybet Taybet Serê rûpelê şandî - Bajarekî bibijêre li qada xwe ya demê + Ji navçedema xwe bajerekî hilbijêre Navçedem Formata Demê Formata Dîrokê @@ -1461,7 +1519,7 @@ Language: ku_TR Îkona pêvekê Serrûpela Pêvekan Rûpela pêvekan a WordPress.org\'ê - Bi rastî jî tu dixwazî ji %2$s\'ê %1$s rake?\n\n\nEv, dê pêvekê neçalak bike û hemû dane û pelgeyên têkildar jê bibe. + Tu bi rastî jî dixwazî pêveka %1$s\'ê ji %2$s\'ê rake?\n\nEv ê pêvekê nêçalak bike û hemû dosye û daneyên têkildar jê bibe. Pêvekê Rake Tê rakirin %s… Tê neçalakkirin %s… @@ -1479,10 +1537,10 @@ Language: ku_TR Pêvek Pêvek Di hilpeka/paceya nû de girêdanê veke - Giredan: + Giredana Çewtiyek derket. - Ji kerema xwe bo domandinê kodeke rastandinê peyda bike. - Ji kerema xwe bo domandinê pêborîna xwe du cara kontrol bike. + Ji kerema xwe, ji bo domandinê kodeke rastandinê peyda bike. + Ji kerema xwe, ji bo domandinê pêborîna xwe du caran kontrol bike. Têketin rawestiya Ji kerema xwe li benda têketinê be. Pêvojoya têketinê didome… @@ -1491,14 +1549,14 @@ Language: ku_TR Têketina Googleê nehat destpêkirin. Ji kerema xwe pêborînekê bikevê Ji dêvla wê kodeke din ji min re bişîne - Em ji telefona te yê ku bi %s re diqede re peyameke nivîsî şandin. Xêra xwe koda rastandinê yê di SMSê de têkeve. + Me ji hejmara telefona te ya dawiya wê %s e re peyamek şand. Ji kerema xwe koda rastandinê ya di SMSê de bikevê. Mezinahî Dosyeyek maye - Ji %2$d pelgeyan %1$d maye + Ji %2$d dosyeyan %1$d mane Şandiyek maye Tê hilxistin… Nivîsekê Binivîse - %d pelge biserkeftî hatin hilxistin + %d dosye biserkeftî hatin hilxistin , %d bi serkeftî hat hilxistin Dosyeyek hat hilxistin Dosyeyek nehat hilxistin @@ -1508,30 +1566,30 @@ Language: ku_TR Bila ev wêne ji şandiyê were rakirin? Taybet bike Hûrgiliyên Dosyeyê - \nBelkî tu ajimêreke cuda biceribîne? - Di girêdana bi ajimêra Googleê re hinek pirsgirêk pêk hatin. + \nBelkî tu hesabekî cuda biceribînî? + Di girêdana bi hesabê Googleê re hin pirsgirêk derketin. Bigire Bi Google\'ê têkeve. - Ji bo bi vê ajimêra Googleê bidomînî, ji keram xwe peyvborîna li WordPress.comê peyda bikin. Ev ê careke bê pirsîn. - Çewtiyeke girêdanê pêk hat. Ji kerema xwe girêdana xwe kontrol bike û dîsa biceribîne. - Wêneyê bijarte rake - Wêneyê bijarte hilbijêre - Ji bo parvekirina naverokê di WordPress.comê de têketinê bike. - Navnîşana malpera xwe ya WordPressê binivîse ya ku tu dixwazî naverokê bi wê parve bikî. - Çewtiyeke derket holê gava girêdana malperê dihate qutkirin - Girêdana malperê hate qutkirin + Ji bo bi vî hesabê Googleê dewam bikî, ji kerama xwe pêborîna ku bi WordPress.com\'ê re yeksan e bikevê. Ev ê tenê carekê bê pirsîn. + Çewtiyeke torê çêbû. Ji kerema xwe girêdana xwe kontrol bike û dîsa biceribîne. + Wêneyê bijarde rake + Wêneyê bijarde hilbijêre + Ji bo naverokê parve bikî di WordPress.com\'ê de têketinê bike. + Navnîşana malpera xwe ya WordPressê ku tu dixwazî naveroka wê parve bikî, têkeve. + Di qutkirina girêdana malperê de çewtî derket + Girêdana malperê hat qutkirin Girêdanê qut bike - Tu jidil dixwazî ku girêdana Jetpackê ya ji malperê qut bikî? - \"Girêdana ji WordPress.comê qut bike\" - Dibe ku tu bixwazî navnîşaneke IPyê an zincîreyeke navnîşanan têxî lîsta spî da ku rê li ber astengkirina ji aliyê Jetpackê ve bigirî. IPv4 û IPv6 meqbûl in. Ji bo diyarkirina navberek, nirxê kêm û nirxê bilind têkeve, û herdukan bi xêzikek ji hev veqetîne. Mînak: 12.12.12.1–12.12.12.100 + Tu bi rastî jî dixwazî girêdana di navbera Jetpack û malperê de qut bikî? + \"Girêdanê ji WordPress.com\'ê qut bike\" + Dibe ku tu bixwazî navnîşaneke IPyê an jî zincîreyeke navnîşanan têxî lîsteya spî da ku rê li ber astengkirina ji aliyê Jetpackê ve bigirî. IPv4 û IPv6 meqbûl in. Ji bo navberekê diyar bikî, nirxê kêm û nirxê bilind têkeve, û herduyan bi xêzika(-) ji hev veqetîne. Mînak: 12.12.12.1–12.12.12.100 Rastandina du-gavî ferz bike - Bi bikaranîna epeyamê ajimêran hevber bike - Destûrê bide bo têketina WordPress.comê + Bi bikaranîna emailê hesaban hevberî hev bike + Destûrê bide ji bo têketina di WordPress.com\'ê de Têketina WordPress.com\'ê - Navnîşanên IPê yên lîsteya spî - Hewldanên têketinê ên niyetxirab asteng bike - Parastina ji erişa Brute forceê - Danezanên demkî bişîne + Navnîşanên IP\'ê yên lîsteya spî + Hewldanên têketinê yên xerab asteng bike + Parastina ji êrişa Brute forceê + Danezanên yekser bişîne Danezanan bi emailê bişîne Dema kar a malpera xwe kontrol bike Ewlehî @@ -1541,7 +1599,7 @@ Language: ku_TR Tevlî medyagehê bike Tevlî şandiya nû bike Ji bo parvekirina wêne an jî vîdyoyan destûrên hewce. - IP an navbera IPyê ya nederbasdar + IP an jî navbera IPyê nederbasdar e Tê jêbirin Bila ev vîdyo jê biçe? Bila ev wêne jê biçe? @@ -1559,7 +1617,7 @@ Language: ku_TR URL Nivîsa alternatîv Malperekê lê girêde - Şewqê veke - bigire + Ronahiyê bigire - veke Cîhazê biricifîne Deng hilbijêre Dîmen û deng @@ -1569,14 +1627,14 @@ Language: ku_TR Ya din Hemû Malperên Min Malperên Te - Girtina Sazkariyên Danezanan wê hemû agahdariyên ji vê sepanê neçalak bike, bêyî dîqetkirina cureya danezanê. Piştî ku te Sazkariyên Danezanan vekir, tu yê karibî agahdariyên ku tu dixwazî werbigirî bisazînî. + Girtina \"Sazkariyên Danezanan\" bêyî dîqetkirina cûreya wan ew ê hemû danezanên ji vê sepanê neçalak bike. Piştî ku te Sazkariyên Danezanan vekir, tu dikarî cûreya danezanan ku dixwazî bistînî, saz bikî. Ji bo di vê cîhazê de danezanan bistînî, Sazkariya Danezanan biçalakîne. Danezanan biçalakîne Danezanan neçalak bike Girtî Vekirî - Mezinahiya Vîdeoyê ya Maksîmum - Mezinahiya Wêneyê ya Maksîmum + Mezinahiya vîdyoyê - maksîmûm + Mezinahiya wêneyê - maksîmûm Dema ku medya li vê şandiyê dihat hilxistin çewtiyek derket: %s. Dema ku ev şandî dihat hilxistin çewtiyek derket: %s. Medya tê tevlîkirin @@ -1590,8 +1648,8 @@ Language: ku_TR Şandî di serverê de nehat dîtin Êdî ev şandî ne berdest e Hilxistina medyayê hat betalkirin - Hilxistina medyayê di vê rûpelê de rastî çewtiyekê hat: %s. - Di hilxistina vê rûpelê de çewtiyek pêk hat: %s. + Di vê rûpelê de dema medya dihat hilxistin çewtiyek derket: %s. + Di hilxistina vê rûpelê de çewtiyek derket: %s. Şandiya te tê hilxistin Medya tê hilxistin… Rûpel hat demsazkirin @@ -1599,48 +1657,48 @@ Language: ku_TR Dîsa biceribîne Şandî ket dorê \"%s\" tê hilxistin - Girêdana bi rajakerê re qut bû + Girêdan bi serverê re qut bû Malperên min Malpera min Sepana te ya epeyam-wergir bikare were tesbîtkirin - Ji kerema xwe kodeke rastandinê têxîne - Ji kerema xwe navekî bikarhêner têxîne - Ji bo bigihêje şandiyê di WordPress.comê de têketinê bike. - Dema malper dihat tevlîkirin çewtî çêbû. Koda çewtiyê: %s + Ji kerema xwe kodeke rastandinê bikevê + Ji kerema xwe navekî bikarhêner bikevê + Ji bo bigihîjî şandiyê di WordPress.com\'ê de têketinê bike. + Di tevlîkirina malperê de çewtî. Koda çewtiyê: %s Navnîşana malperê tê kontrolkirin Alîkariya zêdetir hewce ye? - Malpera te li benda jor a ekranê wê bê xuyan gava ku te di Chrome-ê de malpera xwe seredan kir. + Dema ku tu bi Chromeê serdana malpera xwe bikî ew ê navnîşana malpera te di benda jor a ekranê de xuya dike. Navnîşana Malpera min çi ye? Ji bo tu navnîşana malpera xwe bibînî alîkarî lazim e? Navnîşana malperê - Navnîşana Malpera WordPressê ya ku tu dixwaze pê gire bide têxîne. - Jixwe di WordPress.comê de têketin pêk hatiye + Navnîşana Malpera WordPressê ya ku tu dixwazî lê girêdî binivîsî. + Jixwe di WordPress.com\'ê de têketin pêk hatiye Bidomîne Malpereke din girêde Pêborîna xwe ya WordPress.com\'ê bikevê. Xwestina emaila têketinê - Wisa dixuye ku ev pêborîn xelet e. Ji kerema xwe agahiyên xwe du caran kontrol bike û careke din biceribîne. - Xwestina kodeke rastandinê bi riya SMSê. + Wisa dixuye ku ev pêborîn xelet e. Ji kerema xwe du caran agahiyên xwe kontrol bike û careke din biceribîne. + Xwestina kodeke rastandinê bi rêya SMSê. Jê dêvla wê kodekê ji min re bişîne - Hema bêje temam bû. Xêra xwe koda rastandinê têkeve ji sepana xwe ya rastkar. + Hema hema qediya. Ji kerema xwe, ji sepana xwe ya rastandinê koda pejirandinê têkeve. Emailê veke Pêşve - Ji bo ku tu hemû malperên xwe yên WordPressê bi rê ve bibî di WordPress.com\'ê de bi navnîşaneke emailê têketinê bike. - Optîmîzasyona wêneyan, wêneyan biçûk dike ji bo hilxistina zûtir\nTu herdem dikarî vê biguherînî ji sazkariyên malperê. - Bila optimizasyona wêneyê vebe? + Ji bo ku tu hemû malperên xwe yên WordPressê bi rê ve bibî bi rêya bikaranîna navnîşaneke emailê têkeve WordPress.com\'ê. + Optîmîzasyona wêneyê ji bo hilxistina bilez, wêneyan biçûk dike.\n\nTu her tim dikarî vê ji sazkariyên malperê biguherînî. + Bila optîmîzasyona wêneyê vebe? Girtî bihêle Veke Wêneyê Profîlê - Cewaba nehêvîkirî ji rajekarê + Bersiva nehêvîkirî ji serverê Hilxistin nayê rawestandin ji ber ku ji zû ve qediya ye Sernav - Dubare bike + Dîsa bike Vegerîne - Ji bo nîşandanê medya pir biçûk e - Hişyarî: Hemû hêmanên ku hatine hiştin nayên piştgirîkirin! - Destûr nayê dayîn ku wêne li Serikê bêne danîn - Çewtiyeke derket holê gava danîna nivîsê - Di moda HTMLê de destûra hiştina wêneyan nayê dayîn + Medya ji bo nîşandanê pir biçûk e + Hişyarî: Hemû hêmanên hatine hiştin nayên piştgirîkirin! + Destûr ji bo danîna wêneyan a li Sernavê re nayê dayîn + Di danîna nivîsê de çewtî derket + Di moda HTMLê de destûr ji bo danîna wêneyan nayê dayîn Çîroka xwe li vir parve bike… Taybet Reşnivîs @@ -1648,16 +1706,16 @@ Language: ku_TR Weşandî Cîgehê Biguherîne Cîgehê Rake - Bijêra Lokasyonê nikare veke, Xizmetên Google Playê ne berdest e + Bijêra Cîgehê nayê vekirin, Xizmetên Google Playê ne berdest in Cîgeh Aniha Tenê kesên xwediyê vê pêborînê dikarin vê şandiyê bibînin - Kurte, kurteyên naveroka te yên ku bi destan hatiye amadekirin e. - Kurtenav versiyona URL-hez ya serikê şandiyê ye. + Jêgirtin, kurteyên naveroka te yên ku bi destan hatine amadekirin e. + Kurtenav versiyona url-dostane ya sernavê şandiyê ye. Formata Şandiyê Etîket Kurtenav - Kurte + Jêgirtin Nesazkirî Vebijarkên Zêdetir Kategorî û Etîket @@ -1670,40 +1728,40 @@ Language: ku_TR Hîç wêneyên te tune ye Serverê pir dereng bersiv da Ji bo li hilxistina vê malperê pelge pir mezin e - Pelge mezinahiya hilxitinê ya meztirîn yê ji bo vê malperê derbas dike + Dosye ji bo vê malperê sînorê hilxistina herî zêde derbas dike Ji bo hilxistinê vîdyo pir mezin e - Wêne pir mezin e bo hilxistinê. Biceribîne ku ji sazkariyên sepana xwe vebijêrka \"Wêneyan Optîmîze Bike\" biguherînî + Wêne ji bo hilxistinê pir mezin e. Di sazkariyên sepana xwe de \"Wêneyan Optîmîze Bike\"yê biceribîne Deng Vîdyo Dosye Wêne Hemû - %1$s red kir ku bigihe wêneyên te. Bo çarekirina vê, destûrên xwe biguherîne û %2$s veke. + Hewla %1$s\'ê ya ji bo bigihîje wêneyên te hat redkirin. Ji bo vê çareser bikî, destûrên xwe sererast bike û %2$s\'ê veke. Şîroveyan bibîne - Qalîteya vîdyoyan. Nirxên bilindtir tê wateya vîdyoyên qalîteya çêtir. + Kalîteya vîdeoyan. Nirxên bilind tê wateya vîdyoyên kalîteya çêtir. Mezinahiya vîdeoyên di şandiyê de dike bi qasî vê mezinahiyê - Çalak bike bo verehendin û şidandina vîdeoyan + Dewisandin û ji nû ve rehendina vîdyoyan biçalakîne Vîdyoyan Optîmîze Bike - Reşnivîs hate hilxistin - Çewtî ragihîne + Reşnivîs hat hilxistin + Çewtiyekê ragihîne Kalîteya Vîdyoyê Kamera Bîrgeh - Destûran serast bike + Destûran sererast bike Destûr bide - Hewcedariya %s bi destûra te heye bo gihîna wêneyên te - Wê ev tevlî nava twîtan bibe gava ku însan bi bişkoka Twîtterê parve kirin - Nivîsa bişkokên parvekirinê biguherîne. Ev nivîs wê neyê xuyan heta ku te bi kêmanî yek bişkokek parvekirinê lê zêde kir. + Ji bo gihîna li wêneyên te %s destûrê hewce dike + Dema ku mirov bi rêya bişkoka Twîtterê parve bikin, ev ê jî tevlî nav tweetan bibe + Nivîsa bişkokên parvekirinê biguherîne. Heta ku tu bi kêmanî bişkokeke parvekirinê tev lê bikî ew ê ev nivîs neyê xuyan. Hesab tê girêdan - Girêdana %s nikare çêbe ji ber ku ti ajimêrek nehatiye bijartin. + Ji ber ku ti hesab nehatiye hilbijartin, girêdana %s\'ê nehate çêkirin. Hat girêdan Twitter Ecibandin - Destûr bide ku hemû şîrove ji hêla te û xwendevanên te ve were ecibandin + Destûrê bide bila hemû şîrove ji hêla te û xwînerên te ve werin ecibandin Bişkok - Bişkokên \"Bêhtir\" serast bike - Bişkokeke \"Zêdetir\" daketokekê dihewîne ku ew bişkokên parvekirinê nîşan dide - Bibijêre ku ka bila kîjan bişkok bêne xuyan li bin şandiyên te + Bişkokên \"Zêdetir\" sererast bike + Bişkoka \"Zêdetir\"ê menûyeke daketok e ku bi tikandinê re bişkokên parvekirinê nîşan dide + Bişkokên ku di bin şandiyên te de bêne nîşandan, hilbijêre Navê bikarhêner ê Twitterê Ecibandinên şîroveyê Stîla Bişkokê @@ -1716,17 +1774,17 @@ Language: ku_TR Tenê Nivîs Tenê Îkon Îkon û Nivîs - Ajimêra ku tu dixwazî destûrdar bikî hilbijêre. Bi bîr bixe ku şandiyên te wê li ajimêrên hilbijartî bi otomatîk werin parvekirin. + Hesabê ku tu dixwazî destûrdar bikî hilbijêrî. Ji bîr neke, ew ê şandiyên te bi hesabê bijartî re bixweber werin parvekirin. Bi %s ve tê girêdan Bila girêdan ji %s qut bibe? Hesabekî din girêde Dîsa girêde Girêdanê qut bike Girêde - Ji bo ku tu şandiyên blogê yên li ser %s otomatik parve bikî, gire bide. + Ji bo ku tu şandiyên blogê yên li ser %s\'ê bixweber parve bikî, lê girêde. Li ser %sê belav bike Hesabên girêdayî - Servîsên medyayên civakî yên kêfa te ji wan re tê gire bide û bila bi awayekî otomatik şandiyên nû bi hevalên te re were parvekirin. + Servîsên medyaya civakî yên kêfa te ji wan re tê lê girede û bila bixweber şandiyên nû bi hevalên te re werin parvekirin. Girêdan Parvekirin Danezan. Danezanên xwe bi rê ve bibe. @@ -1734,45 +1792,45 @@ Language: ku_TR Malpera Min. Malpera xwe bibîne, bi rê ve bibe û amaran kontrol bike. Parvekirin Ne niha - Çewtiya hilxistinê. Ji sazkariyên sepana xwe guhertina vebijêrka \"Wêneyan Optîmîze Bike\" biceribîne - Medya di vê amûrê de tê tomarkirin + Çewtiya hilxistinê. Di sazkariyên sepana xwe de guhertina vebijêrka \"Wêneyan Optîmîze Bike\"yê biceribîne + Medya li vê cîhazê tê tomarkirin Medya nayê tomarkirin - Reşnivîs li ser amûrê hat tomarkirin + Reşnivîs li ser cîhazê hat tomarkirin Reşnivîs bi serhêl hat tomarkirin - Şandî li ser amûrê hat tomarkirin - Hevdem bike - Ji bo pirtir şîroveyan hilbijêre, bitepîne û li ser bihêle - Ji amûrê vîdyo bibijêre - Ji amûrê wêne bibijêre + Şandî li ser cîhazê hat tomarkirin + Senkronîze bike + Ji bo pirtir şîroveyan hilbijêrî, bitepîne û li ser bihêle + Ji cîhazê vîdyoyekê hilbijêre + Ji cîhazê wêneyekî hilbijêre Medyayên WP\'ê Wekî galerî tevlî bike - Yekane tevlî bike + Yek bi yek tevlî bike Wêneyan bi piranî tevlî bike %d stûn Stûnek Emailê dîsa bişîne - Em epeyamekê şandin %s, gava ku te cara pêşîn têket. Xêra xwe peyamê vebike û bitikîne bişkoka şîn, ji bo çalakkirina weşandinê. - Em epeyamekê şandin te, gava ku te cara pêşîn têket. Xêra xwe peyamê vebike û bitikîne bişkoka şîn, ji bo çalakkirina weşandinê. - Ji kerema xwe navnîşana epeyama xwe bipejirîne - Di şandina epeyama rastandinê de çewtî çêbû. Jixwe te rastandiye? - Epeyama rastandinê hat şandin, hatdanka xwe kontrol bike + Dema ku te cara ewil xwe tomar kir me ji %s\'ê re emailek şand. Ji kerema xwe peyamê veke û ji bo weşandinê çalak bikî li bişkoka şîn bitikîne. + Dema ku te cara ewil xwe tomar kir me ji te re emailek şand. Ji kerema xwe peyamê veke û ji bo weşandinê çalak bikî li bişkoka şîn bitikîne. + Ji kerema xwe navnîşana emaila xwe bipejirîne + Di şandina emaila pejirandinê de çewtî derket. Jixwe te pejirandiye? + Emaila pejirandinê hat şandin, hatdanka xwe kontrol bike Şandiyê wekî reşnivîs tomar bike Vîdyo bikşîne Wêne bikşîne - Baldar be! Carekê malperek hate jêbirin, ew dê neyê filitandin. Ji kerema xwe berî ku tu pêşve biçe jê piştrast be. - Dê hemû şandî, wêne û daneyên te werin jêbirin. Wê navnîşana malperê (%s) winda bibe. + Baldar be! Dema malperek hat jêbirin, ew ê neyê filitandin. Ji kerema xwe berî ku tu berdewam bikî jê piştrast be. + Hemû şandî, wêne û daneyên te ew ê werin jêbirin. Navnîşana malperê (%s) ew ê wenda bibe. Bila malper were jêbirin? - Epeyam nayê şandin - Ez dixwazim bi ser malpera %s dest pê bikim - Bi malpera %s re dest pê bike - Di rakirina malperê de çewtî çêbû, piştre dîsa biceribîne - Şandî bi ser neket ku medyayê hilbixe û wek herêmî hate qeydkirin + Email nayê şandin + Ez dixwazim ji serî ve dest bi malpera %s\'ê bikim + Ji serî ve dest bi malpera %s\'ê bike + Di rakirina malperê de çewtî derket, piştre dîsa biceribîne + Şandiyê hilxistinên medyayê bi ser nexist û bi ew derhêlî hatin tomarkirin Bila ev malper ji sepanê bê rakirin? Wêne hilbijêre Cîhaz derhêl e. Şandî bi cîgehî hat tomarkirin. Şandî bi serhêlî hat tomarkirin Kalîteya wêneyan. Nirxên bilindtir tê wateya wêneyên kalîteya wan çêtir. - Verehandin û dewisandina wêneyan, biçalakîne + Dewisandin û ji nû ve rehendina wêneyan biçalakîne Herî bilind Pir bilind Bilind @@ -1790,32 +1848,32 @@ Language: ku_TR Bişîne Malpereke dubareyî hat tesbîtkirin. Jixwe ev malper di sepanê de heye, tu nikarî wê tevlê bikî. - Te jixwe têketiye ajimêreke WordPress.comê, tu nikarî malpereke WordPress.comê yê ku girêdayî ajimêke din e lê zêde bikî. + Jixwe tu di hesabê xwe yê WordPress.com\'ê de têketî ye, tu nikarî malpereke WordPress.com\'ê ya ku girêdayî hesabekî din e lê zêde bikî. Medya nayê barkirin Ji bo nûkirina medyagehê înternet hewce ye Ji bo tu medyayê bibinî an jî wê sererast bikî îzina te tune ye Medya nehat dîtin - Ser medyaya amûrê destûra xwendinaê hate redkirin + Ji bo medyaya cîhazê destûra xwendinê hat redkirin Wêneyan optîmîze bike Çewtiya medyayê derket Çewtiya hilxistina medyayê derket Dîsa biceribîne Bipejirîne - Nikare were girêdan. Em çewtiya 403 wergirtin gava ku diceribandin\n xwe bigihînin nuqteya dawîn ya XMLRPC. Hewcehiya sepanê pê heye da ku bi malpera te re têkiliyê deyîne. Bo çareserkirina vê pirsgirêkê\n têkiliyê deyîne bi hewandera xwe re. - Nikare were girêdan. Hewandera te daxwazên POSTê asteng dike, \n û hewcedariya sepanê pê heye ji bo ku bi malpera te re têkiliyê deyîne. Ji bo çareserkirina vê pirsgirêkê bi pêşkêşkera hewangeha xwe re têkiliyê deyîne. + Nayê girêdan. Dema me hewl da xwe bigihînin nuqteya dawîn XMLRPC\'ê\n ya malpera te, çewtiyeke 403 qewimî. Ji bo ku sepan karibe bi malpera te re têkilî dayîne pêwîstî pê heye.\n Ji bo çareserkirina vê pirsgirêkê bi hewangera (host) xwe re têkilî deyne. + Nayê girêdan. Hewangera te daxwazên POSTê asteng dike, û ji bo ku sepan\n karibe bi malpera te re têkilî dayîne pêwîstî pê heye. Ji bo çareserkirina vê pirsgirêkê bi hewangera (host) xwe re têkilî deyne. Li malperên şopandî bigere - Wê daliqandî nehêle! \'%1$s\' li benda weşandinê te. - Wê daliqandî nehêle! \'%1$s\' li benda weşandinê te. - \'%1$s\' wek reşnivîs ma. Weşandina wê ji bîr neke! - Reşnivisa te \'%1$s\' li benda te ye - jê bawer be ku te wê weşandiye! - Te dizanî \'%1$s\' hîn jî reşnivîsek e? Hema biweşîne! - Te doh \'%1$s\' kir reşnivîs. Weşandina wê ji bîr neke! + Wê daliqandî nehêle! \'%1$s\' li benda weşandinê ye. + Wê daliqandî nehêle! \'%1$s\' li benda weşandinê ye. + \'%1$s\' wekî reşnivîsekê ma. Weşandina wê ji bîr neke! + Reşnivisa te \'%1$s\' li benda te ye - ji weşandina wê piştrast be! + Tu dizanî \'%1$s\' hîn jî reşnivîsek e? De ka biweşîne! + Te doh reşnivîsa \'%1$s\'ê tomar kir. Weşandina wê ji bîr neke! Serdana malperê bike Ji bo zêdetir, bişemitîne - Tu nehatî destûrdarkirin bo dîtina vê şandiyê. Pêşî biceribîne ku tu têkevî WordPress.comê an jî li şûna wê bo vekirina gerokeke webê, bişkoka çalakiya jorîn bi kar bîne. - Tu ne destûrdayî yî bo dîtina vê şandiyê. Pêşî biceribîne ku tu têkevî WordPress.comê. - Tu ne destûrdayî yî bo dîtina vê şandiyê. Bi bişkoka çalakiya jorîn biceribîne ku gerokeke webê vebikî. - Nikare biecibîne gava ji WordPress.comê derketî be + Ji bo dîtina vê şandiyê destûra te tune ye. Pêşî têkeve WordPress.com\'ê heke nebe li şûna wê bi rêya bişkoka çalakiyê ya jorê bi gerokekê veke. + Ji bo dîtina vê şandiyê destûra te tune ye. Pêşî hewl bide têkeve WordPress.com\'ê. + Ji bo dîtina vê şandiyê destûra te tune ye. Hewl bide bi rêya bişkoka çalakiyê ya jorê bi gerokekê veke. + Dema tu ji WordPress.com\'ê derketî be tu nikarî biecibînî Jixwe te ev şîrove ecibandiye Şîrove nehat dîtin! Ev şandî nehat ecibandin @@ -1836,7 +1894,7 @@ Language: ku_TR Zêdetir li ser %s\'ê Sazkariyên cîhazê veke %s: Emaila nederbasdar - %s: Vexwendinên bikarhêner astengkirî + %s: Vexwendinên astengkirî %s: Jixwe tê şopandin %s: Jixwe endamek e %s: Bikarhêner nehat dîtin @@ -1864,24 +1922,24 @@ Language: ku_TR Ji %1$s\'an vir de Bîner nayê rakirin Şopîner nayê rakirin - Şopînerên epeyama malperê bi şûnde nehat - Şopînerên malperê bi şûnde nehatin - Hilxistina hinek medayayan bi serneket. Li vê herêmê tu nikarî\n derbasî moda HTMLê bibe. Bila hemû hilxistin û serneketin werin rakirin û pevajo bidome? + Şopînerên emaila malperê nehatin stendin + Şopînerên malperê nehatin stendin + Hilxistina hinek medyayan bi ser neket. Tu nikarî li vê herêmê derbasî\n moda HTML\'ê bibe. Bila hemû hilxistin serneketî werin rakirin û bidome? Firehî Giredan - Binnivîs + Jêrnivîs Guhertin hatin tomarkirin Bila guhertinên netomarkirî bên avêtin? Bila hilxistin raweste? - Ji bo dîsa biceribîne, bitepîne + Ji bo dîsa biceribînî, bitepîne! Vexwendin bi serkeftî hat şandin %1$s: %2$s - Vexwendin hat şandin lê hin(ek) çewtî rû dan! - Dema vexwendin dihat şandin çewtiyek çêbû! - Nikare bişîne: Epeyam an jî navên bikarhêneran nederbasdar e + Vexwendin hat şandin lê çewtî çêbû(n)! + Di şandina vewendinê de çewtiyek derket! + Nikare bişîne: Navê bikarhêner an jî email nederbasdar in Nikare bişîne: Navek an jî email nederbasdar e Ji kerema xwe herî kêm navê bikarhênerekî tevlî bike - (Girêdayî daxwazê) Tu dikarî peyameke xisûsî têkevî heya 500 karakteran, ku ev wê tevlî vexwendina bo bikarhêner(an)ê were kirin. + (Girêdayî daxwazê) Tu dikarî peyameke taybet bi qasî 500 karakterî binivîsî ku di dema vexwendina bikarhêner(an) de tevlî nav nameya vexwendinê bike. %d karakter mane Karakterek maye 0 karakter maye @@ -1895,7 +1953,7 @@ Language: ku_TR Raboriya lêgerînê paqij bike? Di zimanê te de ji bo \"%s\"ê ti encam nehatin dîtin Li ser WordPress\'ê bigere - Girêdanên li ser ekrana pêşdîtinê neçalak in + Girêdan li ser ekrana pêşdîtinê neçalak in Bişîne %1$s bi serkeftî hat rakirin Heke tu %1$s rakî, ew ê êdî nikaribe bigihîje vê malperê, lê naverokên ji hêla %1$s ve hatine afirandin ew ê li ser malperê bimînin.\n\nTu dîsa jî dixwazî vî bikarhênerî rakî? @@ -1905,7 +1963,7 @@ Language: ku_TR Malperên di vê lîsteyê de vê gavê ti şandî neweşandine Bikarhêner nayê rakirin Rola bikarhêner nayê hildemandin - Bînerên malperê nehat stendin + Bînerên malperê nehatin stendin Di hildemandina Gravatara te de çewtî derket Di nûkirina Gravatara te de çewtî derket Di bicîkirina wêneyên qusandî de çewtî derket @@ -1914,31 +1972,31 @@ Language: ku_TR Niha ne guncav e. Ji kerema xwe pêborîna xwe bikevê Têketin pêk tê Ji şûna wê pêborîna xwe bikevê - Dema te şîrove kir wê her kes bibîne + Dema ku te şîrove kir ew ê her kes bibîne. Wêne hilbijêre an jî bigire - Plan - Plan + Pakêt + Pakêt Rûpel, şandî û sazkariyên te ew ê bi emailê ji ser %s\'ê ji te re bên şandin. Naverokên xwe derxîne Emaila derxistinê hat şandin! Naverok tê derxistin… Kirînên te tên kontrolkirin Kirînan nîşan bide - Li ser malpera te bilindkirinên premium yên çalak hene. Ji kerema xwe berî tu malpera xwe jê bibî bilinkirinên xwe betal bike. - Bilindkirinên Premium - Hinek tişt çewt çû. Daxwazên kirînan pêk nehat. + Li ser malpera te bilindkirinên premiûm ên çalak hene. Ji kerema xwe berî tu malpera xwe jê bibî bilindkirinên xwe betal bike. + Bilindkirinên Premiûm + Hinek tişt çewt çûn. Daxwaza kirînê pêk nehat. Malper tê jêbirin… Malperê jê bibe Malpera xwe wekî dosyeya XML\'ê derxîne Navpera (Domain) Sereke - Dema malpera te dihat jêbirin çewtiyek çêbû. Ji kerema xwe bo zêdetir alîkariyê bi timên alîkariyê re têkilî deyne. + Di jêbirina malpera te de çewtiyek derket. Ji kerema xwe ji bo alîkariya zêdetir bi tîma piştgiriyê re têkilî deyne. Di jêbirina malperê de çewtî Naverokê derxîne - Ji kerema xwe bo pejirandinê di qasa jêrîn de %1$s binivîsîne. Malpera te dê piştî vê bi hemîşeyî winda bibe. + Ji kerema xwe, ji bo pejirandinê li qada jêrîn %1$s\'ê binivîse. Malpera te ew ê piştî vê heta hetayê wenda bibe. Jêbirina Malperê Bipejirîne - Têkîlîya Alîkariyê - Tu malpereke nû bixwazî, lê nexwazî ku ti rûpel û şandiyeke te ya niha tê de nîn bin, tîma me ya alîkariyê dikare ji bo te şandî, rûpel, medya û şiroveyên te jê bibe.\n\nEv wê malpera te û URLya te aktîv bigire, lêbelê ji bo te destpêkek teze bide ji bo çêkirina naverokan. Tenê bi me re têkiliyê deyîne ji bo paqijkirina hemû naverokên xwe yên vê gavê. - Werin Em Alîkariya We Bikin + Piştgiriya Têkiliyê + Heke tu malperekê dixwazî lê şandî û rûpelên niha tê de hene naxwazî, tîma me ya piştgiriyê dikare şandî, rûpel, medya û şîroveyan ji bo te jê bibe.\n\nEv ê malper û URL\'ya te çalak bihêle û ji bo afirandina naverokan jî ew ê destpêkeke nû ji te re peyda bike. Ji bo naveroka heyî were paqijkirin tenê bi me re têkilî deyne. + Ka Em Bibin Alîkar Ji serî ve dest bi malpera xwe bike Ji serî ve dest pê bike Sazkariyên Sepanê @@ -1959,9 +2017,9 @@ Language: ku_TR Gotûbêj Deng Kêlekbend - Agahdariya li ser kurs û çalakiyên WordPress.comê (serhêl û şexsî). - Derfetên beşdarbûnê yên ji bo lêkolîn û vekolîna WordPress.comê. - Bendên ji bo fêdedîtina ji WordPress.comê. + Agahdariya li ser kurs û çalakiyên WordPress.com\'ê (serhêl û şexsî). + Derfetên beşdarbûnê ji bo lêkolîn û vekolînên WordPress.com\'ê. + Serbendên ji bo tu sûdeke baş ji WordPress.com\'ê werbigirî. Civak Lêkolîn Pêşniyar @@ -1979,11 +2037,11 @@ Language: ku_TR Şîrove tune ye Serê rûpelê %d şîrove Serê rûpelê şîroveyek - Zêdeyî %d girêdanan be pejirandin pêwîst e - Zêdeyî girêdanekê be pejirandin pêwîst e - Zêdeyî 0 girêdanê be pejirandin pêwîst e - Şîroveyên her kesî otomatîk bipejirîne - Bi otomatîkî bipejirîne ger di berê de şiroveyeke bikarhêner yê pejirandî hebe + Zêdeyî %d girêdanan be pejirandin hewce ye + Zêdeyî girêdanekê be pejirandin hewce ye + Zêdeyî 0 girêdanê be pejirandin hewce ye + Bixweber şîroveyên her kesî bipejirîne. + Heke şîroveyeke pejirandî ya bikarhêner ji berê ve hebe, bixweber bipejirîne Ji bo şîroveyên her kesî pejirandina manual hewce dike. %d roj Rojek @@ -1992,8 +2050,8 @@ Language: ku_TR Ji bo navnîşana te ya nû were pejirandin, li girêdana rastandinê ya ji emaila %1$s re hatiye şandin, bitikîne Tu niha medyayê hildixîne. Ji kerema xwe heta biqede bisekine. Şîrove vê gavê nayên nûkirin - şîroveyên kevn tên nîşandan - Wêneya bijarde saz bike - Wêneya Bijarde + Wêneyê bijarde saz bike + Wêneyê Bijarde Navnîşana emailê Bila ev şîrove bi awayekî mayînde werin jêbirin? Bila ev şîrove bi awayekî mayînde were jêbirin? @@ -2010,62 +2068,62 @@ Language: ku_TR Sazkariyên hesabê te nehat stendin Profîla te nehat stendin Koda zimên nehat naskirin - Destûr bide ku şîrove di nav hev de wek deziyan bêne rêzkirin - Hejmara meztirîn yê deziyan + Destûrê bide bila şîrove bi awayê zincîrane bêne rêzkirin. + Şîroveyên di zincîreyê de: Neçalak Lê bigere Rake Mezinahiya Orijînal - Malpera te tenê ji bo te û bikarhênerên ku te pejirandî ye xuya ye - Malpera te ji her kesî re tê xuyan lê ji motorên lêgerînê daxwaz dike ku ew neyê navnîşkirin - Malpera te ji her kesî re tê xuyan û dibe ku hatibe navnîşkirin ji aliyê motorên lêgerînan ve + Malpera te tenê ji bo te û bikarhênerên ku te pejirandine re xuyanbar e + Malpera te ji her kesî re xuyanbar e lê ji motorên lêgerînê daxwaze ku wê îndeks neke + Malpera te ji her kesî re xuyanbar e û ji aliyê motorên lêgerînê ve dikare bê îndekskirin Çend gotin di derbarê te de… Derbarê min de - Ger nehatibe sazandin, navê berdest wê bibe navê jixweber - Navê xuyabûnê ya giştî + Heke neyê sazkirin, ew ê navê xuya bi bixweberî bibe navê bikarhêner + Navê nîşandanê yê giştî Paşnav Nav Profîla Min - Risma pêşdîtina şandiyê ya eleqedar + Wêneyê pêşdîtina şandiya têkildar Agahiyên malperê nehat tomarkirin Agahiyên malperê nehat standin Bi otomatîkî bigire Şîroveyên li ser gotaran bixweber bigire. - Zincîreyên şiroveyan li nava rûpelên pirhejmar belav bike + Zincîreyên şîroveyan di nav gelek rûpelan de dabeş bike. Serê rûpelê şîrove Şirovekirinê bigire - Gava şiroveyek di naverok, nav, URL, e-name, an jî IPya xwe de yek ji van peyvan bihewîne, wê ew wek nexwestî (spam) were nîşankirin. Tu dikarî peyvên qismî têkevî, wek \"press\", wê ew bibe \"Wordpress\". - Gava şiroveyek di naverok, nav, URL, e-name, an jî IPya xwe de yek ji van peyvan bihewîne, wê ew şirove bigirin nav dûvika teftîşê. Tu dikarî peyvên qismî têkevî, wek \"press\", wê ew bibe \"Wordpress\". - Peyvekê an jî gotinekê têxîne + Dema ku di naverok, nav, URL, email, an jî IP\'ya şîroveyekê de ji van peyvan yek hebe, ew ê şîrove wekî nexwestî (spam) were nîşankirin. Tu dikarî peyvên parçeyî têkevî, mînak peyva \"press\"ê, ew ê bi \"Wordpress\"ê re hevberî hev bibe. + Dema ku di naverok, nav, URL, email, an jî IP\'ya şîroveyekê de ji van peyvan yek hebe, ew şîrovê ew ê têkeve dora kontrolê. Tu dikarî peyvên parçeyî têkevî, mînak peyva \"press\"ê, ew ê bi \"Wordpress\"ê re hevberî hev bibe. + Peyvekê an jî gotinekê bikevê Hêman nîn e - Tu dikarî van sazkariyan ji bo şandiyên taybet bêhukm bikî + Tu dikarî van sazkariyan ji bo şandiyên taybet nederbasdar bikî. di \"Bilindkirin\"ê de - Nîvenda Bilindkirinê: Videopress ji bo Zewacan + Xala(focus) Bilindkirinê: Videopress ji bo Zewacan di \"Sepanan\" de - Sepana WordPressê ya bo Androîdan Ji Aliyê Xuyaniyê ve Gelekî Bi Pêş Ket + WordPress ji bo Androidê ji aliyê xuyaniyê ve gelekî bi pêş ket di \"Mobîl\"ê de - Hildemandina Mezin ya iPhone/iPadê Vêga Hazir e + Hildemandina mezin a iPhone/iPadê niha hazir e Wêneyan Nîşan Bide Sernavê nîşan bide - Şandiyên Têkildar di bin şandiyên te de naverokên guncav yên ji malpera te nîşan dide + Şandiyên Têkildar di bin şandiyên te de naverokên guncav ji malpera te nîşan dide. Şandiyên Têkildar Nîşan Bide - Şîroveyên li parzûnekê tên wek nexwestî tên nîşankirin - Şîroveyên li parzûnekê tên ji bo venêrînê dikevin dorê - Ji bo bikarînerên nas guh nede limîta hejmara girêdanan - Nivîskarê şiroveyê divê xwedî şiroveyeke ji berê de pejirandî be - Ji bo şirove bikin divê bikarîner tomarkirî û têketî bin - Nivîskarê şîroveyê divê navê xwe û e-peyama xwe binivîse - Şiroveyan di komikên hejmara wan diyarkirî de nîşan bide - Heta radeyeke diyar destûr bide şiroveyên di nav hev de - Rêza nîşandana şiroveyan diyar dike - Piştî demeke diyar rê nede şiroveyan - Destûr bide danezanên girêdanê yên ji blogên din - Ji bo agahdarkirina blogên di gotarê de hatine girêdan hewl bide - Bihêle xwîner şirove bişînin - Sazkariyên gotûbêjê yên malpera xwe nîşan bide û biguherîne - Hemû sazkariyên berdest yên Gotûbêjê nîşan bide - Nîşan bide an biveşêre şandiyên eleqedar di xwînerê de - Mezinahiya wêneyên di şandiyê de dike bi qasî vê mezinahiyê + Şîroveyên ku bi fîltreyê re hevber dibin wekî spam têne nîşankirin + Şîroveyên ku bi fîltreyê re hevber dibin dikevin dora kontrolê + Ji bikarhênerên naskirî re sînorê girêdanê paşguh dike + Divê nivîskarê şîroveyê xwedî şîroveyeke berê ya pejirandî be + Ji bo şîrovekirinê divê bikarhêner tomar bibin û têketînê bikin + Divê nivîskarê şîroveyê nav û e-mailê dagire + Şîroveyan di parçeyên mezinahiya diyarkirî de nîşan bide + Heta radeyeke diyar destûrê bide şîroveyên di nav hev de + Rêza nîşandana şîroveyan diyar dike + Piştî dema diyarkirî rê nede şîroveyan + Destûrê bide danezanên girêdanê yên ji blogên din + Hewl bide blogeke têkildarî gotarê agahdar bike + Bihêle bila xwîner şîroveyan bişînin + Sazkariyên gotûbêjê yên malpera xwe bibîne û biguherîne + Hemû sazkariyên Gotûbêjê yên berdest bibîne + Di xwînerê de şandiyên têkildar nîşan bide an jî veşêre + Mezinahiya wêneyên di şandiyê de dike bi qasî vê firehiyê Formata şandiya nû saz dike Kategoriya şandiya nû saz dike Pêborîna xwe biguherîne @@ -2073,8 +2131,8 @@ Language: ku_TR Zimanê sereke yê ev blog pê hatiye nivîsîn Kesên dikarin malpera te bibînin kontrol dike Guherandina navnîşana te vê gavê nayê piştgirîkirin - Danasîneke kurt an gotineke cazib yê ku bloga te dide naskirin - Bi hin peyvan, îzah bike ku ev malper derbarê çi de ye + Raveyeke kurt an jî hevokek balkêş ji bo danasîna bloga te + Bi çend gotinan rave bike ka ev malper li ser çi ye Şîroveyên ji bikarhênerên nas Şîroveyên ji hemû bikarhêneran asta %d @@ -2083,7 +2141,7 @@ Language: ku_TR Gelerî Malperê jê bibe Reşlîste - Bisekinîne bo Kontrolê + Ji bo kontrolê bihêle Girêdanên di şîroveyan de Bi otomatîkî bipejirîne Rûpelkirin @@ -2091,8 +2149,8 @@ Language: ku_TR Rêz bike Divê bikarhêneran têketin kiribin Divê nav û emailê vehewîne - \"Pingback\"an werbigire - \"Pingback\"an bişîne + Paşragihandinê Bistîne + Paşragihandinê Bişîne Destûrê bide şîroveyan Formata Jixweberî Kategoriya Jixweberî @@ -2110,13 +2168,13 @@ Language: ku_TR Şandiyên Têkildar Nihênî Gotûbêj - Destûra te nîn e ji bo hilxistina medyayê ya li malperê + Ji bo tu medyayê li malperê hilxîne destûra te tune ye Nenas Oet - Ev şandî êdî ne berdest e - Bo xuyakirina vê şandiyê destûra te tune + Êdî ev şandî ne berdest e + Ji bo tu vê şandiyê bibînî destûra te tune ye Ev şandî nayê anîn - Malperên tu dişopîne di vê dawiyê de ti şandî nekirine + Malperên tu dişopînî di demên dawîn de ti şandî neweşandine Şandiyên nû tune ye URL li rûnûsgehê hat kopîkirin Rûkara Hilbijartî @@ -2142,7 +2200,7 @@ Language: ku_TR Şandî hat weşandin Bibore, rûkar nehatin dîtin. Şandiyên zêdetir bar bike - \'%s\' û tu malper nehat li hev + \'%s\' û ti malper hevber nebûn Li malperan bigere Here Xwînerê Ji bîr neke: şandiyên ku te xwendine şîrove bike @@ -2164,9 +2222,9 @@ Language: ku_TR %,d Şopîner Malper û etîketan sererast bike Şandiya Xwînerê - Sazkariyên bo danezanên ku li ser amûra te tê xuyan - Sazkariyên ji bo danezanên ku ji epeyama te ya girêdayî hesaba te hatiye şandin - Sazkariyên danezanan ên di hilpeka Danezanan de dixuyin. + Sazkariyên ji bo danezanên ku li cîhaza te tê xuyan. + Danezanên sazkariyê ji bo epeyama te ya girêdayî hesabê te re hatin şandin. + Sazkariyên ji bo danezanan di hilpeka Danezanan de dixuyin. Danezanên sepanê hatin neçalakkirin. Bitepîne vir ji bo çalakkirina wan di Sazkariyan de Cûreyên Danezanan Sazkariyên danezanan nehat barkirin @@ -2174,22 +2232,22 @@ Language: ku_TR Danezanên sepanê Email Hilpeka danezanan - Em ê hertim epeyamên girîng bişînin te yên derbarê ajimêra te de, lê belê tu yê karibî hin zêdekên alîkar jî werbigirî. + Em ê her tim emailên girîng ên têkildarî hesabê te ji te re bişînin, tu dikarî pê re hin naverokên alîkar jî werbigirî. Kurteya Şandiya Dawî Înternet tune ye - Şande hate şandin bo jêbirdankê + Şandî çû jêbirdankê Jêbirdank Amar Pêşdîtin Bibîne Biweşîne Sererast bike - Ji bo gihana vê malperê destûra te tune + Ji bo tu xwe bigihînî vê malperê destura te tune ye Ev malper nehat dîtin Vegerîne - Daxwaza te demborî bû. Ji bo ku cardin biceribînî têkeve WordPress.comê. + Dema daxwazê qediya. Ji bo ku dîsa biceribînî têkeve WordPress.com\'ê. Piştguh bike - Dîtinên Çêtirîn ya Heya Vêga + Dîtinên herî baş - heta niha Amarên Îro Şandî, dîtin û mêvanên hemû deman Kûrbînî @@ -2198,9 +2256,9 @@ Language: ku_TR Têketin/Derketin Alîkarî & Piştgirî Sazkariyên Hesêb - \"%s\" nehate veşartin çimkî ew malpera berdest e + \"%s\" nehat veşartin ji ber ku ew malpera niha ye Malpera WordPress.com\'ê biafirîne - Malpereke xwe-hewander tevlî bike + Malpereke xwe-hewan tevlî bike Malpera nû tevlî bike Maperan veşêre/nîşan bide Malperê hilbijêre @@ -2280,14 +2338,14 @@ Language: ku_TR Vêya %s bibersivîne Hîn ti şandî tune ye. Ka em şandiyekê çêkin? Tê derketin… - Nikare vê çalakiyê bi cîh bîne + Ev çalakî nayê pêkanîn Ev malper nayê astengkirin - Şandiyên ji vê malperê wê êdî neyên nîşandan + Şandiyên ji vê malperê êdî ew ê neyên nîşandan Vê malperê asteng bike Demsaz bike Hildemîne - Malperên pêşniyarkirî nîn in - Nikare dev ji şopa vê malperê berde + Malperên pêşniyarkirî tune ye + Ji şopandina vê malperê nayê derketin Ev malper nayê şopandin Jixwe tu vê malperê dişopînî Ev malper nayê nîşandan @@ -2296,7 +2354,7 @@ Language: ku_TR Malperên şopandî Mijarên şopandî Malpera Xwînerê - Eger tu bi pirranî bêyî pirsgirêkek karibî werî girêdan li vê malperê, ev dibe ku were maneya yek dixwaze malpera te teqlîd bike, û tu nikaribî dewam bikî. Dîsa jî dixwazî bi sertîfîkayê bawer bibî? + Heke tu bi piranî bêyî ti pirsgirêkê dikevî vê malperê, dibe ku ev çewtî were wateya teqlîdkirina malpera te û divê tu dewam nekî. Dîsa jî tu dixwazî bi sertîfîkayê bawer bibî? Sertîfîkaya SSL\'ê ya nederbasdar Te pêborîna xwe wenda kir? Alîkarî @@ -2336,7 +2394,7 @@ Language: ku_TR Şandiya nû Danezan tune ye…heta niha. Destûrdarkirin pêwîst e - Kontrol bike ku URLya têketî derbasdar be + Derbasdarbûna URL\'ya malperê ya te nivîsiye kontrol bike Lîsansên çavkaniya vekirî Ji bo hilxistina medyayê dosyeya demkî nayê afirandin. Jê bawer be bila di cîhaza te de têra xwe ciyê vala hebe. Navê kategoriyê @@ -2383,9 +2441,9 @@ Language: ku_TR Te û %,d kesên din ev eciband %,d kes ev eciband Bibersivîne - Tu nikarî bi WordPressê parve bikî bêyî blogeke berçav - Şîrove wekî nexwestî hat nîşankirin - Ev şandî cardin nayê anîn + Heta ku blogeke te ya xuyanbar tune be tu nikarî bi WordPressê parve bikî + Şîrove wekî spam hat nîşankirin + Ev şandî nayê anîn Te û kesekî din ev eciband Vîdyo hilbijêre Wêne hilbijêre @@ -2393,8 +2451,8 @@ Language: ku_TR %s nehat vekirin Wêne nehat nîşandan Nehat parvekirin - Ew etîket ne derbasdar e - Jixwe tu vê etîketê dişopînî + Ew mijar ne derbasdar e + Jixwe tu vê mijarê dişopînî Şîroveya te nehat şandin Te vêya eciband Kesekî vêya eciband @@ -2423,9 +2481,9 @@ Language: ku_TR Daxuyanî Sernûçe Sernav - Pêşekerî + Pêşandana Slaytê Çember - Mozaîk + Çargoşeyî Çargoşe Rûkar Biavêje diff --git a/WordPress/src/main/res/values-ko/strings.xml b/WordPress/src/main/res/values-ko/strings.xml index 4142001ff4ff..30c01c8bb43a 100644 --- a/WordPress/src/main/res/values-ko/strings.xml +++ b/WordPress/src/main/res/values-ko/strings.xml @@ -1,11 +1,39 @@ + 하나 또는 그 이상의 슬라이드는 지금 이야기가 GIF 파일을 지원하지 않기에 이야기에 추가할 수 없습니다. 정지한 이미지 또는 비디오 배경을 대신 선택하시기 바랍니다. + GIF 파일을 지원하지 않습니다 + 사이트의 이 이야기에 대한 미디어를 찾을 수 없습니다. + 이야기를 편집할 수 없습니다 + 이 이야기에 대한 미디어를 로드할 수 없습니다. 인터넷 연결을 확인하고 잠시 후 다시 시도하세요. + 이야기를 편집할 수 없습니다 + 이 이야기는 다른 장치에서 편집하였고 특정 객체를 편집하는 기능을 제한할 수도 있습니다. + 제한적인 이야기 편집 중 + 미디어를 제거했습니다. 이야기 편집을 시도하세요. + 배경 + 본문 + 폐기하기 + 아무 변경사항도 저장하지 않을 것입니다. + 변경사항을 취소하시나요? + 완료 + 다음 + 삭제하기 + 디자인을 선택하는 중에 오류가 있습니다. + 인터넷 연결을 확인하고 재시도하시기 바랍니다. + 온라인으로 돌아오면 재시도를 누르세요. + 레이아웃은 오프라인에서 사용할 수 없습니다 + 상점 자격증명으로 계속하기 + 연결한 이메일 찾기 + 토픽 따르기 + 폭 넓은 검색을 위해 더 많은 토픽을 따르도록 해보세요 + 최근 글이 없습니다 + 환영합니다! + 검색하기 <b>요한 브란트</b>가 글에 답했습니다 오늘 사이트에서 <b>50개의 좋아요</b>를 받았습니다 <b>메디슨 루이즈</b>가 글을 좋아합니다 @@ -68,7 +96,7 @@ Language: ko_KR 워드프레스 미디어 라이브러리에서 선택하기 돌아가기 시작하기 - 새 블로그를 발견할 수 있는 토픽을 팔로우하세요 + 새 블로그를 발견할 수 있는 토픽을 팔로우하세요 작성자 이 리퍼러는 스팸으로 표시할 수 없습니다. 스팸 표시 해제하기 @@ -98,7 +126,6 @@ Language: ko_KR 이 댓글을 볼 수 없습니다 항목 탐색하기 이 글 신고하기 - 각도 리더에 오신 것을 환영합니다. 손끝에서 백만의 블로그를 발견하세요. 내부 서버 오류가 생겼습니다 동작을 허용하지 않습니다 @@ -147,7 +174,6 @@ Language: ko_KR 이 슬라이드는 아직 저장하지 않았습니다. 이 슬라이드를 지웠다면, 편집한 내용을 읽게 될 것입니다. 이 슬라이드는 스토리에서 지워질 것입니다. 스토리 슬라이드를 지우시겠어요? - 슬라이드 지우기 본문 색상 변경하기 본문 정렬 변경하기 오류가 있습니다 @@ -157,8 +183,6 @@ Language: ko_KR 다시 시도하기 저장했습니다 닫기 - 다음 - 완료했습니다 공유할 대상 공유하기 사진에 저장했습니다 @@ -169,7 +193,6 @@ Language: ko_KR 뒤집기 소리 문자 - 기타 스티커 플래시 카메라 뒤집기 @@ -530,7 +553,6 @@ Language: ko_KR 마지막 부분입니다! 젯팩에 연결된 이메일 주소 <b>%1$s</b>만 확인하면 됩니다. 사이트 자격 증명으로 로그인합니다. %1$s 사이트 자격 증명으로 로그인 - 인증 이메일 보내기 사이트 페이지 팔로우 중 좋아요 @@ -556,7 +578,6 @@ Language: ko_KR 사진 찍기 또는 비디오 촬영 사진 촬영 글쓰기 시작… - 크기 사이드바 제목 플러그인 섹션 표시 %s 블록. 이 블록에는 잘못된 내용이 있습니다. diff --git a/WordPress/src/main/res/values-nb/strings.xml b/WordPress/src/main/res/values-nb/strings.xml index ae376c29cf8e..13072c840d40 100644 --- a/WordPress/src/main/res/values-nb/strings.xml +++ b/WordPress/src/main/res/values-nb/strings.xml @@ -1,13 +1,26 @@ + GIF-filer ikke støttet + Bakgrunn + Tekst + Forkast + Ingen endringer vil bli lagret. + Forkaste endringer? + Fullført + Neste + Slett + Følg emner + Velkommen! + Skann Hopp over Velg + Velg en utforming Legg til kategori Legg til ny kategori Kategorier @@ -25,9 +38,12 @@ Language: nb_NO Side opprettet Tilbake Kom i gang - Følg emner for å oppdage nye nettsteder + Følg emner for å oppdage nye blogger Av + Merk som ikke spam + Merk som spam Åpne nettstedet + Laster opp gif-media Velg element Søk eller skriv inn URL Legg til denne telefonlenken @@ -80,22 +96,23 @@ Language: nb_NO Forkaste fortelling? Slett Slette fortellingslysbilde? - Slette lysbilde Endre tekstfarge Endre tekstjustering + feilet + valgte + fravalgte + Lysbilde Prøv igjen Lagret Lukk - Neste - Utført Del på + DEL Lagret til forografier Prøv på nytt Lagret Lagrer Lyd Tekst - Mer Forhåndsvis Lag side Lag tom side @@ -390,7 +407,6 @@ Language: nb_NO Straks ferdig! Vi må bare få bekreftet din e-postadresse koblet til Jetpack <b>%1$s</b> Logg inn med nettstedsinnloggingen. Logg inn med din innlggingsinformasjon fra nettstedet %1$s - Send e-post for bekreftelse Nettstedsside Følger Likinger @@ -416,7 +432,6 @@ Language: nb_NO Ta et bilde eller en video Ta et foto Start å skrive… - Størrelse Vis seksjon %s-blokk. enn blokken har ugyldig innhold %s blokk. Tom diff --git a/WordPress/src/main/res/values-night/styles.xml b/WordPress/src/main/res/values-night/styles.xml index 61548073849e..e7e084acd560 100644 --- a/WordPress/src/main/res/values-night/styles.xml +++ b/WordPress/src/main/res/values-night/styles.xml @@ -78,7 +78,7 @@ @color/mlp_categories_button_background_dark @color/mlp_categories_button_background_selected_dark @color/mlp_divider_dark - @color/mlp_categories_background_dark + @color/mlp_categories_background_dark @style/WordPress.MaterialCalendarStyle diff --git a/WordPress/src/main/res/values-nl/strings.xml b/WordPress/src/main/res/values-nl/strings.xml index a9c7e22fc5aa..b65819ab54aa 100644 --- a/WordPress/src/main/res/values-nl/strings.xml +++ b/WordPress/src/main/res/values-nl/strings.xml @@ -1,19 +1,57 @@ + Een of meer slides zijn niet toegevoegd aan je verhaal omdat verhalen geen GIF bestanden ondersteunen op dit moment. Kies in plaats daarvan een statische afbeelding of video achtergrond. + Dit verhaal is bewerkt op een ander apparaat en de mogelijkheid om bepaalde objecten te bewerken kan beperkt zijn. + Kan het verhaal niet bewerken + Niet mogelijk om media te laden voor dit verhaal. Controleer je internet verbinding en probeer het zometeen nog een keer. + Kan verhaal niet bewerken + We konden geen media vinden voor dit verhaal op de site. + GIF bestanden worden niet ondersteund + Media is verwijderd. Probeer je verhaal te bewerken. + Beperkte verhaal bewerking + Lay-outs zijn niet beschikbaar indien offline + Controleer je internet verbinding en probeer het opnieuw. + Er was een fout bij het selecteren van het ontwerp. + Verwijder + Volgende + Klaar + Wijzigingen negeren? + Elke gemaakte wijziging zal niet opgeslagen worden. + Negeer + Tekst + Achtergrond + Tik op opnieuw proberen wanneer je weer online bent. + Scan + Welkom! + Geen recente berichten + Volg onderwerpen + Vind je verbonden e-mail + Probeer meer onderwerpen te volgen om de zoekopdracht uit te breiden + Ga verder met winkel-referenties + <b>Johan Brandt</b> antwoordde op je bericht + Je ontving <b>50 likes</b> op je site vandaag + <b>Madison Ruiz</b> liked je bericht Kies Overslaan + Scrolbaar blokmenu gesloten. + Scrolbaar blokmenu geopend. Selecteer een blok. + Kies je favoriete homepage-opmaak. Je kan deze later altijd nog aanpassen of wijzigen. Niet ingesteld Nieuwe categorie toevoegen Categorie toevoegen Lay-outs niet beschikbaar vanwege een fout Lay-outs niet beschikbaar indien offline Kies een ontwerp + Categorieën + Categorieën + Tik op opnieuw proberen wanneer je opnieuw online bent of maak een lege pagina met de knop hieronder. + Tik op opnieuw proberen of maak een lege pagina met de knop hieronder. Kunst Koken Voetbal @@ -22,37 +60,43 @@ Language: nl Politiek Mijn toptien café\'s Museums in Londen + Pamela Nguyen + Webnieuws + Rock n\' Roll Weekly + The World\'s Best Fans + Ik ben zo geïnspireerd door fotograaf Cameron Karsten. Ik ga deze technieken zeker proberen bij mijn volgende Welkom bij de wereld\'s meest populaire sitebouwer. Met deze krachtige editor kun je onderweg publiceren. Bekijk reacties en berichten in real time. Bekijk hoe je publiek groeit met in-dept analytics. Volg je favoriete sites en ontdek nieuwe reads. + Raak geinspireerd Sites om te volgen Media laden is mislukt \'%s\' wordt niet volledig ondersteund We werken hard om meer blokken toe te voegen bij elke release. Ze worden als een nieuw blogbericht op je site gepubliceerd, zodat je publiek nooit iets mist. - Maak een verhaal bericht Kies afbeeldingen Bewerk met gebruik van de webeditor Help knop - Combineer foto\'s, video\'s en tekst om boeiende en tikbare verhaal berichten te maken die je bezoekers geweldig zullen vinden. - Verhaal berichten verdwijnen niet + Maak een verhaal + Combineer foto\'s, video\'s en tekst om boeiende en tikbare verhalen te maken die je bezoekers geweldig zullen vinden. + Verhalen verdwijnen niet %1$s heeft geen toegang tot je foto\'s. Om dit op te lossen, bewerk je je rechten en schakel je %2$s en %3$s in. Lay-out voorbeeld Pagina aangemaakt Blanco pagina aangemaakt - Hoe maak je een verhaal bericht - Je hebt vroege toegang tot verhaal berichten en we zouden het heel leuk vinden als je het eens probeert. - Verhaal berichten introductie Voorbeeld verhaaltitel Nu zijn verhalen voor iedereen + Hoe maak je een verhaal + Je hebt vroege toegang tot verhalen en we zouden het heel leuk vinden als je het eens probeert. + Introductie verhalen Kies uit WordPress mediabibliotheek Invoegen media mislukt: %s Media invoegen mislukt. Terug Door - Volg onderwerpen om nieuwe blogs te ontdekken + Volg onderwerpen om nieuwe blogs te ontdekken Aan de slag Media aan het uploaden Voorraad media aan het uploaden @@ -86,7 +130,6 @@ Language: nl Je actie is niet toegestaan Er is een interne server fout ontstaan Welkom bij Reader. Ontdek miljoenen van blogs aan je vingertoppen. - Hoek Selecteer een lay-out Opmerking:Kolom lay-out kan verschillen tussen thema\'s en scherm grootten Maak een bericht @@ -128,7 +171,6 @@ Language: nl in fout gegaan Wijzig tekstuitlijning Wijzig tekstkleur - Verwijder slide Verwijder verhaal slide? Deze slide zal verwijderd worden uit je verhaal. Deze slide is nog niet opgeslagen. Als je deze slide verwijderd, zal je elke wijziging die je hebt gemaakt verliezen. @@ -150,7 +192,6 @@ Language: nl Probeer opnieuw Slide Stickers - Meer Tekst Geluid Omkeren @@ -161,8 +202,6 @@ Language: nl Opgeslagen naar foto\'s DELEN Deel naar - Klaar - Volgende Sluiten Tik op %1$s Maken. %2$s Selecteer vervolgens <b>Blog bericht</b> Ga aan de slag door te kiezen uit een breed scala aan vooraf gemaakte pagina lay-outs. Of begin gewoon met een lege pagina. @@ -512,11 +551,10 @@ Language: nl We konden geen toegang krijgen tot je site omdat hiervoor <b>HTTP-authenticatie is vereist</b>. Neem contact op met je host om dit probleem te verhelpen. We konden geen toegang krijgen tot het <b>XMLRPC-bestand</b> op je site. Neem contact op met je host om dit probleem te verhelpen. Bijna klaar! We hoeven nu alleen nog het e-mailadres (<b>%1$s</b>) te verifiëren dat aan je Jetpack-account is gekoppeld - Inloggen met je site-inloggegevens voor %1$s. - Verificatiemail verzenden Volgen Site-pagina - Inloggen met site inlog-gegevens + Inloggen met site-referenties. + Inloggen met je site-referenties voor %1$s. We kunnen de berichten momenteel niet openen. Probeer het later opnieuw %sk %s mld. @@ -540,7 +578,6 @@ Language: nl Maak een foto of video Maak een foto Begin met schrijven … - Afmetingen Sidebartitel-plugin Sectie tonen %s-blok. Dit blok bevat ongeldige inhoud @@ -1122,7 +1159,7 @@ Language: nl Instellen Jetpack kan momenteel niet geïnstalleerd worden. Jetpack installeren op je site. Het kan een aantal minuten duren voordat de installatie is afgerond. - De inloggegevens voor je site zullen niet worden opgeslagen en worden alleen gebruikt om Jetpack te installeren. + Je site-referenties zullen niet worden opgeslagen en worden alleen gebruikt om Jetpack te installeren. Installeer de Jetpack-plugin om statistieken voor je WordPress-site te gebruiken. Er komen geen thema\'s overeen met je zoekopdracht Waar ben je naar op zoek? @@ -1336,13 +1373,13 @@ Language: nl Bestandsgegevens Deelknoppen Meldingen - Lezer Ik Mijn site Meldingsinstellingen Help en support Licentie Release-opmerkingen + Reader Je avatar is geüpload en binnenkort beschikbaar. Uitgelicht Versie %s @@ -2323,9 +2360,9 @@ Language: nl Kan deze site niet volgen Kan deze site niet ontvolgen Geen aanbevolen sites - Lezer site Gevolgde onderwerpen Voer een URL of onderwerp in om te volgen + Reader site Help Wachtwoord vergeten? Ongeldig SSL-certificaat @@ -2430,7 +2467,6 @@ Language: nl Deze lijst is leeg 1 persoon vindt dit leuk Je vindt dit leuk - Je reactie kon niet gepost worden Volgend Beantwoord reactie… Nog geen reacties @@ -2438,6 +2474,7 @@ Language: nl Abonneren Je volgt dit onderwerp al Dat is geen geldig onderwerp + Je reactie kon niet geplaatst worden Diavoorstelling Titel Onderschrift diff --git a/WordPress/src/main/res/values-pl/strings.xml b/WordPress/src/main/res/values-pl/strings.xml index 801ff7fbc46e..0244bc5fdbd8 100644 --- a/WordPress/src/main/res/values-pl/strings.xml +++ b/WordPress/src/main/res/values-pl/strings.xml @@ -1,13 +1,38 @@ + Tło + Tekst + Odrzuć + Wszelkie zmiany nie zostaną zapisane + Odrzucić zmiany? + Gotowe + Następny + Usuń + Wystąpił błąd podczas wyboru projektu + Sprawdź swoje połączenie internetowe i spróbuj ponownie. + Stuknij ponów kiedy będziesz spowrotem online + Szablony nie są dostępne w trybie offline + Zaloguj się za pomocą danych uwierzytelniających tej witryny + Odnajdź swój połączony email + Obserwuj tematy + Spróbuj poniższych tematów aby poszerzyć wyszukiwanie + Brak ostatnich wpisów + Witaj! + Skanuj + <b>Johan Brandt</b> odpowiedział na twój wpis + Twoja witryna otrzymała dziś <b>50 polubień</b> + <b>Madison Ruiz</b> polubił(a) twój wpis Pomiń Wybierz + Otwarto przewijalne menu blokowe. Wybierz blok. + Zamknięto przewijalne menu blokowe. + Wybierz swój ulubiony szablon dla strony głównej. Możesz go dostosować lub zmienić w późniejszym czasie. Wybierz wzór Dodaj kategorię Kategorie @@ -16,6 +41,8 @@ Language: pl Dodaj nową kategorię Szablony nie są dostępne z powodu błędu Szablony nie są dostępne w trybie offline + Stuknij ponów kiedy będziesz spowrotem online lub stwórz pustą stronę używając poniższego przycisku. + Stuknij ponów lub stwórz pustą stronę używając poniższego przycisku. Polityka Muzyka Ogrodnictwo @@ -30,6 +57,7 @@ Language: pl Dzięki potężnemu edytorowi możesz w locie dodawać nowe wpisy. Witaj na najbardziej popularnej platformie do tworzenia witryny internetowej Obserwuj jak rośnie twoja publiczność dzięki zaawansowanej analityce. + Sprawdzaj komentarze i otrzymuj powiadomienia w czasie rzeczywistym. Nie udało się wczytać plików mediów Witryny do obserwacji \'%s\' nie jest w pełni wspierana @@ -55,8 +83,8 @@ Language: pl Wybierz z biblioteki mediów WordPressa Cofnij Rozpocznij - Obserwuj tematy aby odkryć nowe blogi Autor + Obserwuj tematy aby odkryć nowe blogi Oznacz jako Spam Oznacz jako Nie Spam Otwórz witrynę @@ -89,7 +117,6 @@ Language: pl Wystąpił wewnętrzny błąd serwera Twoje działanie nie jest dozwolone %1$s więcej elementów - Obrót Wybierz układ Uwaga: Układ kolumny może różnić się pomiędzy motywami i różnymi wymiarami ekranów \@string/contact_support @@ -129,7 +156,6 @@ Language: pl Bez tytułu Usuń Ten slajd nie został jeszcze zachowany. Jeśli go usuniesz, stracisz wszystkie zmiany, które wprowadziłeś. - Usuń slajd Zmień kolor tekstu Zmień wyrównanie tekstu z błędem @@ -144,8 +170,6 @@ Language: pl Ponów Zapisana Zamknij - Dalej - Zrobione UDOSTĘPNIJ Zapisano w obrazach Ponów @@ -155,7 +179,6 @@ Language: pl Odwróć Dźwięk Tekst - Więcej Naklejki Flash kamera z funkcją flip @@ -513,7 +536,6 @@ Language: pl Nie byliśmy w stanie uzyskać dostępu do twojej witryny. Aby rozwiązać ten problem, sprawdź dostęp do hosta. Nie byliśmy w stanie uzyskać dostępu do twojej witryny z powodu problemu z <b>SSL Certificatem</b>. Aby rozwiązać ten problem, sprawdź dostęp do hosta. Nie byliśmy w stanie uzyskać dostępu do twojej witryny ponieważ wymaga <b>Authentykacji HTTP</b>. Aby rozwiązać ten problem, sprawdź dostęp do hosta. - Wyślij email weryfikacyjny Obserwowane Zaloguj się za pomocą danych uwierzytelniających %1$s tej witryny Nie byliśmy w stanie uzyskać dostępu do <b>pliku XMLRPC</b> na twojej witrynie. Aby rozwiązać ten problem, sprawdź dostęp do hosta. @@ -543,7 +565,6 @@ Language: pl Zrób zdjęcie lub nakręć film Wykonaj zdjęcie Rozpocznij pisanie… - Rozmiar Wybierz sekcję %s blok. Ten blok ma nieprawidłową zawartość %s blok. Puste diff --git a/WordPress/src/main/res/values-pt-rBR/strings.xml b/WordPress/src/main/res/values-pt-rBR/strings.xml index d762bbf2be15..b5385eec56f8 100644 --- a/WordPress/src/main/res/values-pt-rBR/strings.xml +++ b/WordPress/src/main/res/values-pt-rBR/strings.xml @@ -29,7 +29,6 @@ Language: pt_BR Escolher da biblioteca de mídias do WordPress Voltar Comece agora - Siga tópicos para descobrir novos blogs Por Este referenciador não pode ser marcado como spam Desmarcar como spam @@ -59,7 +58,6 @@ Language: pt_BR Microfone Não é possível mostrar este comentário Reportar este post - Ângulo Sua ação não é permitida Boas-vindas ao Leitor. Descubra milhões de blogs ao seu alcance. Ocorreu um erro interno no servidor @@ -103,7 +101,6 @@ Language: pt_BR Sem título Excluir Excluir slide do story? - Excluir slide Mudar cor do texto Mudar alinhamento do texto Descartar @@ -117,8 +114,6 @@ Language: pt_BR Tentar novamente Salvo Fechar - Próximo - Concluído Compartilhar em Compartilhar Salvo em fotos @@ -129,7 +124,6 @@ Language: pt_BR Virar Som Texto - Mais Adesivos Flash Virar câmera @@ -489,7 +483,6 @@ Language: pt_BR Não foi possível acessar o <b>arquivo XMLRPC</b> de seu site. Entre em contato com sua hospedagem para resolver isso. Quase pronto! Só precisamos verificar seu endereço de e-mail conectado ao Jetpack: <b>%1$s</b> Acessar com as credenciais do site %1$s - Enviar um e-mail de verificação Seguindo Página do site Acessar com as credenciais do site. @@ -516,7 +509,6 @@ Language: pt_BR Fotografar ou filmar Tirar uma foto Comece a escrever… - Tamanho Barra lateral de título do plugin Mostrar seção Bloco %s. Este bloco tem conteúdo inválido. diff --git a/WordPress/src/main/res/values-ro/strings.xml b/WordPress/src/main/res/values-ro/strings.xml index addfab4dccbc..48f470bc27ea 100644 --- a/WordPress/src/main/res/values-ro/strings.xml +++ b/WordPress/src/main/res/values-ro/strings.xml @@ -1,11 +1,39 @@ + Nu au fost adăugate diapozitive în narațiunea ta deoarece narațiunile nu acceptă fișiere GIF. Te rog alege în schimb o imagine statică sau un fundal video. + Fișierele GIF nu sunt acceptate + Nu am putut găsi pe sit conținut media pentru această narațiune. + Nu pot edita narațiunea + Nu pot să încarc conținut media pentru această narațiune. Verifică conexiunea la internet și încearcă din nou. + Nu pot edita narațiunea + Această narațiune a fost editată pe un alt dispozitiv, iar posibilitatea de a edita anumite obiecte poate fi limitată. + Editare limitată pentru narațiuni + Conținutul media a fost înlăturat. Încearcă să-ți editezi narațiunea. + Fundal + Text + Renunță + Nu va fi salvată nicio modificare făcută. + Renunți la modificări? + Gata + Următorul + Șterge + A apărut o eroare în timpul selectării designului. + Te rog verifică-ți conexiunea la internet și încearcă din nou. + Atinge reîncearcă când ești din nou online. + Aranjamentele nu sunt disponibile când ești offline + Continuă cu datele de conectare la magazin + Găsește emailul conectat + Urmărește subiecte + Încearcă să urmărești mai multe subiecte pentru a extinde căutarea + Niciun articol recent + Bine ai venit! + Scanează <b>Johan Brandt</b> a răspuns la articolul tău Azi ai primit <b>50 de aprecieri</b> pe sit <b>Madison Ruiz</b> ți-a apreciat articolul @@ -68,7 +96,7 @@ Language: ro Alege din biblioteca Media din WordPress Înapoi Începe - Urmărește niște subiecte pentru a descoperi bloguri noi + Urmărește niște subiecte pentru a descoperi bloguri noi De Acest referent nu poate fi marcat ca spam Anulează marcarea ca spam @@ -98,7 +126,6 @@ Language: ro Nu pot să arăt acest comentariu Răsfoiește pentru a căuta elemente Raportează acest articol - Unghi Bine ai venit la Cititor. Descoperi milioane de bloguri la îndemână. A apărut o eroare internă la server Acțiunea ta nu este permisă @@ -147,7 +174,6 @@ Language: ro Acest diapozitiv nu a fost încă salvat. Dacă ștergi acest diapozitiv, vei pierde toate modificările pe care le-ai făcut. Acest diapozitiv va fi înlăturat din narațiune. Ștergi diapozitivul narațiunii? - Șterge diapozitivul Schimbă culoarea textului Modifică alinierea textului eronat @@ -157,8 +183,6 @@ Language: ro Reîncearcă Salvat Închide - Următor - Gata Partajează pe PARTAJEAZĂ Salvată în fotografii @@ -169,7 +193,6 @@ Language: ro Întoarcere Sunet Text - Mai multe Autocolante Bliț Întoarce camera @@ -530,7 +553,6 @@ Language: ro Aproape gata! Trebuie doar să-ți verificăm adresa de email conectată la Jetpack <b>%1$s</b> Autentifică-te cu datele de conectare ale sitului. Autentifică-te cu datele de conectare ale sitului %1$s - Trimite emailul de verificare Pagină sit Urmăresc Aprecieri @@ -556,7 +578,6 @@ Language: ro Fă o fotografie sau un video Fă o poză Începe să scrii… - Dimensiune Conectare titlu bară laterală Arată secțiunea Bloc %s. Acest bloc are conținut invalid diff --git a/WordPress/src/main/res/values-ru/strings.xml b/WordPress/src/main/res/values-ru/strings.xml index 203a15541546..b666f251cb79 100644 --- a/WordPress/src/main/res/values-ru/strings.xml +++ b/WordPress/src/main/res/values-ru/strings.xml @@ -1,11 +1,39 @@ + К вашей истории не были добавлены один или несколько слайдов, на текущий момент истории не поддерживают GIF файлы. Выберите статическое изображение или видео для фона вместо GIF. + Эта история редактировалась на другом устройстве. Возможности редактирования некоторых объектов могут быть ограничены. + Нельзя отредактировать историю + Невозможно загрузить медиафайлы этой истории. Проверьте ваше подключение к сети и попробуйте снова. + Нельзя отредактировать историю + Невозможно найти медиафайлы этой истории на сайте. + GIF файлы не поддерживаются + Медиафайл удалён. Попробуйте отредактировать историю. + Ограниченное редактирование истории + Макеты недоступны при отсутствии подключения к сети + Нажмите повторить при появлении подключения к сети. + Проверьте подключение к Интернету и повторите попытку. + При выборе оформления произошла ошибка. + Удалить + Далее + Готово + Отменить изменения + Сделанные изменения не будут сохранены. + Отбросить + Текст + Фон + Сканировать + Добро пожаловать! + Нет свежих записей + Для расширения поиска попробуйте подписаться на больше тем + Подписаться на темы + Узнать адрес привязанной эл. почты + Продолжить с учетными данными магазина <b>Вася Пупкин</b> ответил на вашу запись <b>Юля Петрова</b> отмечает вашу запись как понравившуюся Вы сегодня получили <b>50 отметок \"нравится\"</b> на сайте @@ -68,7 +96,7 @@ Language: ru Вставка мультимедиа не удалась. Назад От автора - Подписывайтесь на темы для того, чтобы найти новые блоги + Подписывайтесь на темы для того, чтобы найти новые блоги Начните Загрузка медиафайлов Загрузка стоковых медиафайлов @@ -98,7 +126,6 @@ Language: ru Не получается найти учётную запись WordPress.com для этого адреса email. Получить ссылку для входа по email Пожаловаться на запись - Угол Добро пожаловать в Чтиво. Откройте миллионы блоков прямо у вас под рукой. Произошла внутренняя ошибка сервера Это действие недопустимо @@ -144,7 +171,6 @@ Language: ru с ошибкой Изменить выравнивание текста Изменить цвет текста - Удалить слайд Удалить слайд истории? Этот слайд будет удален из истории. Этот слайд ещё не сохранён. Если вы удалите его, то потеряете все сделанные правки. @@ -165,7 +191,6 @@ Language: ru Перевернуть камеру Вспышка Наклейки - Еще Текст Звук Отразить @@ -176,8 +201,6 @@ Language: ru Сохранено в фотографиях ПОДЕЛИТЬСЯ Поделиться с - Готово - Далее Закрыть Сохранено Повторить @@ -527,7 +550,6 @@ Language: ru Мы не смогли подключиться к сайту, поскольку имеется проблема с <b>сертификатом SSL</b>. Возможно потребуется обратиться в техподдержку хостинга, чтобы решить эту проблему. Мы не смогли подключиться к сайту. Возможно потребуется обратиться в техподдержку хостинга, чтобы решить эту проблему. Подписчик - Отправить письмо с подтверждением Войдите с именем пользователя и паролем для сайта %1$s Почти готово! Нужно только проверить адрес эл.почты подключения Jetpack <b>%1$s</b> Мы не смогли подключиться к <b>XMLRPC</b> сайта. Возможно потребуется обратиться в техподдержку хостинга, чтобы решить эту проблему. @@ -561,7 +583,6 @@ Language: ru Блок %s. Блок имеет неверное содержимое. Показать раздел Плагин заголовка боковой панели - Размер Вырезать блок Отсутствует приложения для обработки этого запроса. Пожалуйста, установите веб-браузер. Открыть настройки diff --git a/WordPress/src/main/res/values-sq/strings.xml b/WordPress/src/main/res/values-sq/strings.xml index facd999ae5a3..2a12afb67adf 100644 --- a/WordPress/src/main/res/values-sq/strings.xml +++ b/WordPress/src/main/res/values-sq/strings.xml @@ -1,11 +1,39 @@ + Një ose disa diapozitiva nuk janë shtuar te Artikulli juaj, ngaqë Artikujt nuk mbulojnë kartela GIF, hëpërhë. Ju lutemi, në vend të tyre, zgjidhni një figurë statike ose një sfond video. + Kartelat GIF nuk mbulohen + S’gjetëm dot te sajti median për këtë artikull. + S’përpunohet dot Artikulli + S’arrihet të ngarkohet media për këtë artikull. Kontrolloni lidhjen tuaj në internet dhe riprovoni pas një çasti. + S’përpunohet dot Artikulli + Ky artikull u përpunua në një pajisje tjetër dhe aftësia për të përpunuar disa elemente të dhënë mund të jetë e kufizuar. + Përpunim Artikulli i Kufizuar + Media është hequr. Provoni të përpunoni Artikullin tuaj. + Sfond + Tekst + Hidhe tej + Çfarëdo ndryshimesh të bëra, s’do të ruhen. + Të hidhen tej ndryshimet? + U bë + Pasuesi + Fshije + Pati një gabim gjatë përzgjedhjes së skemës. + Ju lutemi, Kontrolloni lidhjen tuaj në internet dhe riprovoni. + Kur të jeni sërish i lidhur, prekni Riprovo. + S’mund të kihen skema, teksa jeni jashtë linje + Vazhdo me kredenciale shitoreje + Gjeni email-in tuaj të lidhur + Ndiqni tema + Provoni të ndiqni më tepër tema që të zgjerohet kërkimi + Pa postime së fundi + Mirë se vini! + Skanoje <b>Durim Cerova</b> iu përgjigj postimit tuaj Sot në sajtin tuaj patët <b>50 pëlqeim</b> <b>Maqo Senko</b> pëlqeu postimin tuaj @@ -68,7 +96,7 @@ Language: sq_AL Zgjidhni prej Mediatekës WordPress Mbrapsht Fillojani - Ndiqni tema, që të zbuloni blogje të rinj + Ndiqni tema, që të zbuloni blogje të rinj Nga Këtij referuesi s’mund t’i vihet shenjë si i padëshiruar Hiqja Shenjën Si i Padëshiruar @@ -97,7 +125,6 @@ Language: sq_AL S’arrihet të shfaqet ky koment Shfletoni për objekte Njoftoni për këtë postim - Kënd Mirë se vini te Reader. Zbuloni në pëllëmbë të dorës miliona blogje. Ndodhi një gabim i brendshëm shërbyesi Veprimi juaj s’lejohet @@ -146,7 +173,6 @@ Language: sq_AL Ky diapozitiv s’është ruajtur ende. Nëse e fshini këtë diapozitiv, do të humbni çfarëdo përpunimesh që keni bërë. Ky diapozitiv do të hiqet prej sajtit tuaj. Të fshihet diapozitivi i shkrimit? - Fshije diapozitivin Ndryshoni ngjyrë teksti Ndryshoni drejtim teksti me gabim @@ -156,8 +182,6 @@ Language: sq_AL Riprovo U ruajt Mbylle - Pasuesi - U bë Ndajeni me të tjerët në NDAJENI ME TË TJERË U ruajt te fotot @@ -168,7 +192,6 @@ Language: sq_AL Ktheje në anë tjetër Tingull Tekst - Më tepër Ngjitës Blic Rrotulloni kamerën @@ -529,7 +552,6 @@ Language: sq_AL Thuajse mbërritëm! Na duhet vetëm të verifikojmë adresën tuaj email të lidhur me Jetpack-un <b>%1$s</b> Hyni me kredenciale sajti. Hyni me kredencialet tuaja për sajtin %1$s - Dërgo email verifikimi Faqe sajti Ndjekur prej jush Pëlqime @@ -555,7 +577,6 @@ Language: sq_AL Bëni Foto ose Video Bëni një Foto Nisni të shkruani… - Madhësi Shtojcë titulli anështylle Shfaq ndarje Bllok %s. Ky bllok ka lëndë të pavlefshme diff --git a/WordPress/src/main/res/values-sr/strings.xml b/WordPress/src/main/res/values-sr/strings.xml index e2ac88064d78..fcff1d246526 100644 --- a/WordPress/src/main/res/values-sr/strings.xml +++ b/WordPress/src/main/res/values-sr/strings.xml @@ -1,11 +1,18 @@ + Позадина + Текст + Одбаци + Одбацити измене? + Готово + Следеће + Обриши Прескочи Одабери Одаберите дизајн @@ -42,7 +49,6 @@ Language: sr_RS %s одабрано Микрофон Пријави овај чланак - Угао Ваша акција није дозвољена Добродошли у читач. Откријте милионе блогова на дохват руке. Дошло је до интерне грешке сервера @@ -88,7 +94,6 @@ Language: sr_RS Овај слајд ће бити уклоњен из Ваше приче. Овај слајд још увек није сачуван. Ако обришете овај слајд, изгубићете сва уређивања која сте направили. Обриши слајд приче? - Обриши слајд Измени боју текста Измени поравнање текста има грешку @@ -102,8 +107,6 @@ Language: sr_RS Покушај поново Сачувано Затвори - Следећи - Готово Подели ПОДЕЛИ Сачувано међу фотографијама @@ -114,7 +117,6 @@ Language: sr_RS Блиц Звук Текст - Више Налепнице Блиц Окрени камеру @@ -296,7 +298,6 @@ Language: sr_RS Спремни за синхронизацију? Домен није доступан -%s - Пошаљи верификациону електронску пошту Страница сајта Прати Сачувано @@ -319,7 +320,6 @@ Language: sr_RS Направи видео запис Направи фотографију или видео запис Направи фотографију - Величина Исеци блок Ресетуј блок Прикажи одељак @@ -372,6 +372,8 @@ Language: sr_RS Искључено Садржај Видео хостинг без реклама + Брже слике + Брже статичке датотеке Укључено Убрзавач сајта Перформанса @@ -379,11 +381,17 @@ Language: sr_RS Датотека Преузимања датотеке Статистика преузимања датотеке није бележена пре 28. јуна 2019. године. + Временска зона сајта (UTC - %s) + Временска зона сајта (UTC + %s) + Временска зона сајта (UTC) Подели Подразумевано Десктоп Иди назад Иди напред + Заказан чланак + Заказан чланак: подсетник за 10 минута + Заказан чланак: подсетник за 1 сат Датум и време Искључено 10 минута раније @@ -1409,6 +1417,7 @@ Language: sr_RS Ћаскање Звук Са стране + Савети за максимизирање користи од WordPress.com. Заједница Предлози Одговори на моје коментаре @@ -1426,6 +1435,8 @@ Language: sr_RS Нема коментара %d коментара по страни 1 коментар по страни + Затражи допуштење за више од %d веза + Затражи допуштење за више од 1 везе Потребно допуштење за више од 0 веза Аутоматски одобри коментаре свих. Аутоматски одобри ако корисник има претходно одобрени коментар diff --git a/WordPress/src/main/res/values-sv/strings.xml b/WordPress/src/main/res/values-sv/strings.xml index b37d2a68f26e..d9c59879c0b1 100644 --- a/WordPress/src/main/res/values-sv/strings.xml +++ b/WordPress/src/main/res/values-sv/strings.xml @@ -1,11 +1,39 @@ + En eller flera bilder lades inte till i din berättelse eftersom berättelser för närvarande saknar stöd för GIF-filer. Välj en statisk bild eller en video som bakgrund i stället. + Denna berättelse har redigerats på en annan typ av enhet och möjligheten att redigera vissa objekt kan vara begränsad. + Det går inte att redigera berättelsen. + Det går inte att hämta mediafilerna för denna berättelse. Kontrollera din internetanslutning och försök igen. + Det går inte att redigera berättelsen. + Vi hittar inte mediafilerna för denna berättelse på webbplatsen. + GIF-filer stöds inte + Mediafilerna har tagits bort. Försök att redigera din berättelse. + Begränsad berättelseredigering + Layouter är inte tillgängliga när du saknar internetförbindelse + Tryck på ”Försök igen” när du har förbindelse med internet igen. + Kontrollera din internet-anslutning och försök igen. + Ett fel uppstod när designen skulle aktiveras. + Ta bort + Nästa + Klart + Kasta ändringarna? + Eventuella ändringar kommer inte att sparas. + Kasta + Text + Bakgrund + Skanna + Välkommen! + Inga nya inlägg + Försök att följa fler ämnen för att söka bredare + Följ ämnen + Hitta din anslutna e-postadress + Fortsätt med butiksautentiseringsuppgifter Du har fått <b>50 gilla-markeringar</b> på webbplatsen i dag <b>Erik S</b> har svarat på ditt inlägg <b>Anna S</b> gillade ditt inlägg @@ -68,7 +96,7 @@ Language: sv_SE Infogning av media misslyckades: %s Tillbaka Kom igång - Följ ämnen för att upptäcka nya bloggar + Följ ämnen för att upptäcka nya bloggar Av Laddar upp media Öppna webbplats @@ -102,7 +130,6 @@ Language: sv_SE Din åtgärd är inte tillåten Ett internt serverfel inträffade Välkommen till läsaren. Upptäck miljontals bloggar som finns smidigt tillgängliga. - Vinkel Välj en layout Obs: Kolumnlayouten kan variera mellan olika teman och skärmstorlekar Dölj @@ -144,7 +171,6 @@ Language: sv_SE med fel Ändra textens justering Ändra textfärg - Ta bort bild Ta bort bild ur berättelse? Denna bild kommer att tas bort ur din berättelse. Bilden är inte sparad än. Om du tar bort denna bild förlorar du eventuell bildredigering. @@ -165,7 +191,6 @@ Language: sv_SE Ta bild Blixt Klistermärken - Mer Text Ljud Vänd @@ -177,8 +202,6 @@ Language: sv_SE Sparat till foton DELA Dela till - Klart - Nästa Stäng Sparat Försök igen @@ -527,7 +550,6 @@ Language: sv_SE Vi kunde inte nå din webbplats på grund av ett problem med <b>SSL-certifikatet</b>. För att lösa detta behöver du kontakta ditt webbhotell. Vi kunde inte nå din webbplats. För att lösa detta behöver du kontakta ditt webbhotell. Följer - Skicka verifieringsmeddelande via e-post Logga in med dina inloggningsuppgifter för webbplatsen %1$s Nästan klart! Vi behöver bara bekräfta den e-postadress du har registrerad hos Jetpack <b>%1$s</b> Vi kunde inte nå filen <b>XMLRPC</b> på din webbplats. För att lösa detta behöver du kontakta ditt webbhotell. @@ -561,7 +583,6 @@ Language: sv_SE Block av typen %s. Detta block har ogiltigt innehåll Visa sektion Tillägg för sidopanelrubrik - Storlek Klipp ut blocket Det finns inget program som kan hantera denna begäran. Installera ett webbläsarprogram. Öppna inställningar diff --git a/WordPress/src/main/res/values-tr/strings.xml b/WordPress/src/main/res/values-tr/strings.xml index eff72d42350f..572a26c9cd87 100644 --- a/WordPress/src/main/res/values-tr/strings.xml +++ b/WordPress/src/main/res/values-tr/strings.xml @@ -1,11 +1,33 @@ + Arka plan + Metin + Vazgeç + Yapılan değişiklikler kaydedilmeyecek. + Değişiklikler iptal edilsin mi? + Tamamlandı + Sonraki + Sil + Tasarım seçilirken bir hata oluştu. + Lütfen internet bağlantınızı kontrol edip tekrar deneyin. + Tekrar çevrimiçi olduğunuzda yeniden dene\'ye dokunun. + Çevrimdışıyken düzenler kullanılamaz + Mağaza kimlik bilgileriyle devam edin + Bağlı e-postanızı bulun + Takip edilen konular + Arama kapsamını genişletmek için daha fazla konuyu takip etmeyi deneyin + Yeni yazı yok + Hoş geldiniz! + Tarama + <b>Johan Brandt</b> yazınıza yanıt verdi + Bugün sitenizde <b>50 beğeni</b> aldınız + <b>Madison Ruiz</b> yazınızı beğendi Kaydırılabilir blok menüsü açıldı. Bir blok seçin. Kaydırılabilir blok menüsü kapandı. Atla @@ -39,6 +61,7 @@ Language: tr Kapsamlı analizlerle kitlenizin nasıl büyüdüğünü izleyin. Güçlü düzenleyici ile hareket halindeyken yazı gönderebilirsiniz. Dünyanın en popüler web sitesi oluşturucusuna hoş geldiniz. + Yorumları ve bildirimleri gerçek zamanlı olarak görün. Medya yükleme başarısız oldu Takip edilecek siteler Her sürümde daha fazla blok eklemek için elimizden geleni yapıyoruz. @@ -64,7 +87,6 @@ Language: tr WordPress Ortam Kütüphanesi\'nden seçin Geri Başlayın - Yeni bloglar keşfetmek için konular takip edin gönderen: Bu yönlendiren, istenmeyen posta olarak işaretlenemez İstenmeyen posta işaretini kaldır @@ -95,7 +117,6 @@ Language: tr Öğelere göz atın Bu yazıyı bildir Okuyucuya hoş geldiniz. Parmaklarınızın ucunda milyonlarca blogu keşfedin. - Açı Dahili sunucu hatası oluştu Eyleminize izin verilmiyor %1$s daha fazla öğe @@ -143,7 +164,6 @@ Language: tr Bu slayt henüz kaydedilmedi. Bu slaytı silerseniz yaptığınız tüm düzenlemeleri kaybedersiniz. Bu slayt öykünüzden kaldırılacak. Öykü slaytı silinsin mi? - Slaytı sil Metin rengini değiştir Metin hizalamasını değiştir hata oluştu @@ -153,8 +173,6 @@ Language: tr Tekrar dene Kaydedildi Kapat - Sonraki - Bitti Şununla paylaş: PAYLAŞ Fotoğraflara kaydedildi @@ -165,7 +183,6 @@ Language: tr Ters Çevir Ses Metin - Daha Fazla Çıkartmalar Flaş Kamerayı çevir @@ -525,7 +542,6 @@ Language: tr Sitenizdeki <b>XMLRPC dosyasına</b> erişemedik. Bu sorunu çözmek için sunucunuza ulaşmanız gerekecektir. Çok az kaldı! Sadece Jetpack bağlantılı e-posta adresinizi doğrulamamız gerekiyor<b>%1$s</b> %1$s site kimlik bilginizle giriş yapın - Doğrulama e-postası gönder Takip Ediliyor Site sayfası Site kimlik bilgileriyle giriş yapın. @@ -552,7 +568,6 @@ Language: tr Yardımı görüntülemek için buraya dokunun Video Çek Fotoğraf veya Video Çek - Boyut Kenar çubuğu başlık eklentisi Bölümü göster %s bloğu. Bu blok geçersiz içerik barındırıyor diff --git a/WordPress/src/main/res/values-zh-rCN/strings.xml b/WordPress/src/main/res/values-zh-rCN/strings.xml index 3dc6a27c39bc..5d8f49f91d33 100644 --- a/WordPress/src/main/res/values-zh-rCN/strings.xml +++ b/WordPress/src/main/res/values-zh-rCN/strings.xml @@ -1,11 +1,42 @@ + 您的故事没有添加一张或多张幻灯片,因为故事目前不支持GIF文件。 请选择静态图片或视频背景。 + 不支持GIF文件 + 我们在网站上找不到该故事的媒体。 + 无法编辑故事 + 无法加载该故事的媒体。 检查您的互联网连接,稍后再试。 + 无法编辑故事 + 这个故事是在其他设备上编辑的,因此编辑某些对象时可能会受到限制。 + 受限故事编辑 + 媒体已被删除。 尝试编辑您的故事。 + 背景 + 文本 + 丢弃 + 所做的任何更改将不会保存。 + 放弃修改 + 完成 + 下一步 + 删除 + 选择设计时出错。 + 请检查您的互联网连接,然后重试。 + 当您恢复在线时,请点击重试。 + 离线时无法使用布局 + 继续使用商店凭证 + 找到您的关联电子邮件 + 关注话题 + 尝试关注更多话题以扩大搜索范围 + 无近期文章 + 欢迎! + 扫描 + <b>Johan Brandt</b> 回复了您的文章 + 您的站点今天收到了 <b>50 个赞</b> + <b>Madison Ruiz</b> 点赞了您的文章 滚动区块菜单打开。 选择区块。 滚动区块菜单关闭。 跳过 @@ -37,6 +68,7 @@ Language: zh_CN 受到启发 关注您喜欢的站点,发现新的阅读内容。 通过深入分析观察您的受众增长。 + 实时查看评论和通知。 有了这个功能强大的编辑器,您可以随时随地发表内容。 欢迎使用全球最热门的网站生成器。 媒体加载失败 @@ -64,7 +96,7 @@ Language: zh_CN 从 WordPress 媒体库中选择 返回 开始 - 关注主题以发现新博客 + 关注话题以发现新博客 作者 不能将此推荐来源标记为垃圾信息 取消标记为垃圾信息 @@ -86,6 +118,7 @@ Language: zh_CN 经典 休闲 您需要授予应用程序录音权限才能录制视频 + %s %s 已选择 通过电子邮件获取登录链接 找不到与此电子邮件地址关联的 WordPress.com 帐户。 @@ -93,19 +126,20 @@ Language: zh_CN 无法显示此评论 浏览商品 报告此文章 - 角度 欢迎使用阅读器。 动动手指即可发现数百万个博客。 发生内部服务器错误 您不能执行此操作 %1$s 更多项目 - 注意:主题和屏幕尺寸之间的分栏布局可能会有所不同 选择布局 - \@string/contact_support - 您可能会喜欢 - 隐藏 + 注意:主题和屏幕尺寸之间的分栏布局可能会有所不同 创建文章或故事 创建页面 撰写文章 + \@string/contact_support + 您可能会喜欢 + 隐藏 + 视频说明.空 + 更新标题。 在以下位置后粘贴区块 “页面”标题。 %s “页面”标题。 清空 @@ -140,7 +174,6 @@ Language: zh_CN 此幻灯片尚未保存。 如果删除此幻灯片,您将丢失所做的所有编辑。 此幻灯片将从您的故事中删除。 删除故事幻灯片? - 删除幻灯片 更改文本颜色 更改文本对齐方式 出错了 @@ -150,8 +183,6 @@ Language: zh_CN 重试 已保存 关闭 - 下一步 - 完成 共享至 分享 已保存到相册 @@ -162,7 +193,6 @@ Language: zh_CN 翻转 声音 文本 - 更多 贴纸 刷新 翻转摄像头 @@ -171,7 +201,10 @@ Language: zh_CN 创建页面 创建空白页面 从种类繁多的预设页面布局中选择心仪的布局,开始打造自己的页面。 或者,您也可以从一个空白页面开始。 + 选择布局 为您的故事设定标题 + 创建文章或故事 + 创建文章、页面或故事 轻点%1$s创建。 %2$s 然后选择<b>博文</b> 从设备中选择 故事文章 @@ -186,10 +219,10 @@ Language: zh_CN 选择图片或视频 选择图像 区块已删除 + 输入您的现有站点地址 继续使用 WordPress.com 注册确认 如果您继续使用 Google,并且还没有 WordPress.com 帐户,则需要创建一个帐户,并同意我们的%1$s服务条款%2$s。 - 输入您的现有站点地址 继续即表示您同意我们的%1$s服务条款%2$s。 我们将通过电子邮件向您发送注册链接,供您创建新的 WordPress.com 帐户。 我们将使用此电子邮件地址为您创建新 WordPress.com 帐户。 @@ -209,6 +242,7 @@ Language: zh_CN 创建帐户 通过电子邮件发送链接 重置密码 + 处理请求时出现问题。 请稍后重试。 为您的站点提供一个反映其个性和主题的名称。 第一印象很重要! 设置您的站点标题 轻点 <b>%1$s</b> 以设置新标题 @@ -243,6 +277,7 @@ Language: zh_CN 忽略 未设置 标签有助于读者了解文章内容。 + 发布日期 添加标签 返回 立即保存 @@ -254,7 +289,6 @@ Language: zh_CN 取消 移动到草稿 无法编辑已放入回收站的文章。 您想将此文章的状态更改为“草稿”,以便您可以进行编辑? - 发布日期 将文章移动到“草稿”? 选择您的兴趣 选择您的兴趣 @@ -270,8 +304,8 @@ Language: zh_CN 状态和可见性 现在更新 %1$s· %2$s - 打开区块操作菜单 试用初学者布局 + 打开区块操作菜单 插入提及 双击以打开带有可用选项的底部表页 双击以打开带有可用选项的操作表页 @@ -291,6 +325,8 @@ Language: zh_CN 接受 页面加载失败 选择显示您的近期文章(经典博客)的主页或固定/静态页面。 + 主页设置 + 主页 文章页面更新失败 文章页面更新成功 主页更新失败 @@ -313,7 +349,9 @@ Language: zh_CN 选择视频 无法选择站点。请再试一次。 继续 + 转载失败 管理站点 + 建立 WordPress.com 站点后,您可以将喜爱的内容转载到自己的站点。 没有可用的 WordPress.com 站点 新变化 链接地址已复制 @@ -323,8 +361,6 @@ Language: zh_CN 插入 继续 复制 - 转载失败 - 建立 WordPress.com 站点后,您可以将喜爱的内容转载到自己的站点。 将区块从位置 %1$s 向右移动到位置 %2$s 向右移动区块 将区块从位置 %1$s 向左移动到位置 %2$s @@ -353,12 +389,12 @@ Language: zh_CN 无法访问私人站点的内容。某些媒体可能不可用 正在访问私人站点的内容 无法裁剪和保存图片,请重试。 + 无法载入图片。\n轻按可重试。 预览图片 未知页面格式 我们无法完成此操作,因而未提交此页面以进行审核。 我们无法完成此操作,因而未安排此页面的发布时间。 我们无法完成此操作,因而未发布此私密页面。 - 无法载入图片。\n轻按可重试。 我们无法完成此操作,因而未发布此页面。 我们无法提交此页面以进行审核,但我们稍后会重试。 我们无法安排此页面的发布时间,但我们稍后会重试。 @@ -454,28 +490,28 @@ Language: zh_CN 已选择 选择站点或标签来过滤文章 删除当前过滤器 - 登录 WordPress.com 管理主题和站点 - 登录 WordPress.com 以查看您关注的站点的最新文章 + 登录 WordPress.com 登录 WordPress.com,查看有关您关注的主题的最新博文 + 登录 WordPress.com 以查看您关注的站点的最新文章 模板预览 替换现有区块 添加到结尾 添加到开始 在之前添加区块 在之后添加区块 - 关注站点 - 查看您关注的站点的最新文章 添加主题 + 关注站点 您可以通过添加主题来关注有关某个特定主题的博文 + 查看您关注的站点的最新文章 已关注 过滤器 - 编辑视频 视频说明。%s + 编辑视频 双击以选择布局 添加短代码… - 撰写文章 文章作者 + 撰写文章 您已获得这段时间的所有统计数据。\n再次点击将从头开始。 此段时间无统计数据。 为 %1$s 发布活动 @@ -515,41 +551,39 @@ Language: zh_CN 由于需要 <b>HTTP 验证</b>,我们无法访问您的站点。您需要联系您的主机来解决这个问题。 我们无法访问您的站点上的 <b>XMLRPC 文件</b>。您需要联系您的主机来解决这个问题。 马上就好!我们需要验证您的 Jetpack 连接的电子邮件地址 <b>%1$s</b> + 使用站点凭据登录。 使用 %1$s 站点凭据登录 - 发送验证电子邮件 - 关注中 站点页面 - 使用站点凭据登录。 - 我们现在无法打开文章。请稍后重试 - %sk - %sB - %sM + 关注中 + + 发现 + 已保存 + 主题 + 站点 + %sQi %sQa %sT - %sQi - 站点 - 已保存 - 发现 - + %sB + %sM + %sk + 我们现在无法打开文章。请稍后重试 我们现在无法为您的站点加载数据。请稍后重试 - 主题 WordPress 媒体库 取消分组 翻译 + 标题: + 轻按可隐藏键盘 + 轻按此处以显示帮助 拍摄视频 拍摄照片或视频 拍照 开始撰写… - 轻按可隐藏键盘 - 标题: - 轻按此处以显示帮助 - 尺寸 边栏标题插件 显示分区 %s 区块。此区块包含无效内容 %s 区块。空白 - 重置区块 剪切区块 + 重置区块 删除注释 打开视频时出现问题 显示区块时出现问题 @@ -597,8 +631,8 @@ Language: zh_CN 在此处添加区块 添加注释 添加说明 - “列表已加载 %1$d 项。” 轻按“添加以保存文章”按钮,将文章保存到您的列表中。 + “列表已加载 %1$d 项。” 通知 @@ -624,6 +658,7 @@ Language: zh_CN 我们无法上传此媒体,因而未发布此私密文章。 我们无法上传此媒体,因而未发布此文章。 我们无法上传此媒体。 + 我们无法完成此操作,但我们会稍后重试。 我们无法完成此操作。 无法预览空白草稿 无法预览空白页面 @@ -631,7 +666,6 @@ Language: zh_CN 预览不可用 尝试在预览前保存文章时出错 正在生成预览… - 我们无法完成此操作,但我们会稍后重试。 正在保存… 您对此文章所做的更改未保存 来自此应用程序的版本 @@ -642,10 +676,10 @@ Language: zh_CN 永久删除 我们不会保存您的草稿的最新更改。 我们不会安排这些更改的发布时间。 - 当您的设备重新联网后,我们将保存您的草稿 - 当您的设备重新联网后,我们将发布您的私密文章。 我们不会提交这些更改供审核。 我们不会发布这些更改。 + 当您的设备重新联网后,我们将保存您的草稿 + 当您的设备重新联网后,我们将发布您的私密文章。 当您的设备重新联网后,我们将安排您的文章的发布时间。 当您的设备重新联网后,我们将提交您的文章以进行审核。 当您的设备重新联网后,我们将发布此文章。 @@ -702,21 +736,21 @@ Language: zh_CN 添加到日历 通知 日期和时间 - 请输入一个完整的网站地址,例如 example.com。 - 此地址下的网站不是 WordPress 站点。站点必须安装 WordPress,我们才能建立连接。 需要帮助查找您连接的电子邮件吗? - %1$s: %2$s, %3$s: %4$s - 文章 - 编辑 + 此地址下的网站不是 WordPress 站点。站点必须安装 WordPress,我们才能建立连接。 + 请输入一个完整的网站地址,例如 example.com。 登录 WordPress.com 来连接 %1$s - 展开 + 浏览次数 + 文章 + %1$s: %2$s, %3$s: %4$s 收起条目 展开条目 收起 + 展开 图表已更新。 %1$s%2$s 针对以下时段:%3$s,与上个时段相比的变化 - %4$s 正在加载选定的卡片数据 - 浏览次数 + 编辑 展开 折叠 请验证您的电子邮件地址(说明已发送至您的电子邮件地址) @@ -724,20 +758,22 @@ Language: zh_CN 取消 确定 http(s):// - 插入链接 移除链接 + 插入链接 重试上传 正在上传媒体。\n请轻按以查看选项。 在新窗口/选项卡中打开链接 要查看您的统计信息,请登录 WordPress.com 帐户。 + 没有与您的关键词匹配的文章 搜索文章 - 今天 + 人们可以通过此域名在互联网上找到您。 选择高级版域名 所有 WordPress.com 套餐均包含一个自定义域名。立即注册您的免费高级版域。 - 没有与您的关键词匹配的文章 - 人们可以通过此域名在互联网上找到您。 概览 + 今天 所有时间 + 本周浏览次数 + 请登录 WordPress 应用以添加小部件。 没有可用网络 无法加载数据 类型 @@ -749,10 +785,8 @@ Language: zh_CN 选择你的站点 站点 全部时间 - 添加小工具 - 本周浏览次数 - 请登录 WordPress 应用以添加小部件。 本周浏览次数 + 添加小工具 刷新插件详细信息耗时比平常更长。请稍后再查看。 如果域名是您刚刚注册的,请等待相关配置生效后再试一次。\n\n如果没有,则似乎出现了问题,该站点可能无法使用插件功能。 州/省/自治区/直辖市(不可用) @@ -795,21 +829,21 @@ Language: zh_CN 选择要查看的统计数据,重点关注您最关心的数据。点按“数据分析”底部的“%1$s”,以自定义您的统计数据。 管理您的统计数据 正在获取修订版… - 正在上传您的草稿 无法插入媒体。\n请轻按以重试。 + 正在上传您的草稿 正在上传草稿 - 恢复文章时出错 草稿 + 恢复文章时出错 倒填日期:%s 仅查看相关性较大的统计信息。在下面添加和管理您的见解。 社交 年度站点统计信息 + 粉丝总数 无法加载域建议 请输入关键字以获取更多想法 未找到任何建议 注册域 安装 Jetpack 后,我们只需进行设置即可。这只需要一分钟时间。 - 粉丝总数 从见解中删除 下移 上移 @@ -818,8 +852,8 @@ Language: zh_CN 文章已成功恢复 文章已恢复 文章正移至回收站 - 本地更改 将此文章放入回收站还将放弃未保存的更改,是否确定要继续? + 本地更改 移动到草稿 切换到列表视图 切换到卡片视图 @@ -860,15 +894,15 @@ Language: zh_CN 最佳日期 显示以下内容的统计数据: 不用了,谢谢 - 欢迎您再次到来!如果您喜欢这款应用,我们希望能够在 Google Play 商店中获得您的评分。 以后再说 立即评分 + 欢迎您再次到来!如果您喜欢这款应用,我们希望能够在 Google Play 商店中获得您的评分。 + 喜欢 WordPress 吗? + 文章已转换回草稿 文章发布活动 站点尚未加载 更多文章 更少文章 - 喜欢 WordPress 吗? - 文章已转换回草稿 如果退出,可能会前功尽弃。是否确定要退出? 仍然查看套餐 必须连接互联网才能查看套餐,因此详细信息可能已过时。 @@ -876,12 +910,12 @@ Language: zh_CN 我们暂时无法加载套餐。请稍后重试。 无法加载套餐 无连接 + 切换到区块编辑器 + 切换到经典编辑器 加载数据时出现问题,请刷新页面以重试。 无法加载数据 使用区块编辑器编辑新的文章和页面 使用区块编辑器 - 切换到区块编辑器 - 切换到经典编辑器 已启用区块编辑器 退出 已完成 %1$d 个(共 %2$d 个) @@ -894,12 +928,12 @@ Language: zh_CN 访客将在其浏览器中看到您的图标。添加自定义图标,打造精美的专业外观。 点击%1$s套餐%2$s查看您的当前套餐和其他可选套餐 点击%1$s添加页面%2$s创建一个新页面。 + 轻按%1$s页面%2$s以继续。 点击%1$s统计信息%2$s查看您站点的效果。 点击%1$s您的站点图标%2$s上传一个新图标 撰写并发布您的第一篇文章。 我们将带您了解构建和提升站点的基本知识。 我们对您的清单进行了一些修改 - 轻按%1$s页面%2$s以继续。 我们添加了更多的任务,以帮助您增加受众。 了解各个套餐 了解付费套餐中的营销和搜索引擎优化工具。 @@ -964,6 +998,9 @@ Language: zh_CN 没有此时间段的数据 从媒体删除位置信息 我们现在无法打开统计信息。请稍后重试 + 由于网络错误,无法加载某些媒体。 + 没有与您的搜索条件匹配的媒体 + 搜索以查找要添加到您的媒体库中的 GIF 文件! 浏览量 作者 作者 @@ -993,12 +1030,9 @@ Language: zh_CN 分享文章 创建文章 %2$s 已发布 %1$s。下面是该文章到目前为止的表现: - 没有与您的搜索条件匹配的媒体 - 搜索以查找要添加到您的媒体库中的 GIF 文件! - 由于网络错误,无法加载某些媒体。 - 标签或类别 %2$s 已发布 %1$s。开始吧!通过分享您的文章来增加文章浏览量: 您尚未发布任何文章。开始发布后,此处会显示您最新文章的摘要: + 标签或类别 所有时间 %1$s - %2$s 粉丝 @@ -1049,8 +1083,8 @@ Language: zh_CN 缩略图 历史记录 - 待审核 所选页面不可用 + 待审核 您没有任何放入回收站的页面 您没有任何预发布页面 您没有任何草稿页面 @@ -1062,11 +1096,11 @@ Language: zh_CN 移动到“草稿” 设置父项 查看 + 回收站 预发布 草稿 已发布 尝试发送短信验证码的次数太多了 - 休息一下,在一分钟后再申请新的短信验证码。 - 回收站 没有与此 Google 帐户匹配的 WordPress.com 帐户。 没有与您的搜索匹配的站点 没有与您的搜索匹配的站点 @@ -1086,46 +1120,46 @@ Language: zh_CN 创建站点 建立并运行您的站点。 查看您的站点 + 轻按%1$s查看站点%2$s可预览您的站点 分享您的站点 - 连接至您的社交媒体帐户 - 您的站点将自动共享新文章。 轻按 %1$s 分享 %2$s 并继续 轻按 %1$s 连接 %2$s 可添加您的社交媒体帐户 - 轻按%1$s查看站点%2$s可预览您的站点 + 连接至您的社交媒体帐户 - 您的站点将自动共享新文章。 发布文章 + 轻按%1$s“创建文章”%2$s,撰写一篇新文章 不知从何入手,需要一点帮助? 接受 - 轻按%1$s“创建文章”%2$s,撰写一篇新文章 从不 - 关注其他站点 - 定制您的站点 不用了,谢谢 - 查找并关注您喜爱的站点,在他们发布新内容时可及时获取更新。 + 关注其他站点 轻按%1$s“搜索”%2$s,查找具有类似兴趣的站点 轻按%1$s“阅读器”%2$s并继续 + 查找并关注您喜爱的站点,在他们发布新内容时可及时获取更新。 + 定制您的站点 轻按%1$s“主题”%2$s并继续 轻按%1$s“定制”%2$s,开始个性化您的站点 选择主题 + 轻按 %1$s 主题 %2$s 可发现新主题 浏览我们所有的主题,寻找最适合您的主题。 前往 取消 现在不行 - 您没有任何站点 更多 - 轻按 %1$s 主题 %2$s 可发现新主题 + 您没有任何站点 无已关注的主题 在此处添加主题,以查找有关您喜爱的主题的博文 登录用于关联 Jetpack 的 WordPress.com 帐户。 重试 + 设置 + 目前无法安装 Jetpack。 出现问题 已安装 Jetpack + 正在您的站点上安装 Jetpack。这将花费几分钟的时间才能完成。 正在安装 Jetpack + 系统将不会存储您的网站凭据,并且仅将其用于安装 Jetpack。 安装 Jetpack Jetpack Jetpack 常见问题解答 - 设置 - 目前无法安装 Jetpack。 - 正在您的站点上安装 Jetpack。这将花费几分钟的时间才能完成。 - 系统将不会存储您的网站凭据,并且仅将其用于安装 Jetpack。 要在 WordPress 站点中使用统计功能,您需要安装 Jetpack 插件。 没有与您的搜索匹配的主题 您想要查找什么内容? @@ -1170,15 +1204,15 @@ Language: zh_CN 联系人电子邮件 应用程序日志 我的工单 + 是否确定要在 %2$s 将站点还原至 %1$s?此操作将删除在此时间之后创建或更改的所有内容和选项。 还原站点 正在还原 - 是否确定要在 %2$s 将站点还原至 %1$s?此操作将删除在此时间之后创建或更改的所有内容和选项。 正在还原至 %1$s %2$s 目前正在恢复您的站点 已成功恢复您的站点 - 活动日志操作按钮 已成功恢复您的站点\n已还原至 %1$s %2$s 正在恢复您的站点\n正在还原至 %1$s %2$s + 活动日志操作按钮 已自动托管 保存此文章,方便您随时回来阅读。但您只能在此设备上阅读该文章,也就是说已保存的文章不会同步到其他设备 保存文章供稍后查看 @@ -1195,6 +1229,8 @@ Language: zh_CN 使用站点地址登录 使用电子邮件地址登录 其他方式: + 轻按“%s”以将文章保存到您的列表中。 + 尚未保存任何文章! 文章已保存 查看所有 已保存 @@ -1203,8 +1239,6 @@ Language: zh_CN 添加到已保存的文章 已保存的文章 已删除 - 尚未保存任何文章! - 轻按“%s”以将文章保存到您的列表中。 更改站点图标 取消 删除 @@ -1279,6 +1313,7 @@ Language: zh_CN 创建标签 向上导航 通知 + 打开外部链接 显示更多 照片 删除 @@ -1302,17 +1337,16 @@ Language: zh_CN %s的个人资料照片 选中标记 使用 Google 注册… - 打开外部链接 Jetpack 连接中断:%s 您已连接至 Jetpack 撤消 + 已切换至可视模式 可视模式 + 已切换至 HTML 模式 HTML 模式 预览 保存为草稿 %s TB - 已切换至可视模式 - 已切换至 HTML 模式 %s GB %s MB %s KB @@ -1341,6 +1375,7 @@ Language: zh_CN 通知 阅读器 + 我的站点 通知设置 帮助与支持 许可 @@ -1389,6 +1424,7 @@ Language: zh_CN \@%s %1$f,%2$f 创建站点 + 轻按以继续。 站点已创建! Google 响应时间过长。您可能需要等到网络连接状况更好时才能继续。 更改用户名 @@ -1403,13 +1439,14 @@ Language: zh_CN 使用 Google 注册 使用电子邮件注册 电子邮件已注册 WordPress.com。\n继续登录。 - 轻按以继续。 正在更新帐户… - 正在发送电子邮件 注册即表示您同意我们的%1$s服务条款%2$s。 + 正在发送电子邮件 重试 关闭 + 发送电子邮件时出现问题。您可以立即重试,或关闭并稍后重试。 用户名 + 通常情况下,您可以随时使用刚刚用过的链接登录,但如果您愿意,也可以设置密码。 密码(可选) 显示名称 重试 @@ -1418,8 +1455,6 @@ Language: zh_CN 上传头像时出现问题。 要创建新的 WordPress.com 帐户,请输入您的电子邮件地址。 检查电子邮件地址时出现问题。 - 发送电子邮件时出现问题。您可以立即重试,或关闭并稍后重试。 - 通常情况下,您可以随时使用刚刚用过的链接登录,但如果您愿意,也可以设置密码。 注册 WordPress.com 使用用户名登录。 通过输入您的站点地址登录。 @@ -1463,8 +1498,8 @@ Language: zh_CN 已安装版本 %s 版本 %s 作者:%s - 无法加载插件 更改照片 + 无法加载插件 站点页面 管理站点标签 正在保存 @@ -1482,8 +1517,8 @@ Language: zh_CN 自定义 篇文章/页 选择您所处时区内的一座城市 - 时间格式 时区 + 时间格式 日期格式 每星期开始于 标签 @@ -1590,6 +1625,7 @@ Language: zh_CN 文件名 URL 替代文本 + 连接站点 让指示灯闪烁 让设备振动 选择声音 @@ -1647,6 +1683,7 @@ Language: zh_CN 输入您要连接的 WordPress 站点的地址。 已经登录 WordPress.com 继续 + 连接其他站点 输入您的 WordPress.com 密码。 正在请求登录电子邮件 密码似乎不对。请仔细检查您的信息,然后再试一次。 @@ -1809,11 +1846,11 @@ Language: zh_CN 已上传 + 上传失败 已删除 正在删除 正在上传 在排队 - 上传失败 图片质量 由于发生未知错误,所有媒体上传均已取消。请重新尝试上传 未知文章格式 @@ -1859,9 +1896,9 @@ Language: zh_CN 正在点赞… 正在处理… 操作完成! - 登录到 WordPress.com 已对评论点赞 退出 + 登录到 WordPress.com WordPress.com 上的更多内容 %s 中的更多内容 打开设备设置 @@ -1873,40 +1910,40 @@ Language: zh_CN 评论已批准! 现在 - 粉丝 查看者 + 粉丝 网络未连接,无法保存您的个人资料 - - + + 已选择 %1$d 无法检索站点用户 - 正在获取用户… - 粉丝 电子邮件粉丝 - 电子邮件粉丝 + 粉丝 + 正在获取用户… 查看者 + 电子邮件粉丝 粉丝 团队 最多可邀请 10 个电子邮件地址和/或 WordPress.com 用户名。没有用户名的人将收到有关如何创建用户名的说明。 如果删除该查看者,他或她将无法访问此站点。\n\n是否仍要删除该查看者? 如果删除该粉丝,则此人将不会再收到关于此站点的通知,除非其重新关注此站点。\n\n是否仍要删除该粉丝? 从 %1$s开始 - 无法删除粉丝 无法删除查看者 + 无法删除粉丝 无法检索站点电子邮件粉丝 无法检索站点粉丝 部分媒体上传失败。在此状态下,您无法切换\n到 HTML 模式。删除所有失败的上传并继续? - 更改已保存 - 标题 - 链接到 宽度 + 链接到 + 标题 + 更改已保存 放弃未保存的更改? 停止上传? + 轻按即可重试! 已成功发送邀请 %1$s:%2$s 邀请已发送但发生错误! - 轻按即可重试! 尝试发送邀请时发生错误! 无法发送: 存在无效的用户名或邮箱地址 无法发送: 用户名或邮箱地址无效 @@ -1918,9 +1955,9 @@ Language: zh_CN 自定义消息 邀请 用户名或电子邮件地址 - 发送链接 - 外部 邀请用户 + 外部 + 发送链接 清除搜索历史记录 清除搜索历史记录? 未找到与您的语言对应的符合“%s”搜索条件的结果 @@ -1930,9 +1967,9 @@ Language: zh_CN 已成功移除 %1$s 如果您移除 %1$s,该用户将无法访问此站点,但 %1$s 所创建的所有内容仍将保留在站内。\n\n是否仍要移除该用户? 删除 %1$s - 此列表中的站点最近未发布任何内容 - 人员 角色 + 人员 + 此列表中的站点最近未发布任何内容 无法删除用户 无法更新用户角色 无法获取站点查看数 @@ -1946,14 +1983,14 @@ Language: zh_CN 改为输入密码 公开显示您的评论。 拍摄或选择照片 - 系统会将您的文章、页面和设置发送到以下电子邮件地址:%s。 - 套餐 套餐 + 套餐 + 系统会将您的文章、页面和设置发送到以下电子邮件地址:%s。 导出您的内容 - 正在导出内容… 导出已发送的电子邮件! - 显示购买交易 + 正在导出内容… 查看购买交易 + 显示购买交易 您的站点尚有活动的高级套餐。删除站点前,请先取消套餐。 高级套餐升级 出现错误。无法请求购买交易。 @@ -1963,48 +2000,49 @@ Language: zh_CN 主域 删除您的站点时出现错误。请联系支持人员,获取更多帮助。 删除站点时出错 - 请在下列字段中输入 %1$s,进行确认。之后,您的站点将不复存在。 导出内容 + 请在下列字段中输入 %1$s,进行确认。之后,您的站点将不复存在。 确认删除站点 + 联系支持人员 如果您想留下某个站点,但不想保留其中现有的任何文章和页面,我们的支持团队可以为您删除相关文章、页面、媒体以及评论。\n\n这不会影响您站点和 URL 的有效性,还能让您重新开始创建内容。联系我们即可清除当前所有内容。 - 从头开始构建您的站点 让我们助您一臂之力 - 应用程序设置 + 从头开始构建您的站点 从头开始 + 应用程序设置 删除上传失败的内容 高级 无已移至回收站的评论 无待审评论 无已批准的评论 无法连接。服务器上没有所需的 XML-RPC 方法。 - 状态 - 视频 居中 - 聊天 - 图库 - 链接 - 引用 + 视频 + 状态 标准 + 引用 + 链接 图片 - 有关 WordPress.com 课程和活动(在线和现场)的信息。 - 旁白 + 图库 + 聊天 音频 + 旁白 + 有关 WordPress.com 课程和活动(在线和现场)的信息。 参加 WordPress.com 研究和调查的机会。 有关畅享 WordPress.com 的提示。 社区 - 我的评论收到的回复 - 建议 研究 - 站点成就 + 建议 + 我的评论收到的回复 用户名提到的次数 - 我的文章收到的赞 + 站点成就 站点关注人数 + 我的文章收到的赞 我的评论收到的赞 我的站点上的评论 %d 个条目 1 个条目 - 已知用户的评论 所有用户 + 已知用户的评论 没有评论 每页 %d 条评论 每页 1 条评论 @@ -2014,11 +2052,11 @@ Language: zh_CN 自动批准每个人的评论。 如果用户已有获得批准的评论,则自动批准该用户的其他评论 每个人的评论都需要进行人工审核。 - 1 天 %d 天 - 单击发送给 %1$s 的电子邮件中的验证链接以确认您的新地址 - 主站点 + 1 天 网址 + 主站点 + 单击发送给 %1$s 的电子邮件中的验证链接以确认您的新地址 您目前正在上传媒体。请等待,直到此任务完成。 目前无法刷新评论 – 显示的是旧评论 设置特色图片 @@ -2027,13 +2065,13 @@ Language: zh_CN 是否永久删除这些评论? 是否永久删除该评论? 删除 - 已删除评论 恢复 + 已删除评论 无垃圾评论 - 无法加载页面 全部 - 界面语言 + 无法加载页面 关闭 + 界面语言 关于该应用程序 无法保存您的帐户设置 无法检索您的帐户设置 @@ -2041,20 +2079,20 @@ Language: zh_CN 无法识别语言代码 允许在线程中嵌入评论。 线程级数上限 + 禁用 搜索 移除 - 禁用 原始大小 您的站点仅对您以及您审核通过的用户可见 您的站点对所有人可见,但要求搜索引擎不将其编入索引 您的站点对所有人可见,并且可以被搜索引擎编入索引 有关您的一些字词… - 显示名称(如果未设置)将默认为您的用户名 关于我 + 显示名称(如果未设置)将默认为您的用户名 公开显示名称 - 我的个人资料 - 名字 姓氏 + 名字 + 我的个人资料 相关文章预览图片 无法保存站点信息 无法检索站点信息 @@ -2109,14 +2147,14 @@ Language: zh_CN %d个级别 私密 已隐藏 - 删除站点 公开 + 删除站点 黑名单 保持审核状态 评论中的链接 自动审核 - 线程 分页 + 线程 排序方式 用户必须登录 必须包括名称和电子邮件 @@ -2126,22 +2164,22 @@ Language: zh_CN 默认格式 默认类别 地址 - 站点标题 标语 + 站点标题 默认用于新文章 - 帐户 撰写 - 最新评论在先 + 帐户 常规 - 讨论 - 隐私 - 相关文章 - 评论 - 在指定天数后关闭 + 最新评论在先 最早评论在先 + 在指定天数后关闭 + 评论 + 相关文章 + 隐私 + 讨论 您无权向此站点上传媒体文件 - 从不 未知 + 从不 此文章不再存在 您不具备查看此文章的权限 无法检索这篇文章 @@ -2153,22 +2191,22 @@ Language: zh_CN 出现错误。无法激活主题 作者:%1$s 感谢您选择 %1$s - 尝试与定制 - 查看 - 详细信息 - 支持 - 完成 管理站点 + 完成 + 支持 + 详细信息 + 查看 + 尝试与定制 激活 - 当前主题 - 定制 - 详细信息 - 支持 已激活 - 文章已发布 - 页面已发布 - 文章已更新 + 支持 + 详细信息 + 定制 + 当前主题 页面已更新 + 文章已更新 + 页面已发布 + 文章已发布 抱歉,找不到主题。 加载更多文章 没有符合「%s」条件的站点 @@ -2190,6 +2228,7 @@ Language: zh_CN %s 个赞 1 个赞 + %,d 个粉丝 编辑主题和站点 读者文章 关于出现在设备上的通知的设置。 @@ -2206,206 +2245,206 @@ Language: zh_CN 最新的文章摘要 无连接 文章已放入回收站 - 统计信息 放入回收站 + 统计信息 预览 查看 - 编辑 发布 + 编辑 您无权访问此站点 找不到此站点 撤消 请求已过期。请登录 WordPress.com 再试一次。 - 最受欢迎的文章 忽略 + 最受欢迎的文章 今日统计 全时段的文章篇数、阅读次数和访客人数 见解 退出 WordPress.com - 登录/退出 登录 WordPress.com + 登录/退出 帮助与支持 帐户设置 「%s」未隐藏,因为它是当前站点 创建 WordPress.com 站点 添加自托管站点 - 显示/隐藏站点 添加新站点 - 查看管理员 - 查看站点 + 显示/隐藏站点 选择站点 + 查看站点 + 查看管理员 转换站点 - 博客文章 设置 - 外观 + 博客文章 发布 + 外观 配置 轻按以显示文章 全部不选 - 显示 - 隐藏 选择全部 - 语言 - 验证码 - 验证码无效 + 隐藏 + 显示 再次登录以继续操作。 - 正在获取媒体… - 正在获取文章… - 正在提取评论… - 正在获取页面… - 作者 - 搜索字词 + 验证码无效 + 验证码 + 语言 + 无法检索文章 + 发布者: 无法打开通知 未知搜索字词 - 发布者: - 无法检索文章 + 搜索字词 + 作者 + 正在提取评论… + 正在获取页面… + 正在获取文章… + 正在获取媒体… 已将应用程序日志复制到剪贴板 + 此站点为空 新文章 复制文本到剪贴板时出错 正在上传文章 - 此站点为空 - 正在获取主题… - %1$d 个月 - 一年 %1$d 年 + 一年 + %1$d 个月 一个月 - %1$d 分钟 - 一小时以前 - %1$d 小时 - 一天 %1$d 天 + 一天 + %1$d 小时 + 一小时以前 + %1$d 分钟 一分钟以前 秒以前 - 文章和页面 - 视频 - Publicize 关注者 + Publicize + 视频 + 文章和页面 国家/地区 - - 浏览量 访客 + 浏览量 + + 正在获取主题… 详细信息 已选 %d 个 浏览我们的常见问题解答 尚无评论 - 查看原文 + 没有与此主题相关的博文 + 查看原文 评论功能被关闭 %1$d/%2$d 发布的文章不能为空 您不具备查看或编辑文章的权限 您不具备查看或编辑页面的权限 您不具备查看或编辑评论的权限 - 超过一个月 更多 - 超过 2 天 + 超过一个月 超过 1 周 + 超过 2 天 评论 评论已移到回收站 - 尚无文章。为何不创建一个? 回复 %s + 尚无文章。为何不创建一个? 正在退出… - 没有与此主题相关的博文 无法执行此操作 无法阻止此站点 此站点中的文章不会再显示 阻止此站点 - 更新 计划 - 已关注的博客 - 已关注的站点 - 无法显示此站点 - 您已经关注此站点 - 无法关注此站点 - 无法取消关注此站点 + 更新 无推荐站点 - “阅读器”站点 - 已关注的主题 + 无法取消关注此站点 + 无法关注此站点 + 您已经关注此站点 + 无法显示此站点 + 已关注的站点 输入要关注的 URL 或主题 - 帮助 - 忘记密码? - 无效的SSL证书 + 已关注的博客 + 已关注的主题 + “阅读器”站点 如果你平时连接到这个网站没有任何问题,这个错误可能意味着有人试图冒充该网站,你不应该继续下去。你想仍然信任这个证书? - 没用可用的网络 - 抱歉,无法从图库检索该媒体对象 - 未能获取主题 - 不是垃圾评论 - 添加分类失败 - 分类添加成功 - 上传媒体需要已装载的 SD 卡 - 没有通知 - 现在不能刷新文章 - 现在不能刷新页面 - 现在不能刷新评论 - 发生错误 - 调节时出现了一个错误 - 在编辑评论时出现了一个错误 - 无法加载评论 - 你的邮件地址不可用 - 请输入一个可用的电子邮件地址 + 无效的SSL证书 + 忘记密码? + 帮助 你输入的用户名或密码错误 + 请输入一个可用的电子邮件地址 + 你的邮件地址不可用 下载图片错误 - 「分类名称」必填 + 无法加载评论 + 在编辑评论时出现了一个错误 + 调节时出现了一个错误 + 发生错误 + 现在不能刷新评论 + 现在不能刷新页面 + 现在不能刷新文章 删除文章时出现错误 + 没有通知 + 上传媒体需要已装载的 SD 卡 + 「分类名称」必填 + 分类添加成功 + 添加分类失败 + 不是垃圾评论 + 未能获取主题 抱歉,尝试访问该博客时发生错误 - 选择分类 - 连接错误 - 取消编辑 - 抱歉,尝试加载文章时出现错误。请刷新文章列表再试. - 了解更多 - 缩略图 - 你没有权限查看媒体库 - 一些媒体文件现在不能删除.请稍后再试. - 链接文字 (可选) - 页面设置 - 本地草稿 - 通过 - 待审 - 垃圾 - 删除 - 编辑评论 - 通过 - 不通过 - 垃圾 - 删除 - 批准 - 不批准 - 正在标记为垃圾评论 - 正在删除 - 确定删除? - 删除 - 正在保存更改 - 是否确定要取消编辑该评论? - 评论没有改变 - 在浏览器中查看 - 添加新分类 - 分类名称 - 无法创建上传媒体所需的临时文件。请确保设备有足够的空闲空间. - 开源许可协议 - 需要验证 - 新文章 - 新媒体 - 隐私政策 - 本地修改 - WordPress 博客 - 这个博客是隐藏的,无法加载。在设置中重新启用它并再次尝试。 - 创建程序数据库时出错,请重新安装程序. + 抱歉,无法从图库检索该媒体对象 + 没用可用的网络 + 无法移除此主题 + 无法添加此主题 程序日志 - 删除站点 - 尚无通知…。 - 请检查输入的站点 URL 是否有效 + 创建程序数据库时出错,请重新安装程序. + 这个博客是隐藏的,无法加载。在设置中重新启用它并再次尝试。 此时无法刷新媒体 + WordPress 博客 图片设置 + 本地修改 + 隐私政策 + 新媒体 + 新文章 + 尚无通知…。 + 需要验证 + 请检查输入的站点 URL 是否有效 + 开源许可协议 + 无法创建上传媒体所需的临时文件。请确保设备有足够的空闲空间. + 分类名称 + 添加新分类 + 在浏览器中查看 + 删除站点 + 评论没有改变 + 评论正文为必填项 + 是否确定要取消编辑该评论? + 正在保存更改 + 删除 + 确定删除? + 正在删除 + 正在标记为垃圾评论 + 不批准 + 批准 + 删除 + 垃圾 + 不通过 + 通过 + 编辑评论 + 删除 + 垃圾 + 待审 + 通过 + 删除页面? + 删除文章? 文章设置 无法找到要上传到文件。是否已删除或被移走? + 本地草稿 + 页面设置 + 链接文字 (可选) + 一些媒体文件现在不能删除.请稍后再试. + 你没有权限查看媒体库 + 缩略图 + 了解更多 + 抱歉,尝试加载文章时出现错误。请刷新文章列表再试. 访问该插件时发生错误 - 删除文章? - 删除页面? - 评论正文为必填项 - 无法添加此主题 - 无法移除此主题 + 取消编辑 + 连接错误 + 选择分类 分享链接 正在获取文章… 你和 %,d 人喜欢 @@ -2413,73 +2452,74 @@ Language: zh_CN 回复 没有一个博客,你不能分享到WordPress 评论被标记为垃圾评论 + 无法检索这篇文章 你和另一个人喜欢 - 选择图片 选择视频 - 无法检索这篇文章 - (未命名) - 已移除 %s - 已添加 %s - 1 人喜欢 - 已喜欢 - 无法发表评论 + 选择图片 + 注册 无法打开 %s - 这个列表是空的 - 订阅 - 关注中 - 回复评论 无法查看图片 无法分享 - 分享 - 尚无评论 - 转载 该主题无效 您已经关注此主题 - 今天 - 昨天 - - + 无法发表评论 + 已喜欢 + 1 人喜欢 + 已移除 %s + 已添加 %s + 回复评论 + 关注中 + 订阅 + 分享 + 转载 + (未命名) + 尚无评论 + 这个列表是空的 + + + 昨天 + 今天 + 推荐人 + 标签和类别 点击 - 分享 统计 - 标题 - 标题 - 描述 - 更新失败 + 分享 激活 - 主题 - 方格 - 磁贴 - 环状 + 更新失败 + 描述 + 标题 + 标题 幻灯片 - 推荐人 - 标签和类别 - 管理 + 环状 + 磁贴 + 方格 + 主题 舍弃 - 回复已发表 - %d 条新通知 + 管理 以及其他 %d 人。 + %d 条新通知 关注 + 回复已发表 登录 正在加载… - HTTP 用户名 HTTP 密码 + HTTP 用户名 上传媒体时出错 用户名或密码不正确。 - 密码 - 用户名 登录 + 用户名 + 密码 阅读器 - 无网络可用 页面 - 匿名 文章 - 确定 + 匿名 + 无网络可用 完成 + 确定 URL - 版本 服务条款 + 版本 WordPress for Android 对齐 刷新 @@ -2491,24 +2531,24 @@ Language: zh_CN 快捷方式名称不能为空 隐私 标题 - 分类 用逗号分隔标签 + 分类 删除评论 需要 SD 卡 媒体 - 删除 通过 + 删除 - 错误 - 取消 - 保存 - 添加 - 分类刷新错误 - + 立即发布 回复 - - + 预览 + 分类刷新错误 + 错误 + + 通知设置 - 立即发布 + 添加 + 保存 + 取消 diff --git a/WordPress/src/main/res/values-zh-rHK/strings.xml b/WordPress/src/main/res/values-zh-rHK/strings.xml index 9c3e22f64ed6..b2daa95f82ab 100644 --- a/WordPress/src/main/res/values-zh-rHK/strings.xml +++ b/WordPress/src/main/res/values-zh-rHK/strings.xml @@ -1,11 +1,33 @@ + 背景 + 文字 + 捨棄 + 系統將不會儲存任何變更。 + 要捨棄變更嗎? + 完成 + 下一步 + 刪除 + 選取設計時發生錯誤。 + 請檢查你的網際網路連線,然後再試一次。 + 請在重新上線時點選重試。 + 版面配置在離線時無法使用 + 使用商店憑證繼續 + 尋找你連結的電子郵件 + 追蹤主題 + 嘗試追蹤更多主題以擴大搜尋範圍 + 沒有近期文章 + 歡迎! + 掃瞄 + <b>Johan Brandt</b> 已回應你的文章 + 你的網站本日獲得 <b>50 個讚</b> + <b>Madison Ruiz</b> 已對你的文章按讚 已開啟可捲動的區塊選單。 請選取一個區塊。 已關閉可捲動的區塊選單。 跳過 @@ -37,6 +59,7 @@ Language: zh_TW 激發靈感 關注你喜歡的網站並發掘新讀物。 透過深入分析資料拓展讀者群。 + 即時查看留言和通知。 這個功能強大的編輯器讓你隨時隨地都能發佈文章。 歡迎使用全球最受歡迎的網站建置工具。 媒體載入失敗 @@ -64,7 +87,7 @@ Language: zh_TW 從 WordPress 媒體庫選擇 返回 開始使用 - 關注主題以探索新網誌 + 追蹤主題以探索新網誌 發表者: 此推薦連結不能被標記為垃圾郵件 取消標記為垃圾郵件 @@ -93,7 +116,6 @@ Language: zh_TW 無法顯示此留言 瀏覽項目 檢舉這篇文章 - 角度 歡迎使用閱讀器。 動動指尖即可探索數百萬個網誌。 發生內部伺服器錯誤 你無法執行此動作 @@ -142,7 +164,6 @@ Language: zh_TW 此投影片尚未儲存。 若刪除此投影片,你所做的任何編輯將會遺失。 此投影片將從你的故事移除。 要刪除故事投影片嗎? - 刪除投影片 變更文字顏色 變更文字對齊方式 發生錯誤 @@ -152,8 +173,6 @@ Language: zh_TW 重試 已儲存 關閉 - 下一篇 - 完成 分享至 分享 已儲存至相片 @@ -164,7 +183,6 @@ Language: zh_TW 翻轉 音效 文字 - 更多 貼紙 閃爍 翻轉相機 @@ -522,7 +540,6 @@ Language: zh_TW 快完成了!我們只需驗證你與 Jetpack 綁定的電子郵件地址就行了<b>%1$s</b> 請使用網站憑證登入。 請使用 %1$s 網站憑證登入 - 傳送驗證電子郵件 網頁 關注中 按讚數 @@ -548,7 +565,6 @@ Language: zh_TW 拍攝相片或視訊 拍攝照片 開始撰寫內容… - 大小 側邊欄標題外掛程式 顯示區段 %s 區塊含有無效內容 diff --git a/WordPress/src/main/res/values-zh-rTW/strings.xml b/WordPress/src/main/res/values-zh-rTW/strings.xml index 9c3e22f64ed6..b2daa95f82ab 100644 --- a/WordPress/src/main/res/values-zh-rTW/strings.xml +++ b/WordPress/src/main/res/values-zh-rTW/strings.xml @@ -1,11 +1,33 @@ + 背景 + 文字 + 捨棄 + 系統將不會儲存任何變更。 + 要捨棄變更嗎? + 完成 + 下一步 + 刪除 + 選取設計時發生錯誤。 + 請檢查你的網際網路連線,然後再試一次。 + 請在重新上線時點選重試。 + 版面配置在離線時無法使用 + 使用商店憑證繼續 + 尋找你連結的電子郵件 + 追蹤主題 + 嘗試追蹤更多主題以擴大搜尋範圍 + 沒有近期文章 + 歡迎! + 掃瞄 + <b>Johan Brandt</b> 已回應你的文章 + 你的網站本日獲得 <b>50 個讚</b> + <b>Madison Ruiz</b> 已對你的文章按讚 已開啟可捲動的區塊選單。 請選取一個區塊。 已關閉可捲動的區塊選單。 跳過 @@ -37,6 +59,7 @@ Language: zh_TW 激發靈感 關注你喜歡的網站並發掘新讀物。 透過深入分析資料拓展讀者群。 + 即時查看留言和通知。 這個功能強大的編輯器讓你隨時隨地都能發佈文章。 歡迎使用全球最受歡迎的網站建置工具。 媒體載入失敗 @@ -64,7 +87,7 @@ Language: zh_TW 從 WordPress 媒體庫選擇 返回 開始使用 - 關注主題以探索新網誌 + 追蹤主題以探索新網誌 發表者: 此推薦連結不能被標記為垃圾郵件 取消標記為垃圾郵件 @@ -93,7 +116,6 @@ Language: zh_TW 無法顯示此留言 瀏覽項目 檢舉這篇文章 - 角度 歡迎使用閱讀器。 動動指尖即可探索數百萬個網誌。 發生內部伺服器錯誤 你無法執行此動作 @@ -142,7 +164,6 @@ Language: zh_TW 此投影片尚未儲存。 若刪除此投影片,你所做的任何編輯將會遺失。 此投影片將從你的故事移除。 要刪除故事投影片嗎? - 刪除投影片 變更文字顏色 變更文字對齊方式 發生錯誤 @@ -152,8 +173,6 @@ Language: zh_TW 重試 已儲存 關閉 - 下一篇 - 完成 分享至 分享 已儲存至相片 @@ -164,7 +183,6 @@ Language: zh_TW 翻轉 音效 文字 - 更多 貼紙 閃爍 翻轉相機 @@ -522,7 +540,6 @@ Language: zh_TW 快完成了!我們只需驗證你與 Jetpack 綁定的電子郵件地址就行了<b>%1$s</b> 請使用網站憑證登入。 請使用 %1$s 網站憑證登入 - 傳送驗證電子郵件 網頁 關注中 按讚數 @@ -548,7 +565,6 @@ Language: zh_TW 拍攝相片或視訊 拍攝照片 開始撰寫內容… - 大小 側邊欄標題外掛程式 顯示區段 %s 區塊含有無效內容 diff --git a/WordPress/src/main/res/values/attrs.xml b/WordPress/src/main/res/values/attrs.xml index 5b60ff8cec1d..9d2744a1399a 100644 --- a/WordPress/src/main/res/values/attrs.xml +++ b/WordPress/src/main/res/values/attrs.xml @@ -21,7 +21,7 @@ - + @@ -101,6 +101,10 @@ ReaderFollowButton attributes --> + + + + diff --git a/WordPress/src/main/res/values/dimens.xml b/WordPress/src/main/res/values/dimens.xml index 6c85434b8084..c120065e16b9 100644 --- a/WordPress/src/main/res/values/dimens.xml +++ b/WordPress/src/main/res/values/dimens.xml @@ -153,6 +153,12 @@ 20dp 40dp + + 32dp + 165dp + 14dp + 4dp + 100dp @@ -160,6 +166,7 @@ @dimen/emphasis_extra_low + 7sp 10sp 12sp 14sp diff --git a/WordPress/src/main/res/values/reader_styles.xml b/WordPress/src/main/res/values/reader_styles.xml index 17b8887f80c4..d85d7f44e850 100644 --- a/WordPress/src/main/res/values/reader_styles.xml +++ b/WordPress/src/main/res/values/reader_styles.xml @@ -265,6 +265,17 @@ false + +