Browse Source

Merge branch 'danpros:master' into port443

pull/585/head
Robert Riebisch 2 years ago
committed by GitHub
parent
commit
09ea5fab5b
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
36 changed files with 1797 additions and 938 deletions
  1. +1
    -1
      COPYRIGHT.txt
  2. +3
    -130
      README.md
  3. +1
    -1
      cache/installedVersion.json
  4. +2
    -2
      config/config.ini.example
  5. +4
    -0
      lang/ar_AR.ini
  6. +4
    -0
      lang/de_DE.ini
  7. +277
    -0
      lang/el_GR.ini
  8. +5
    -0
      lang/en_US.ini
  9. +4
    -0
      lang/es_ES.ini
  10. +276
    -0
      lang/fa_IR.ini
  11. +20
    -16
      lang/fr_FR.ini
  12. +4
    -0
      lang/hu_HU.ini
  13. +36
    -32
      lang/id_ID.ini
  14. +206
    -202
      lang/it_IT.ini
  15. +205
    -201
      lang/ko_KO.ini
  16. +4
    -0
      lang/ms_MY.ini
  17. +4
    -0
      lang/nl_NL.ini
  18. +191
    -187
      lang/pl_PL.ini
  19. +4
    -0
      lang/pt_BR.ini
  20. +4
    -0
      lang/ru_RU.ini
  21. +4
    -0
      lang/sv_SE.ini
  22. +4
    -0
      lang/tr_TR.ini
  23. +4
    -0
      lang/zh_CN.ini
  24. +4
    -0
      lang/zh_TW.ini
  25. +93
    -59
      system/admin/admin.php
  26. +12
    -1
      system/admin/views/add-content.html.php
  27. +7
    -1
      system/admin/views/backup.html.php
  28. +20
    -14
      system/admin/views/config.html.php
  29. +6
    -1
      system/admin/views/edit-content.html.php
  30. +7
    -0
      system/admin/views/layout.html.php
  31. +57
    -0
      system/admin/views/scheduled.html.php
  32. +141
    -45
      system/htmly.php
  33. +180
    -42
      system/includes/functions.php
  34. +1
    -1
      system/vendor/kanti/hub-updater/src/CacheOneFile.php
  35. +1
    -1
      system/vendor/kanti/hub-updater/src/HubUpdater.php
  36. +1
    -1
      system/vendor/michelf/php-markdown/Michelf/MarkdownExtra.php

+ 1
- 1
COPYRIGHT.txt View File

@ -1,4 +1,4 @@
Copyright (c) 2014-2021 Danang Probo Sayekti.
Copyright (c) 2014-2023 Danang Probo Sayekti.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by


+ 3
- 130
README.md View File

@ -44,10 +44,11 @@ Features
- Post Draft
- i18n
- Menu builder
- Scheduled posts
Requirements
------------
HTMLy requires PHP 5.3 or greater, PHP-XML package, and PHP-ZIP package for backup feature.
HTMLy requires PHP 5.3 or greater, PHP-XML package, PHP-INTL package, and PHP-ZIP package for backup feature.
Installations
-------------
@ -79,7 +80,7 @@ In addition, HTMLy support admin user role. To do so, simply add the following l
role = admin
````
Users assigned with the admin role can edit/delete all users' posts.
Users assigned with the admin role can edit/delete all users posts.
To access the admin panel, add `/login` to the end of your site's URL.
e.g. `www.yoursite.com/login`
@ -148,134 +149,6 @@ $ php -a
````
This will produce a hash which is to be placed in the `password` field in `username.ini`. Ensure that the `encryption` field is set to `password_hash`.
Both Online or Offline
----------------------
The built-in editor found in the admin panel, also provides you the ability to write to Markdown files offline by uploading them (see naming convention below) into the `content/username/blog/category/type/`:
* `username` must match `config/users/username.ini`.
* `category` must match the `category.md` inside `content/data/category/category.md` except the `uncategorized` category.
* `type` is the content type. Available content type `post`, `video`, `audio`, `link`, `quote`.
For static pages you can upload it to the `content/static` folder.
Category
--------
The default category is `Uncategorized` with slug `uncategorized` and you do not need to creating it inside `content/data/category/` folder. But if you write it offline and want to assign new category to specific post you need to creating it first before you can use those category, example `content/data/category/new-category.md` with the following content:
```html
<!--t New category title t-->
<!--d New category meta description d-->
New category info etc.
````
The slug for the new category is `new-category` (htmly removing the file extension). And for full file directory:
````
content/username/new-category/post/file.md
````
File Naming Convention
----------------------
When you write a blog post and save it via the admin panel, HTMLy automatically create a .md file extension with the following name, example:
````
2014-01-31-12-56-40_tag1,tag2,tag3_databaseless-blogging-platform-flat-file-blog.md
````
Here's the explanation (separated by an underscore):
- `2014-01-31-12-56-40` is the published date. The date format is `yyyy-mm-dd-hh-mm-ss`
- `tag1,tag2,tag3` are the tags, separated by commas
- `databaseless-blogging-platform-flat-file-blog` is the URL
For static pages, use the following format:
````
content/static/about.md
````
In the example above, the `/about.md` creates the URL: `www.yourblog.com/about`
Thus, if you write/create files offline, you must name the .md file in the format above.
For static subpages, use the following format:
````
content/static/about/me.md
````
This will create the URL: `www.yourblog.com/about/me`
Content Tags
-------------
If you are writing offline, you need specify the content tags below:
**Title**
```html
<!--t Title t-->
````
**Meta description**
```html
<!--d The meta description d-->
````
**Tags**
This is just the tags display and for the slug is in the filename.
```html
<!--tag Tag1,Tag2 tag-->
````
**Featured image**
Post with featured image.
```html
<!--image http://www.example.com/image-url/image.jpg image-->
````
**Featured youtube video**
Post with featured youtube video.
```html
<!--video https://www.youtube.com/watch?v=xxxxxxx video-->
````
**Featured soundcloud audio**
Post with featured soundcloud audio.
```html
<!--audio https://soundcloud.com/xxxx/audio-url audio-->
````
**Featured link**
Post with featured link.
```html
<!--link https://github.com/danpros/htmly link-->
````
**Featured quote**
Post with featured quote.
```html
<!--quote Premature Optimization is The Root of All Evil quote-->
````
**Example**
Example of how your post would look like:
```html
<!--t Here is the post title t-->
<!--d The meta description d-->
<!--tag Tag1,Tag2 tag-->
<!--video https://www.youtube.com/watch?v=xxxxxxx video-->
Paragraph 1
Paragraph 2 etc.
```
Contribute
----------
1. Fork and edit


+ 1
- 1
cache/installedVersion.json View File

@ -1,4 +1,4 @@
{
"id": 782014,
"tag_name": "v2.8.2"
"tag_name": "v2.8.4"
}

+ 2
- 2
config/config.ini.example View File

@ -4,8 +4,8 @@ site.url = ""
; Your timezone
timezone = "Asia/Jakarta"
; Date format. See: https://www.php.net/manual/en/function.strftime
date.format = "%d %B %Y"
; Date format.
date.format = "d F Y"
; Your language (example "en_US" for English or "de_DE" for German. See lang directory for available language)
language = "en_US"


+ 4
- 0
lang/ar_AR.ini View File

@ -272,3 +272,7 @@ Search_results_not_found="Search results not found!"
No_search_results="No search results"
;TagCloud
Tagcloud_widget_at_most = "TagCloud at most"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 4
- 0
lang/de_DE.ini View File

@ -270,3 +270,7 @@ Search_results_not_found="Search results not found!"
No_search_results="No search results"
;TagCloud
Tagcloud_widget_at_most = "TagCloud at most"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 277
- 0
lang/el_GR.ini View File

@ -0,0 +1,277 @@
About = "Σχετικά"
Add_category = "Προσθήκη Κατηγορίας"
Add_content = "Προσθήκη Περιεχομένου"
Add_sub = "Προσθήκη Υποσελίδας"
Admin = "Διαχειριστής"
All_blog_posts = "Όλες οι αναρτήσεις ιστολογίου"
Archives = "Αρχειοθέτηση"
Are_you_sure_you_want_to_delete_ = "Είστε βέβαιοι ότι θέλετε να διαγράψετε <strong>%s</strong>;"
Audio_post = "Ηχητική ανάρτηση"
Audio_post_comment = "Δημιουργία ανάρτησης ιστολογίου με επιλεγμένο ήχο"
Author = "Συγγραφέας"
Backup = "Backup"
Cancel = "Άκυρο"
Categories = "Κατηγορίες"
Category = "Κατηγορία"
Clear_cache = "Εκκαθάριση προσωρινής μνήμης"
Config = "Διαμόρφωση"
Contents = "Περιεχόμενα"
Created = "Δημιουργήθηκε"
Delete = "Διαγραφή"
Description = "Περιγραφή"
Draft = "Προσχέδιο"
Edit = "Επεξεργασία"
Edit_profile = "Επεξεργασία προφίλ"
Filename = "Όνομα αρχείου"
Follow = "Ακολούθησε"
Image_post = "Ανάρτηση εικόνας"
Image_post_comment = "Δημιουργία ανάρτησης ιστολογίου με επιλεγμένη εικόνα"
Import = "Εισαγωγή"
Link_post = "Ανάρτηση συνδέσμου"
Link_post_comment = "Δημιουργία ανάρτησης ιστολογίου με επιλεγμένο σύνδεσμο"
Login = "Σύνδεση"
Login_page = "Σελίδα σύνδεσης"
Logout = "Αποσύνδεση"
Meta_description = "Meta description"
Mine = "Δικά μου"
More = "Περισσότερα"
My_draft = "Τα προσχέδιά μου"
My_posts = "Οι αναρτήσεις μου"
Newer = "Νεότερα"
Next = "Επόμενο"
Next_post = "Επόμενο post"
No_draft_found = "Δεν βρέθηκε προσχέδιο"
No_posts_found = "Δεν βρέθηκαν δημοσιεύσεις"
No_related_post_found = "Δεν βρέθηκε σχετική ανάρτηση"
Older = "Παλαιότερα"
Operations = "Λειτουργίες"
Popular_posts = "Δημοφιλείς αναρτήσεις"
Popular_tags = "Δημοφιλείς ετικέτες"
Posted_in = "Δημοσιεύτηκε στο"
Posted_on = "Δημοσιεύτηκε στις"
Posts = "Αναρτήσεις"
Prev = "Προηγούμενο"
Prev_post = "Προηγούμενη ανάρτηση"
Publish = "Δημοσίευση"
Publish_draft = "Δημοσίευση προχείρου"
Published = "Δημοσιεύτηκε"
Quote_post = "Παράθεση ανάρτησης"
Quote_post_comment = "Δημιουργία ανάρτησης ιστολογίου με επιλεγμένο απόσπασμα"
Recent_posts = "Πρόσφατες δημοσιεύσεις"
Regular_post = "Κανονική ανάρτηση"
Regular_post_comment = "Δημιουργία κανονικής ανάρτησης ιστολογίου"
Related_posts = "Σχετικές αναρτήσεις"
Revert_to_draft = "Επαναφορά στο πρόχειρο"
Save = "Αποθήκευση"
Save_as_draft = "Αποθήκευση ως πρόχειρο"
Search = "Αναζήτηση"
Search_for = "Αναζήτηση"
Static_page = "Στατική σελίδα"
Static_page_comment = "Δημιουργία στατικής σελίδας"
Static_pages = "Στατικές σελίδες"
Tag = "Ετικέτα"
Tags = "Ετικέτες"
Title = "Τίτλος"
Uncategorized = "Χωρίς κατηγορία"
Uncategorized_comment = "Θέματα που δεν χρειάζονται κατηγορία ή δεν ταιριάζουν σε καμία άλλη υπάρχουσα κατηγορία"
Update = "Ενημέρωση"
Update_draft = "Ενημέρωση σχεδίου"
Update_post = "Ενημέρωση ανάρτησης"
Video_post = "Βίντεο ανάρτηση"
Video_post_comment = "Δημιουργία ανάρτησης ιστολογίου με επιλεγμένο βίντεο"
View = "Προβολή"
Views = "Προβολές"
Your_recent_posts = "Οι πρόσφατες αναρτήσεις σας"
by = "από"
read_more = "διαβάστε περισσότερα"
Dashboard="Πίνακας ελέγχου"
Posts_list="Λίστα αναρτήσεων"
Posts_draft="Προσχέδιο αναρτήσεων"
Menus = "Επεξεργαστής μενού"
Settings = "Ρυθμίσεις"
Tools = "Εργαλεία"
Check_update="Έλεγχος ενημέρωσης"
Import_RSS="Εισαγωγή RSS"
User = "Χρήστης"
Proudly_powered_by="Περήφανα τροφοδοτείται από"
Home = "Αρχική"
Type_to_search="Πληκτρολογήστε για αναζήτηση"
Admin_panel_style_based_on="Στιλ πίνακα διαχειριστή με βάση"
Sign_in_to_start_your_session="Συνδεθείτε για να ξεκινήσει η συνεδρία σας"
Back_to="Επιστροφή στο"
Login = "Είσοδος"
User = "Χρήστης"
Password = "Κωδικός πρόσβασης"
Comma_separated_values="Τιμές διαχωρισμένες με κόμμα"
If_leave_empty_we_will_excerpt_it_from_the_content_below="Αν αφήσουμε κενό, θα το αποσπάσουμε από το παρακάτω περιεχόμενο"
optional = "προαιρετικό"
If_the_url_leave_empty_we_will_use_the_post_title="Εάν το url μείνει κενό, θα χρησιμοποιήσουμε τον τίτλο της ανάρτησης"
If_the_url_leave_empty_we_will_use_the_page_title="Εάν το url μείνει κενό, θα χρησιμοποιήσουμε τον τίτλο της σελίδας"
Only = "Μόνο"
Featured_Audio="Επιλεγμένος ήχος"
Featured_Video="Επιλεγμένο βίντεο"
Featured_Image="Επιλεγμένη εικόνα"
Featured_Quote="Επιλεγμένη προσφορά"
Featured_Link="Επιλεγμένος σύνδεσμος"
Content="Content"
Preview="Προεπισκόπηση"
Enter_image_URL="Εισαγωγή διεύθυνσης URL εικόνας"
Upload="Μεταφόρτωση"
Insert_Image="Εισαγωγή εικόνας"
This_page_doesnt_exist="Αυτή η σελίδα δεν υπάρχει!"
Would_you_like_to_try_our="Θα θέλατε να δοκιμάσετε το "
homepage = "αρχική σελίδα"
instead = "αντί"
Your_backups="Τα αντίγραφα ασφαλείας σας"
Create_backup="Δημιουργία αντιγράφου ασφαλείας"
All_cache_has_been_deleted="Όλη η προσωρινή μνήμη έχει διαγραφεί !"
Edit_category="Επεξεργασία κατηγορίας"
Date = "Ημερομηνία"
Time = "Ώρα"
No_available_backup="Δεν υπάρχει διαθέσιμο αντίγραφο ασφαλείας αυτή τη στιγμή."
You_dont_have_permission_to_access_this_page="Δεν έχετε άδεια πρόσβασης σε αυτήν τη σελίδα"
Save_category="Αποθήκευση κατηγορίας"
Import_RSS_Feed_2.0="Εισαγωγή RSS Feed 2.0"
By_using_this_importer_you_are_agree_if_the_feed_is_yours_or_at_least_you_have_the_authority_to_publish_it="Χρησιμοποιώντας αυτόν τον εισαγωγέα συμφωνείτε εάν η ροή είναι δική σας ή τουλάχιστον έχετε την εξουσία να τη δημοσιεύσετε."
Feed_Url="Διεύθυνση URL ροής"
Add_source_link_optional="Προσθήκη συνδέσμου πηγής (προαιρετικό)"
Import_Feed="Έναρξη εισαγωγής ροής"
At_the_moment_you_are_using_auto_generated_menu="Αυτή τη στιγμή χρησιμοποιείτε το μενού που δημιουργείται αυτόματα."
Add_menu="Προσθήκη μενού"
Name = "Όνομα"
Link_name="Όνομα συνδέσμου"
Slug="Slug"
item_slug="Εισαγωγή URL συνδέσμου"
CSS_Class_Optional="Κλάση CSS (προαιρετικό)"
item_class="Εισαγωγή κλάσης CSS"
Add_link="Προσθήκη συνδέσμου"
Save_Edit="Αποθήκευση επεξεργασίας"
Save_Menu="Αποθήκευση μενού"
Add_new_post="Προσθήκη νέας ανάρτησης"
Add_new_page="Προσθήκη νέας σελίδας"
Update_Available="Ενημέρωση διαθεσιμότητας"
Congrats_You_have_the_latest_version_of_HTMLy="Συγχαρητήρια! Έχετε την πιο πρόσφατη έκδοση του HTMLy."
Update_to="Ενημέρωση σε"
now = "τώρα"
Performance_Settings="Ρυθμίσεις απόδοσης"
General = "Γενικά"
Reading="Διαβάζοντας"
Widget="Widget"
Metatags="Metatags"
Performance="Performance"
Custom = "Προσαρμοσμένο"
General_Settings="Γενικές ρυθμίσεις"
Reading_Settings="Ρυθμίσεις ανάγνωσης"
Widget_Settings="Ρυθμίσεις widget"
Metatags_Settings="Ρυθμίσεις Metatags"
Custom_Settings="Προσαρμοσμένες ρυθμίσεις"
Address_URL="Διεύθυνση (URL)"
Blog_Title="Τίτλος ιστολογίου"
Blog_Title_Placeholder="Το ιστολόγιό μου HTMLy"
Tagline="Tagline"
Tagline_Placeholder="Πλατφόρμα ιστολογίων PHP χωρίς βάση δεδομένων"
Tagline_description="Με λίγα λόγια, εξηγήστε τι είναι αυτό το ιστολόγιο."
Blog_Description="Σε μία παράγραφο, πείτε μας περισσότερα για το ιστολόγιό σας."
Language="Γλώσσα συστήματος"
Timezone="Ζώνη ώρας"
Date_Format="Μορφή ημερομηνίας"
Blog_Theme="Θέμα ιστολογίου"
Copyright_Line="Γραμμή πνευματικών δικαιωμάτων"
Copyright_Line_Placeholder="(γ) Το όνομά σας."
Save_Config="Αποθήκευση διαμόρφωσης"
Front_page_displays="Εμφάνιση πρώτης σελίδας"
Your_latest_blog_posts="Οι πιο πρόσφατες αναρτήσεις ιστολογίου σας"
Enable_blog_URL="Ενεργοποίηση διεύθυνσης URL /blog"
Enable="Ενεργοποίηση"
Disable="Απενεργοποίηση"
Posts_in_front_page_show_at_most="Οι αναρτήσεις στην πρώτη σελίδα εμφανίζονται το πολύ"
Blog_posts_displayed_as="Οι αναρτήσεις ιστολογίου εμφανίζονται ως"
Full_post="Πλήρης ανάρτηση"
Summary="Σύνοψη"
Summary_character="Σύνοψη χαρακτήρα"
Read_more_text="Διαβάστε περισσότερα κείμενο"
Read_more_text_placeholder="Διαβάστε περισσότερα"
Posts_index_settings="Ρυθμίσεις ευρετηρίου αναρτήσεων"
Posts_in_category_page_at_most="Το πολύ δημοσιεύσεις στη σελίδα κατηγορίας"
Posts_in_archive_page_at_most="Το πολύ δημοσιεύσεις στη σελίδα αρχείου"
Posts_in_tag_page_at_most="Το πολύ δημοσιεύσεις στη σελίδα ετικέτας"
Posts_in_search_result_at_most="Το πολύ δημοσιεύσεις στο αποτέλεσμα αναζήτησης"
Posts_in_type_page_at_most="Το πολύ δημοσιεύσεις στη σελίδα τύπου"
Posts_in_profile_page_at_most="Το πολύ δημοσιεύσεις στη σελίδα προφίλ"
RSS_settings="Ρυθμίσεις RSS"
RSS_feeds_show_the_most_recent="Οι ροές RSS εμφανίζουν τις πιο πρόσφατες"
RSS_character="χαρακτήρας RSS"
Permalink = "Permalink"
year_month_your_post_slug="/year/month/your-post-slug"
post_your_post_slug="/post/your-post-slug"
Meta_description_character="Χαρακτήρας μετα περιγραφής"
Breadcrumb_home_text="Αρχικό κείμενο ψωμιού"
Sitemap="Χάρτης ιστότοπου"
Valid_values_range_from_0_to_1.0._See="Οι έγκυρες τιμές κυμαίνονται από 0,0 έως 1,0. Δείτε"
hint_Use_CtrlCMDF_to_search_for_your_config_key_or_value="<u>hint:</u> Χρησιμοποιήστε <code>Ctrl</code>/<code>CMD</code> + <code>F</code> για να αναζητήσετε το κλειδί ή την τιμή διαμόρφωσης."
pro_tips_You_can_creating_custom_config_key_and_print_out_your_config_key_value_anywhere_in_your_template="<u>επαγγελματικές συμβουλές:</u> Μπορείτε να δημιουργήσετε προσαρμοσμένα κλειδιά διαμόρφωσης και να εκτυπώσετε την τιμή του κλειδιού διαμόρφωσης οπουδήποτε στο πρότυπό σας."
your_key="your.key"
Your_New_Config_Key="Το νέο κλειδί διαμόρφωσης"
Your_New_Value="Η νέα σας αξία"
Related_widget_posts_at_most="Σχετικές αναρτήσεις widget το πολύ"
Recent_posts_widget_at_most="Γραφικό στοιχείο πρόσφατων αναρτήσεων το πολύ"
Popular_posts_widget="Γραφικό στοιχείο δημοφιλών αναρτήσεων"
Popular_posts_widget_at_most="Γραφικό στοιχείο δημοφιλών αναρτήσεων το πολύ"
Comments = "Σχόλια"
To_using_Disqus_or_Facebook_comment_you_need_to_provide_Disqus_shortname_or_Facebook_App_ID="Για να χρησιμοποιήσετε τα σχόλια του Disqus ή του Facebook, πρέπει να δώσετε το σύντομο όνομα του Disqus ή το αναγνωριστικό εφαρμογής του Facebook."
Comment_system="Σύστημα σχολίων"
Disabled="Απενεργοποιημένο"
Disqus_shortname="Σύντομο όνομα Disqus"
Disqus_shortname_placeholder="htmly"
Facebook_App_ID="Αναγνωριστικό εφαρμογής Facebook"
widget_key_placeholder="12345abcde"
Recaptcha="reCAPTCHA"
Get_one_here="Αποκτήστε ένα εδώ"
Site_Key="Κλειδί τοποθεσίας"
Secret_Key="Μυστικό κλειδί"
Google_Analytics="Google Analytics"
Universal_Analytics="Universal Analytics (gtag.js)"
Google_Analytics_legacy="Google Analytics (κληρονομιά)"
This_is_legacy_code_usually_new_created_analytics_using_gtag_js="Αυτός είναι κώδικας παλαιού τύπου. Συνήθως νέα αναλυτικά στοιχεία που δημιουργούνται χρησιμοποιώντας gtag.js"
Google_Search_Console="Google Search Console"
For_google_site_verification_meta="Για meta google-site-verification"
Social_Media="Μέσα κοινωνικής δικτύωσης"
Twitter_account="Λογαριασμός Twitter"
Facebook_page="Σελίδα Facebook"
Cache_expiration="Λήξη προσωρινής μνήμης (σε ώρες)"
Cache_off="Απενεργοποίηση προσωρινής μνήμης"
Yes_not_recommended="Ναι (δεν συνιστάται)"
Not = "Όχι"
Cache_timestamp="Cache timestamp"
Page_generation_time="Χρόνος δημιουργίας σελίδας"
Github_pre_release="Github προέκδοση"
Pre_release="Προκυκλοφορία"
Yes_Im_in="Ναι, είμαι μέσα"
Nope = "Όχι"
Page="Σελίδα"
of = "από"
Edit_post="Επεξεργασία"
View_post="Προβολή"
Posts_by="Αναρτήσεις από"
Pages="Σελίδες"
Menu = "Μενού"
Popular="Δημοφιλές"
;Σφάλματα
User_Error="Απαιτείται πεδίο χρήστη"
Pass_Error="Απαιτείται το πεδίο κωδικού πρόσβασης"
Token_Error="Το CSRF Token δεν είναι σωστό"
Captcha_Error="το reCaptcha δεν είναι σωστό"
Invalid_Error="ΣΦΑΛΜΑ: Μη έγκυρο όνομα χρήστη ή κωδικός πρόσβασης"
;Προφίλ
Post_by_author="Αναρτήσεις από αυτόν τον συγγραφέα"
Author_Description=" "
;404-αναζήτηση
Search_results_not_found="Δεν βρέθηκαν αποτελέσματα αναζήτησης!"
No_search_results="Δεν υπάρχουν αποτελέσματα αναζήτησης"
;TagCloud
Tagcloud_widget_at_most = TagCloud το πολύ
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 5
- 0
lang/en_US.ini View File

@ -270,3 +270,8 @@ Search_results_not_found="Search results not found!"
No_search_results="No search results"
;TagCloud
Tagcloud_widget_at_most = TagCloud at most
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 4
- 0
lang/es_ES.ini View File

@ -269,3 +269,7 @@ Search_results_not_found="Search results not found!"
No_search_results="No search results"
;TagCloud
Tagcloud_widget_at_most = "TagCloud at most"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 276
- 0
lang/fa_IR.ini View File

@ -0,0 +1,276 @@
About = "درباره ما"
Add_category = "افزودن دسته بندی"
Add_content = "افزودن محتوا"
Add_sub = "افزودن صفحه فرعی"
Admin = "ادمین"
All_blog_posts = "تمام ارسالی ها"
Archives = "آرشیو"
Are_you_sure_you_want_to_delete_ = "Are you sure you want to delete <strong>%s</strong>?"
Audio_post = "پست های صوتی"
Audio_post_comment = "Creating blog post with featured audio"
Author = "نویسنده"
Backup = "پشتیبان"
Cancel = "انصراف"
Categories = "دسته بندی ها"
Category = "دسته بندی"
Clear_cache = "پاک کردن حافظه کش"
Config = "تنظیمات"
Contents = "فهرست"
Created = "ایجاد شد"
Delete = "حذف"
Description = "توضیحات"
Draft = "پیش نویس"
Edit = "ویرایش"
Edit_profile = "ویرایش پروفایل"
Filename = "نام فایل"
Follow = "دنبال کردن"
Image_post = "ارسال تصویر"
Image_post_comment = "ایجاد پست وبلاگ به همراه تصویر"
Import = "وارد كردن"
Link_post = "لینک پست"
Link_post_comment = "ایجاد پست وبلگ به همراه لینک"
Login = "ورود"
Login_page = "صفحه ورود"
Logout = "خروج"
Meta_description = "توضیحات متا"
Mine = "Mine"
More = "بیشتر"
My_draft = "پیش نویس های من"
My_posts = "پست های من"
Newer = "جدیدتر"
Next = "بعد"
Next_post = "پست بعدی"
No_draft_found = "پیش نویس یافت نشد"
No_posts_found = "هیچ پستی ارسال نشده است"
No_related_post_found = "پست مرتبطی یافت نشد"
Older = "قدیمی ترها"
Operations = "عملیات"
Popular_posts = "پست های محبوب"
Popular_tags = "تگ های محبوب"
Posted_in = "ارسال شده"
Posted_on = "Posted on"
Posts = "پست ها"
Prev = "قدیمی"
Prev_post = "پست قبلی"
Publish = "انتشار"
Publish_draft = "انتشار پیش نویس"
Published = "منتشر شد"
Quote_post = "Quote post"
Quote_post_comment = "Creating blog post with featured quote"
Recent_posts = "پست های اخیر"
Regular_post = "پست عادی"
Regular_post_comment = "ایجاد پست عادی وبلاگ"
Related_posts = "پست های مرتبط"
Revert_to_draft = "Revert to draft"
Save = "ذخیره"
Save_as_draft = "Save as draft"
Search = "جستجو"
Search_for = "جستجو برای"
Static_page = "صفحه ایستا"
Static_page_comment = "ایجاد صفحه ایستا"
Static_pages = "صفحه های ایستا"
Tag = "تگ"
Tags = "تگ ها"
Title = "عنوان"
Uncategorized = "دسته بندی نشده"
Uncategorized_comment = "Topics that don't need a category, or don't fit into any other existing category"
Update = "به روز رسانی"
Update_draft = "به روز رسانی پیش نویس"
Update_post = "به روز رسانی پست"
Video_post = "پست ویدیویی"
Video_post_comment = "Creating blog post with featured video"
View = "View"
Views = "Views"
Your_recent_posts = "آخرین پست ها"
by = "توسط"
read_more = "read more"
Dashboard="داشبورد"
Posts_list="لیست پست ها"
Posts_draft="Posts draft"
Menus="Menu Editor"
Settings="تنظیمات"
Tools="ابزار"
Check_update="بررسی به روزرسانی"
Import_RSS="Import RSS"
User="کاربر"
Proudly_powered_by="Proudly powered by"
Home="صفحه اصلی"
Type_to_search="برای جستجو تایپ کنید"
Admin_panel_style_based_on="Admin panel style based on"
Sign_in_to_start_your_session="Sign in to start your session"
Back_to="برگشت به"
Login="ورود"
User="نام کاربری"
Password="کلمه عبور"
Comma_separated_values="Comma separated values"
If_leave_empty_we_will_excerpt_it_from_the_content_below="If leave empty we will excerpt it from the content below"
optional="اختیاری"
If_the_url_leave_empty_we_will_use_the_post_title="If the url leave empty we will use the post title"
If_the_url_leave_empty_we_will_use_the_page_title="If the url leave empty we will use the page title"
Only="فقط"
Featured_Audio="Featured Audio"
Featured_Video="Featured Video"
Featured_Image="Featured Image"
Featured_Quote="Featured Quote"
Featured_Link="Featured Link"
Content="محتوا"
Preview="مشاهده"
Enter_image_URL="ورود آدرس تصویر"
Upload="ارسال"
Insert_Image="درج تصویر"
This_page_doesnt_exist="این صفحه وجود ندارد"
Would_you_like_to_try_our="Would you like to try our "
homepage="صفحه اصلی"
instead="به جای"
Your_backups="Your backups"
Create_backup="ساجاد نسخه پشتیبان"
All_cache_has_been_deleted="حافظه کش پاک شد!"
Edit_category="ویرایش دسته بندی"
Date="تاریخ"
Time="ساعت"
No_available_backup="هیچ نسخه پشتیبانی وجود ندارد"
You_dont_have_permission_to_access_this_page="You don't have permission to access this page"
Save_category="دخیره دسته بندی"
Import_RSS_Feed_2.0="Import RSS Feed 2.0"
By_using_this_importer_you_are_agree_if_the_feed_is_yours_or_at_least_you_have_the_authority_to_publish_it="By using this importer you are agree if the feed is yours or at least you have the authority to publish it."
Feed_Url="Feed URL"
Add_source_link_optional="Add source link (optional)"
Import_Feed="Start Import Feed"
At_the_moment_you_are_using_auto_generated_menu="At the moment you are using auto generated menu."
Add_menu="افزودن منو"
Name="نام"
Link_name="نام لینک"
Slug="Slug"
item_slug="افزودن لینک"
CSS_Class_Optional="CSS Class (optional)"
item_class="Insert CSS class"
Add_link="افزودن لینک"
Save_Edit="Save Edit"
Save_Menu="Save menu"
Add_new_post="افزودن پست جدید"
Add_new_page="افزودن صفحه جدید"
Update_Available="Update Available"
Congrats_You_have_the_latest_version_of_HTMLy="Congrats! You have the latest version of HTMLy."
Update_to="به روزرسانی به"
now="now"
Performance_Settings="Performance Settings"
General="عمومی"
Reading="خواندن"
Widget="ویجت"
Metatags="متاتگ"
Performance="پرفورمنس"
Custom="سفارشی"
General_Settings="تنظیمات عمومی"
Reading_Settings="Reading Settings"
Widget_Settings="Widget Settings"
Metatags_Settings="Metatags Settings"
Custom_Settings="تنظیمات سفارشی"
Address_URL="Address (URL)"
Blog_Title="عنوان وبلاگ"
Blog_Title_Placeholder="My HTMLy Blog"
Tagline="Tagline"
Tagline_Placeholder="Databaseless PHP Blogging Platform"
Tagline_description="In a few words, explain what this blog is about."
Blog_Description="In one paragraph, tell us more about your blog."
Language="زیان سیستم"
Timezone="Timezone"
Date_Format="فرمت تاریخ"
Blog_Theme="تم وبلاگ"
Copyright_Line="خط کپی رایت"
Copyright_Line_Placeholder="(c) Your name."
Save_Config="ذخیره تنظیمات"
Front_page_displays="نمایش صفحه اول"
Your_latest_blog_posts="آخرین پست های وبلاگ"
Enable_blog_URL="Enable /blog URL"
Enable="فعال"
Disable="غیر فعال"
Posts_in_front_page_show_at_most="Posts in front page show at most"
Blog_posts_displayed_as="Blog posts displayed as"
Full_post="پست کامل"
Summary="خلاصه"
Summary_character="Summary character"
Read_more_text="Read more text"
Read_more_text_placeholder="ادامه مطلب"
Posts_index_settings="Posts index settings"
Posts_in_category_page_at_most="Posts in category page at most"
Posts_in_archive_page_at_most="Posts in archive page at most"
Posts_in_tag_page_at_most="Posts in tag page at most"
Posts_in_search_result_at_most="Posts in search result at most"
Posts_in_type_page_at_most="Posts in type page at most"
Posts_in_profile_page_at_most="Posts in profile page at most"
RSS_settings="RSS settings"
RSS_feeds_show_the_most_recent="RSS feeds show the most recent"
RSS_character="RSS character"
Permalink="پیوند ثابت"
year_month_your_post_slug="/year/month/your-post-slug"
post_your_post_slug="/post/your-post-slug"
Meta_description_character="Meta description character"
Breadcrumb_home_text="Breadcrumb home text"
Sitemap="نقشه سایت"
Valid_values_range_from_0_to_1.0._See="Valid values range from 0.0 to 1.0. See"
hint_Use_CtrlCMDF_to_search_for_your_config_key_or_value="<u>hint:</u> Use <code>Ctrl</code>/<code>CMD</code> + <code>F</code> to search for your config key or value."
pro_tips_You_can_creating_custom_config_key_and_print_out_your_config_key_value_anywhere_in_your_template="<u>pro tips:</u> You can create custom config keys and print out your config key value anywhere in your template."
your_key="your.key"
Your_New_Config_Key="Your New Config Key"
Your_New_Value="Your New Value"
Related_widget_posts_at_most="Related widget posts at most"
Recent_posts_widget_at_most="Recent posts widget at most"
Popular_posts_widget="Popular posts widget"
Popular_posts_widget_at_most="Popular posts widget at most"
Comments="نظرات"
To_using_Disqus_or_Facebook_comment_you_need_to_provide_Disqus_shortname_or_Facebook_App_ID="To use Disqus or Facebook comments you need to provide your Disqus shortname or your Facebook App ID."
Comment_system="Comment system"
Disabled="غیرفعال شد"
Disqus_shortname="Disqus shortname"
Disqus_shortname_placeholder="htmly"
Facebook_App_ID="Facebook App ID"
widget_key_placeholder="12345abcde"
Recaptcha="reCAPTCHA"
Get_one_here="Get one here"
Site_Key="Site Key"
Secret_Key="Secret Key"
Google_Analytics="Google Analytics"
Universal_Analytics="Universal Analytics (gtag.js)"
Google_Analytics_legacy="Google Analytics (legacy)"
This_is_legacy_code_usually_new_created_analytics_using_gtag_js="This is legacy code. Usually new created analytics using gtag.js"
Google_Search_Console="Google Search Console"
For_google_site_verification_meta="For google-site-verification meta"
Social_Media="رسانه های اجتماعی"
Twitter_account="Twitter account"
Facebook_page="Facebook page"
Cache_expiration="Cache expiration (in hours)"
Cache_off="Cache off"
Yes_not_recommended="Yes (not recommended)"
Not="No"
Cache_timestamp="Cache timestamp"
Page_generation_time="Page generation time"
Github_pre_release="Github pre-release"
Pre_release="Pre-release"
Yes_Im_in="Yes I'm in"
Nope="Nope"
Page="صفحه"
of="of"
Edit_post="ویرایش"
View_post="View"
Posts_by="ارسال توسط"
Pages="صفحه ها"
Menu="منو"
Popular="محبوب"
;Errors
User_Error="User field is required"
Pass_Error="Password field is required"
Token_Error="CSRF Token not correct"
Captcha_Error="reCaptcha not correct"
Invalid_Error="ERROR: Invalid username or password"
;Profile
Post_by_author="Posts by this author"
Author_Description="Just another HTMLy user"
;404-search
Search_results_not_found="Search results not found!"
No_search_results="No search results"
;TagCloud
Tagcloud_widget_at_most = TagCloud at most
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 20
- 16
lang/fr_FR.ini View File

@ -5,7 +5,7 @@ Add_sub = "Ajouter une sous-page"
Admin = "Administrateur"
All_blog_posts = "Tous les billets de blog"
Archives = "Archives"
Are_you_sure_you_want_to_delete_ = "Êtes-vous sûr que de vouloir supprimer <strong>%s</strong> ?"
Are_you_sure_you_want_to_delete_ = "Êtes-vous sûr de vouloir supprimer <strong>%s</strong> ?"
Audio_post = "Billet audio"
Audio_post_comment = "Créer un billet de blog avec un fichier audio"
Author = "Auteur"
@ -73,7 +73,7 @@ Tag = "Tag"
Tags = "Tags"
Title = "Titre"
Uncategorized = "Sans catégorie"
Uncategorized_comment = "Sujets qui n'ont pas besoin de catégorie, ou qui ne conviennent à aucun catégorie existante"
Uncategorized_comment = "Sujets qui n'ont pas besoin de catégorie, ou qui ne conviennent à aucune catégorie existante"
Update = "Mise à jour"
Update_draft = "Mettre à jour le brouillon"
Update_post = "Mettre à jour le billet"
@ -250,23 +250,27 @@ Yes_Im_in="Oui, je suis prêt"
Nope="Non !"
Page="Page"
of="de"
Edit_post="Edit"
View_post="View"
Posts_by="Posts by"
Edit_post="Éditer"
View_post="Consulter"
Posts_by="Posts par"
Pages="Pages"
Menu="Menu"
Popular="Popular"
Popular="Populaire"
;Errors
User_Error="User field is required"
Pass_Error="Password field is required"
Token_Error="CSRF Token not correct"
Captcha_Error="reCaptcha not correct"
Invalid_Error="ERROR: Invalid username or password"
User_Error="Le champ Utilisateur est requis"
Pass_Error="Le champ Mot de passe est requis"
Token_Error="Jeton CSRF incorrect"
Captcha_Error="reCaptcha incorrect"
Invalid_Error="ERREUR: Nom d'utilisateur ou mot de passe incorrect"
;Profile
Post_by_author="Posts by this author"
Author_Description="Just another HTMLy user"
Post_by_author="Posts de cet auteur"
Author_Description="Un autre utilisateur de HTMLy"
;404-search
Search_results_not_found="Search results not found!"
No_search_results="No search results"
Search_results_not_found="Résultats de recherche non trouvés !"
No_search_results="Aucun résultat de recherche"
;TagCloud
Tagcloud_widget_at_most = "TagCloud at most"
Tagcloud_widget_at_most = "TagCloud au maximum"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 4
- 0
lang/hu_HU.ini View File

@ -270,3 +270,7 @@ Search_results_not_found="Search results not found!"
No_search_results="No search results"
;TagCloud
Tagcloud_widget_at_most = "TagCloud at most"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 36
- 32
lang/id_ID.ini View File

@ -2,26 +2,26 @@ About = "Tentang"
Add_category = "Tambah kategori"
Add_content = "Tambah konten"
Add_sub = "Tambah sub halaman"
Admin = "Admin"
Admin = "Pengelola"
All_blog_posts = "Semua artikel"
Archives = "Arsip"
Are_you_sure_you_want_to_delete_ = "Anda yakin ingin menghapus <strong>%s</strong>?"
Audio_post = "artikel dengan Audio"
Audio_post = "Artikel dengan Audio"
Audio_post_comment = "Membuat artikel dengan audio unggulan"
Author = "Penulis"
Backup = "Cadangkan"
Cancel = "Batal"
Categories = "Kategori"
Category = "Kategori"
Clear_cache = "Bersihkan cache"
Clear_cache = "Bersihkan tembolok"
Config = "Konfigurasi"
Contents = "Konten"
Contents = "Kandungan"
Created = "Telah dibuat"
Delete = "Hapus"
Description = "Deskripsi"
Draft = "Draft"
Edit = "Edit"
Edit_profile = "Edit profil"
Description = "Keterangan"
Draft = "Konsep"
Edit = "Sunting"
Edit_profile = "Sunting profil"
Filename = "Nama berkas"
Follow = "Ikuti"
Image_post = "Artikel bergambar"
@ -35,25 +35,25 @@ Logout = "Keluar"
Meta_description = "Meta deskripsi"
Mine = "Punya saya"
More = "Selengkapnya"
My_draft = "Draft saya"
My_draft = "Konsep saya"
My_posts = "Artikel saya"
Newer = "Baru"
Next = "Selanjutnya"
Next_post = "Artikel selanjutnya"
No_draft_found = "Draft tidak ditemukan"
No_draft_found = "Konsep tidak ditemukan"
No_posts_found = "Artikel tidak ditemukan"
No_related_post_found = "Artikel terkait tidak ditemukan"
Older = "Lebih lama"
Operations = "Operasi"
Popular_posts = "Artikel populer"
Popular_tags = "Tag populer"
Posted_in = "Terpublis di"
Posted_on = "Terpublis pada"
Posted_in = "Terbit di"
Posted_on = "Terbit pada"
Posts = "Artikel"
Prev = "Sebelumnya"
Prev_post = "Artikel sebelumnya"
Publish = "Terpublikasi"
Publish_draft = "Draft dipublikasikan"
Publish_draft = "Konsep dipublikasikan"
Published = "Dipublikasikan"
Quote_post = "Artikel dengan kutipan"
Quote_post_comment = "Membuat Artikel dengan kutipan unggulan"
@ -61,9 +61,9 @@ Recent_posts = "Artikel terbaru"
Regular_post = "Artikel reguler"
Regular_post_comment = "Membuat Artikel reguler"
Related_posts = "Artikel terkait"
Revert_to_draft = "Ubah ke draft"
Revert_to_draft = "Ubah ke konsep"
Save = "Simpan"
Save_as_draft = "Simpan sebagai draft"
Save_as_draft = "Simpan sebagai konsep"
Search = "Cari"
Search_for = "Mencari"
Static_page = "Halaman statis"
@ -75,7 +75,7 @@ Title = "Judul"
Uncategorized = "Uncategorized"
Uncategorized_comment = "Topik yang tidak perlu kategori, atau tidak cocok dengan kategori yang ada"
Update = "Update"
Update_draft = "Perbarui draf"
Update_draft = "Perbarui konsep"
Update_post = "Perbarui artikel"
Video_post = "Artikel dengan video"
Video_post_comment = "Membuat artikel dengan video unggulan"
@ -83,10 +83,10 @@ View = "Lihat"
Views = "Lihat"
Your_recent_posts = "Artikel terbaru Anda"
by = "Oleh"
read_more = "Baca"
Dashboard = "Dashboard"
read_more = "Baca selengkapnya"
Dashboard = "Dasbor"
Posts_list = "Daftar artikel"
Posts_draft = "Daftar draf"
Posts_draft = "Daftar konsep"
Menus = "Menu Editor"
Settings = "Pengaturan"
Tools = "Alat"
@ -229,9 +229,9 @@ Recaptcha="reCAPTCHA"
Get_one_here="Dapatkan satu di sini"
Site_Key="Kunci Situs"
Secret_Key="Kunci rahasia"
Google_Analytics="Google Analytics"
Universal_Analytics="Universal Analytics (gtag.js)"
Google_Analytics_legacy="Google Analytics (lama)"
Google_Analytics="Penganalisa Google"
Universal_Analytics="Penganalisa Universal (gtag.js)"
Google_Analytics_legacy="Penganalisa Google (lama)"
This_is_legacy_code_usually_new_created_analytics_using_gtag_js="Ini adalah kode warisan. Biasanya analitik baru dibuat menggunakan gtag.js"
Google_Search_Console="Google Search Console"
For_google_site_verification_meta="Untuk meta verifikasi situs-google"
@ -257,16 +257,20 @@ Pages="Halaman"
Menu="Menu"
Popular="Populer"
;Errors
User_Error="User field is required"
Pass_Error="Password field is required"
Token_Error="CSRF Token not correct"
Captcha_Error="reCaptcha not correct"
Invalid_Error="ERROR: Invalid username or password"
User_Error="Bidang pengguna dibutuhkan"
Pass_Error="Bidang kata sandi diperlukan"
Token_Error="Token CSRF tidak benar"
Captcha_Error="reCaptcha tidak benar"
Invalid_Error="Kesalahan: nama pengguna atau kata sandi tidak sah"
;Profile
Post_by_author="Posts by this author"
Author_Description="Just another HTMLy user"
Post_by_author="Artikel oleh Penulis ini"
Author_Description="Hanya pengguna HTMLy lainnya"
;404-search
Search_results_not_found="Search results not found!"
No_search_results="No search results"
Search_results_not_found="Hasil pencarian tidak ada!"
No_search_results="Tidak ada hasil pencarian"
;TagCloud
Tagcloud_widget_at_most = "TagCloud paling banyak"
Tagcloud_widget_at_most = "Penanda Awan terbanyak"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 206
- 202
lang/it_IT.ini View File

@ -1,16 +1,16 @@
About = "About"
About = "Informazioni"
Add_category = "Aggiungi categoria"
Add_content = "Aggiungi contenuto"
Add_sub = "Aggiungi sub"
Admin = "Admin"
All_blog_posts = "Tutti i post del blog"
Admin = "Pannello Amministratore"
All_blog_posts = "Tutti gli articoli del blog"
Archives = "Archivi"
Are_you_sure_you_want_to_delete_ = "Sei sicuro di voler cancellare <strong>%s</strong>?"
Audio_post = "Post audio"
Audio_post_comment = "Crea un post del blog con un audio in evidenza"
Are_you_sure_you_want_to_delete_ = "Sei sicuro di voler eliminare <strong>%s</strong>?"
Audio_post = "Articolo con audio"
Audio_post_comment = "Crea un articolo del blog con un audio in evidenza"
Author = "Autore"
Backup = "Backup"
Cancel = "Cancella"
Cancel = "Annulla"
Categories = "Categorie"
Category = "Categoria"
Clear_cache = "Svuota la cache"
@ -24,249 +24,253 @@ Edit = "Modifica"
Edit_profile = "Modifica profilo"
Filename = "Nome del file"
Follow = "Segui"
Image_post = "Post immagine"
Image_post_comment = "Crea un post del blog con una immagine in evidenza"
Image_post = "Articolo con immagine"
Image_post_comment = "Crea un articolo del blog con un'immagine in evidenza"
Import = "Importa"
Link_post = "Post link"
Link_post_comment = "Crea un post del blog con un link in evidenza"
Link_post = "Articolo con collegamento"
Link_post_comment = "Crea un articolo del blog con un collegamento in evidenza"
Login = "Login"
Login_page = "Pagina di login"
Logout = "Logout"
Meta_description = "Meta description"
Meta_description = "Meta descrizione"
Mine = "I miei contenuti"
More = "Leggi di più"
My_draft = "Le mie bozze"
My_posts = "I miei post"
Newer = "Ultimi"
My_posts = "I miei articoli"
Newer = "Più recenti"
Next = "Successivo"
Next_post = "Post successivo"
Next_post = "Articolo successivo"
No_draft_found = "Nessuna bozza trovata"
No_posts_found = "Nessun post trovato"
No_related_post_found = "Nessun post correlato"
No_posts_found = "Nessun articolo trovato"
No_related_post_found = "Nessun articolo correlato"
Older = "Più vecchi"
Operations = "Operazioni"
Popular_posts = "Post popolari"
Popular_tags = "Tag popolari"
Posted_in = "Postato in"
Posted_on = "Postato il"
Posts = "Post"
Prev = "Più vecchi"
Prev_post = "Post precedente"
Popular_posts = "Articoli popolari"
Popular_tags = "Etichette popolari"
Posted_in = "Pubblicato in"
Posted_on = "Pubblicato il"
Posts = "Articoli"
Prev = "Precedenti"
Prev_post = "Articolo precedente"
Publish = "Pubblica"
Publish_draft = "Pubblica bozza"
Publish_draft = "Pubblica la bozza"
Published = "Pubblicato"
Quote_post = "Post citazione"
Quote_post_comment = "Crea un post del blog con una citazione in evidenza"
Recent_posts = "Post recenti"
Regular_post = "Post semplice"
Regular_post_comment = "Crea un post semplice per il blog"
Related_posts = "Post correlati"
Quote_post = "Articolo con una citazione"
Quote_post_comment = "Crea un articolo del blog con una citazione in evidenza"
Recent_posts = "Articoli recenti"
Regular_post = "Arrticolo semplice"
Regular_post_comment = "Crea un articolo semplice per il blog"
Related_posts = "Articoli correlati"
Revert_to_draft = "Trasforma in bozza"
Save = "Salva"
Save_as_draft = "salva come bozza"
Save_as_draft = "Salva come bozza"
Search = "Cerca"
Search_for = "Cerca"
Static_page = "Pagina statica"
Static_page_comment = "crea una pagina statica"
Static_page_comment = "Creazione di una pagina statica"
Static_pages = "Pagine statiche"
Tag = "Tag"
Tags = "Tag"
Tag = "Etichetta"
Tags = "Etichette"
Title = "Titolo"
Uncategorized = "Senza categoria"
Uncategorized_comment = "Argomenti che non necessitano di una categoria, o che non si adattano a nessuna categoria esistente"
Update = "Aggiorna"
Update_draft = "Aggiorna bozza"
Update_post = "Aggiorna post"
Video_post = "Post video"
Video_post_comment = "Crea un post del blog con un video in evidenza"
View = "Vista"
Views = "Viste"
Your_recent_posts = "I tuoi post più recenti"
Update_post = "Aggiorna articolo"
Video_post = "Articolo video"
Video_post_comment = "Crea un articolo del blog con un video in evidenza"
View = "Visualizza"
Views = "Visualizzazioni"
Your_recent_posts = "I tuoi articoli più recenti"
by = "di"
read_more = "leggi di più"
Dashboard="Dashboard"
Posts_list="Posts list"
Posts_draft="Posts draft"
Menus="Menu Editor"
Settings="Settings"
Tools="Tools"
Check_update="Check update"
Import_RSS="Import RSS"
User="User"
Proudly_powered_by="Proudly powered by"
Dashboard="Pannello utente"
Posts_list="Elenco articoli"
Posts_draft="Elenco delle bozze"
Menus="Editor del Menu"
Settings="Impostazioni"
Tools="Strumenti"
Check_update="Controllo aggiornamenti"
Import_RSS="Importa RSS"
User="Utente"
Proudly_powered_by="Questo blog è basato su"
Home="Home"
Type_to_search="Type to search"
Admin_panel_style_based_on="Admin panel style based on"
Sign_in_to_start_your_session="Sign in to start your session"
Back_to="Back to"
Type_to_search="Digita per cercare"
Admin_panel_style_based_on="Stile del pannello amminstratore basato su"
Sign_in_to_start_your_session="Connettiti per avviare la sessione"
Back_to="Torna indietro"
Login="Login"
User="User"
User="Utente"
Password="Password"
Comma_separated_values="Comma separated values"
If_leave_empty_we_will_excerpt_it_from_the_content_below="If leave empty we will excerpt it from the content below"
optional="optional"
If_the_url_leave_empty_we_will_use_the_post_title="If the url leave empty we will use the post title"
If_the_url_leave_empty_we_will_use_the_page_title="If the url leave empty we will use the page title"
Only="Only"
Featured_Audio="Featured Audio"
Featured_Video="Featured Video"
Featured_Image="Featured Image"
Featured_Quote="Featured Quote"
Featured_Link="Featured Link"
Content="Content"
Preview="Preview"
Enter_image_URL="Enter image URL"
Upload="Upload"
Insert_Image="Insert Image"
This_page_doesnt_exist="This page doesn't exist !"
Would_you_like_to_try_our="Would you like to try our "
Comma_separated_values="Valori separati da virgole"
If_leave_empty_we_will_excerpt_it_from_the_content_below="Se assente verrà estratto dai contenuti qui sotto"
optional="facoltativo"
If_the_url_leave_empty_we_will_use_the_post_title="Se l'url rimane in bianco verrà usato il titolo dell'articolo"
If_the_url_leave_empty_we_will_use_the_page_title="Se l'url rimane in bianco verrà usato il titolo della pagina"
Only="Solo"
Featured_Audio="Audio in primo piano"
Featured_Video="Video in primo piano"
Featured_Image="Immagine in primo piano"
Featured_Quote="Citazione in primo piano"
Featured_Link="Link in primo piano"
Content="Contenuto"
Preview="Anteprima"
Enter_image_URL="Inserisci l'URL dell'immagine"
Upload="Carica"
Insert_Image="Inserisci immagine"
This_page_doesnt_exist="Questa pagina non esiste !"
Would_you_like_to_try_our="Volete provare la nostra "
homepage="homepage"
instead="instead"
Your_backups="Your backups"
Create_backup="Create backup"
All_cache_has_been_deleted="All cache has been deleted !"
Edit_category="Edit category"
Date="Date"
Time="Time"
No_available_backup="No available backup at this time."
You_dont_have_permission_to_access_this_page="You don't have permission to access this page"
Save_category="Save category"
Import_RSS_Feed_2.0="Import RSS Feed 2.0"
By_using_this_importer_you_are_agree_if_the_feed_is_yours_or_at_least_you_have_the_authority_to_publish_it="By using this importer you are agree if the feed is yours or at least you have the authority to publish it."
Feed_Url="Feed URL"
Add_source_link_optional="Add source link (optional)"
Import_Feed="Start Import Feed"
At_the_moment_you_are_using_auto_generated_menu="At the moment you are using auto generated menu."
Add_menu="Add menu"
Name="Name"
Link_name="Link name"
instead="invece"
Your_backups="I tuoi backup"
Create_backup="Crea backup"
All_cache_has_been_deleted="Tutta la cache è stata svuotata !"
Edit_category="Modifica categoria"
Date="Data"
Time="Ora"
No_available_backup="Nessun backup disponibile a quest'ora."
You_dont_have_permission_to_access_this_page="Non hai il permesso di accedere a questa pagina"
Save_category="Salva categora"
Import_RSS_Feed_2.0="Importa Feed RSS 2.0"
By_using_this_importer_you_are_agree_if_the_feed_is_yours_or_at_least_you_have_the_authority_to_publish_it="Usando questo importatore sei d'accordo che il feed sia tuo o almeno tu ne abbia l'autorità per pubblicarlo."
Feed_Url="URL del Feed"
Add_source_link_optional="Aggiungi link sorgente (facoltativo)"
Import_Feed="Avvia importazione del Feed"
At_the_moment_you_are_using_auto_generated_menu="Al momento stai usando un menu generato automaticamente."
Add_menu="Aggiungi menu"
Name="Nome"
Link_name="Nome del Link"
Slug="Slug"
item_slug="Insert Link URL"
CSS_Class_Optional="CSS Class (optional)"
item_class="Insert CSS class"
Add_link="Add link"
Save_Edit="Save Edit"
Save_Menu="Save menu"
Add_new_post="Add new post"
Add_new_page="Add new page"
Update_Available="Update Available"
Congrats_You_have_the_latest_version_of_HTMLy="Congrats! You have the latest version of HTMLy."
Update_to="Update to"
now="now"
Performance_Settings="Performance Settings"
General="General"
Reading="Reading"
item_slug="Inserisci URL del Link"
CSS_Class_Optional="Classe CSS (facoltativa)"
item_class="Inserisci Classe CSS"
Add_link="Aggiungi link"
Save_Edit="Salva Modifica"
Save_Menu="Salva menu"
Add_new_post="Aggiungi un nuovo articolo"
Add_new_page="Aggiungi una nuova pagina"
Update_Available="Aggiornamento disponibile"
Congrats_You_have_the_latest_version_of_HTMLy="Congratulazioni! Hai l'ultima versione di HTMLy."
Update_to="Aggiorna a"
now="ora"
Performance_Settings="Impostazioni delle Prestazioni"
General="Generali"
Reading="Lettura"
Widget="Widget"
Metatags="Metatags"
Performance="Performance"
Custom="Custom"
General_Settings="General Settings"
Reading_Settings="Reading Settings"
Widget_Settings="Widget Settings"
Metatags_Settings="Metatags Settings"
Custom_Settings="Custom Settings"
Address_URL="Address (URL)"
Blog_Title="Blog title"
Blog_Title_Placeholder="My HTMLy Blog"
Tagline="Tagline"
Tagline_Placeholder="Databaseless PHP Blogging Platform"
Tagline_description="In a few words, explain what this blog is about."
Blog_Description="In one paragraph, tell us more about your blog."
Language="System Language"
Timezone="Timezone"
Date_Format="Date Format"
Blog_Theme="Blog Theme"
Copyright_Line="Copyright line"
Copyright_Line_Placeholder="(c) Your name."
Save_Config="Save config"
Front_page_displays="Front page displays"
Your_latest_blog_posts="Your latest blog posts"
Enable_blog_URL="Enable /blog URL"
Enable="Enable"
Disable="Disable"
Posts_in_front_page_show_at_most="Posts in front page show at most"
Blog_posts_displayed_as="Blog posts displayed as"
Full_post="Full post"
Summary="Summary"
Summary_character="Summary character"
Read_more_text="Read more text"
Read_more_text_placeholder="Read more"
Posts_index_settings="Posts index settings"
Posts_in_category_page_at_most="Posts in category page at most"
Posts_in_archive_page_at_most="Posts in archive page at most"
Posts_in_tag_page_at_most="Posts in tag page at most"
Posts_in_search_result_at_most="Posts in search result at most"
Posts_in_type_page_at_most="Posts in type page at most"
Posts_in_profile_page_at_most="Posts in profile page at most"
RSS_settings="RSS settings"
RSS_feeds_show_the_most_recent="RSS feeds show the most recent"
RSS_character="RSS character"
Performance="Prestazioni"
Custom="Personalizzato"
General_Settings="Impostazioni generali"
Reading_Settings="Impostazioni di lettura"
Widget_Settings="Impostazioni dei Widget"
Metatags_Settings="Impostazioni dei Metatag"
Custom_Settings="Impostazioni personalizzate"
Address_URL="Indirizzo (URL)"
Blog_Title="Titolo del Blog"
Blog_Title_Placeholder="Il mio blog con HTMLy"
Tagline="Slogan"
Tagline_Placeholder="Piattaforma per blog in PHP senza database"
Tagline_description="In poche parole, spiega di cosa parla questo blog."
Blog_Description="In un paragrafo, parlaci un po' di più del tuo blog."
Language="Lingua di sistema"
Timezone="Fuso orario"
Date_Format="Formato della data"
Blog_Theme="Tema del Blog"
Copyright_Line="Riga del Copyright"
Copyright_Line_Placeholder="(c) Il tuo nome."
Save_Config="Salva configurazione"
Front_page_displays="Visualizza pagina principale"
Your_latest_blog_posts="I tuoi ultimi articoli sul blog"
Enable_blog_URL="Abilita /URL del blog"
Enable="Abilita"
Disable="Disabilita"
Posts_in_front_page_show_at_most="Articoli in prima pagina da visualizzare di più"
Blog_posts_displayed_as="Articoli del blog visualizzati come"
Full_post="Articoli completi"
Summary="Riassunti"
Summary_character="Caratteri del riassunto"
Read_more_text="Leggi più testo"
Read_more_text_placeholder="Leggi di più"
Posts_index_settings="Impostazioni indice degli articoli"
Posts_in_category_page_at_most="Gli articoli nella pagina delle categoria al massimo"
Posts_in_archive_page_at_most="Gli articoli nella pagina archivio al massimo"
Posts_in_tag_page_at_most="Gli articoli nella pagina delle etichette al massimo"
Posts_in_search_result_at_most="Gli articoli nei risultati della ricerca al massimo"
Posts_in_type_page_at_most="Gli articoli della pagina dei tipi al massimo"
Posts_in_profile_page_at_most="Gli articoli nella pagina del profilo al massimo"
RSS_settings="Impostazioni RSS"
RSS_feeds_show_the_most_recent="I feed RSS visualizzano i più recenti"
RSS_character="Carattere RSS"
Permalink="Permalink"
year_month_your_post_slug="/year/month/your-post-slug"
post_your_post_slug="/post/your-post-slug"
Meta_description_character="Meta description character"
Breadcrumb_home_text="Breadcrumb home text"
Sitemap="Sitemap"
Valid_values_range_from_0_to_1.0._See="Valid values range from 0.0 to 1.0. See"
year_month_your_post_slug="/anno/mese/il-tuo-slug-degli-articoli"
post_your_post_slug="/articolo/il-tuo-slug-degli-articoli"
Meta_description_character="Carattere della Metadescrizione"
Breadcrumb_home_text="Testo della home Breadcrumb"
Sitemap="Mappa del sito"
Valid_values_range_from_0_to_1.0._See="Il campo dei valori validi va da 0.0 a 1.0. Vedi"
hint_Use_CtrlCMDF_to_search_for_your_config_key_or_value="<u>hint:</u> Use <code>Ctrl</code>/<code>CMD</code> + <code>F</code> to search for your config key or value."
pro_tips_You_can_creating_custom_config_key_and_print_out_your_config_key_value_anywhere_in_your_template="<u>pro tips:</u> You can creating custom config key and print out your config key value anywhere in your template."
your_key="your.key"
Your_New_Config_Key="Your New Config Key"
Your_New_Value="Your New Value"
Related_widget_posts_at_most="Related widget posts at most"
Recent_posts_widget_at_most="Recent posts widget at most"
Popular_posts_widget="Popular posts widget"
Popular_posts_widget_at_most="Popular posts widget at most"
Comments="Comments"
To_using_Disqus_or_Facebook_comment_you_need_to_provide_Disqus_shortname_or_Facebook_App_ID="To using Disqus or Facebook comment you need to provide Disqus shortname or Facebook App ID."
Comment_system="Comment system"
Disabled="Disabled"
Disqus_shortname="Disqus shortname"
pro_tips_You_can_creating_custom_config_key_and_print_out_your_config_key_value_anywhere_in_your_template="<u>consiglio pratico:</u> Puoi creare la tua chiave di configurazione e usare il valore della chiave di configurazione dovunque nel tuo template."
your_key="la.tua.chiave"
Your_New_Config_Key="La tua nuova chiave di configurazione"
Your_New_Value="Il tuo nuovo valore"
Related_widget_posts_at_most="Widget articoli correlati al massimo"
Recent_posts_widget_at_most="Widget articoli recenti al massimo"
Popular_posts_widget="Widget articoli popolari"
Popular_posts_widget_at_most="Widget articoli popolari al massimo"
Comments="Commenti"
To_using_Disqus_or_Facebook_comment_you_need_to_provide_Disqus_shortname_or_Facebook_App_ID="Per usare Disqus o i commenti di Facebook hai bisogno di fornire il nomignolo di Disqus o l'ID di Facebook."
Comment_system="Sistema dei commenti"
Disabled="Disabilitato"
Disqus_shortname="Nomignolo Disqus"
Disqus_shortname_placeholder="htmly"
Facebook_App_ID="Facebook App ID"
Facebook_App_ID="ID di Facebook"
widget_key_placeholder="12345abcde"
Recaptcha="reCAPTCHA"
Get_one_here="Get one here"
Site_Key="Site Key"
Secret_Key="Secret Key"
Get_one_here="Prendine una qui"
Site_Key="Chiave del sito"
Secret_Key="Chiave segreta"
Google_Analytics="Google Analytics"
Universal_Analytics="Universal Analytics (gtag.js)"
Google_Analytics_legacy="Google Analytics (legacy)"
This_is_legacy_code_usually_new_created_analytics_using_gtag_js="This is legacy code. Usually new created analytics using gtag.js"
This_is_legacy_code_usually_new_created_analytics_using_gtag_js="Questo è codice legacy. Di solito le nuove statistiche usano il file gtag.js"
Google_Search_Console="Google Search Console"
For_google_site_verification_meta="For google-site-verification meta"
Social_Media="Social Media"
Twitter_account="Twitter account"
Facebook_page="Facebook page"
Cache_expiration="Cache expiration (in hours)"
Cache_off="Cache off"
Yes_not_recommended="Yes (not recommended)"
Twitter_account="Profilo Twitter"
Facebook_page="Pagina Facebook"
Cache_expiration="Scadenza della cache (in ore)"
Cache_off="Spegni la cache"
Yes_not_recommended="Si (non consigliato)"
Not="No"
Cache_timestamp="Cache timestamp"
Page_generation_time="Page generation time"
Github_pre_release="Github pre-release"
Cache_timestamp="Fuso orario della cache"
Page_generation_time="Tempo di generazione della pagina"
Github_pre_release="Pre-release di Github"
Pre_release="Pre-release"
Yes_Im_in="Yes I'm in"
Nope="Nope"
Page="Page"
of="of"
Edit_post="Edit"
View_post="View"
Posts_by="Posts by"
Pages="Pages"
Yes_Im_in="Si, ci sono"
Nope="Nessuno"
Page="Pagina"
of="di"
Edit_post="Modifica"
View_post="Visualizza"
Posts_by="Articoli di"
Pages="Pagine"
Menu="Menu"
Popular="Popular"
Popular="Popoloare"
;Errors
User_Error="User field is required"
Pass_Error="Password field is required"
Token_Error="CSRF Token not correct"
Captcha_Error="reCaptcha not correct"
Invalid_Error="ERROR: Invalid username or password"
User_Error="È richiesto il campo nome utente"
Pass_Error="È richiesto il campo Password"
Token_Error="Il token CSRF non è corretto"
Captcha_Error="reCaptcha non corretto"
Invalid_Error="ERRORE: Nome utente o password non valido/a"
;Profile
Post_by_author="Posts by this author"
Author_Description="Just another HTMLy user"
Post_by_author="Articoli di questo utente"
Author_Description="Solo un altro utente di HTMLy"
;404-search
Search_results_not_found="Search results not found!"
No_search_results="No search results"
Search_results_not_found="Non è stato trovato nessun risultato della ricerca!"
No_search_results="Nessun risultato della ricerca"
;TagCloud
Tagcloud_widget_at_most = "TagCloud at most"
Tagcloud_widget_at_most = "TagCloud al massimo"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 205
- 201
lang/ko_KO.ini View File

@ -1,165 +1,165 @@
About = ""
Add_category = "추가 카테고리"
Add_content = "추가 내용"
Add_sub = "추가 서브 페이지"
About = "이 블로그는..."
Add_category = "새 카테고리 만들기"
Add_content = "새 글 쓰기"
Add_sub = "서브 페이지 추가"
Admin = "관리자"
All_blog_posts = "모든 블로그 게시물"
All_blog_posts = "모든 블로그 "
Archives = "아카이브"
Are_you_sure_you_want_to_delete_ = "당신은 당신이 삭제할 있는가의 <strong> %의 </ strong>을?"
Audio_post = "오디오 포스트"
Audio_post_comment = "기능을 갖춘 오디오 블로그 게시물을 작성"
Author = "저자"
Backup = "지원"
Are_you_sure_you_want_to_delete_ = "정말 삭제할거예요? '<strong>%s</strong>'"
Audio_post = "오디오 첨부"
Audio_post_comment = "오디오를 넣은 글을 쓸 수 있어요"
Author = "글쓴이"
Backup = "백업"
Cancel = "취소"
Categories = "카테고리"
Category = "범주"
Category = "카테고리"
Clear_cache = "캐시 지우기"
Config = "구성"
Contents = "내용"
Created = "만들어진"
Delete = "지우"
Description = "기술"
Config = "설정"
Contents = "콘텐츠"
Created = "만"
Delete = "지우"
Description = "설명"
Draft = "초안"
Edit = "편집하다"
Edit_profile = "프로필 수정"
Edit = "편집"
Edit_profile = "프로필 편집"
Filename = "파일 이름"
Follow = "따르다"
Image_post = "이미지 포스트"
Image_post_comment = "기능을 갖춘 이미지 블로그 게시물을 작성"
Import = "수입"
Link_post = "링크 포스트"
Link_post_comment = "기능을 갖춘 링크와 블로그 게시물 작성"
Follow = "팔로우"
Image_post = "이미지 첨부"
Image_post_comment = "이미지를 넣은 글을 쓸 수 있어요"
Import = "가져오기"
Link_post = "링크 첨부"
Link_post_comment = "링크가 들어간 글을 쓸 수 있어요"
Login = "로그인"
Login_page = "로그인 페이지"
Logout = "로그 아웃"
Logout = "로그아웃"
Meta_description = "메타 설명"
Mine = "나의 것"
Mine = "내꺼"
More = "더"
My_draft = "내 초안"
My_posts = "내 게시물"
My_posts = "내 "
Newer = "최신"
Next = "다음"
Next_post = "다음 게시물"
No_draft_found = "어떤 초안 찾을 수 없습니다"
No_posts_found = "게시물을 찾을 수 없습니다"
No_related_post_found = "아니오 관련 게시물을 찾을 수 없습니다"
Older = "전"
Next_post = "다음 "
No_draft_found = "초안이 없어요"
No_posts_found = "글이 없어요"
No_related_post_found = "관련된 글이 없어요"
Older = "오래전"
Operations = "작업"
Popular_posts = "인기 게시물"
Popular_tags = "인기 태그"
Posted_in = "에 게시 됨"
Posted_on = "게시"
Posts = "게시물"
Prev = "낡은"
Prev_post = "이전 게시물"
Publish = "게시"
Publish_draft = "초안을 게시"
Published = "게시"
Quote_post = "견적 후"
Quote_post_comment = "기능을 갖춘 인용와 블로그 게시물 작성"
Recent_posts = "최근 게시물"
Regular_post = "일반 우편"
Regular_post_comment = "정기적으로 블로그 게시물을 작성"
Related_posts = "관련 게시물"
Revert_to_draft = "초안 되돌리기"
Posted_in = "카테고리: "
Posted_on = "글을 올렸어요: "
Posts = ""
Prev = "이전"
Prev_post = "이전 "
Publish = "올리기"
Publish_draft = "올리기"
Published = "글쓴이"
Quote_post = "인용 글"
Quote_post_comment = "인용 글을 쓸 수 있어요"
Recent_posts = "최근 "
Regular_post = "글 쓰기"
Regular_post_comment = "평범하게 글을 쓸 수 있어요"
Related_posts = "관련 "
Revert_to_draft = "초안으로 되돌리기"
Save = "저장"
Save_as_draft = "임시 보관함에 저장"
Search = "검색"
Search_for = "검색"
Static_page = "정 페이지"
Static_page_comment = "만들기 정적 페이지"
Static_pages = "정 페이지"
Tag = "꼬리표"
Save_as_draft = "초안 저장하기"
Search = "찾기"
Search_for = "찾기"
Static_page = "정 페이지"
Static_page_comment = "고정 페이지 만들기"
Static_pages = "정 페이지"
Tag = "태그"
Tags = "태그"
Title = "제"
Uncategorized = "분류"
Uncategorized_comment = "카테고리를 필요로하지 않는, 또는 기존의 다른 카테고리에 맞지 않는 주제"
Update = "최신 정보"
Update_draft = "업데이트 초안"
Update_post = "업데이트"
Video_post = "비디오 포스트"
Video_post_comment = "기능을 갖춘 비디오 블로그 게시물을 작성"
View = "전망"
Views = "견해"
Your_recent_posts = "최근 게시물"
by = "으로"
Title = "제"
Uncategorized = "카테고리 없음"
Uncategorized_comment = "카테고리가 필요하지 않거나 다른 카테고리에 넣을 수 없는 주제"
Update = "업데이트"
Update_draft = "초안 업데이트"
Update_post = "업데이트"
Video_post = "비디오 첨부"
Video_post_comment = "비디오를 넣은 글을 쓸 수 있어요"
View = "보기"
Views = "보기"
Your_recent_posts = "최근 "
by = ": "
read_more = "더 읽기"
Dashboard = "계기반"
Posts_list = "게시물 목록"
Posts_draft = "게시물 초안"
Menus = "메뉴 편집"
Dashboard = "대시보드"
Posts_list = " 목록"
Posts_draft = "초안 목록"
Menus = "메뉴 편집"
Settings = "설정"
Tools = "도구"
Check_update = "업데이트 확인"
Import_RSS = "가져 오기 RSS"
Import_RSS = "RSS 가져오기"
User = "사용자"
Proudly_powered_by = "자랑스럽게 의해 구동"
Home = ""
Type_to_search = "검색어 입력"
Admin_panel_style_based_on = "관리자 패널 스타일 기반"
Sign_in_to_start_your_session = "당신의 세션을 시작하려면 로그인"
Back_to = "돌아가"
Proudly_powered_by = "Proudly Powered by"
Home = ""
Type_to_search = "찾을 내용 입력"
Admin_panel_style_based_on = "관리자 패널 스타일 기반: "
Sign_in_to_start_your_session = "시작하려면 로그인 하세요"
Back_to = "돌아가"
Login = "로그인"
User = "사용자"
Password = "호"
Comma_separated_values = "콤마 분리 값"
If_leave_empty_we_will_excerpt_it_from_the_content_below = "휴가가 비어 있다면 우리는 아래의 내용에서 발췌 것"
optional = "선택 과목"
If_the_url_leave_empty_we_will_use_the_post_title = "URL에 휴가를 비울 경우 우리는 게시물 제목을 사용합니다"
If_the_url_leave_empty_we_will_use_the_page_title = "URL에 휴가를 비울 경우 우리는 페이지 제목을 사용합니다"
Only = ""
Featured_Audio = "프리미엄 오디오"
Featured_Video = "인기있는 영상"
Featured_Image = "나타난 그림"
Featured_Quote = "추천 견적"
Featured_Link = "추천 링크"
Content = "함유량"
Preview = "시사"
Enter_image_URL = "이미지의 URL을 입력합니다"
Password = "비밀번호"
Comma_separated_values = "쉼표로 분리된 값"
If_leave_empty_we_will_excerpt_it_from_the_content_below = "비워둘 경우 아래 내용에서 발췌해요"
optional = "선택 사항"
If_the_url_leave_empty_we_will_use_the_post_title = "URL이 비어 있으면 글 제목을 사용해요"
If_the_url_leave_empty_we_will_use_the_page_title = "URL이 비어 있으면 페이지 제목을 사용해요"
Only = "오직(Only)"
Featured_Audio = "오디오 기능"
Featured_Video = "비디오 기능"
Featured_Image = "이미지 기능"
Featured_Quote = "인용 기능"
Featured_Link = "링크 기능"
Content = "콘텐츠"
Preview = "미리보기"
Enter_image_URL = "이미지 URL을 입력하세요"
Upload = "업로드"
Insert_Image = "이미지 삽입"
This_page_doesnt_exist = "이 페이지가 존재하지 않습니다!"
Would_you_like_to_try_our = "겠습니까 당신은 우리의 시도 좋아"
Insert_Image = "이미지 넣기"
This_page_doesnt_exist = "페이지가 존재하지 않아요!"
Would_you_like_to_try_our = "우리 제품을 시험해 보시겠어요? "
homepage = "홈페이지"
instead = "대신"
instead = "대신(instead)"
Your_backups = "백업"
Create_backup = "백업 만들기"
All_cache_has_been_deleted = "모든 캐시가 삭제되었습니다!"
Edit_category = "편집 카테고리"
Date = "데이트"
Time = "시"
No_available_backup = "이 시간에 어떤 가능한 백업하지 않습니다."
You_dont_have_permission_to_access_this_page = "당신은이 페이지에 액세스 할 수있는 권한이 없습니다"
Save_category = "저장 카테고리"
Import_RSS_Feed_2.0 = "가져 오기 RSS 2.0 피드"
By_using_this_importer_you_are_agree_if_the_feed_is_yours_or_at_least_you_have_the_authority_to_publish_it = "이 입력기를 사용해서 당신은 공급이 당신 인 경우에 동의하거나 적어도 당신이 그것을 게시 할 수있는 권한을 가지고 있습니다."
Feed_Url = "피드 URL"
Add_source_link_optional = "소스 링크 (옵션) 추가"
Import_Feed = "시작 가져 오기 피드"
At_the_moment_you_are_using_auto_generated_menu = "지금이 순간 당신은 자동으로 생성 된 메뉴를 사용하고 있습니다."
Add_menu = "추가 메뉴"
All_cache_has_been_deleted = "모든 캐시를 삭제했어요!"
Edit_category = "카테고리 편집"
Date = "날짜"
Time = "시"
No_available_backup = "백업이 없어요."
You_dont_have_permission_to_access_this_page = "이 페이지에 접근할 권한이 없어요"
Save_category = "카테고리 저장"
Import_RSS_Feed_2.0 = "RSS 2.0 피드 가져오기"
By_using_this_importer_you_are_agree_if_the_feed_is_yours_or_at_least_you_have_the_authority_to_publish_it = "가져오기를 사용하면 피드가 사용자의 것이거나 적어도 게시할 권한이 있다고 동의하는거예요."
Feed_Url = "URL 피드"
Add_source_link_optional = "소스 링크 추가 (선택 사항)"
Import_Feed = "피드 가져오기 시작"
At_the_moment_you_are_using_auto_generated_menu = "지금은 자동으로 만든 메뉴를 쓰고 있어요."
Add_menu = "메뉴 추가"
Name = "이름"
Link_name = "연결 이름"
Slug = "강타"
item_slug = "링크 삽입 URL"
Link_name = "링크 이름"
Slug = "줄임표시"
item_slug = "링크 URL 추가"
CSS_Class_Optional = "CSS 클래스 (선택 사항)"
item_class = "삽입 CSS 클래스"
Add_link = "추가 링크"
Save_Edit = "저장 편집"
Save_Menu = "저장 메뉴"
Add_new_post = "새 게시물을 추가"
Add_new_page = "새 페이지 추가"
Update_Available = "업데이트 가능"
Congrats_You_have_the_latest_version_of_HTMLy = "축하! 당신은 HTMLy의 최신 버전을 가지고있다."
Update_to = "업데이트"
item_class = "CSS 클래스 추가"
Add_link = "링크 추가"
Save_Edit = "편집 저장"
Save_Menu = "메뉴 저장"
Add_new_post = "새 글 쓰기"
Add_new_page = "새 페이지 만들기"
Update_Available = "업데이트가 있어요"
Congrats_You_have_the_latest_version_of_HTMLy = "축하해요! HTMLy 최신 버전을 쓰고 있어요."
Update_to = "업데이트: "
now = "지금"
Performance_Settings = "성능 설정"
General = "일반"
Reading = "독서"
Reading = "읽기"
Widget = "위젯"
Metatags = "메타 태그"
Performance = "공연"
Custom = "커스텀"
Performance = "성능"
Custom = "사용자 지정"
General_Settings = "일반 설정"
Reading_Settings = "읽기 설정"
Widget_Settings = "위젯 설정"
@ -169,104 +169,108 @@ Address_URL = "주소 (URL)"
Blog_Title = "블로그 제목"
Blog_Title_Placeholder = "내 HTMLy 블로그"
Tagline = "태그 라인"
Tagline_Placeholder = "Databaseless PHP 블로깅 플랫폼"
Tagline_description = "몇 즉,이 블로그에 대해 무엇인지 설명한다."
Blog_Description = "한 단락에서, 블로그에 대해 더 알려주십시오."
Tagline_Placeholder = "데이터베이스를 쓰지 않는 PHP 블로그 플랫폼"
Tagline_description = "몇 단어로 이 블로그에 대해 설명해주세요."
Blog_Description = "한 단락으로 이 블로그에 대해 더 알려주세요."
Language = "시스템 언어"
Timezone = "시간대"
Date_Format = "날짜 형식"
Blog_Theme = "블로그 테마"
Copyright_Line = "저작권 라인"
Copyright_Line_Placeholder = "(C) 귀하의 이름입니다."
Save_Config = "저장 config (설정)"
Front_page_displays = "전면 페이지가 표시됩니다"
Your_latest_blog_posts = "당신의 최신 블로그 게시물"
Enable_blog_URL = "URL을 블로그 / 사용"
Copyright_Line = "저작권 표시"
Copyright_Line_Placeholder = "(C) 당신의 이름."
Save_Config = "설정 저장"
Front_page_displays = "첫 페이지 표시"
Your_latest_blog_posts = "최신 블로그 글"
Enable_blog_URL = "'/blog' URL 켜기"
Enable = "사용"
Disable = "사용 안함"
Posts_in_front_page_show_at_most = "대부분의 첫 페이지 쇼의 게시물"
Blog_posts_displayed_as = "블로그 게시물로 표시"
Full_post = "전체 포스트"
Summary = "요약"
Summary_character = "요약 문자"
Read_more_text = "더 많은 텍스트를 읽기"
Read_more_text_placeholder = "자세히보기"
Posts_index_settings = "게시물 인덱스 설정"
Posts_in_category_page_at_most = "대부분의 카테고리 페이지에서 게시물"
Posts_in_archive_page_at_most = "최대 아카이브 페이지에서 게시물"
Posts_in_tag_page_at_most = "대부분의 태그 페이지에서 게시물"
Posts_in_search_result_at_most = "검색 결과에서 게시물 최대"
Posts_in_type_page_at_most = "대부분의 유형 페이지에서 게시물"
Posts_in_profile_page_at_most = "대부분의 프로필 페이지에 게시물"
Posts_in_front_page_show_at_most = "최대 프론트 페이지"
Blog_posts_displayed_as = "글 보기 모드"
Full_post = "전체 글 보기"
Summary = "요약 보기"
Summary_character = "요약 글자수"
Read_more_text = "더 읽기 표시"
Read_more_text_placeholder = "더 읽기"
Posts_index_settings = "인덱스 설정"
Posts_in_category_page_at_most = "대 카테고리 페이지"
Posts_in_archive_page_at_most = "최대 아카이브 페이지"
Posts_in_tag_page_at_most = "대 태그 페이지"
Posts_in_search_result_at_most = "최대 검색 결과"
Posts_in_type_page_at_most = "최대 타입 페이지"
Posts_in_profile_page_at_most = "대 프로필 페이지"
RSS_settings = "RSS 설정"
RSS_feeds_show_the_most_recent = "RSS 피드는 가장 최근 보여"
RSS_character = "RSS 자"
Permalink = "퍼머"
year_month_your_post_slug = "/ 년 / 월 / 당신의 포스트 - 슬러그"
post_your_post_slug = "/ 후 / 당신의 포스트 - 슬러그"
RSS_feeds_show_the_most_recent = "최대 최근 RSS 피드"
RSS_character = "RSS 자"
Permalink = "고정링크"
year_month_your_post_slug = "/년/월/문서-줄임표시"
post_your_post_slug = "/post/문서-줄임표시"
Meta_description_character = "메타 설명 문자"
Breadcrumb_home_text = "이동 경로 홈 텍스트"
Sitemap = "사이트 맵"
Valid_values_range_from_0_to_1.0._See = "유효한 값은 0.0 ~ 1.0의 범위. 참조"
hint_Use_CtrlCMDF_to_search_for_your_config_key_or_value = "<U> 힌트 : </ U>를 사용하여 <코드> ​​Ctrl 키 </ 코드> / <코드> ​​CMD </ 코드> + <코드> ​​F </ 코드>는 설정 키 또는 값을 검색 할 수 있습니다."
pro_tips_You_can_creating_custom_config_key_and_print_out_your_config_key_value_anywhere_in_your_template = "<U> 프로 팁 :. </ 유> 당신은 사용자 지정 설정 키를 생성하고 템플릿에서 설정 키 값 어디서나 인쇄 할 수 있습니다"
Breadcrumb_home_text = "사이트 이동 홈 (Breadcrumb)"
Sitemap = "사이트맵"
Valid_values_range_from_0_to_1.0._See = "유효한 범위는 0.0에서 1.0까지예요. 참조: "
hint_Use_CtrlCMDF_to_search_for_your_config_key_or_value = "<u>힌트:</u> <code>CTRL</code>/<code>CMD</code> + <code>F</code> 를 눌러 키나 값을 찾을 수 있어요."
pro_tips_You_can_creating_custom_config_key_and_print_out_your_config_key_value_anywhere_in_your_template="<u>추가 힌트:</u> 사용자 지정 설정 키를 만들고 템플릿 어디에서나 키 값을 인쇄할 수 있어요."
your_key = "your.key"
Your_New_Config_Key = "당신의 새로운 구성 키"
Your_New_Value = "당신의 새 값"
Related_widget_posts_at_most = "관련 최대 게시물 위젯"
Recent_posts_widget_at_most = "최근 게시물 대부분에 위젯"
Popular_posts_widget = "인기 게시물 위젯"
Popular_posts_widget_at_most = "인기있는 게시물 대부분에 위젯"
Comments = "코멘트"
To_using_Disqus_or_Facebook_comment_you_need_to_provide_Disqus_shortname_or_Facebook_App_ID = "Disqus에 또는 페이스 북의 코멘트를 사용하는 방법은 Disqus에 축약 또는 페이스 북 앱 ID를 제공해야합니다."
Your_New_Config_Key = "새 설정 키"
Your_New_Value = "새 값"
Related_widget_posts_at_most = "최대 관련 위젯"
Recent_posts_widget_at_most = "최대 최근 글"
Popular_posts_widget = "인기 위젯"
Popular_posts_widget_at_most = "최대 인기 글"
Comments = "댓글"
To_using_Disqus_or_Facebook_comment_you_need_to_provide_Disqus_shortname_or_Facebook_App_ID="Disqus나 페이스북 댓글을 사용하려면 Disqus의 shortname 또는, 페이스북 AppID가 필요해요."
Comment_system = "댓글 시스템"
Disabled = "사용 안 함"
Disqus_shortname = "Disqus에는 짧은 이름"
Disabled = "사용 안함"
Disqus_shortname = "Disqus shortname"
Disqus_shortname_placeholder = "htmly"
Facebook_App_ID = "페이스 북 앱 ID"
Facebook_App_ID = "페이스북 AppID"
widget_key_placeholder = "12345abcde"
Recaptcha = "reCAPTCHA"
Get_one_here = "여기에서 가져 오기"
Recaptcha = "reCAPTCHA"
Get_one_here = "이 곳에서 얻을 수 있어요: "
Site_Key = "사이트 키"
Secret_Key = "비밀 키"
Google_Analytics = "Google 웹 로그 분석"
Universal_Analytics = "범용 웹 로그 분석 (gtag.js)"
Google_Analytics_legacy = "Google 웹 로그 분석 (레거시)"
This_is_legacy_code_usually_new_created_analytics_using_gtag_js = "이것은 레거시 코드입니다. gtag.js를 사용하여 일반적으로 새로운 창조 분석"
Google_Analytics = "Google Analytics"
Universal_Analytics = "Universal Analytics (gtag.js)"
Google_Analytics_legacy = "Google Analytics (legacy)"
This_is_legacy_code_usually_new_created_analytics_using_gtag_js = "이것은 레거시 코드입니다. 보통 gtag.js를 써서 새 분석을 만들어요."
Google_Search_Console = "구글 검색 콘솔"
For_google_site_verification_meta = "구글에서 현장 검증 메타은"
For_google_site_verification_meta = "google-site-verification 메타"
Social_Media = "소셜 미디어"
Twitter_account = "트위터 계정"
Facebook_page = "페이스 북 페이지"
Cache_expiration = "(시간) 캐시 만료"
Cache_off = "캐시 오프"
Facebook_page = "페이스북 페이지"
Cache_expiration = "캐시 만료 (시간 단위) "
Cache_off = "캐시 끄기"
Yes_not_recommended = "예 (권장하지 않음)"
Not = "아니"
Not = "아니"
Cache_timestamp = "캐시 타임 스탬프"
Page_generation_time = "페이지 생성 시간"
Github_pre_release = "Github에서의 시험판"
Pre_release = "사전 출시"
Yes_Im_in = "그래, 난에있어"
Nope = "아니"
Page="Page"
Github_pre_release = "Github 시험판"
Pre_release = "시험판 써보기"
Yes_Im_in = "예, 써볼께요"
Nope = "아니"
Page="페이지"
of="of"
Edit_post="Edit"
View_post="View"
Posts_by="Posts by"
Pages="Pages"
Menu="Menu"
Popular="Popular"
Edit_post="편집"
View_post="보기"
Posts_by="글쓴이: "
Pages="페이지"
Menu="메뉴"
Popular="인기있는"
;Errors
User_Error="User field is required"
Pass_Error="Password field is required"
Token_Error="CSRF Token not correct"
Captcha_Error="reCaptcha not correct"
Invalid_Error="ERROR: Invalid username or password"
User_Error="사용자 필드는 필수예요"
Pass_Error="비밀번호 필드는 필수예요"
Token_Error="CSRF 토큰이 바르지 않아요"
Captcha_Error="reCaptcha가 틀렸어요"
Invalid_Error="오류: 사용자나 비밀번호가 틀렸어요"
;Profile
Post_by_author="Posts by this author"
Author_Description="Just another HTMLy user"
Post_by_author="이 글쓴이가 썼어요"
Author_Description="또 다른 HTMLy 사용자"
;404-search
Search_results_not_found="Search results not found!"
No_search_results="No search results"
Search_results_not_found="찾기 결과가 없어요!"
No_search_results="찾기 결과가 없어요"
;TagCloud
Tagcloud_widget_at_most = "TagCloud at most"
Tagcloud_widget_at_most = "최대 TagCloud"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 4
- 0
lang/ms_MY.ini View File

@ -270,3 +270,7 @@ Search_results_not_found="Search results not found!"
No_search_results="No search results"
;TagCloud
Tagcloud_widget_at_most = "TagCloud at most"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 4
- 0
lang/nl_NL.ini View File

@ -270,3 +270,7 @@ Search_results_not_found="Search results not found!"
No_search_results="No search results"
;TagCloud
Tagcloud_widget_at_most = "TagCloud at most"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 191
- 187
lang/pl_PL.ini View File

@ -6,7 +6,7 @@ Admin = "Admin"
All_blog_posts = "Wszystkie posty"
Archives = "Archiwa"
Are_you_sure_you_want_to_delete_ = "Czy chcesz usunąć <strong>%s</strong>?"
Audio_post = "Post audio"
Audio_post = "Post z audio"
Audio_post_comment = "Utwórz dźwiękowy post na blogu"
Author = "Autor"
Backup = "Kopia zapasowa"
@ -23,7 +23,7 @@ Draft = "Wersja robocza"
Edit = "Edytuj"
Edit_profile = "Edytuj profil"
Filename = "Nazwa pliku"
Follow = "Follow"
Follow = "Śledź"
Image_post = "Post obrazkowy"
Image_post_comment = "Tworzy post z wyróżnionym zdjęciem"
Import = "Import"
@ -32,19 +32,19 @@ Link_post_comment = "Tworzy post z wyróżnionym linkiem"
Login = "Login"
Login_page = "Strona logowania"
Logout = "Wyloguj się"
Meta_description = "Opis strony"
Meta_description = "Meta-informacje"
Mine = "Moje"
More = "Więcej"
My_draft = "Mój szkic"
My_posts = "Moje posty"
Newer = "Nowszy"
Newer = "Nigdy"
Next = "Dalej"
Next_post = "Następny post"
No_draft_found = "Nie znaleziono szkicu"
No_posts_found = "Nie znaleziono postów"
No_related_post_found = "Nie znaleziono powiązanych postów."
No_newer_posts = "Nie znaleziono najnowszych postów"
Older = "Starszy"
Older = "Starsze"
Operations = "Operacje"
Popular_posts = "Popularne posty"
Popular_tags = "Popularne tagi"
@ -85,189 +85,193 @@ Views = "Wyświetleń"
Your_recent_posts = "Twoje ostatnie posty"
by = "przez"
read_more = "Czytaj więcej"
Dashboard="Dashboard"
Posts_list="Lista postów"
Posts_draft="Szkice postów"
Menus="Edytor menu"
Settings="Ustawienia"
Tools="Narzędzia"
Check_update="Sprawdź aktualizację"
Import_RSS="Importuj RSS"
User="Użytkownik"
Proudly_powered_by="Dumnie zasilany przez"
Home="Strona główna"
Type_to_search="Szukaj..."
Admin_panel_style_based_on="Szablon panelu administracyjnego w oparciu o"
Sign_in_to_start_your_session="Zaloguj się aby rozpocząć"
Back_to="Powrót"
Login="Login"
User="Użytkownik"
Password="Hasło"
Comma_separated_values="Tagi rozdzielone przecinkami"
If_leave_empty_we_will_excerpt_it_from_the_content_below="Jeśli pusty, zostanie wygenerowany na podstawie treści"
optional="opcjonalny"
If_the_url_leave_empty_we_will_use_the_post_title="Jeśli pusty, zostanie wygenerowany na podstawie tytułu postu"
If_the_url_leave_empty_we_will_use_the_page_title="Jeśli pusty, zostanie wygenerowany na podstawie tytułu strony"
Only="Tylko"
Featured_Audio="Wyróżnione Audio"
Featured_Video="Wyróżniony film"
Featured_Image="Wyróżniony obraz"
Featured_Quote="Wyróżniony cytat"
Featured_Link="Wyróżniony link"
Content="Treść"
Preview="Podgląd"
Enter_image_URL="Podaj URL obrazu"
Upload="Załaduj"
Insert_Image="Wstaw obraz"
This_page_doesnt_exist="Strona nie istnieje !"
Would_you_like_to_try_our="Czy chciałbyś spróbować naszej "
homepage="strona domowa"
instead="zamiast"
Your_backups="Twoje kopie bezpieczeństwa"
Create_backup="Utwórz kopię"
All_cache_has_been_deleted="Zawartość pamięci podręcznej została usunięta !"
Edit_category="Edytuj kategorię"
Date="Data"
Time="Czas"
No_available_backup="Brak kopi bezpieczeństwa."
You_dont_have_permission_to_access_this_page="Nie masz uprawnień dostępu do tej strony"
Save_category="Zapisz kategorię"
Import_RSS_Feed_2.0="Importuj RSS Feed 2.0"
By_using_this_importer_you_are_agree_if_the_feed_is_yours_or_at_least_you_have_the_authority_to_publish_it="Używając tego importu potwierdzasz że te treści należą do Ciebie lub dysponujesz prawami do ich publikacji."
Feed_Url="Adres URL kanału"
Add_source_link_optional="Dodaj link źródłowy (opcjonalnie)"
Import_Feed="Uruchom import kanału"
At_the_moment_you_are_using_auto_generated_menu="W tej chwili korzystasz z automatycznie generowanego menu."
Add_menu="Dodaj menu"
Name="Nazwa"
Link_name="Nazwa linku"
Slug="Slug"
item_slug="Wstaw adres URL linku"
CSS_Class_Optional="Klasa CSS (opcjonalna)"
item_class="Wstaw klasę CSS"
Add_link="Dodaj link"
Save_Edit="Zapisz"
Save_Menu="Zapisz menu"
Add_new_post="Dodaj nowy post"
Add_new_page="Dodaj nową stronę"
Update_Available="Dostępna aktualizacja"
Congrats_You_have_the_latest_version_of_HTMLy="Gratulacje! Masz najnowszę wersję HTMLy."
Update_to="Aktualizuj do"
now="teraz"
Performance_Settings="Ustawienia wydajności"
General="Ogólne"
Reading="Czytanie"
Widget="Widżety"
Metatags="Nagłówek"
Performance="Wydajność"
Custom="Dodatkowe"
General_Settings="Ustawienia ogólne"
Reading_Settings="Ustawienia czytania"
Widget_Settings="Ustawienia widżetów"
Metatags_Settings="Ustawienia nagłówka (meta)"
Custom_Settings="Ustawienia dodatkowe"
Address_URL="Adres (URL)"
Blog_Title="Tytuł bloga"
Blog_Title_Placeholder="Mój Blog HTMLy"
Tagline="Slogan"
Tagline_Placeholder="Platforma blogowa PHP bez bazy danych"
Tagline_description="W kilku słowach wyjaśnij, o czym jest ten blog."
Blog_Description="W kilku słowach wyjaśnij, o czym jest ten blog."
Language="Język systemowy"
Timezone="Strefa czasowa"
Date_Format="Format daty"
Blog_Theme="Motyw blogu"
Copyright_Line="Linia praw autorskich"
Copyright_Line_Placeholder="(c) Twoje imię."
Save_Config="Zapisz konfigurację"
Front_page_displays="Wyświetla się na pierwszej stronie"
Your_latest_blog_posts="Twoje najnowsze posty na blogu"
Enable_blog_URL="Włącz /URL blogu"
Enable="Włączyć"
Disable="Wyłączyć"
Posts_in_front_page_show_at_most="Ile postów pokazywać na pierszej stronie"
Blog_posts_displayed_as="Posty na liście wyświetlane jako"
Full_post="Pełny post"
Summary="Streszczenie"
Summary_character="Ile znaków podsumowania"
Read_more_text="Tekst 'Czytaj więcej'"
Read_more_text_placeholder="Czytaj więcej"
Posts_index_settings="Ustawienia postów"
Posts_in_category_page_at_most="Ile postów na stronie kategorii"
Posts_in_archive_page_at_most="Ile postów na stronie archiwum"
Posts_in_tag_page_at_most="Ile postów na stronie tag-u"
Posts_in_search_result_at_most="Ile postów w wynikach wyszukiwania"
Posts_in_type_page_at_most="Ile postów na stronie typu (??)"
Posts_in_profile_page_at_most="Ile postów na stronie profilu"
RSS_settings="Ustawienia RSS"
RSS_feeds_show_the_most_recent="Ile ostatnich postów pokazuje kanał RSS"
RSS_character="RSS"
Permalink="Bezpośredni odnośnik"
year_month_your_post_slug="/rok/miesiąc/slug-posta"
post_your_post_slug="/post/slug-posta"
Meta_description_character="Ilość znaków meta opisu"
Breadcrumb_home_text="Strona główna (dla breadcrumb)"
Sitemap="Sitemap"
Valid_values_range_from_0_to_1.0._See="Prawidłowe wartości od 0,0 do 1,0. Zobacz"
hint_Use_CtrlCMDF_to_search_for_your_config_key_or_value="<u>wskazówka:</u> Użyj <code>Ctrl</code>/<code>CMD</code> + <code>F</code> aby wyszukać klucz lub wartość."
pro_tips_You_can_creating_custom_config_key_and_print_out_your_config_key_value_anywhere_in_your_template="<u>Pro wskazówka:</u> Możesz tworzyć niestandardowe klucz konfiguracyjny i wyświetlić wartość w dowolnym miejscu w szablonie."
your_key="twoj.klucz"
Your_New_Config_Key="Twój nowy klucz konfiguracyjny"
Your_New_Value="Twoja nowa wartość"
Related_widget_posts_at_most="Powiązane - ile postów"
Recent_posts_widget_at_most="Ostatnie - ile postów"
Popular_posts_widget="Najpopularniejsze"
Popular_posts_widget_at_most="Najpopularniejsze - ile postów"
Comments="Komentarze"
To_using_Disqus_or_Facebook_comment_you_need_to_provide_Disqus_shortname_or_Facebook_App_ID="Aby korzystać z komentarza Disqus lub Facebooka, musisz podać Disqus shortname lub Facebook App ID."
Comment_system="System komentarzy"
Disabled="Wyłącz"
Disqus_shortname="Disqus shortname"
Disqus_shortname_placeholder="htmly"
Facebook_App_ID="Facebook App ID"
widget_key_placeholder="12345abcde"
Recaptcha="reCAPTCHA"
Get_one_here="Zdobądź tutaj"
Site_Key="Site Key"
Secret_Key="Secret Key"
Google_Analytics="Google Analytics"
Universal_Analytics="Universal Analytics (gtag.js)"
Google_Analytics_legacy="Google Analytics (legacy)"
This_is_legacy_code_usually_new_created_analytics_using_gtag_js="To jest starszy kod. Zwykle nowo utworzona analityka korzysta z gtag.js"
Google_Search_Console="Konsola Google Search"
For_google_site_verification_meta="Dla pola meta google-site-verification"
Social_Media="Social Media"
Twitter_account="Konto Twitter"
Facebook_page="Strona Facebook"
Cache_expiration="Wygaśnięcie pamięci podręcznej (w godz.)"
Cache_off="Wyłącz pamięć podręczną"
Yes_not_recommended="Tak (nie zalecane)"
Not="Nie"
Cache_timestamp="Znacznik czasu pamięci podręcznej"
Page_generation_time="Czas generowanie strony"
Github_pre_release="Github pre-release"
Pre_release="Wczesne wersje HMTLy"
Yes_Im_in="Tak, wchodzę w to"
Nope="Nie"
Page="Strona"
of="z"
Edit_post="Edytuj"
View_post="Pokaż"
Posts_by="Posty od"
Pages="Strony"
Menu="Menu"
Popular="Popularny"
Dashboard = "Kokpit"
Posts_list = "Lista postów"
Posts_draft = "Szablon posta"
Menus = "Edytor Menu"
Settings = "Ustawienia"
Tools = "Narzędzia"
Check_update = "Sprawdź aktualizacje"
Import_RSS = "Import RSS"
User = "Konto"
Proudly_powered_by = "Dumnie tworzone przez"
Home = "Strona domowa"
Type_to_search = "Wpisz wyszkukiwaną frazę"
Admin_panel_style_based_on = "Styl panelu administracyjnego bazuje na"
Sign_in_to_start_your_session = "Zaloguj się by rozpocząć sesję"
Back_to = "Wróć do"
Login = "Login"
User = "Konto"
Password = "Hasło"
Comma_separated_values = "Wartości rozdzielane przecinkiem"
If_leave_empty_we_will_excerpt_it_from_the_content_below = "Jeżeli pozostanie puste, zawartość poniżej zostanie użyta jako zajawka"
optional = "opcjonalne"
If_the_url_leave_empty_we_will_use_the_post_title = "Jeżeli URL pozostanie puste, tytuł posta zostanie użyty"
If_the_url_leave_empty_we_will_use_the_page_title = "Jeżeli URL pozostanie puste, tytuł strony zostanie użyty"
Only = "Tylko"
Featured_Audio = "Prezentowany Dźwięk"
Featured_Video = "Prezentowane Wideo"
Featured_Image = "Prezentowany Obraz"
Featured_Quote = "Prezentowany Cytat"
Featured_Link = "Prezentowany Odnośnik"
Content = "Zawartość"
Preview = "Podgląd"
Enter_image_URL = "Wpisz URL obrazka"
Upload = "Wgraj"
Insert_Image = "Wstaw Obraz"
This_page_doesnt_exist = "Ta strona nie istnieje!"
Would_you_like_to_try_our = "Czy przetestujesz "
homepage = "strona_domowa"
instead = "zamiast"
Your_backups = "Twoje kopie zapasowe"
Create_backup = "Stwórz kopie zapasowe"
All_cache_has_been_deleted = "Pamięć podręczna została wyczyszczona!"
Edit_category = "Edytuj kategorię"
Date = "Data"
Time = "Czas"
No_available_backup = "W tym momencie nie ma dostępnych kopii zapasowych."
You_dont_have_permission_to_access_this_page = "Nie masz uprawnień do tej strony"
Save_category = "Zapisz kategorię"
Import_RSS_Feed_2.0 = "Importuj RSS Feed 2.0"
By_using_this_importer_you_are_agree_if_the_feed_is_yours_or_at_least_you_have_the_authority_to_publish_it = "Używając tego importera zgadzasz się, że feed jest Twój lub przynajmniej masz uprawnienia do jego publikacji."
Feed_Url = "Feed URL"
Add_source_link_optional = "Dodaj odnośnik do źródła (opcjonalne)"
Import_Feed = "Rozpocznij import Feed'a"
At_the_moment_you_are_using_auto_generated_menu = "W tym momencie menu jest generowane automatycznie."
Add_menu = "Dodaj menu"
Name = "Nazwa"
Link_name = "Nazwa odnośnika"
Slug = "Uproszczenie"
item_slug = "Wstaw URL odnośnika"
CSS_Class_Optional = "Klasy CSS (opcjonalne)"
item_class = "Wstaw klasy CSS"
Add_link = "Dodaj odnośnik"
Save_Edit = "Zapisz edycję"
Save_Menu = "Zapisz menu"
Add_new_post = "Dodaj nowy post"
Add_new_page = "Dodaj nową stronę"
Update_Available = "Aktualizacje są dostępne"
Congrats_You_have_the_latest_version_of_HTMLy = "Gratulacje! Masz aktualną wersję HTMLy."
Update_to = "Aktualizuj do"
now = "teraz"
Performance_Settings = "Ustawienia wydajności"
General = "Ogólnie"
Reading = "Czytanie"
Widget = "Widgety"
Metatags = "Metatags"
Performance = "Wydajność"
Custom = "Modyfikacje"
General_Settings = "Ustawienia ogólne"
Reading_Settings = "Ustawienia czytania"
Widget_Settings = "Ustawienia widgetów"
Metatags_Settings = "Ustawienia metatagów"
Custom_Settings = "Ustawienia modyfikacji"
Address_URL = "Addres (URL)"
Blog_Title = "Tytuł bloga"
Blog_Title_Placeholder = "Skrót bloga"
Tagline = "Krótki opis"
Tagline_Placeholder = "Bezbazodanowa platforma PHP do blogowania"
Tagline_description = "W kilku słowach opsiz o czym ten blog jest."
Blog_Description = "W jednym akapicie opisz ten blog."
Language = "Język systemu"
Timezone = "Strefa czasowa"
Date_Format = "Format daty"
Blog_Theme = "Motyw bloga"
Copyright_Line = "Fragment praw autorskich"
Copyright_Line_Placeholder = "(c) Twoje imię."
Save_Config = "Zapisz konfigurację"
Front_page_displays = "Wyświetlenie strony startowej"
Your_latest_blog_posts = "Twoje ostatnie wpisy"
Enable_blog_URL = "Włączenie URL /blog"
Enable = "Włączenie"
Disable = "Wyłączenie"
Posts_in_front_page_show_at_most = "Posty na stronie startowej widzialne od najnowszego"
Blog_posts_displayed_as = "Posty blogowe wyświetlane jako"
Full_post = "Pełen post"
Summary = "Podsumowanie"
Summary_character = "Ilość znaków podsumowania"
Read_more_text = "Czytaj Więcej tekst"
Read_more_text_placeholder = "Czytaj więcej"
Posts_index_settings = "Ustawienia indeksowania postów"
Posts_in_category_page_at_most = "Maksymalna ilość postów na stronie kategorii"
Posts_in_archive_page_at_most = "Maksymalna ilość postów w archiwum"
Posts_in_tag_page_at_most = "Maksymalna ilość postów na stronie tagu"
Posts_in_search_result_at_most = "Maksymalna ilość postów na stronie wyszukiwania"
Posts_in_type_page_at_most = "Maksymalna ilość postów na stronie typu"
Posts_in_profile_page_at_most = "Maksymalna ilość postów na stronie profilu"
RSS_settings = "Ustawienia RSS"
RSS_feeds_show_the_most_recent = "Maksymalna ilość wpisów Feed'u RSS"
RSS_character = "Ilość znaków RSS"
Permalink = "Stały odnośnik"
year_month_your_post_slug = "/rok/miesiąc/uproszczona-nazwa-postu"
post_your_post_slug = "/post/uproszczona-nazwa-postu"
Meta_description_character = "Ilość znaków metaopisu"
Breadcrumb_home_text = "Tekst nawigacji domowej"
Sitemap = "Mapa strony"
Valid_values_range_from_0_to_1.0._See = "Poprawne wartości są w zakresie 0.0 do 1.0. Zobacz"
hint_Use_CtrlCMDF_to_search_for_your_config_key_or_value="<u>wskazówka:</u> Użyj <code>Ctrl</code>/<code>CMD</code> + <code>F</code> by wyszukać wartość klucza konfiguracji."
pro_tips_You_can_creating_custom_config_key_and_print_out_your_config_key_value_anywhere_in_your_template="<u>super wskazówka:</u> Możesz tworzyć własne klucze konfiguracji i wyświetlać je gdziekolwiek w szablonie."
your_key = "ten.klucz"
Your_New_Config_Key = "Twój nowy klucz konfiguracji"
Your_New_Value = "Wartość twojego nowego klucza konfiguracji"
Related_widget_posts_at_most = "Maksymalna ilość postów wyświetlana w Sekcji Postów Powiązanych"
Recent_posts_widget_at_most = "Maksymalna ilość postów wyświetlana w Sekcji Ostatnich Postów"
Popular_posts_widget = "Sekcja postów popularnych"
Popular_posts_widget_at_most = "Maksymalna ilość postów wyświetlana w Sekcji Postów Popularnych"
Comments = "Komentarze"
To_using_Disqus_or_Facebook_comment_you_need_to_provide_Disqus_shortname_or_Facebook_App_ID = "Do używania Disqus lub Komentarzy Facebook potrzeba wpisać ich App ID."
Comment_system = "System komentarzy"
Disabled = "Nieaktywne"
Disqus_shortname = "Disqus skrócona nazwa"
Disqus_shortname_placeholder = "htmly"
Facebook_App_ID = "Facebook App ID"
widget_key_placeholder = "12345abcde"
Recaptcha = "reCAPTCHA"
Get_one_here = "Zdobądź jeden teraz"
Site_Key = "Klucz strony"
Secret_Key = "Klucz sekretny"
Google_Analytics = "Google Analytics"
Universal_Analytics = "Universal Analytics (gtag.js)"
Google_Analytics_legacy = "Google Analytics (legacy)"
This_is_legacy_code_usually_new_created_analytics_using_gtag_js = "To jest przestarzały kod. Zazwyzcaj nowo utworzone analizy używają gtag.js"
Google_Search_Console = "Google Search Console"
For_google_site_verification_meta = "Dla google-site-verification meta"
Social_Media = "Platforma społecznościowa"
Twitter_account = "Konto Twitter"
Facebook_page = "Strona Facebook"
Cache_expiration = "Czas trwania pamięci tymczasowej (w godzinach)"
Cache_off = "Pamięć tymczasowa wyłączona"
Yes_not_recommended = "Tak (niezalecane)"
Not = "Nie"
Cache_timestamp = "Odcisk czasu pamięci podręcznej"
Page_generation_time = "Czas wygenerowania strony"
Github_pre_release = "Github pre-release"
Pre_release = "Pre-release"
Yes_Im_in = "Tak, wchodzę w to"
Nope = "Nie"
Page = "Strona"
of = " "
Edit_post = "Edycja"
View_post = "Podgląd"
Posts_by = "Posty "
Pages = "Strony"
Menu = "Menu"
Popular = "Popularne"
;Errors
User_Error="Pole użytkownik jest wymagane"
Pass_Error="Pole hasło jest wymagane"
Token_Error="Błędny CSRF Token"
Captcha_Error="Błędna reCaptcha"
Invalid_Error="BŁĄD: Błędna nazwa użytkownika lub hasło"
User_Error = "Wartość pola z nazwą konta jest wymagane"
Pass_Error = "Wartość z hasłem konta jest wymagana"
Token_Error = "Token CSRF jest niepoprawny"
Captcha_Error = "reCaptcha błędna"
Invalid_Error = "BŁĄD: Błędna nazwa konta lub hasło"
;Profile
Post_by_author="Posty tego autora"
Author_Description="Kolejny zadowolony użytkownik HTMLy"
Post_by_author = "Posty autorstwa"
Author_Description = "Po prostu kolejne konto HTMLy"
;404-search
Search_results_not_found="Brak wyników wyszukiwania!"
No_search_results="Nic nie znaleziono"
Search_results_not_found = "Brak wyników wyszukiwania!"
No_search_results = "Nie znaleziono"
;TagCloud
Tagcloud_widget_at_most = "Ile pozycji w chmurze tagów"
Tagcloud_widget_at_most = "Maksymalna ilość tagów w Chmurze Tagów"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 4
- 0
lang/pt_BR.ini View File

@ -270,3 +270,7 @@ Search_results_not_found="Search results not found!"
No_search_results="No search results"
;TagCloud
Tagcloud_widget_at_most = "TagCloud at most"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 4
- 0
lang/ru_RU.ini View File

@ -271,3 +271,7 @@ Search_results_not_found="По вашему запросу ничего не н
No_search_results="Безрезультатно"
;TagCloud
Tagcloud_widget_at_most = "TagCloud at most"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 4
- 0
lang/sv_SE.ini View File

@ -288,3 +288,7 @@ Search_results_not_found="Search results not found!"
No_search_results="No search results"
;TagCloud
Tagcloud_widget_at_most = "TagCloud at most"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 4
- 0
lang/tr_TR.ini View File

@ -270,3 +270,7 @@ Search_results_not_found="Search results not found!"
No_search_results="No search results"
;TagCloud
Tagcloud_widget_at_most = "TagCloud at most"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 4
- 0
lang/zh_CN.ini View File

@ -270,3 +270,7 @@ Search_results_not_found="没有找到搜索结果"
No_search_results="没有搜索结果"
;TagCloud
Tagcloud_widget_at_most = "TagCloud最多标签数"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 4
- 0
lang/zh_TW.ini View File

@ -270,3 +270,7 @@ Search_results_not_found="Search results not found!"
No_search_results="No search results"
;TagCloud
Tagcloud_widget_at_most = "TagCloud at most"
;Scheduled
Scheduled = Scheduled
Scheduled_posts = Scheduled posts
Scheduled_tips = Publishing a post with future date or time, it will go into scheduled posts

+ 93
- 59
system/admin/admin.php View File

@ -85,7 +85,7 @@ function remove_accent($str)
}
// Add content
function add_content($title, $tag, $url, $content, $user, $description = null, $media = null, $draft, $category, $type)
function add_content($title, $tag, $url, $content, $user, $draft, $category, $type, $description = null, $media = null, $dateTime = null)
{
$tag = explode(',', preg_replace("/\s*,\s*/", ",", rtrim($tag, ',')));
@ -109,18 +109,17 @@ function add_content($title, $tag, $url, $content, $user, $description = null, $
$post_tagmd[] = $t;
}
}
$post_tag = safe_tag(implode(',', $post_tag));
$post_tagmd = safe_html(implode(',', $post_tagmd));
} else {
$post_tagmd = safe_html(implode(',', $post_tagmd));
} else {
$post_tag = safe_tag(implode(',', $tag));
$post_tagmd = safe_html(implode(',', $tag));
}
$post_tagmd = safe_html(implode(',', $tag));
}
$post_date = date('Y-m-d-H-i-s');
$post_title = safe_html($title);
$post_media = preg_replace('/\s\s+/', ' ', strip_tags($media));
$post_date = date('Y-m-d-H-i-s', strtotime($dateTime));
$post_title = safe_html($title);
$post_tag = strtolower(preg_replace(array('/[^a-zA-Z0-9,. \-\p{L}]/u', '/[ -]+/', '/^-|-$/'), array('', '-', ''), remove_accent($post_tag)));
$post_url = strtolower(preg_replace(array('/[^a-zA-Z0-9 \-\p{L}]/u', '/[ -]+/', '/^-|-$/'), array('', '-', ''), remove_accent($url)));
$description = safe_html($description);
@ -177,7 +176,7 @@ function add_content($title, $tag, $url, $content, $user, $description = null, $
$tagmd = "";
}
if ($media!== null) {
$post_media = "\n<!--" .$type. " " . $post_media . " " .$type. "-->";
$post_media = "\n<!--" .$type. " " . preg_replace('/\s\s+/', ' ', strip_tags($media)) . " " .$type. "-->";
} else {
$post_media = "";
}
@ -190,7 +189,11 @@ function add_content($title, $tag, $url, $content, $user, $description = null, $
$filename = $post_date . '_' . $post_tag . '_' . $post_url . '.md';
if (empty($draft)) {
$dir = 'content/' . $user . '/blog/' . $category. '/'.$type. '/';
if (date('Y-m-d-H-i-s') >= $post_date) {
$dir = 'content/' . $user . '/blog/' . $category. '/'.$type. '/';
} else {
$dir = 'content/' . $user . '/blog/' . $category. '/'.$type. '/scheduled/';
}
} else {
$dir = 'content/' . $user . '/blog/' . $category. '/draft/';
}
@ -208,7 +211,11 @@ function add_content($title, $tag, $url, $content, $user, $description = null, $
clear_post_cache($post_date, $post_tag, $post_url, $dir . $filename, $category, $type);
if (empty($draft)) {
$redirect = site_url() . 'admin/mine';
if (date('Y-m-d-H-i-s') >= $post_date) {
$redirect = site_url() . 'admin/mine';
} else {
$redirect = site_url() . 'admin/scheduled';
}
} else {
$redirect = site_url() . 'admin/draft';
}
@ -218,7 +225,7 @@ function add_content($title, $tag, $url, $content, $user, $description = null, $
}
// Edit content
function edit_content($title, $tag, $url, $content, $oldfile, $destination = null, $description = null, $date = null, $media = null, $revertPost, $publishDraft, $category, $type)
function edit_content($title, $tag, $url, $content, $oldfile, $revertPost, $publishDraft, $category, $type, $destination = null, $description = null, $date = null, $media = null)
{
$tag = explode(',', preg_replace("/\s*,\s*/", ",", rtrim($tag, ',')));
@ -242,14 +249,14 @@ function edit_content($title, $tag, $url, $content, $oldfile, $destination = nul
$post_tagmd[] = $t;
}
}
$post_tag = safe_tag(implode(',', $post_tag));
$post_tagmd = safe_html(implode(',', $post_tagmd));
} else {
$post_tagmd = safe_html(implode(',', $post_tagmd));
} else {
$post_tag = safe_tag(implode(',', $tag));
$post_tagmd = safe_html(implode(',', $tag));
}
$post_tagmd = safe_html(implode(',', $tag));
}
$oldurl = explode('_', $oldfile);
$dir = explode('/', $oldurl[0]);
@ -260,7 +267,6 @@ function edit_content($title, $tag, $url, $content, $oldfile, $destination = nul
}
$post_title = safe_html($title);
$post_media = preg_replace('/\s\s+/', ' ', strip_tags($media));
$post_tag = strtolower(preg_replace(array('/[^a-zA-Z0-9,. \-\p{L}]/u', '/[ -]+/', '/^-|-$/'), array('', '-', ''), remove_accent($post_tag)));
$post_url = strtolower(preg_replace(array('/[^a-zA-Z0-9 \-\p{L}]/u', '/[ -]+/', '/^-|-$/'), array('', '-', ''), remove_accent($url)));
$description = safe_html($description);
@ -308,11 +314,30 @@ function edit_content($title, $tag, $url, $content, $oldfile, $destination = nul
$tagmd = "";
}
if ($media !== null) {
$post_media = "\n<!--" . $type . " " . $post_media. " " . $type . "-->";
$post_media = "\n<!--" . $type . " " . preg_replace('/\s\s+/', ' ', strip_tags($media)) . " " . $type . "-->";
} else {
$post_media = "";
}
$post_content = "<!--t " . $post_title . " t-->" . $post_description . $tagmd . $post_media . "\n\n" . $content;
$dirBlog = $dir[0] . '/' . $dir[1] . '/' . $dir[2] . '/' . $category . '/' . $type . '/';
$dirDraft = $dir[0] . '/' . $dir[1] . '/' . $dir[2] . '/' . $category . '/draft/';
$dirScheduled = $dir[0] . '/' . $dir[1] . '/' . $dir[2] . '/' . $category . '/' . $type . '/scheduled/';
if (is_dir($dirBlog)) {
} else {
mkdir($dirBlog, 0775, true);
}
if (is_dir($dirDraft)) {
} else {
mkdir($dirDraft, 0775, true);
}
if (is_dir($dirScheduled)) {
} else {
mkdir($dirScheduled, 0775, true);
}
if (!empty($post_title) && !empty($post_tag) && !empty($post_url) && !empty($post_content)) {
@ -320,33 +345,34 @@ function edit_content($title, $tag, $url, $content, $oldfile, $destination = nul
if(!empty($revertPost) || !empty($publishDraft)) {
$dirBlog = $dir[0] . '/' . $dir[1] . '/' . $dir[2] . '/' . $category . '/' . $type . '/';
$dirDraft = $dir[0] . '/' . $dir[1] . '/' . $dir[2] . '/' . $category . '/draft/';
if($dir[4] == 'draft') {
$filename = $dirBlog . $olddate . '_' . $post_tag . '_' . $post_url . '.md';
if (date('Y-m-d-H-i-s') >= $olddate) {
$filename = $dirBlog . $olddate . '_' . $post_tag . '_' . $post_url . '.md';
} else {
$filename = $dirScheduled . $olddate . '_' . $post_tag . '_' . $post_url . '.md';
}
} else {
$filename = $dirDraft . $olddate . '_' . $post_tag . '_' . $post_url . '.md';
}
if (is_dir($dirBlog)) {
} else {
mkdir($dirBlog, 0775, true);
}
if (is_dir($dirDraft)) {
} else {
mkdir($dirDraft, 0775, true);
}
file_put_contents($filename, print_r($post_content, true));
unlink($oldfile);
$newfile = $olddate . '_' . $post_tag . '_' . $post_url . '.md';
} else {
if ($dir[3] === $category) {
$newfile = $oldurl[0] . '_' . $post_tag . '_' . $post_url . '.md';
if ($dir[3] === $category) {
if($dir[4] == 'draft') {
$newfile = $dirDraft . $olddate . '_' . $post_tag . '_' . $post_url . '.md';
} else {
if (date('Y-m-d-H-i-s') >= $olddate) {
$newfile = $dirBlog . $olddate . '_' . $post_tag . '_' . $post_url . '.md';
} else {
$newfile = $dirScheduled . $olddate . '_' . $post_tag . '_' . $post_url . '.md';
}
}
if ($oldfile === $newfile) {
file_put_contents($oldfile, print_r($post_content, true));
} else {
@ -355,23 +381,14 @@ function edit_content($title, $tag, $url, $content, $oldfile, $destination = nul
}
} else {
$dirBlog = $dir[0] . '/' . $dir[1] . '/' . $dir[2] . '/' . $category . '/' . $type. '/';
$dirDraft = $dir[0] . '/' . $dir[1] . '/' . $dir[2] . '/' . $category . '/draft/';
if($dir[4] == 'draft') {
$filename = $dirDraft . $olddate . '_' . $post_tag . '_' . $post_url . '.md';
} else {
$filename = $dirBlog . $olddate . '_' . $post_tag . '_' . $post_url . '.md';
}
if (is_dir($dirBlog)) {
} else {
mkdir($dirBlog, 0775, true);
}
if (is_dir($dirDraft)) {
} else {
mkdir($dirDraft, 0775, true);
if (date('Y-m-d-H-i-s') >= $olddate) {
$filename = $dirBlog . $olddate . '_' . $post_tag . '_' . $post_url . '.md';
} else {
$filename = $dirScheduled . $olddate . '_' . $post_tag . '_' . $post_url . '.md';
}
}
file_put_contents($filename, print_r($post_content, true));
@ -408,17 +425,27 @@ function edit_content($title, $tag, $url, $content, $oldfile, $destination = nul
save_tag_i18n($post_tag, $post_tagmd);
rebuilt_cache('all');
clear_post_cache($dt, $post_tag, $post_url, $newfile, $category, $type);
clear_post_cache($dt, $post_tag, $post_url, $oldfile, $category, $type);
if ($destination == 'post') {
if(!empty($revertPost)) {
$drafturl = site_url() . 'admin/draft';
header("Location: $drafturl");
} else {
header("Location: $posturl");
if (date('Y-m-d-H-i-s') >= $olddate) {
header("Location: $posturl");
} else {
$schurl = site_url() . 'admin/scheduled';
header("Location: $schurl");
}
}
} else {
if(!empty($publishDraft)) {
header("Location: $posturl");
if (date('Y-m-d-H-i-s') >= $olddate) {
header("Location: $posturl");
} else {
$schurl = site_url() . 'admin/scheduled';
header("Location: $schurl");
}
} elseif (!empty($revertPost)) {
$drafturl = site_url() . 'admin/draft';
header("Location: $drafturl");
@ -446,18 +473,18 @@ function add_page($title, $url, $content, $description = null)
} else {
$post_description = "";
}
$posts = get_static_pages();
$timestamp = date('YmdHis');
foreach ($posts as $index => $v) {
$arr = explode('/', $v);
$arr = explode('/', $v);
if (strtolower($arr[2]) === strtolower($post_url . '.md')) {
$post_url = $post_url .'-'. $timestamp;
} else {
$post_url = $post_url;
}
}
$post_content = '<!--t ' . $post_title . ' t-->' . $post_description . "\n\n" . $content;
if (!empty($post_title) && !empty($post_url) && !empty($post_content)) {
@ -535,7 +562,7 @@ function edit_page($title, $url, $content, $oldfile, $destination = null, $descr
} else {
$post_description = "";
}
$post_content = '<!--t ' . $post_title . ' t-->' . $post_description . "\n\n" . $content;
if (!empty($post_title) && !empty($post_url) && !empty($post_content)) {
@ -1075,3 +1102,10 @@ function clear_page_cache($url)
unlink($p);
}
}
function clear_cache()
{
foreach (glob('cache/page/*.cache', GLOB_NOSORT) as $file) {
unlink($file);
}
}

+ 12
- 1
system/admin/views/add-content.html.php View File

@ -106,7 +106,18 @@ $( function() {
</div>
<div class="col-sm-6">
<div class="form-row">
<div class="col">
<label for="pDate"><?php echo i18n('Date');?></label>
<input type="date" id="pDate" name="date" class="form-control text" value="<?php echo date('Y-m-d'); ?>">
</div>
<div class="col">
<label for="pTime"><?php echo i18n('Time');?></label>
<input step="1" type="time" id="pTime" name="time" class="form-control text" value="<?php echo date('H:i:s'); ?>">
</div>
<small style="margin-top:10px;"><em><?php echo i18n('Scheduled_tips');?></em></small>
</div>
<br>
<label for="pURL">Url (<?php echo i18n('optional');?>)</label>
<input type="text" class="form-control text" id="pURL" name="url" value="<?php if (isset($postUrl)) { echo $postUrl;} ?>" placeholder="<?php echo i18n('If_the_url_leave_empty_we_will_use_the_post_title');?>"/>
<br>


+ 7
- 1
system/admin/views/backup.html.php View File

@ -11,8 +11,14 @@ if (login()) {
}
}
?>
<?php if (!extension_loaded('zip')) { ?>
<div class="callout callout-info">
<h5><i class="fa fa-info"></i> Note:</h5>
Please install the ZIP extension to use the backup feature.
</div>
<?php } ?>
<h2><?php echo i18n('Your_backups');?></h2>
<br>
<a class="btn btn-primary" href="<?php echo site_url() ?>admin/backup-start"><?php echo i18n('Create_backup');?></a>
<a class="btn btn-primary <?php if (!extension_loaded('zip')) { ?>disabled<?php } ?>" href="<?php echo site_url() ?>admin/backup-start"><?php echo i18n('Create_backup');?></a>
<br><br>
<?php echo get_backup_files() ?>

+ 20
- 14
system/admin/views/config.html.php View File

@ -1,6 +1,12 @@
<?php if (!defined('HTMLY')) die('HTMLy'); ?>
<h2><?php echo i18n('General_Settings')?></h2>
<br>
<?php if (!extension_loaded('intl')) { ?>
<div class="callout callout-info">
<h5><i class="fa fa-info"></i> Note:</h5>
Please install and enable the INTL extension to format the date format to your local language.
</div>
<?php } ?>
<nav>
<div class="nav nav-tabs" id="nav-tab">
<a class="nav-item nav-link active" id="nav-general-tab" href="<?php echo site_url();?>admin/config"><?php echo i18n('General');?></a>
@ -66,45 +72,45 @@
<div class="col-sm-10">
<div class="col-sm-10">
<div class="form-check">
<input class="form-check-input" type="radio" name="-config-date.format" id="date.format1" value="%d %B %Y" <?php if (config('date.format') === '%d %B %Y'):?>checked<?php endif;?>>
<input class="form-check-input" type="radio" name="-config-date.format" id="date.format1" value="d F Y" <?php if (config('date.format') === 'd F Y'):?>checked<?php endif;?>>
<label class="form-check-label" for="date.format1">
<?php echo strftime('%d %B %Y', strtotime($date)); ?>
<?php echo format_date(strtotime($date), 'd F Y'); ?>
</label>
</div>
<div class="form-check">
<input class="form-check-input" type="radio" name="-config-date.format" id="date.format2" value="%B %d, %Y" <?php if (config('date.format') === '%B %d, %Y'):?>checked<?php endif;?>>
<input class="form-check-input" type="radio" name="-config-date.format" id="date.format2" value="F d, Y" <?php if (config('date.format') === 'F d, Y'):?>checked<?php endif;?>>
<label class="form-check-label" for="date.format2">
<?php echo strftime('%B %d, %Y', strtotime($date)); ?>
<?php echo format_date(strtotime($date), 'F d, Y'); ?>
</label>
</div>
<div class="form-check">
<input class="form-check-input" type="radio" name="-config-date.format" id="date.format3" value="%d %b %Y" <?php if (config('date.format') === '%d %b %Y'):?>checked<?php endif;?>>
<input class="form-check-input" type="radio" name="-config-date.format" id="date.format3" value="d M Y" <?php if (config('date.format') === 'd M Y'):?>checked<?php endif;?>>
<label class="form-check-label" for="date.format3">
<?php echo strftime('%d %b %Y', strtotime($date)); ?>
<?php echo format_date(strtotime($date), 'd M Y'); ?>
</label>
</div>
<div class="form-check">
<input class="form-check-input" type="radio" name="-config-date.format" id="date.format4" value="%b %d, %Y" <?php if (config('date.format') === '%b %d, %Y'):?>checked<?php endif;?>>
<input class="form-check-input" type="radio" name="-config-date.format" id="date.format4" value="M d, Y" <?php if (config('date.format') === 'M d, Y'):?>checked<?php endif;?>>
<label class="form-check-label" for="date.format4">
<?php echo strftime('%b %d, %Y', strtotime($date)); ?>
<?php echo format_date(strtotime($date), 'M d, Y'); ?>
</label>
</div>
<div class="form-check">
<input class="form-check-input" type="radio" name="-config-date.format" id="date.format5" value="%d/%m/%Y" <?php if (config('date.format') === '%d/%m/%Y'):?>checked<?php endif;?>>
<input class="form-check-input" type="radio" name="-config-date.format" id="date.format5" value="d/m/Y" <?php if (config('date.format') === 'd/m/Y'):?>checked<?php endif;?>>
<label class="form-check-label" for="date.format5">
<?php echo strftime('%d/%m/%Y', strtotime($date)); ?>
<?php echo format_date(strtotime($date), 'd/m/Y'); ?>
</label>
</div>
<div class="form-check">
<input class="form-check-input" type="radio" name="-config-date.format" id="date.format6" value="%m/%d/%Y" <?php if (config('date.format') === '%m/%d/%Y'):?>checked<?php endif;?>>
<input class="form-check-input" type="radio" name="-config-date.format" id="date.format6" value="m/d/Y" <?php if (config('date.format') === 'm/d/Y'):?>checked<?php endif;?>>
<label class="form-check-label" for="date.format6">
<?php echo strftime('%m/%d/%Y', strtotime($date)); ?>
<?php echo format_date(strtotime($date), 'm/d/Y'); ?>
</label>
</div>
<div class="form-check">
<input class="form-check-input" type="radio" name="-config-date.format" id="date.format6" value="%Y-%m-%d" <?php if (config('date.format') === '%Y-%m-%d'):?>checked<?php endif;?>>
<input class="form-check-input" type="radio" name="-config-date.format" id="date.format6" value="Y-m-d" <?php if (config('date.format') === 'Y-m-d'):?>checked<?php endif;?>>
<label class="form-check-label" for="date.format6">
<?php echo strftime('%Y-%m-%d', strtotime($date)); ?>
<?php echo format_date(strtotime($date), 'Y-m-d'); ?>
</label>
</div>


+ 6
- 1
system/admin/views/edit-content.html.php View File

@ -39,7 +39,11 @@ $replaced = substr($oldurl[0], 0, strrpos($oldurl[0], '/')) . '/';
// Category string
$cat = explode('/', $replaced);
$category = $cat[count($cat) - 3];
if ($cat[count($cat) - 2] === 'scheduled') {
$category = $cat[count($cat) - 4];
} else {
$category = $cat[count($cat) - 3];
}
$dt = str_replace($replaced, '', $oldurl[0]);
$t = str_replace('-', '', $dt);
@ -161,6 +165,7 @@ $( function() {
<label for="pTime"><?php echo i18n('Time');?></label>
<input step="1" type="time" id="pTime" name="time" class="form-control text" value="<?php echo $time->format('H:i:s'); ?>">
</div>
<small style="margin-top:10px;"><em><?php echo i18n('Scheduled_tips');?></em></small>
</div>
<br>
<label for="pURL">Url (<?php echo i18n('optional');?>)</label>


+ 7
- 0
system/admin/views/layout.html.php View File

@ -88,6 +88,13 @@
</p>
</a>
</li>
<li class="nav-item">
<a href="<?php echo site_url();?>admin/scheduled" class="nav-link">
<p>
<?php echo i18n('Scheduled'); ?>
</p>
</a>
</li>
<li class="nav-item">
<a href="<?php echo site_url();?>admin/draft" class="nav-link">
<p>


+ 57
- 0
system/admin/views/scheduled.html.php View File

@ -0,0 +1,57 @@
<?php if (!defined('HTMLY')) die('HTMLy'); ?>
<h2 class="post-index"><?php echo $heading ?></h2>
<br>
<a class="btn btn-primary right" href="<?php echo site_url();?>admin/content"><?php echo i18n('Add_new_post');?></a>
<br><br>
<?php if (!empty($posts)) { ?>
<table class="table post-list">
<tr class="head">
<th><?php echo i18n('Title');?></th>
<th><?php echo i18n('Publish');?></th>
<th><?php echo i18n('Category');?></th>
<th><?php echo i18n('Tags');?></th>
<th><?php echo i18n('Operations');?></th>
</tr>
<?php $i = 0;
$len = count($posts); ?>
<?php foreach ($posts as $p): ?>
<?php
if ($i == 0) {
$class = 'item first';
} elseif ($i == $len - 1) {
$class = 'item last';
} else {
$class = 'item';
}
$i++;
?>
<tr class="<?php echo $class ?>">
<td><?php echo $p->title ?></td>
<td><?php echo format_date($p->date, 'd F Y, H:i:s') ?></td>
<td><a href="<?php echo str_replace('category', 'admin/categories', $p->categoryUrl); ?>"><?php echo strip_tags($p->category);?></a></td>
<td><?php echo $p->tag ?></td>
<td><a class="btn btn-primary btn-xs" href="<?php echo $p->url ?>/edit?destination=admin/scheduled"><?php echo i18n('Edit');?></a> <a class="btn btn-danger btn-xs" href="<?php echo $p->url ?>/delete?destination=admin/scheduled"><?php echo i18n('Delete');?></a></td>
</tr>
<?php endforeach; ?>
</table>
<?php if (!empty($pagination['prev']) || !empty($pagination['next'])): ?>
<br>
<div class="pager">
<ul class="pagination">
<?php if (!empty($pagination['prev'])) { ?>
<li class="newer page-item"><a class="page-link" href="?page=<?php echo $page - 1 ?>" rel="prev">&#8592; <?php echo i18n('Newer');?></a></li>
<?php } else { ?>
<li class="page-item disabled" ><span class="page-link">&#8592; <?php echo i18n('Newer');?></span></li>
<?php } ?>
<li class="page-number page-item disabled"><span class="page-link"><?php echo $pagination['pagenum'];?></span></li>
<?php if (!empty($pagination['next'])) { ?>
<li class="older page-item" ><a class="page-link" href="?page=<?php echo $page + 1 ?>" rel="next"><?php echo i18n('Older');?> &#8594;</a></li>
<?php } else { ?>
<li class="page-item disabled" ><span class="page-link"><?php echo i18n('Older');?> &#8594;</span></li>
<?php } ?>
</ul>
</div>
<?php endif; ?>
<?php } else {
echo 'No scheduled posts found!';
} ?>

+ 141
- 45
system/htmly.php View File

@ -14,6 +14,9 @@ if (config('timezone')) {
date_default_timezone_set('Asia/Jakarta');
}
// Publish scheduled post
publish_scheduled();
// The front page of the blog
get('/index', function () {
@ -466,6 +469,12 @@ post('/add/content', function () {
$user = $_SESSION[config("site.url")]['user'];
$draft = from($_REQUEST, 'draft');
$category = from($_REQUEST, 'category');
$date = from($_REQUEST, 'date');
$time = from($_REQUEST, 'time');
$dateTime = null;
if ($date !== null && $time !== null) {
$dateTime = $date . ' ' . $time;
}
if (empty($is_post) && empty($is_image) && empty($is_video) && empty($is_audio) && empty($is_link) && empty($is_quote)) {
$add = site_url() . 'admin/content';
@ -474,45 +483,45 @@ post('/add/content', function () {
if ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($is_post)) {
if (!empty($url)) {
add_content($title, $tag, $url, $content, $user, $description, null, $draft, $category, 'post');
add_content($title, $tag, $url, $content, $user, $draft, $category, 'post', $description, null, $dateTime);
} else {
$url = $title;
add_content($title, $tag, $url, $content, $user, $description, null, $draft, $category, 'post');
add_content($title, $tag, $url, $content, $user, $draft, $category, 'post', $description, null, $dateTime);
}
} elseif ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($image)) {
if (!empty($url)) {
add_content($title, $tag, $url, $content, $user, $description, $image, $draft, $category, 'image');
add_content($title, $tag, $url, $content, $user, $draft, $category, 'image', $description, $image, $dateTime);
} else {
$url = $title;
add_content($title, $tag, $url, $content, $user, $description, $image, $draft, $category, 'image');
add_content($title, $tag, $url, $content, $user, $draft, $category, 'image', $description, $image, $dateTime);
}
} elseif ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($video)) {
if (!empty($url)) {
add_content($title, $tag, $url, $content, $user, $description, $video, $draft, $category, 'video');
add_content($title, $tag, $url, $content, $user, $draft, $category, 'video', $description, $video, $dateTime);
} else {
$url = $title;
add_content($title, $tag, $url, $content, $user, $description, $video, $draft, $category, 'video');
add_content($title, $tag, $url, $content, $user, $draft, $category, 'video', $description, $video, $dateTime);
}
} elseif ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($audio)) {
if (!empty($url)) {
add_content($title, $tag, $url, $content, $user, $description, $audio, $draft, $category, 'audio');
add_content($title, $tag, $url, $content, $user, $draft, $category, 'audio', $description, $audio, $dateTime);
} else {
$url = $title;
add_content($title, $tag, $url, $content, $user, $description, $audio, $draft, $category, 'audio');
add_content($title, $tag, $url, $content, $user, $draft, $category, 'audio', $description, $audio, $dateTime);
}
} elseif ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($quote)) {
if (!empty($url)) {
add_content($title, $tag, $url, $content, $user, $description, $quote, $draft, $category, 'quote');
add_content($title, $tag, $url, $content, $user, $draft, $category, 'quote', $description, $quote, $dateTime);
} else {
$url = $title;
add_content($title, $tag, $url, $content, $user, $description, $quote, $draft, $category, 'quote');
add_content($title, $tag, $url, $content, $user, $draft, $category, 'quote', $description, $quote, $dateTime);
}
} elseif ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($link)) {
if (!empty($url)) {
add_content($title, $tag, $url, $content, $user, $description, $link, $draft, $category, 'link');
add_content($title, $tag, $url, $content, $user, $draft, $category, 'link', $description, $link, $dateTime);
} else {
$url = $title;
add_content($title, $tag, $url, $content, $user, $description, $link, $draft, $category, 'link');
add_content($title, $tag, $url, $content, $user, $draft, $category, 'link', $description, $link, $dateTime);
}
} else {
$message['error'] = '';
@ -977,6 +986,71 @@ get('/admin/draft', function () {
}
});
// Show admin/scheduled
get('/admin/scheduled', function () {
if (login()) {
config('views.root', 'system/admin/views');
$name = $_SESSION[config("site.url")]['user'];
$page = from($_GET, 'page');
$page = $page ? (int)$page : 1;
$perpage = config('profile.perpage');
$posts = get_scheduled($name, $page, $perpage);
$total = get_scheduledcount($name);
$author = get_author($name);
if (isset($author[0])) {
$author = $author[0];
} else {
$author = default_profile($name);
}
if (empty($posts) || $page < 1) {
render('scheduled', array(
'title' => i18n('Scheduled_posts') . ' - ' . blog_title(),
'description' => strip_tags(blog_description()),
'canonical' => site_url(),
'page' => $page,
'heading' => i18n('Scheduled_posts'),
'posts' => null,
'about' => $author->about,
'name' => $author->name,
'type' => 'is_admin-scheduled',
'is_admin' => true,
'bodyclass' => 'admin-scheduled',
'breadcrumb' => '<a href="' . site_url() . '">' . config('breadcrumb.home') . '</a> &#187; Scheduled posts for: ' . $author->name,
'pagination' => has_pagination($total, $perpage, $page)
));
die;
}
render('scheduled', array(
'title' => i18n('Scheduled_posts') . ' - ' . blog_title(),
'description' => strip_tags(blog_description()),
'canonical' => site_url(),
'heading' => i18n('Scheduled_posts'),
'page' => $page,
'posts' => $posts,
'about' => $author->about,
'name' => $author->name,
'type' => 'is_admin-scheduled',
'is_admin' => true,
'bodyclass' => 'admin-scheduled',
'breadcrumb' => '<a href="' . site_url() . '">' . config('breadcrumb.home') . '</a> &#187; Scheduled posts for: ' . $author->name,
'pagination' => has_pagination($total, $perpage, $page)
));
} else {
$login = site_url() . 'login';
header("location: $login");
}
});
// Show admin/content
get('/admin/content', function () {
if (login()) {
@ -1736,7 +1810,9 @@ get('/category/:category', function ($category) {
$desc = get_category_info($category);
if(strtolower($category) !== 'uncategorized') {
$desc = $desc[0];
if(!empty($desc)) {
$desc = $desc[0];
}
}
$total = get_categorycount($category);
@ -2070,9 +2146,9 @@ get('/archive/:req', function ($req) {
$date = strtotime($req);
if (isset($time[0]) && isset($time[1]) && isset($time[2])) {
$timestamp = strftime('%d %B %Y', $date);
$timestamp = format_date($date, 'd F Y');
} elseif (isset($time[0]) && isset($time[1])) {
$timestamp = strftime('%B %Y', $date);
$timestamp = format_date($date, 'F Y');
} else {
$timestamp = $req;
}
@ -2224,7 +2300,11 @@ get('/post/:name', function ($name) {
if (config('permalink.type') != 'post') {
$post = find_post(null, null, $name);
$current = $post['current'];
if (is_null($post)) {
not_found();
} else {
$current = $post['current'];
}
$redir = site_url() . date('Y/m', $current->date) . '/' . $name;
header("location: $redir", TRUE, 301);
}
@ -2237,10 +2317,10 @@ get('/post/:name', function ($name) {
$post = find_post(null, null, $name);
$current = $post['current'];
if (!$current) {
if (is_null($post)) {
not_found();
} else {
$current = $post['current'];
}
if (config("views.counter") == "true") {
@ -2341,10 +2421,14 @@ get('/post/:name/edit', function ($name) {
$post = find_post(null, null, $name);
if (!$post) {
$post = find_draft(null, null, $name);
if (!$post) {
not_found();
$post = find_draft($year, $month, $name);
if (!$post) {
$post = find_scheduled($year, $month, $name);
if (!$post) {
not_found();
}
}
}
$current = $post['current'];
@ -2442,37 +2526,37 @@ post('/post/:name/edit', function () {
if (empty($url)) {
$url = $title;
}
edit_content($title, $tag, $url, $content, $oldfile, $destination, $description, $dateTime, $image, $revertPost, $publishDraft, $category, 'image');
edit_content($title, $tag, $url, $content, $oldfile, $revertPost, $publishDraft, $category, 'image', $destination, $description, $dateTime, $image);
} else if ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($video)) {
if (empty($url)) {
$url = $title;
}
edit_content($title, $tag, $url, $content, $oldfile, $destination, $description, $dateTime, $video, $revertPost, $publishDraft, $category, 'video');
edit_content($title, $tag, $url, $content, $oldfile, $revertPost, $publishDraft, $category, 'video', $destination, $description, $dateTime, $video);
} else if ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($link)) {
if (empty($url)) {
$url = $title;
}
edit_content($title, $tag, $url, $content, $oldfile, $destination, $description, $dateTime, $link, $revertPost, $publishDraft, $category, 'link');
edit_content($title, $tag, $url, $content, $oldfile, $revertPost, $publishDraft, $category, 'link', $destination, $description, $dateTime, $link);
} else if ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($quote)) {
if (empty($url)) {
$url = $title;
}
edit_content($title, $tag, $url, $content, $oldfile, $destination, $description, $dateTime, $quote, $revertPost, $publishDraft, $category, 'quote');
edit_content($title, $tag, $url, $content, $oldfile, $revertPost, $publishDraft, $category, 'quote', $destination, $description, $dateTime, $quote);
} else if ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($audio)) {
if (empty($url)) {
$url = $title;
}
edit_content($title, $tag, $url, $content, $oldfile, $destination, $description, $dateTime, $audio, $revertPost, $publishDraft, $category, 'audio');
edit_content($title, $tag, $url, $content, $oldfile, $revertPost, $publishDraft, $category, 'audio', $destination, $description, $dateTime, $audio);
} else if ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($is_post)) {
if (empty($url)) {
$url = $title;
}
edit_content($title, $tag, $url, $content, $oldfile, $destination, $description, $dateTime, null, $revertPost, $publishDraft, $category, 'post');
edit_content($title, $tag, $url, $content, $oldfile, $revertPost, $publishDraft, $category, 'post', $destination, $description, $dateTime, null);
} else {
$message['error'] = '';
@ -2548,10 +2632,14 @@ get('/post/:name/delete', function ($name) {
$post = find_post(null, null, $name);
if (!$post) {
$post = find_draft(null, null, $name);
if (!$post) {
not_found();
$post = find_draft($year, $month, $name);
if (!$post) {
$post = find_scheduled($year, $month, $name);
if (!$post) {
not_found();
}
}
}
$current = $post['current'];
@ -3004,7 +3092,7 @@ get('/:static/:sub', function ($static, $sub) {
$url = site_url() . 'search/' . remove_accent($search);
header("Location: $url");
}
if ($static === 'front') {
$redir = site_url();
header("location: $redir", TRUE, 301);
@ -3230,10 +3318,10 @@ get('/:year/:month/:name', function ($year, $month, $name) {
$post = find_post($year, $month, $name);
$current = $post['current'];
if (!$current) {
if (is_null($post)) {
not_found();
} else {
$current = $post['current'];
}
if (config("views.counter") == "true") {
@ -3335,9 +3423,13 @@ get('/:year/:month/:name/edit', function ($year, $month, $name) {
if (!$post) {
$post = find_draft($year, $month, $name);
if (!$post) {
not_found();
if (!$post) {
$post = find_scheduled($year, $month, $name);
if (!$post) {
not_found();
}
}
}
$current = $post['current'];
@ -3435,37 +3527,37 @@ post('/:year/:month/:name/edit', function () {
if (empty($url)) {
$url = $title;
}
edit_content($title, $tag, $url, $content, $oldfile, $destination, $description, $dateTime, $image, $revertPost, $publishDraft, $category, 'image');
edit_content($title, $tag, $url, $content, $oldfile, $revertPost, $publishDraft, $category, 'image', $destination, $description, $dateTime, $image);
} else if ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($video)) {
if (empty($url)) {
$url = $title;
}
edit_content($title, $tag, $url, $content, $oldfile, $destination, $description, $dateTime, $video, $revertPost, $publishDraft, $category, 'video');
edit_content($title, $tag, $url, $content, $oldfile, $revertPost, $publishDraft, $category, 'video', $destination, $description, $dateTime, $video);
} else if ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($link)) {
if (empty($url)) {
$url = $title;
}
edit_content($title, $tag, $url, $content, $oldfile, $destination, $description, $dateTime, $link, $revertPost, $publishDraft, $category, 'link');
edit_content($title, $tag, $url, $content, $oldfile, $revertPost, $publishDraft, $category, 'link', $destination, $description, $dateTime, $link);
} else if ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($quote)) {
if (empty($url)) {
$url = $title;
}
edit_content($title, $tag, $url, $content, $oldfile, $destination, $description, $dateTime, $quote, $revertPost, $publishDraft, $category, 'quote');
edit_content($title, $tag, $url, $content, $oldfile, $revertPost, $publishDraft, $category, 'quote', $destination, $description, $dateTime, $quote);
} else if ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($audio)) {
if (empty($url)) {
$url = $title;
}
edit_content($title, $tag, $url, $content, $oldfile, $destination, $description, $dateTime, $audio, $revertPost, $publishDraft, $category, 'audio');
edit_content($title, $tag, $url, $content, $oldfile, $revertPost, $publishDraft, $category, 'audio', $destination, $description, $dateTime, $audio);
} else if ($proper && !empty($title) && !empty($tag) && !empty($content) && !empty($is_post)) {
if (empty($url)) {
$url = $title;
}
edit_content($title, $tag, $url, $content, $oldfile, $destination, $description, $dateTime, null, $revertPost, $publishDraft, $category, 'post');
edit_content($title, $tag, $url, $content, $oldfile, $revertPost, $publishDraft, $category, 'post', $destination, $description, $dateTime, null);
} else {
$message['error'] = '';
@ -3542,9 +3634,13 @@ get('/:year/:month/:name/delete', function ($year, $month, $name) {
if (!$post) {
$post = find_draft($year, $month, $name);
if (!$post) {
not_found();
if (!$post) {
$post = find_scheduled($year, $month, $name);
if (!$post) {
not_found();
}
}
}
$current = $post['current'];


+ 180
- 42
system/includes/functions.php View File

@ -126,6 +126,20 @@ function get_draft_posts()
return $_draft;
}
// Get scheduled posts.
function get_scheduled_posts()
{
static $_scheduled = array();
if (empty($_scheduled)) {
$url = 'cache/index/index-scheduled.txt';
if (!file_exists($url)) {
rebuilt_cache('all');
}
$_scheduled = unserialize(file_get_contents($url));
}
return $_scheduled;
}
// Get category info files.
function get_category_files()
{
@ -176,37 +190,28 @@ function rebuilt_cache($type)
$posts_cache_unsorted = array();
$page_cache = array();
$author_cache = array();
$scheduled = array();
if (is_dir($dir) === false) {
mkdir($dir, 0775, true);
}
if ($type === 'posts') {
$tmpu = array();
$tmpu = glob('content/*/blog/*/*/*.md', GLOB_NOSORT);
if (is_array($tmpu)) {
foreach ($tmpu as $fileu) {
if(strpos($fileu, '/draft/') === false) {
$posts_cache_unsorted[] = $fileu;
}
}
}
$string = serialize($posts_cache_unsorted);
file_put_contents('cache/index/index-unsorted.txt', print_r($string, true));
$tmp = array();
$tmp = glob('content/*/blog/*/*/*.md', GLOB_NOSORT);
if (is_array($tmp)) {
if (is_array($tmp)) {
foreach ($tmp as $file) {
if(strpos($file, '/draft/') === false) {
if(strpos($file, '/draft/') === false && strpos($file, '/scheduled/') === false) {
$posts_cache_unsorted[] = $file;
$posts_cache_sorted[] = pathinfo($file);
}
}
}
$string_unsorted = serialize($posts_cache_unsorted);
file_put_contents('cache/index/index-unsorted.txt', print_r($string_unsorted, true));
usort($posts_cache_sorted, "sortfile");
$string = serialize($posts_cache_sorted);
file_put_contents('cache/index/index-sorted.txt', print_r($string, true));
$string_sorted = serialize($posts_cache_sorted);
file_put_contents('cache/index/index-sorted.txt', print_r($string_sorted, true));
} elseif ($type === 'page') {
$page_cache = glob('content/static/*.md', GLOB_NOSORT);
$string = serialize($page_cache);
@ -223,12 +228,24 @@ function rebuilt_cache($type)
$category_cache = glob('content/data/category/*.md', GLOB_NOSORT);
$string = serialize($category_cache);
file_put_contents('cache/index/index-category.txt', print_r($string, true));
} elseif ($type === 'scheduled') {
$tmp = array();
$tmp = glob('content/*/*/*/*/scheduled/*.md', GLOB_NOSORT);
if (is_array($tmp)) {
foreach ($tmp as $file) {
$scheduled[] = pathinfo($file);
}
}
usort($scheduled, "sortfile");
$string = serialize($scheduled);
file_put_contents('cache/index/index-scheduled.txt', print_r($string, true));
} elseif ($type === 'all') {
rebuilt_cache('posts');
rebuilt_cache('page');
rebuilt_cache('subpage');
rebuilt_cache('author');
rebuilt_cache('category');
rebuilt_cache('scheduled');
}
foreach (glob('cache/widget/*.cache', GLOB_NOSORT) as $file) {
@ -266,7 +283,7 @@ function get_posts($posts, $page = 1, $perpage = 0)
// Author string
$str = explode('/', $replaced);
$author = $str[count($str) - 5];
if($str[count($str) - 3] == 'uncategorized') {
if($str[count($str) - 3] && $str[count($str) - 4]== 'uncategorized') {
$category = default_category();
$post->category = '<a href="' . $category->url . '">' . $category->title . '</a>';
$post->categoryUrl = $category->url;
@ -274,9 +291,8 @@ function get_posts($posts, $page = 1, $perpage = 0)
$post->categoryTitle = $category->title;
$post->categoryb = '<a itemprop="item" href="' . $category->url . '"><span itemprop="name">' . $category->title . '</span></a>';
} else {
foreach ($catC as $k => $v) {
if ($v['0'] === $str[count($str) - 3]) {
if ($v['0'] === $str[count($str) - 3] || $v['0'] === $str[count($str) - 4]) {
$post->category = '<a href="' . site_url() . 'category/' . $v['0'] . '">' . $v['1'] . '</a>';
$post->categoryUrl = site_url() . 'category/' . $v['0'];
$post->categorySlug = $v['0'];
@ -303,7 +319,6 @@ function get_posts($posts, $page = 1, $perpage = 0)
}
$post->type = $type;
$dt = str_replace($replaced, '', $arr[0]);
$t = str_replace('-', '', $dt);
$time = new DateTime($t);
@ -486,11 +501,55 @@ function find_draft($year, $month, $name)
}
}
// Find draft.
function find_scheduled($year, $month, $name)
{
$posts = get_scheduled_posts();
foreach ($posts as $index => $v) {
$arr = explode('_', $v['basename']);
if (strpos($arr[0], "$year-$month") !== false && strtolower($arr[2]) === strtolower($name . '.md') || strtolower($arr[2]) === strtolower($name . '.md')) {
// Use the get_posts method to return
// a properly parsed object
$ar = get_posts($posts, $index + 1, 1);
$nx = get_posts($posts, $index, 1);
$pr = get_posts($posts, $index + 2, 1);
if ($index == 0) {
if (isset($pr[0])) {
return array(
'current' => $ar[0],
'prev' => $pr[0]
);
} else {
return array(
'current' => $ar[0],
'prev' => null
);
}
} elseif (count($posts) == $index + 1) {
return array(
'current' => $ar[0],
'next' => $nx[0]
);
} else {
return array(
'current' => $ar[0],
'next' => $nx[0],
'prev' => $pr[0]
);
}
}
}
}
// Return category page.
function get_category($category, $page, $perpage, $random)
{
$posts = get_post_sorted();
if ($random === true) {
shuffle($posts);
}
@ -530,7 +589,7 @@ function get_category($category, $page, $perpage, $random)
// Return category info.
function get_category_info($category)
{
{
$posts = get_category_files();
$tmp = array();
@ -570,6 +629,9 @@ function get_category_info($category)
}
}
if (is_null($category)) {
$category = '';
}
if (strtolower($category) == 'uncategorized') {
return default_category();
}
@ -586,9 +648,9 @@ function default_category()
$desc->title = i18n("Uncategorized");
$desc->url = site_url() . 'category/uncategorized';
$desc->slug = 'uncategorized';
$desc->body = '<p>Topics that don&#39;t need a category, or don&#39;t fit into any other existing category.</p>';
$desc->description = 'Topics that don&#39;t need a category, or don&#39;t fit into any other existing category.';
$desc->body = '<p>' . i18n('Uncategorized_comment') . '</p>';
$desc->md = 'uncategorized';
$desc->description = i18n('Uncategorized_comment');
return $tmp[] = $desc;
}
@ -776,6 +838,31 @@ function get_draft($profile, $page, $perpage)
return $tmp = get_posts($tmp, $page, $perpage);
}
// Return scheduled list
function get_scheduled($profile, $page, $perpage)
{
$user = $_SESSION[config("site.url")]['user'];
$role = user('role', $user);
$posts = get_scheduled_posts();
$tmp = array();
foreach ($posts as $index => $v) {
$str = explode('/', $v['dirname']);
$author = $str[count($str) - 5];
if (strtolower($profile) === strtolower($author) || $role === 'admin') {
$tmp[] = $v;
}
}
if (empty($tmp)) {
return false;
}
return $tmp = get_posts($tmp, $page, $perpage);
}
// Return author info.
function get_author($name)
{
@ -1127,6 +1214,34 @@ function get_draftcount($var)
return count($tmp);
}
// Return draft count. Matching $var and $str provided.
function get_scheduledcount($var)
{
$posts = get_scheduled_posts();
$tmp = array();
foreach ($posts as $index => $v) {
$filepath = $v['dirname'] . '/' . $v['basename'];
// Extract the date
$arr = explode('_', $filepath);
// Replaced string
$replaced = substr($arr[0], 0, strrpos($arr[0], '/')) . '/';
$str = explode('/', $replaced);
$cat = $str[count($str) - 5];
if (stripos($cat, "$var") !== false) {
$tmp[] = $v;
}
}
return count($tmp);
}
// Return tag count. Matching $var and $str provided.
function get_tagcount($var, $str)
{
@ -1432,7 +1547,7 @@ EOF;
echo '<ul class="month">';
foreach ($by_month as $month => $count) {
$name = strftime('%B', mktime(0, 0, 0, $month, 1, 2010));
$name = format_date(mktime(0, 0, 0, $month, 1, 2010), 'F');
echo '<li class="item"><a href="' . site_url() . 'archive/' . $year . '-' . $month . '">' . $name . '</a>';
echo ' <span class="count">(' . $count . ')</span></li>';
}
@ -1461,7 +1576,7 @@ function tag_cloud($custom = null)
$posts = get_post_unsorted();
$tags = array();
$tagcloud_count = config('tagcloud.count');
if(empty($tagcloud_count)) {
$tagcloud_count = 40;
@ -1596,7 +1711,7 @@ function has_pagination($total, $perpage, $page = 1)
}
$totalPage = ceil($total / $perpage);
$number = i18n('Page') . ' ' . $page . ' ' . i18n('of') . ' ' . $totalPage;
$pager = get_pagination($page, $total, $perpage, 2);
$pager = get_pagination($total, $page, $perpage, 2);
return array(
'prev' => $page > 1,
'next' => $total > $page * $perpage,
@ -1608,7 +1723,7 @@ function has_pagination($total, $perpage, $page = 1)
}
//function to return the pagination string
function get_pagination($page = 1, $totalitems, $perpage = 10, $adjacents = 1, $pagestring = '?page=')
function get_pagination($totalitems, $page = 1, $perpage = 10, $adjacents = 1, $pagestring = '?page=')
{
//defaults
if(!$adjacents) $adjacents = 1;
@ -2152,7 +2267,7 @@ function menu($class = null)
}
}
return preg_replace('~<(?:!DOCTYPE|/?(?:html|head|body))[^>]*>\s*~i', '', utf8_decode($doc->saveHTML($doc->documentElement)));
return preg_replace('~<(?:!DOCTYPE|/?(?:html|head|body))[^>]*>\s*~i', '', mb_convert_encoding($doc->saveHTML($doc->documentElement), 'UTF-8'));
}
} else {
@ -2913,6 +3028,7 @@ EOF;
}
}
echo '<li class="tb-mine"><a href="' . $base . 'admin/pages">' . i18n('Pages') . '</a></li>';
echo '<li class="tb-draft"><a href="' . $base . 'admin/scheduled">' . i18n('Scheduled') . '</a></li>';
echo '<li class="tb-draft"><a href="' . $base . 'admin/draft">' . i18n('Draft') . '</a></li>';
if ($role === 'admin') {
echo '<li class="tb-categories"><a href="' . $base . 'admin/categories">' . i18n('Categories') . '</a></li>';
@ -3032,7 +3148,7 @@ function get_content_tag($tag, $string, $alt = null)
// Strip html comment
function remove_html_comments($content)
{
$patterns = array('/(\s|)<!--t(.*)t-->(\s|)/', '/(\s|)<!--d(.*)d-->(\s|)/', '/(\s|)<!--tag(.*)tag-->(\s|)/', '/(\s|)<!--image(.*)image-->(\s|)/', '/(\s|)<!--video(.*)video-->(\s|)/', '/(\s|)<!--audio(.*)audio-->(\s|)/', '/(\s|)<!--link(.*)link-->(\s|)/', '/(\s|)<!--quote(.*)quote-->(\s|)/');
$patterns = array('/(\s|)<!--t(.*)t-->(\s|)/', '/(\s|)<!--d(.*)d-->(\s|)/', '/(\s|)<!--tag(.*)tag-->(\s|)/', '/(\s|)<!--image(.*)image-->(\s|)/', '/(\s|)<!--video(.*)video-->(\s|)/', '/(\s|)<!--audio(.*)audio-->(\s|)/', '/(\s|)<!--link(.*)link-->(\s|)/', '/(\s|)<!--quote(.*)quote-->(\s|)/', '/(\s|)<!--post(.*)post-->(\s|)/');
return preg_replace($patterns, '', $content);
}
@ -3225,11 +3341,11 @@ function replace_href($string, $tag, $class, $url)
if ($_tag->getAttribute('class') == $class) {
// If match class get the href value
$old = $_tag->getAttribute('href');
$new = $_tag->setAttribute('href', $url . utf8_decode($old));
$new = $_tag->setAttribute('href', $url . mb_convert_encoding($old, 'UTF-8'));
}
}
return preg_replace('~<(?:!DOCTYPE|/?(?:html|head|body))[^>]*>\s*~i', '', utf8_decode($doc->saveHTML($doc->documentElement)));
return preg_replace('~<(?:!DOCTYPE|/?(?:html|head|body))[^>]*>\s*~i', '', mb_convert_encoding($doc->saveHTML($doc->documentElement), 'UTF-8'));
}
@ -3251,17 +3367,19 @@ function get_language()
}
function format_date($date)
function format_date($date, $dateFormat = null)
{
$date_format = config('date.format');
if (!isset($date_format) || empty($date_format)) {
return strftime('%e %B %Y', $date);
if (empty($dateFormat)) {
$dateFormat = config('date.format');
}
if (extension_loaded('intl')) {
$format_map = array('s' => 'ss', 'i' => 'mm', 'H' => 'HH','d' => 'dd', 'm' => 'MM', 'M' => 'MMM', 'F' => 'MMMM', 'Y' => 'yyyy');
$intlFormat = strtr($dateFormat, $format_map);
$formatter = new IntlDateFormatter(config('language'), IntlDateFormatter::NONE, IntlDateFormatter::NONE, config('timezone'), IntlDateFormatter::GREGORIAN, $intlFormat);
return $formatter->format($date);
} else {
return strftime($date_format, $date);
return date($dateFormat, $date);
}
}
function valueMaker($value)
@ -3278,3 +3396,23 @@ function valueMaker($value)
return "0";
return (string)$value;
}
function publish_scheduled()
{
$posts = get_scheduled_posts();
if (!empty($posts)) {
foreach ($posts as $index => $v) {
$str = explode('_', $v['basename']);
$old = $v['dirname'] . '/' . $v['basename'];
$new = dirname($v['dirname']) . '/' . $v['basename'];
$t = str_replace('-', '', $str[0]);
$time = new DateTime($t);
$timestamp = $time->format("Y m d H:i:s");
if (date('Y m d H:i:s') >= $timestamp) {
rename($old, $new);
rebuilt_cache('all');
clear_cache();
}
}
}
}

+ 1
- 1
system/vendor/kanti/hub-updater/src/CacheOneFile.php View File

@ -1,7 +1,7 @@
<?php
namespace Kanti;
#[\AllowDynamicProperties]
class CacheOneFile
{
protected $fileName = "";


+ 1
- 1
system/vendor/kanti/hub-updater/src/HubUpdater.php View File

@ -1,7 +1,7 @@
<?php
namespace Kanti;
#[\AllowDynamicProperties]
class HubUpdater
{
protected $options = array(


+ 1
- 1
system/vendor/michelf/php-markdown/Michelf/MarkdownExtra.php View File

@ -1898,7 +1898,7 @@ class MarkdownExtra extends \Michelf\Markdown {
# in: text ~~deleted~~ from doc
# out: text <del>deleted</del> from doc
#
$parts = preg_split('/(?<![~])(~~)(?![~])/', $text, null, PREG_SPLIT_DELIM_CAPTURE);
$parts = preg_split('/(?<![~])(~~)(?![~])/', $text, -1, PREG_SPLIT_DELIM_CAPTURE);
//don't bother if nothing to do...
if(count($parts) <= 1)


Loading…
Cancel
Save