Yet Another Related Posts Plugin (YARPP) - Version 2.1.4

Version Description

Download this release

Release Info

Developer mitchoyoshitaka
Plugin Icon 128x128 Yet Another Related Posts Plugin (YARPP)
Version 2.1.4
Comparing to
See all releases

Code changes from version 2.1.3 to 2.1.4

includes.php CHANGED
@@ -2,6 +2,7 @@
2
 
3
  require_once('magic.php');
4
  require_once('keywords.php');
 
5
 
6
  // here's a list of all the options YARPP uses (except version), as well as their default values, sans the yarpp_ prefix, split up into binary options and value options. These arrays are used in updating settings (options.php) and other tasks.
7
  $yarpp_value_options = array('threshold' => 5,
@@ -84,8 +85,8 @@ function yarpp_activate() {
84
  return 0;
85
  }
86
  }
87
- add_option('yarpp_version','2.13');
88
- update_option('yarpp_version','2.13');
89
  return 1;
90
  }
91
 
@@ -138,8 +139,8 @@ function yarpp_upgrade_check($inuse = false) {
138
  $wpdb->query("ALTER TABLE $wpdb->posts ADD FULLTEXT `yarpp_content` ( `post_content`)"); update_option('yarpp_version','2.03');
139
  }
140
 
141
- if (get_option('yarpp_version') < 2.13) {
142
- update_option('yarpp_version','2.13');
143
  }
144
 
145
  // just in case, try to add the index one more time.
2
 
3
  require_once('magic.php');
4
  require_once('keywords.php');
5
+ require_once('intl.php');
6
 
7
  // here's a list of all the options YARPP uses (except version), as well as their default values, sans the yarpp_ prefix, split up into binary options and value options. These arrays are used in updating settings (options.php) and other tasks.
8
  $yarpp_value_options = array('threshold' => 5,
85
  return 0;
86
  }
87
  }
88
+ add_option('yarpp_version','2.14');
89
+ update_option('yarpp_version','2.14');
90
  return 1;
91
  }
92
 
139
  $wpdb->query("ALTER TABLE $wpdb->posts ADD FULLTEXT `yarpp_content` ( `post_content`)"); update_option('yarpp_version','2.03');
140
  }
141
 
142
+ if (get_option('yarpp_version') < 2.14) {
143
+ update_option('yarpp_version','2.14');
144
  }
145
 
146
  // just in case, try to add the index one more time.
intl.php ADDED
@@ -0,0 +1,45 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ include('lang/words-'.word_file_lang().'.php');
4
+
5
+ function word_file_lang() {
6
+ if (!defined('WPLANG'))
7
+ return 'en_US';
8
+ switch (true) {
9
+ case preg_match("/^de/i",WPLANG):
10
+ return 'de_DE';
11
+ default:
12
+ return 'en_US';
13
+ }
14
+ }
15
+
16
+ function paypal_directory() {
17
+ if (!defined('WPLANG'))
18
+ return 'en_US/';
19
+ switch (true) {
20
+ case preg_match("/^fr/i",WPLANG):
21
+ return 'fr_FR/';
22
+ case preg_match("/^de/i",WPLANG):
23
+ return 'de_DE/';
24
+ case preg_match("/^it/i",WPLANG):
25
+ return 'it_IT/';
26
+ case preg_match("/^ja/i",WPLANG):
27
+ return 'ja_JP/';
28
+ case preg_match("/^es/i",WPLANG):
29
+ return 'es_XC/';
30
+ case preg_match("/^nl/i",WPLANG):
31
+ return 'nl_NL/';
32
+ case preg_match("/^pl/i",WPLANG):
33
+ return 'pl_PL/';
34
+ case preg_match("/^zh_CN/i",WPLANG):
35
+ return 'zh_XC/';
36
+ case preg_match("/^zh_HK/i",WPLANG):
37
+ return 'zh_HK/';
38
+ case preg_match("/^zh_TW/i",WPLANG):
39
+ return 'zh_HK/';
40
+ default:
41
+ return 'en_US/';
42
+ }
43
+ }
44
+
45
+ ?>
keywords.php CHANGED
@@ -1,7 +1,5 @@
1
  <?php
2
 
3
- $overusedwords = array( '', 'a', 'an', 'the', 'and', 'of', 'i', 'to', 'is', 'in', 'with', 'for', 'as', 'that', 'on', 'at', 'this', 'my', 'was', 'our', 'it', 'you', 'we', '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '10', 'about', 'after', 'all', 'almost', 'along', 'also', 'amp', 'another', 'any', 'are', 'area', 'around', 'available', 'back', 'be', 'because', 'been', 'being', 'best', 'better', 'big', 'bit', 'both', 'but', 'by', 'c', 'came', 'can', 'capable', 'control', 'could', 'course', 'd', 'dan', 'day', 'decided', 'did', 'didn', 'different', 'div', 'do', 'doesn', 'don', 'down', 'drive', 'e', 'each', 'easily', 'easy', 'edition', 'end', 'enough', 'even', 'every', 'example', 'few', 'find', 'first', 'found', 'from', 'get', 'go', 'going', 'good', 'got', 'gt', 'had', 'hard', 'has', 'have', 'he', 'her', 'here', 'how', 'if', 'into', 'isn', 'just', 'know', 'last', 'left', 'li', 'like', 'little', 'll', 'long', 'look', 'lot', 'lt', 'm', 'made', 'make', 'many', 'mb', 'me', 'menu', 'might', 'mm', 'more', 'most', 'much', 'name', 'nbsp', 'need', 'new', 'no', 'not', 'now', 'number', 'off', 'old', 'one', 'only', 'or', 'original', 'other', 'out', 'over', 'part', 'place', 'point', 'pretty', 'probably', 'problem', 'put', 'quite', 'quot', 'r', 're', 'really', 'results', 'right', 's', 'same', 'saw', 'see', 'set', 'several', 'she', 'sherree', 'should', 'since', 'size', 'small', 'so', 'some', 'something', 'special', 'still', 'stuff', 'such', 'sure', 'system', 't', 'take', 'than', 'their', 'them', 'then', 'there', 'these', 'they', 'thing', 'things', 'think', 'those', 'though', 'through', 'time', 'today', 'together', 'too', 'took', 'two', 'up', 'us', 'use', 'used', 'using', 've', 'very', 'want', 'way', 'well', 'went', 'were', 'what', 'when', 'where', 'which', 'while', 'white', 'who', 'will', 'would', 'your');
4
-
5
  function yarpp_extract_keywords($source,$num_to_ret = 20) {
6
  global $post, $overusedwords;
7
 
@@ -9,7 +7,7 @@ function yarpp_extract_keywords($source,$num_to_ret = 20) {
9
  mb_regex_encoding(get_option('blog_charset'));
10
  $wordlist = mb_split('\s*\W+\s*', mb_strtolower($source));
11
  } else
12
- $wordlist = split('\s*\W+\s*', strtolower($source));
13
 
14
  // Build an array of the unique words and number of times they occur.
15
  $a = array_count_values($wordlist);
@@ -27,14 +25,42 @@ function yarpp_extract_keywords($source,$num_to_ret = 20) {
27
  return implode(' ', array_keys($outwords));
28
  }
29
 
30
- function post_title_keywords($num_to_ret = 20) {
31
  global $post;
32
- return yarpp_extract_keywords($post->post_title);
33
  }
34
 
35
- function post_body_keywords($num_to_ret = 20) {
36
  global $post;
37
- return yarpp_extract_keywords($post->post_content);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
38
  }
39
 
40
  ?>
1
  <?php
2
 
 
 
3
  function yarpp_extract_keywords($source,$num_to_ret = 20) {
4
  global $post, $overusedwords;
5
 
7
  mb_regex_encoding(get_option('blog_charset'));
8
  $wordlist = mb_split('\s*\W+\s*', mb_strtolower($source));
9
  } else
10
+ $wordlist = preg_split('%\s*\W+\s*%', strtolower($source));
11
 
12
  // Build an array of the unique words and number of times they occur.
13
  $a = array_count_values($wordlist);
25
  return implode(' ', array_keys($outwords));
26
  }
27
 
28
+ function post_title_keywords($max = 20) {
29
  global $post;
30
+ return yarpp_extract_keywords($post->post_title,$max);
31
  }
32
 
33
+ function post_body_keywords($max = 20) {
34
  global $post;
35
+ $content = strip_tags(apply_filters_if_white('the_content',$post->post_content));
36
+ return yarpp_extract_keywords($content,$max);
37
+ }
38
+
39
+ /* yarpp_cache_keywords is EXPERIMENTAL and not used.
40
+ * Don't worry about it. ^^
41
+ */
42
+ function yarpp_cache_keywords() {
43
+ global $wpdb, $post, $yarpp_debug;
44
+ $body_terms = post_body_keywords();
45
+ $title_terms = post_title_keywords();
46
+ /*
47
+ CREATE TABLE `wp_yarpp_keyword_cache` (
48
+ `ID` BIGINT( 20 ) UNSIGNED NOT NULL ,
49
+ `body` TEXT NOT NULL ,
50
+ `title` TEXT NOT NULL ,
51
+ `date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ,
52
+ PRIMARY KEY ( `ID` )
53
+ ) ENGINE = MYISAM COMMENT = 'YARPP\'s keyword cache table'
54
+ */
55
+ $timeout = 400;
56
+
57
+ if (!$wpdb->get_var("select count(*) as count from wp_yarpp_keyword_cache where ID = $post->ID and date > date_sub(now(),interval $timeout minute)")) {
58
+ $wpdb->query('set names utf8');
59
+
60
+ $wpdb->query("insert into wp_yarpp_keyword_cache (ID,body,title) values ($post->ID,'$body_terms','$title_terms') on duplicate key update body = '$body_terms', title = '$title_terms'");
61
+
62
+ if ($yarpp_debug) echo "<!--"."insert into wp_yarpp_keyword_cache (ID,body,title) values ($post->ID,'$body_terms','$title_terms') on duplicate key update body = '$body_terms', title = '$title_terms'"."-->";
63
+ }
64
  }
65
 
66
  ?>
lang/words-de_DE.php ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ <?php
2
+
3
+ $overusedwords = array('1','2','3','4','5','6','7','8','9','0', '10','der','die','und','in','den','von','zu','das','mit','sich','des','auf','f�r','ist','im','dem','nicht','ein','eine','als','auch','es','an','werden','aus','er','hat','da�','dass','sie','nach','wird','bei','einer','um','am','sind','noch','wie','einem','�ber','einen','so','zum','war','haben','nur','oder','aber','vor','zur','bis','mehr','durch','man','sein','wurde','sei','in','Prozent','hatte','kann','gegen','vom','k�nnen','schon','wenn','habe','seine','ihre','dann','unter','wir','soll','ich','eines','Jahr','zwei','Jahren','diese','dieser','wieder','keine','Uhr','seiner','worden','will','zwischen','immer','Millionen','was','sagte','gibt','alle','diesem','seit','mu�','muss','wurden','beim','doch','jetzt','waren','drei','Jahre','neue','neuen','damit','bereits','da','ihr','seinen','m�ssen','ab','ihrer','ohne','sondern','selbst','ersten','nun','etwa');
4
+
5
+ ?>
lang/words-en_US.php ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ <?php
2
+
3
+ $overusedwords = array( '', 'a', 'an', 'the', 'and', 'of', 'i', 'to', 'is', 'in', 'with', 'for', 'as', 'that', 'on', 'at', 'this', 'my', 'was', 'our', 'it', 'you', 'we', '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '10', 'about', 'after', 'all', 'almost', 'along', 'also', 'amp', 'another', 'any', 'are', 'area', 'around', 'available', 'back', 'be', 'because', 'been', 'being', 'best', 'better', 'big', 'bit', 'both', 'but', 'by', 'c', 'came', 'can', 'capable', 'control', 'could', 'course', 'd', 'dan', 'day', 'decided', 'did', 'didn', 'different', 'div', 'do', 'doesn', 'don', 'down', 'drive', 'e', 'each', 'easily', 'easy', 'edition', 'end', 'enough', 'even', 'every', 'example', 'few', 'find', 'first', 'found', 'from', 'get', 'go', 'going', 'good', 'got', 'gt', 'had', 'hard', 'has', 'have', 'he', 'her', 'here', 'how', 'if', 'into', 'isn', 'just', 'know', 'last', 'left', 'li', 'like', 'little', 'll', 'long', 'look', 'lot', 'lt', 'm', 'made', 'make', 'many', 'mb', 'me', 'menu', 'might', 'mm', 'more', 'most', 'much', 'name', 'nbsp', 'need', 'new', 'no', 'not', 'now', 'number', 'off', 'old', 'one', 'only', 'or', 'original', 'other', 'out', 'over', 'part', 'place', 'point', 'pretty', 'probably', 'problem', 'put', 'quite', 'quot', 'r', 're', 'really', 'results', 'right', 's', 'same', 'saw', 'see', 'set', 'several', 'she', 'sherree', 'should', 'since', 'size', 'small', 'so', 'some', 'something', 'special', 'still', 'stuff', 'such', 'sure', 'system', 't', 'take', 'than', 'their', 'them', 'then', 'there', 'these', 'they', 'thing', 'things', 'think', 'those', 'though', 'through', 'time', 'today', 'together', 'too', 'took', 'two', 'up', 'us', 'use', 'used', 'using', 've', 'very', 'want', 'way', 'well', 'went', 'were', 'what', 'when', 'where', 'which', 'while', 'white', 'who', 'will', 'would', 'your');
4
+
5
+ ?>
lang/yarpp-de_DE.mo ADDED
Binary file
lang/yarpp-de_DE.po ADDED
@@ -0,0 +1,404 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: YARPP_DE\n"
4
+ "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2008-11-17 14:23+0100\n"
6
+ "PO-Revision-Date: \n"
7
+ "Last-Translator: Michael Kalina <m.kalina@3th.be>\n"
8
+ "Language-Team: Michael Kalina <m.kalina@3th.be>\n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "X-Poedit-Language: German\n"
13
+ "X-Poedit-Country: GERMANY\n"
14
+ "X-Poedit-SourceCharset: utf-8\n"
15
+ "X-Poedit-KeywordsList: _e;__\n"
16
+ "X-Poedit-Basepath: .\n"
17
+ "X-Poedit-SearchPath-0: .\n"
18
+ ": "
19
+
20
+ #: includes.php:75
21
+ msgid "MySQL error on adding yarpp_title"
22
+ msgstr "MySQL-Fehler beim Hinzufügen von \"yarpp_title\""
23
+
24
+ #: includes.php:80
25
+ msgid "MySQL error on adding yarpp_content"
26
+ msgstr "MySQL-Fehler beim Hinzufügen von \"yarpp_content\""
27
+
28
+ #: includes.php:134
29
+ msgid "<h3>An important message from YARPP:</h3><p>Thank you for upgrading to YARPP 2. YARPP 2.0 adds the much requested ability to limit related entry results by certain tags or categories. 2.0 also brings more fine tuned control of the magic algorithm, letting you specify how the algorithm should consider or not consider entry content, titles, tags, and categories. Make sure to adjust the new settings to your liking and perhaps readjust your threshold.</p><p>For more information, check out the <a href=\"http://mitcho.com/code/yarpp/\">YARPP documentation</a>. (This message will not be displayed again.)</p>"
30
+ msgstr "<h3>Nachricht von YARPP</h3><p>Danke fürs Upgrade auf YARPP 2. Diese Version bringt Verbesserungen im magischen Algorithmus, lässt Sie Einstellungen in der Gewichtung der verschiedenen Stichwörter oder Kategorien vornehmen, berücksichtigt Einstellungen zum Gebrauch bestimmter Ausschlussregeln und lässt Sie bestimmen, wie stark die Variablen \"Inhalt\", \"Überschrift\", \"Stichwörter\" und \"Kategorien\" berücksichtigt werden. Mehr Informationen gibt es in der <a href=\"http://mitcho.com/code/yarpp/\">YARPP Dokumentation</a>.</p><p>Diese Nachricht erscheint nie wieder!</p>"
31
+
32
+ #: includes.php:155
33
+ #: includes.php:155
34
+ msgid "Related Posts (YARPP)"
35
+ msgstr "Related Posts (YARPP)"
36
+
37
+ #: includes.php:174
38
+ msgid "Related Posts"
39
+ msgstr "Ähnliche Beiträge"
40
+
41
+ #: includes.php:179
42
+ msgid "YARPP"
43
+ msgstr "YARPP"
44
+
45
+ #: magic.php:211
46
+ #: magic-beta.php:220
47
+ #, php-format
48
+ msgid "%f is the YARPP match score between the current entry and this related entry. You are seeing this value because you are logged in to WordPress as an administrator. It is not shown to regular visitors."
49
+ msgstr "%f ist die von YARPP ermittelte Übereinstimmung zwischen diesem und dem ähnlichen Artikel (Relevanz-Wert). Sie sehen diesen Wert, weil Sie als WordPress-Administrator eingeloggt sind. Normale Besucher sehen ihn nicht."
50
+
51
+ #: options.php:307
52
+ #: options.php:350
53
+ #: options.php:369
54
+ #: options.php:413
55
+ #: magic.php:220
56
+ #: magic-beta.php:229
57
+ msgid "Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>."
58
+ msgstr "Ähnliche Artikel bereitgestellt von <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>."
59
+
60
+ #: options.php:8
61
+ msgid "The MyISAM check has been overridden. You may now use the \"consider titles\" and \"consider bodies\" relatedness criteria."
62
+ msgstr "Der MyISAM-Check wurde außer Kraft gesetzt. Sie können nun \"consider titles\" und \"consider bodies\" als Kriterium für die Relevanz verwenden."
63
+
64
+ #: options.php:17
65
+ #, php-format
66
+ msgid "YARPP's \"consider titles\" and \"consider bodies\" relatedness criteria require your <code>%s</code> table to use the <a href='http://dev.mysql.com/doc/refman/5.0/en/storage-engines.html'>MyISAM storage engine</a>, but the table seems to be using the <code>%s</code> engine. These two options have been disabled."
67
+ msgstr "YARPPs \"consider titles\" und \"consider bodies\" Kriterien zur Relevanz verlangen, dass Ihre <code>%s</code> Tabelle die <a href='http://dev.mysql.com/doc/refman/5.0/en/storage-engines.html'>MyISAM Storage Engine</a> verwendet, die Tabelle scheint aber die <code>%s</code>-Engine zu verwenden. Die zwei Einstellungen wurden deaktiviert."
68
+
69
+ #: options.php:19
70
+ #, php-format
71
+ msgid "To restore these features, please update your <code>%s</code> table by executing the following SQL directive: <code>ALTER TABLE `%s` ENGINE = MyISAM;</code> . No data will be erased by altering the table's engine, although there are performance implications."
72
+ msgstr "Um dieses Feature wiederherzustellen, führen Sie den Code <code>%s</code> mit dem SQL-Befehl aus: <code>ALTER TABLE `%s` ENGINE = MyISAM;</code>."
73
+
74
+ #: options.php:21
75
+ #, php-format
76
+ msgid "If, despite this check, you are sure that <code>%s</code> is using the MyISAM engine, press this magic button:"
77
+ msgstr "Wenn Sie, selbst nach diesem Check, sicher sind, dass <code>%s</code> die MyISAM-Engine benutzt, klicken Sie den magischen Button:"
78
+
79
+ #: options.php:24
80
+ msgid "Trust me. Let me use MyISAM features."
81
+ msgstr "Glauben Sie mir. Lassen Sie mich MyISAM-Features nutzen."
82
+
83
+ #: options.php:47
84
+ msgid "The YARPP database had an error but has been fixed."
85
+ msgstr "Die YARPP-Datenbank hatte einen Fehler, der allerdings behoben werden konnte."
86
+
87
+ #: options.php:49
88
+ msgid "The YARPP database has an error which could not be fixed."
89
+ msgstr "Die YARPP-Datenbank hat einen Fehler, der nicht behoben werden kann."
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+ #: options.php:121
99
+ #: options.php:138
100
+ #: options.php:150
101
+ msgid "do not consider"
102
+ msgstr "nicht berücksichtigen"
103
+
104
+ #: options.php:122
105
+ #: options.php:139
106
+ #: options.php:152
107
+ msgid "consider"
108
+ msgstr "berücksichtigen"
109
+
110
+ #: options.php:140
111
+ msgid "consider with extra weight"
112
+ msgstr "besonders berücksichtigen"
113
+
114
+ #: options.php:168
115
+ msgid "Yet Another Related Posts Plugin version history (RSS 2.0)"
116
+ msgstr "YARPP-Versionsverlauf (RSS 2.0)"
117
+
118
+ #: options.php:183
119
+ #: options.php:183
120
+ msgid "Donate to mitcho (Michael Yoshitaka Erlewine) for this plugin via PayPal"
121
+ msgstr "An mitcho (Michael Yoshitaka Erlewine) für die Entwicklung des Plugins via PayPal spenden"
122
+
123
+ #: options.php:186
124
+ msgid "Yet Another Related Posts Plugin Options"
125
+ msgstr "YARPP Einstellungen"
126
+
127
+ #: options.php:202
128
+ #, php-format
129
+ msgid "by <a href=\"http://mitcho.com/code/\">mitcho (Michael 芳貴 Erlewine)</a> and based on the fabulous work of <a href=\"http://peter.mapledesign.co.uk/weblog/archives/wordpress-related-posts-plugin\">Peter Bower</a>, <a href=\"http://wasabi.pbwiki.com/Related%20Entries\">Alexander Malov &amp; Mike Lu</a>."
130
+ msgstr "Das Team: <a href=\"http://mitcho.com/code/\">mitcho (Michael 芳貴 Erlewine)</a> (Programmierung), <a href=\"http://3th.be/\">Michael Kalina</a> (Deutsche Übersetzung)."
131
+
132
+ #: options.php:206
133
+ msgid "\"The Pool\""
134
+ msgstr "\"Pool\""
135
+
136
+ #: options.php:207
137
+ msgid "\"The Pool\" refers to the pool of posts and pages that are candidates for display as related to the current entry."
138
+ msgstr "Das Plugin berücksichtigt alle Artikel und Seiten, die in diesem \"Pool\" angeführt (oder nicht ausgeschlossen) sind."
139
+
140
+ #: options.php:212
141
+ msgid "Disallow by category:"
142
+ msgstr "Kategorien ausschließen:"
143
+
144
+ #: options.php:221
145
+ msgid "Disallow by tag:"
146
+ msgstr "Tags ausschließen:"
147
+
148
+ #: options.php:230
149
+ msgid "Show password protected posts?"
150
+ msgstr "Durch ein Passwort gesicherte Artikel anzeigen?"
151
+
152
+ #: options.php:231
153
+ msgid "Show only previous posts?"
154
+ msgstr "Nur in der Vergangenheit liegende Artikel berücksichtigen?"
155
+
156
+ #: options.php:236
157
+ msgid "\"Relatedness\" options"
158
+ msgstr "Ähnlichkeitseinstellungen"
159
+
160
+ #: options.php:237
161
+ #, php-format
162
+ msgid "YARPP is different than the <a href=\"http://wasabi.pbwiki.com/Related%20Entries\">previous plugins it is based on</a> as it limits the related posts list by (1) a maximum number and (2) a <em>match threshold</em>."
163
+ msgstr "YARPP funktioniert ein wenig anders als <a href=\"http://wasabi.pbwiki.com/Related%20Entries\">andere Plugins mit ähnlicher Funktionalität</a>: YARPP berücksichtigt nicht nur die von Ihnen angegebene maximale Anzahl von Beiträgen, sondern auch den Wert \"Relevanz\"."
164
+
165
+ #: options.php:237
166
+ #: options.php:251
167
+ #: options.php:309
168
+ #: options.php:347
169
+ #: options.php:349
170
+ #: options.php:371
171
+ #: options.php:372
172
+ #: options.php:412
173
+ msgid "more&gt;"
174
+ msgstr "?"
175
+
176
+ #: options.php:237
177
+ msgid "The higher the match threshold, the more restrictive, and you get less related posts overall. The default match threshold is 5. If you want to find an appropriate match threshhold, I recommend you turn on the \"show admins the match scores\" setting below. That way, you can see what kinds of related posts are being picked up and with what kind of match scores, and determine an appropriate threshold for your site."
178
+ msgstr "Je höher Sie den Wert \"Relevanz\" setzen, desto restriktiver arbeitet YARPP. Der Standardwert liegt bei 5. Wenn gar keine oder zuwenige Artikel angezeigt werden, setzen Sie ihn auf 3.5 oder gar 1 herunter. Für die Feinabstimmung aktivieren Sie die Option \"Administratoren den Wert der Relevanz anzeigen\" und stimmen den Wert auf Ihre Anforderungen ab."
179
+
180
+ #: options.php:242
181
+ msgid "Match threshold:"
182
+ msgstr "Relevanz:"
183
+
184
+ #: options.php:243
185
+ msgid "Titles: "
186
+ msgstr "Überschriften:"
187
+
188
+ #: options.php:245
189
+ msgid "Bodies: "
190
+ msgstr "Textkörper:"
191
+
192
+ #: options.php:247
193
+ msgid "Tags: "
194
+ msgstr "Tags:"
195
+
196
+ #: options.php:249
197
+ msgid "Categories: "
198
+ msgstr "Kategorien:"
199
+
200
+ #: options.php:251
201
+ msgid "Cross-relate posts and pages?"
202
+ msgstr "Artikel und Seiten gemeinsam ausgeben?"
203
+
204
+ #: options.php:251
205
+ msgid "When the \"Cross-relate posts and pages\" option is selected, the <code>related_posts()</code>, <code>related_pages()</code>, and <code>related_entries()</code> all will give the same output, returning both related pages and posts."
206
+ msgstr "Ist die Option \"Artikel und Seiten gemeinsam ausgeben\" aktiviert, geben die Funktionen <code>related_posts()</code>, <code>related_pages()</code>, und <code>related_entries()</code> daselbe aus: In den ähnlichen Beiträgen tauchen sowohl Artikel als auch Seiten auf!"
207
+
208
+ #: options.php:293
209
+ msgid "Display options <small>for your website</small>"
210
+ msgstr "Darstellung <small>(Website)</small>"
211
+
212
+ #: options.php:302
213
+ msgid "PERMALINK"
214
+ msgstr "PERMALINK"
215
+
216
+ #: options.php:302
217
+ #: options.php:364
218
+ #: options.php:364
219
+ msgid "RELATED TITLE"
220
+ msgstr "ÄHNLICHER TITEL"
221
+
222
+ #: options.php:309
223
+ msgid "Automatically display related posts?"
224
+ msgstr "Ähnliche Beiträge automatisch anzeigen?"
225
+
226
+ #: options.php:309
227
+ msgid "This option automatically displays related posts right after the content on single entry pages. If this option is off, you will need to manually insert <code>related_posts()</code> or variants (<code>related_pages()</code> and <code>related_entries()</code>) into your theme files."
228
+ msgstr "Wenn aktiviert, hängt YARPP die Ausgabe ähnlicher Beiträge einfach an den aktuellen Artikel an. Ist sie deaktiviert, müssen Sie sich um die Darstellung im Template mit den Funktionn <code>related_posts()</code> oder Varianten (<code>related_pages()</code> oder <code>related_entries()</code>) selbst kümmern."
229
+
230
+ #: options.php:310
231
+ msgid "Website display code example"
232
+ msgstr "Quellcode-Beispiel für die Website-Anzeige"
233
+
234
+ #: options.php:310
235
+ #: options.php:373
236
+ msgid "(Update options to reload.)"
237
+ msgstr "Um Ihre Einstellungen hier zu sehen, müssen Sie die Einstellungen vorher sichern!"
238
+
239
+ #: options.php:312
240
+ #: options.php:375
241
+ msgid "Maximum number of related posts:"
242
+ msgstr "Maximale Anzahl von Beiträgen:"
243
+
244
+ #: options.php:314
245
+ msgid "Before / after related entries:"
246
+ msgstr "Quellcode vor/nach den ähnlichen Beiträgen:"
247
+
248
+ #: options.php:315
249
+ #: options.php:320
250
+ #: options.php:329
251
+ #: options.php:379
252
+ #: options.php:384
253
+ #: options.php:393
254
+ msgid "For example:"
255
+ msgstr "Bsp.:"
256
+
257
+ #: options.php:319
258
+ #: options.php:383
259
+ msgid "Before / after each related entry:"
260
+ msgstr "Quellcode vor/nach den jeweiligen Beiträgen:"
261
+
262
+ #: options.php:323
263
+ #: options.php:387
264
+ msgid "Show excerpt?"
265
+ msgstr "Exzerpt anzeigen?"
266
+
267
+ #: options.php:324
268
+ #: options.php:388
269
+ msgid "Excerpt length (No. of words):"
270
+ msgstr "Länge des Exzerpts (Anzahl der Wörter):"
271
+
272
+ #: options.php:328
273
+ msgid "Before / after (Excerpt):"
274
+ msgstr "Quellcode vor/nach den jeweiligen Exzerpten:"
275
+
276
+ #: options.php:334
277
+ #: options.php:398
278
+ msgid "Order results:"
279
+ msgstr "Anzeigereihenfolge:"
280
+
281
+ #: options.php:336
282
+ #: options.php:400
283
+ msgid "score (high relevance to low)"
284
+ msgstr "Relevanz (höchste nach niedrigste)"
285
+
286
+ #: options.php:337
287
+ #: options.php:401
288
+ msgid "score (low relevance to high)"
289
+ msgstr "Relevanz (niedrigste nach höchste)"
290
+
291
+ #: options.php:338
292
+ #: options.php:402
293
+ msgid "date (new to old)"
294
+ msgstr "Zeitstempel (aktuell nach alt)"
295
+
296
+ #: options.php:339
297
+ #: options.php:403
298
+ msgid "date (old to new)"
299
+ msgstr "Zeitstempel (alt nach aktuell)"
300
+
301
+ #: options.php:340
302
+ #: options.php:404
303
+ msgid "title (alphabetical)"
304
+ msgstr "Überschrift (A-Z)"
305
+
306
+ #: options.php:341
307
+ #: options.php:405
308
+ msgid "title (reverse alphabetical)"
309
+ msgstr "Überschrift (Z-A)"
310
+
311
+ #: options.php:346
312
+ #: options.php:410
313
+ msgid "Default display if no results:"
314
+ msgstr "Quellcode bei 0 relevanten Artikeln:"
315
+
316
+ #: options.php:347
317
+ msgid "Show admins (user level > 8) the match scores?"
318
+ msgstr "Administratoren (User Level > 8) den Wert der Relevanz anzeigen?"
319
+
320
+ #: options.php:347
321
+ msgid "With this option on, each related entry's total 'match score' (all above the threshold, set above) are displayed after each entry title, <em>if you are an administrator and logged in.</em> Even if you see these values, your visitors will not."
322
+ msgstr "Wenn aktiviert, sehen nur eingeloggte Administratoren (nicht die Besucher!) neben jeder Beitragsüberschrift den Übereinstimmungswert."
323
+
324
+ #: options.php:348
325
+ #: options.php:412
326
+ msgid "Help promote Yet Another Related Posts Plugin?"
327
+ msgstr "YARPP dezent bewerben?"
328
+
329
+ #: options.php:350
330
+ #: options.php:413
331
+ #, php-format
332
+ msgid "This option will add the code %s. Try turning it on, updating your options, and see the code in the code example to the right. These links and donations are greatly appreciated."
333
+ msgstr "Wenn aktiviert, steht eine kurzer Hinweis zu Autor und Plugin unter den Ergebnissen der ähnlichen Beiträge. Der Code %s wird hinzugefügt."
334
+
335
+ #: options.php:355
336
+ msgid "Display options <small>for RSS</small>"
337
+ msgstr "Darstellung <small>(RSS)</small>"
338
+
339
+ #: options.php:371
340
+ msgid "Display related posts in feeds?"
341
+ msgstr "Ähnliche Beiträge in Newsfeeds anzeigen?"
342
+
343
+ #: options.php:371
344
+ msgid "This option displays related posts at the end of each item in your RSS and Atom feeds. No template changes are needed."
345
+ msgstr "Zeigt ähnliche Beiträge in RSS- und Atom-Feeds an."
346
+
347
+ #: options.php:372
348
+ msgid "Display related posts in the descriptions?"
349
+ msgstr "Ähnliche Beiträge in Descriptions anzeigen?"
350
+
351
+ #: options.php:372
352
+ msgid "This option displays the related posts in the RSS description fields, not just the content. If your feeds are set up to only display excerpts, however, only the description field is used, so this option is required for any display at all."
353
+ msgstr "Zeigt die ähnlichen Beiträge auch in den RSS-Descriptions an, nicht nur im Content."
354
+
355
+ #: options.php:373
356
+ msgid "RSS display code example"
357
+ msgstr "RSS-Anzeigebeispiel"
358
+
359
+ #: options.php:378
360
+ msgid "Before / after related entries display:"
361
+ msgstr "Quellcode vor/nach den ähnlichen Beiträgen:"
362
+
363
+ #: options.php:392
364
+ msgid "Before / after (excerpt):"
365
+ msgstr "Quellcode vor/nach dem Exzerpt:"
366
+
367
+ #: options.php:115
368
+ msgid "word"
369
+ msgstr ""
370
+
371
+ #: options.php:116
372
+ msgid "tag"
373
+ msgstr ""
374
+
375
+ #: options.php:117
376
+ msgid "category"
377
+ msgstr ""
378
+
379
+ #: options.php:124
380
+ #: options.php:154
381
+ #, php-format
382
+ msgid "require at least one %s in common"
383
+ msgstr ""
384
+
385
+ #: options.php:126
386
+ #: options.php:156
387
+ #, php-format
388
+ msgid "require more than one %s in common"
389
+ msgstr ""
390
+
391
+ #~ msgid "Options saved!"
392
+ #~ msgstr "Einstellungen gespeichert!"
393
+ #~ msgid "require at least one word in common"
394
+ #~ msgstr "mindestens ein Wort gleich"
395
+ #~ msgid "require at least one tag in common"
396
+ #~ msgstr "mindestens ein Tag gleich"
397
+ #~ msgid "require at least one category in common"
398
+ #~ msgstr "mindestens eine Kategorie gleich"
399
+ #~ msgid "require more than one word in common"
400
+ #~ msgstr "mehrere Wörter gleich"
401
+ #~ msgid "require more than one tag in common"
402
+ #~ msgstr "mehrere Tags gleich"
403
+ #~ msgid "require more than one category in common"
404
+ #~ msgstr "mehrere Kategorien gleich"
lang/yarpp-zh_CN.mo ADDED
Binary file
lang/yarpp-zh_CN.po ADDED
@@ -0,0 +1,380 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: Yet Another Related Posts Plugin v2.1.3\n"
4
+ "PO-Revision-Date: 2008-11-10 08:40-0600\n"
5
+ "Last-Translator: Jor <mail@jorwang.com>\n"
6
+ "MIME-Version: 1.0\n"
7
+ "Content-Type: text/plain; charset=UTF-8\n"
8
+ "Content-Transfer-Encoding: 8bit\n"
9
+ "Plural-Forms: nplurals=2; plural=1;\n"
10
+ "X-Poedit-Language: Chinese\n"
11
+ "X-Poedit-Country: PEOPLE'S REPUBLIC OF CHINA\n"
12
+ "X-Poedit-SourceCharset: utf-8\n"
13
+ "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;__ngettext_noop:1,2;_c\n"
14
+ "X-Poedit-Basepath: \n"
15
+ "X-Poedit-SearchPath-0: ."
16
+
17
+ #: includes.php:75
18
+ msgid "MySQL error on adding yarpp_title"
19
+ msgstr "在添加 yarpp_title 时 MySQL 发生错误"
20
+
21
+ #: includes.php:80
22
+ msgid "MySQL error on adding yarpp_content"
23
+ msgstr "在添加 yarpp_content 时 MySQL 发生错误"
24
+
25
+ #: includes.php:134
26
+ msgid "<h3>An important message from YARPP:</h3><p>Thank you for upgrading to YARPP 2. YARPP 2.0 adds the much requested ability to limit related entry results by certain tags or categories. 2.0 also brings more fine tuned control of the magic algorithm, letting you specify how the algorithm should consider or not consider entry content, titles, tags, and categories. Make sure to adjust the new settings to your liking and perhaps readjust your threshold.</p><p>For more information, check out the <a href=\"http://mitcho.com/code/yarpp/\">YARPP documentation</a>. (This message will not be displayed again.)</p>"
27
+ msgstr "<h3>关于 YARPP 的重要信息:</h3><p>感谢您升级到 YARPP 2. YARPP 2.0 adds the much requested ability to limit related entry results by certain tags or categories. 2.0 also brings more fine tuned control of the magic algorithm, letting you specify how the algorithm should consider or not consider entry content, titles, tags, and categories. Make sure to adjust the new settings to your liking and perhaps readjust your threshold.</p><p>更多信息,请查阅 <a href=\"http://mitcho.com/code/yarpp/\">YARPP 官方手册</a>. (本条信息不会再次出现。)</p>"
28
+
29
+ #: includes.php:155
30
+ #: includes.php:155
31
+ msgid "Related Posts (YARPP)"
32
+ msgstr "关联文章 (YARPP)"
33
+
34
+ #: includes.php:174
35
+ msgid "Related Posts"
36
+ msgstr "Related Posts"
37
+
38
+ #: includes.php:179
39
+ msgid "YARPP"
40
+ msgstr "YARPP"
41
+
42
+ #: magic.php:211
43
+ #: magic-beta.php:220
44
+ #, php-format
45
+ msgid "%f is the YARPP match score between the current entry and this related entry. You are seeing this value because you are logged in to WordPress as an administrator. It is not shown to regular visitors."
46
+ msgstr "YARPP 中的 %f 是指当前文章和关联文章之间的匹配程度。当您以管理员的身份登录时才能查阅,游客等其他权限是不能查阅的。"
47
+
48
+ #: options.php:307
49
+ #: options.php:350
50
+ #: options.php:369
51
+ #: options.php:413
52
+ #: magic.php:220
53
+ #: magic-beta.php:229
54
+ msgid "Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>."
55
+ msgstr "Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>."
56
+
57
+ #: options.php:8
58
+ msgid "The MyISAM check has been overridden. You may now use the \"consider titles\" and \"consider bodies\" relatedness criteria."
59
+ msgstr "The MyISAM check has been overridden. You may now use the \"consider titles\" and \"consider bodies\" relatedness criteria."
60
+
61
+ #: options.php:17
62
+ #, php-format
63
+ msgid "YARPP's \"consider titles\" and \"consider bodies\" relatedness criteria require your <code>%s</code> table to use the <a href='http://dev.mysql.com/doc/refman/5.0/en/storage-engines.html'>MyISAM storage engine</a>, but the table seems to be using the <code>%s</code> engine. These two options have been disabled."
64
+ msgstr "YARPP's \"consider titles\" and \"consider bodies\" relatedness criteria require your <code>%s</code> table to use the <a href='http://dev.mysql.com/doc/refman/5.0/en/storage-engines.html'>MyISAM storage engine</a>, but the table seems to be using the <code>%s</code> engine. These two options have been disabled."
65
+
66
+ #: options.php:19
67
+ #, php-format
68
+ msgid "To restore these features, please update your <code>%s</code> table by executing the following SQL directive: <code>ALTER TABLE `%s` ENGINE = MyISAM;</code> . No data will be erased by altering the table's engine, although there are performance implications."
69
+ msgstr "如果要恢复这些功能,请在您的 <code>%s</code> 表执行下列SQL指令: <code>ALTER TABLE `%s` ENGINE = MyISAM;</code> 。该操作将修改数据库,但不会损坏您的其它设置。"
70
+
71
+ #: options.php:21
72
+ #, php-format
73
+ msgid "If, despite this check, you are sure that <code>%s</code> is using the MyISAM engine, press this magic button:"
74
+ msgstr "同意后 <code>%s</code> 将使用 MyISAM 引擎:"
75
+
76
+ #: options.php:24
77
+ msgid "Trust me. Let me use MyISAM features."
78
+ msgstr "Trust me. Let me use MyISAM features."
79
+
80
+ #: options.php:47
81
+ msgid "The YARPP database had an error but has been fixed."
82
+ msgstr "YARPP 数据库中的错误已被修复。"
83
+
84
+ #: options.php:49
85
+ msgid "The YARPP database has an error which could not be fixed."
86
+ msgstr "YARPP 数据库中出现一个错误,无法修复。"
87
+
88
+ #: options.php:121
89
+ #: options.php:138
90
+ #: options.php:150
91
+ msgid "do not consider"
92
+ msgstr "不参考"
93
+
94
+ #: options.php:122
95
+ #: options.php:139
96
+ #: options.php:152
97
+ msgid "consider"
98
+ msgstr "参考"
99
+
100
+ #: options.php:140
101
+ msgid "consider with extra weight"
102
+ msgstr "作为主要参考指标"
103
+
104
+ #: options.php:168
105
+ msgid "Yet Another Related Posts Plugin version history (RSS 2.0)"
106
+ msgstr "Yet Another Related Posts Plugin 版本历史 (RSS 2.0)"
107
+
108
+ #: options.php:183
109
+ #: options.php:183
110
+ msgid "Donate to mitcho (Michael Yoshitaka Erlewine) for this plugin via PayPal"
111
+ msgstr "通过 PayPal 给插件作者 mitcho (Michael Yoshitaka Erlewine) 捐赠"
112
+
113
+ #: options.php:186
114
+ msgid "Yet Another Related Posts Plugin Options"
115
+ msgstr "Yet Another Related Posts Plugin 设置"
116
+
117
+ #: options.php:202
118
+ #, php-format
119
+ msgid "by <a href=\"http://mitcho.com/code/\">mitcho (Michael 芳貴 Erlewine)</a> and based on the fabulous work of <a href=\"http://peter.mapledesign.co.uk/weblog/archives/wordpress-related-posts-plugin\">Peter Bower</a>, <a href=\"http://wasabi.pbwiki.com/Related%20Entries\">Alexander Malov &amp; Mike Lu</a>."
120
+ msgstr "by <a href=\"http://mitcho.com/code/\">mitcho (Michael 芳貴 Erlewine)</a> and based on the fabulous work of <a href=\"http://peter.mapledesign.co.uk/weblog/archives/wordpress-related-posts-plugin\">Peter Bower</a>, <a href=\"http://wasabi.pbwiki.com/Related%20Entries\">Alexander Malov &amp; Mike Lu</a>. Simplified Chinese translated by <a href=\"http://jorwang.com/\">Jor Wang</a>."
121
+
122
+ #: options.php:206
123
+ msgid "\"The Pool\""
124
+ msgstr "全局设置"
125
+
126
+ #: options.php:207
127
+ msgid "\"The Pool\" refers to the pool of posts and pages that are candidates for display as related to the current entry."
128
+ msgstr "您可以在“全局设置”里排除某特定分类或标签,今后 YARPP 在筛选关联文章时将不列出已排除项目中的文章。"
129
+
130
+ #: options.php:212
131
+ msgid "Disallow by category:"
132
+ msgstr "禁止关联以下分类:"
133
+
134
+ #: options.php:221
135
+ msgid "Disallow by tag:"
136
+ msgstr "禁止关联以下标签:"
137
+
138
+ #: options.php:230
139
+ msgid "Show password protected posts?"
140
+ msgstr "显示加密日志?"
141
+
142
+ #: options.php:231
143
+ msgid "Show only previous posts?"
144
+ msgstr "只显示以前的日志?"
145
+
146
+ #: options.php:236
147
+ msgid "\"Relatedness\" options"
148
+ msgstr "关联设置"
149
+
150
+ #: options.php:237
151
+ #, php-format
152
+ msgid "YARPP is different than the <a href=\"http://wasabi.pbwiki.com/Related%20Entries\">previous plugins it is based on</a> as it limits the related posts list by (1) a maximum number and (2) a <em>match threshold</em>."
153
+ msgstr "关联文章(YARPP)不同于<a href=\"http://wasabi.pbwiki.com/Related%20Entries\">以往的关联文章插件</a>,它有更先进的关联算法。您可以通过设置最大显示条目和匹配值使文章之间的匹配度更为精准。"
154
+
155
+ #: options.php:237
156
+ msgid "The higher the match threshold, the more restrictive, and you get less related posts overall. The default match threshold is 5. If you want to find an appropriate match threshhold, I recommend you turn on the \"show admins the match scores\" setting below. That way, you can see what kinds of related posts are being picked up and with what kind of match scores, and determine an appropriate threshold for your site."
157
+ msgstr "只简单的几步设置,就能精准得到您想要的关联文章。这里默认的匹配值为5 。如果你想找到合适您网站的的匹配值,我建议你打开 ”对管理员(权限>8的用户)显示匹配值” 这个设置,这样可以更容易找到适合您网站的匹配值。"
158
+
159
+ #: options.php:242
160
+ msgid "Match threshold:"
161
+ msgstr "匹配值:"
162
+
163
+ #: options.php:243
164
+ msgid "Titles: "
165
+ msgstr "标题:"
166
+
167
+ #: options.php:245
168
+ msgid "Bodies: "
169
+ msgstr "正文:"
170
+
171
+ #: options.php:247
172
+ msgid "Tags: "
173
+ msgstr "标签:"
174
+
175
+ #: options.php:249
176
+ msgid "Categories: "
177
+ msgstr "分类:"
178
+
179
+ #: options.php:251
180
+ msgid "Cross-relate posts and pages?"
181
+ msgstr "固定页面参与关联?"
182
+
183
+ #: options.php:251
184
+ msgid "When the \"Cross-relate posts and pages\" option is selected, the <code>related_posts()</code>, <code>related_pages()</code>, and <code>related_entries()</code> all will give the same output, returning both related pages and posts."
185
+ msgstr "选中该项后,<code>related_posts()</code>, <code>related_pages()</code>, 和 <code>related_entries()</code> 这些代码的输出结果相同。"
186
+
187
+ #: options.php:293
188
+ msgid "Display options <small>for your website</small>"
189
+ msgstr "显示设置"
190
+
191
+ #: options.php:302
192
+ msgid "PERMALINK"
193
+ msgstr "PERMALINK"
194
+
195
+ #: options.php:302
196
+ #: options.php:364
197
+ #: options.php:364
198
+ msgid "RELATED TITLE"
199
+ msgstr "RELATED TITLE"
200
+
201
+ #: options.php:309
202
+ msgid "Automatically display related posts?"
203
+ msgstr "自动插入关联文章?"
204
+
205
+ #: options.php:309
206
+ msgid "This option automatically displays related posts right after the content on single entry pages. If this option is off, you will need to manually insert <code>related_posts()</code> or variants (<code>related_pages()</code> and <code>related_entries()</code>) into your theme files."
207
+ msgstr "根据右侧的代码示例,自动插入关联文章到您的页面中,当您取消该选项时,需要通过手工加入代码 <code>related_posts()</code> 或者根据需求插入 (<code>related_pages()</code> and <code>related_entries()</code>) 到您的模板文件中。"
208
+
209
+ #: options.php:310
210
+ msgid "Website display code example"
211
+ msgstr "网站显示的代码示例"
212
+
213
+ #: options.php:310
214
+ #: options.php:373
215
+ msgid "(Update options to reload.)"
216
+ msgstr "(更新设置后生效。)"
217
+
218
+ #: options.php:312
219
+ #: options.php:375
220
+ msgid "Maximum number of related posts:"
221
+ msgstr "最多关联篇数"
222
+
223
+ #: options.php:314
224
+ msgid "Before / after related entries:"
225
+ msgstr "主体起止标签"
226
+
227
+ #: options.php:315
228
+ #: options.php:320
229
+ #: options.php:329
230
+ #: options.php:379
231
+ #: options.php:384
232
+ #: options.php:393
233
+ msgid "For example:"
234
+ msgstr "例如:"
235
+
236
+ #: options.php:319
237
+ #: options.php:383
238
+ msgid "Before / after each related entry:"
239
+ msgstr "条目起止标签"
240
+
241
+ #: options.php:323
242
+ #: options.php:387
243
+ msgid "Show excerpt?"
244
+ msgstr "显示摘要?"
245
+
246
+ #: options.php:324
247
+ #: options.php:388
248
+ msgid "Excerpt length (No. of words):"
249
+ msgstr "摘要字符数"
250
+
251
+ #: options.php:328
252
+ msgid "Before / after (Excerpt):"
253
+ msgstr "摘要起止标签:"
254
+
255
+ #: options.php:334
256
+ #: options.php:398
257
+ msgid "Order results:"
258
+ msgstr "排序方式:"
259
+
260
+ #: options.php:336
261
+ #: options.php:400
262
+ msgid "score (high relevance to low)"
263
+ msgstr "匹配值(有高到低)"
264
+
265
+ #: options.php:337
266
+ #: options.php:401
267
+ msgid "score (low relevance to high)"
268
+ msgstr "匹配值(由低到高)"
269
+
270
+ #: options.php:338
271
+ #: options.php:402
272
+ msgid "date (new to old)"
273
+ msgstr "日期(由新到旧)"
274
+
275
+ #: options.php:339
276
+ #: options.php:403
277
+ msgid "date (old to new)"
278
+ msgstr "日期(由旧到新)"
279
+
280
+ #: options.php:340
281
+ #: options.php:404
282
+ msgid "title (alphabetical)"
283
+ msgstr "标题(按字母顺序排列)"
284
+
285
+ #: options.php:341
286
+ #: options.php:405
287
+ msgid "title (reverse alphabetical)"
288
+ msgstr "标题(按逆向字母排列)"
289
+
290
+ #: options.php:346
291
+ #: options.php:410
292
+ msgid "Default display if no results:"
293
+ msgstr "无匹配时:"
294
+
295
+ #: options.php:347
296
+ msgid "Show admins (user level > 8) the match scores?"
297
+ msgstr "对管理员(权限>8的用户)显示匹配值?"
298
+
299
+ #: options.php:347
300
+ msgid "With this option on, each related entry's total 'match score' (all above the threshold, set above) are displayed after each entry title, <em>if you are an administrator and logged in.</em> Even if you see these values, your visitors will not."
301
+ msgstr "选中这个后,当你以管理员身份登录时,每篇关联文章后面会显示对应的“匹配度”。游客是看不到它的。"
302
+
303
+ #: options.php:348
304
+ #: options.php:412
305
+ msgid "Help promote Yet Another Related Posts Plugin?"
306
+ msgstr "帮助推广关联文章(YARPP)插件?"
307
+
308
+ #: options.php:350
309
+ #: options.php:413
310
+ #, php-format
311
+ msgid "This option will add the code %s. Try turning it on, updating your options, and see the code in the code example to the right. These links and donations are greatly appreciated."
312
+ msgstr "选中该项后会在模板中加入以下代码:%s. 设置更新后可以在右侧的代码示例看到。真诚地感谢您的推广或捐赠。"
313
+
314
+ #: options.php:355
315
+ msgid "Display options <small>for RSS</small>"
316
+ msgstr "RSS 相关设置"
317
+
318
+ #: options.php:371
319
+ msgid "Display related posts in feeds?"
320
+ msgstr "在文章底部显示?"
321
+
322
+ #: options.php:371
323
+ msgid "This option displays related posts at the end of each item in your RSS and Atom feeds. No template changes are needed."
324
+ msgstr "该设置可以在不修改模板的情况下,将关联文章插入到您 RSS 和 Atom 的结尾。"
325
+
326
+ #: options.php:372
327
+ msgid "Display related posts in the descriptions?"
328
+ msgstr "在摘要中显示?(当RSS只输出摘要时)"
329
+
330
+ #: options.php:372
331
+ msgid "This option displays the related posts in the RSS description fields, not just the content. If your feeds are set up to only display excerpts, however, only the description field is used, so this option is required for any display at all."
332
+ msgstr "该选项将会在 RSS 的摘要区中插入关联文章,而不是在正文区中。如果您的 RSS 只输出摘要,请选择该项。"
333
+
334
+ #: options.php:373
335
+ msgid "RSS display code example"
336
+ msgstr "RSS 显示的代码示例"
337
+
338
+ #: options.php:378
339
+ msgid "Before / after related entries display:"
340
+ msgstr "主体起止标签:"
341
+
342
+ #: options.php:392
343
+ msgid "Before / after (excerpt):"
344
+ msgstr "摘要起止标签:"
345
+
346
+ #: options.php:237
347
+ #: options.php:251
348
+ #: options.php:309
349
+ #: options.php:347
350
+ #: options.php:349
351
+ #: options.php:371
352
+ #: options.php:372
353
+ #: options.php:412
354
+ msgid "more&gt;"
355
+ msgstr "更多&gt;"
356
+
357
+ #: options.php:115
358
+ msgid "word"
359
+ msgstr ""
360
+
361
+ #: options.php:116
362
+ msgid "tag"
363
+ msgstr ""
364
+
365
+ #: options.php:117
366
+ msgid "category"
367
+ msgstr ""
368
+
369
+ #: options.php:124
370
+ #: options.php:154
371
+ #, php-format
372
+ msgid "require at least one %s in common"
373
+ msgstr ""
374
+
375
+ #: options.php:126
376
+ #: options.php:156
377
+ #, php-format
378
+ msgid "require more than one %s in common"
379
+ msgstr ""
380
+
magic.php CHANGED
@@ -1,34 +1,5 @@
1
  <?php
2
 
3
- /* yarpp_cache_keywords is EXPERIMENTAL and not used.
4
- * Don't worry about it. ^^
5
- */
6
- function yarpp_cache_keywords() {
7
- global $wpdb, $post, $yarpp_debug;
8
- $body_terms = post_body_keywords();
9
- $title_terms = post_title_keywords();
10
- /*
11
- CREATE TABLE `mitcho_wrdp1`.`wp_yarpp_keyword_cache` (
12
- `ID` BIGINT( 20 ) UNSIGNED NOT NULL ,
13
- `body` TEXT NOT NULL ,
14
- `title` TEXT NOT NULL ,
15
- `date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ,
16
- PRIMARY KEY ( `ID` )
17
- ) ENGINE = MYISAM COMMENT = 'YARPP''s keyword cache table'
18
- */
19
- $timeout = 400;
20
-
21
- if ($yarpp_debug) echo '<!--'.$wpdb->get_var("select count(*) as count from wp_yarpp_keyword_cache where ID = $post->ID and date > date_sub(now(),interval $timeout minute)").'-->';
22
-
23
- if ($wpdb->get_var("select count(*) as count from wp_yarpp_keyword_cache where ID = $post->ID and date > date_sub(now(),interval $timeout minute)") == 0) {
24
- $wpdb->query('set names utf8');
25
-
26
- $wpdb->query("insert into wp_yarpp_keyword_cache (ID,body,title) values ($post->ID,'$body_terms','$title_terms') on duplicate key update body = '$body_terms', title = '$title_terms'");
27
-
28
- if ($yarpp_debug) echo "<!--"."insert into wp_yarpp_keyword_cache (ID,body,title) values ($post->ID,'$body_terms','$title_terms') on duplicate key update body = '$body_terms', title = '$title_terms'"."-->";
29
- }
30
- }
31
-
32
  function yarpp_sql($type,$args,$giveresults = true,$domain='website') {
33
  global $wpdb, $post, $yarpp_debug;
34
 
@@ -70,7 +41,7 @@ function yarpp_sql($type,$args,$giveresults = true,$domain='website') {
70
  // if cross_relate is set, override the type argument and make sure both matches are accepted in the sql query
71
  if ($cross_relate) $type = array('post','page');
72
 
73
- //yarpp_cache_keywords();
74
 
75
  // Fetch keywords
76
  $body_terms = post_body_keywords();
@@ -115,7 +86,7 @@ function yarpp_sql($type,$args,$giveresults = true,$domain='website') {
115
  if ($catweight)
116
  $criteria['cat'] = "COUNT( DISTINCT cattax.term_taxonomy_id )";
117
 
118
- $newsql = "SELECT ID, post_title, post_date, post_content, ";
119
 
120
  foreach ($criteria as $key => $value) {
121
  $newsql .= "$value as ${key}score, ";
@@ -219,20 +190,28 @@ function yarpp_related($type,$args,$echo = true,$domain = 'website') {
219
  }
220
  extract($optvals);
221
 
222
- $results = $wpdb->get_results(yarpp_sql($type,$args,true,$domain));
 
 
223
  $output = '';
224
  if ($results) {
225
  foreach ($results as $result) {
226
  $title = stripslashes(apply_filters('the_title', $result->post_title));
227
  $permalink = get_permalink($result->ID);
228
- $post_content = strip_tags($result->post_content);
229
- $post_content = stripslashes($post_content);
 
 
 
 
 
 
230
  $output .= "$before_title<a href='$permalink' rel='bookmark' title='Permanent Link: $title'>$title";
231
  if ($show_score and $userdata->user_level >= 8 and $domain != 'rss')
232
  $output .= ' <abbr title="'.sprintf(__('%f is the YARPP match score between the current entry and this related entry. You are seeing this value because you are logged in to WordPress as an administrator. It is not shown to regular visitors.','yarpp'),round($result->score,3)).'">('.round($result->score,3).')</abbr>';
233
  $output .= '</a>';
234
  if ($show_excerpt) {
235
- $output .= $before_post . yarpp_excerpt($post_content,$excerpt_length) . $after_post;
236
  }
237
  $output .= $after_title;
238
  }
@@ -264,4 +243,30 @@ function yarpp_related_exist($type,$args) {
264
  return $result > 0 ? true: false;
265
  }
266
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
267
  ?>
1
  <?php
2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  function yarpp_sql($type,$args,$giveresults = true,$domain='website') {
4
  global $wpdb, $post, $yarpp_debug;
5
 
41
  // if cross_relate is set, override the type argument and make sure both matches are accepted in the sql query
42
  if ($cross_relate) $type = array('post','page');
43
 
44
+ //yarpp_cache_keywords(); /* TEST */
45
 
46
  // Fetch keywords
47
  $body_terms = post_body_keywords();
86
  if ($catweight)
87
  $criteria['cat'] = "COUNT( DISTINCT cattax.term_taxonomy_id )";
88
 
89
+ $newsql = "SELECT ID, post_title, post_date, post_content, post_excerpt, ";
90
 
91
  foreach ($criteria as $key => $value) {
92
  $newsql .= "$value as ${key}score, ";
190
  }
191
  extract($optvals);
192
 
193
+ $sql = yarpp_sql($type,$args,true,$domain);
194
+ $results = $wpdb->get_results($sql);
195
+
196
  $output = '';
197
  if ($results) {
198
  foreach ($results as $result) {
199
  $title = stripslashes(apply_filters('the_title', $result->post_title));
200
  $permalink = get_permalink($result->ID);
201
+
202
+ $post_content = strip_tags(apply_filters_if_white('the_content',$result->post_content));
203
+ //$post_content = stripslashes($post_content);
204
+
205
+ $post_excerpt = strip_tags($result->post_excerpt);
206
+ if ($post_excerpt == '')
207
+ $post_excerpt = $post_content; //this is okay because it will be clipped later anyway.
208
+
209
  $output .= "$before_title<a href='$permalink' rel='bookmark' title='Permanent Link: $title'>$title";
210
  if ($show_score and $userdata->user_level >= 8 and $domain != 'rss')
211
  $output .= ' <abbr title="'.sprintf(__('%f is the YARPP match score between the current entry and this related entry. You are seeing this value because you are logged in to WordPress as an administrator. It is not shown to regular visitors.','yarpp'),round($result->score,3)).'">('.round($result->score,3).')</abbr>';
212
  $output .= '</a>';
213
  if ($show_excerpt) {
214
+ $output .= $before_post . yarpp_excerpt($post_excerpt,$excerpt_length) . $after_post;
215
  }
216
  $output .= $after_title;
217
  }
243
  return $result > 0 ? true: false;
244
  }
245
 
246
+ /* yarpp_cache_* are EXPERIMENTAL and not used.
247
+ * Don't worry about it. ^^
248
+ */
249
+ function yarpp_cache_exists($post_id) {
250
+ global $wpdb;
251
+ /*
252
+ CREATE TABLE `wp_yarpp_keyword_cache` (
253
+ `ID` BIGINT( 20 ) UNSIGNED NOT NULL ,
254
+ `body` TEXT NOT NULL ,
255
+ `title` TEXT NOT NULL ,
256
+ `date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ,
257
+ PRIMARY KEY ( `ID` )
258
+ ) ENGINE = MYISAM COMMENT = 'YARPP\'s keyword cache table'
259
+ */
260
+ $timeout = 400;
261
+
262
+ if (!$wpdb->get_var("select count(*) as count from wp_yarpp_keyword_cache where ID = $post->ID and date > date_sub(now(),interval $timeout minute)")) {
263
+ $wpdb->query('set names utf8');
264
+
265
+ $wpdb->query("insert into wp_yarpp_keyword_cache (ID,body,title) values ($post->ID,'$body_terms','$title_terms') on duplicate key update body = '$body_terms', title = '$title_terms'");
266
+
267
+ if ($yarpp_debug) echo "<!--"."insert into wp_yarpp_keyword_cache (ID,body,title) values ($post->ID,'$body_terms','$title_terms') on duplicate key update body = '$body_terms', title = '$title_terms'"."-->";
268
+ }
269
+ }
270
+
271
+
272
  ?>
options.php CHANGED
@@ -179,21 +179,10 @@ document.getElementsByTagName("body")[0].setAttribute('onload',"excerpt();rss_ex
179
  </script>
180
 
181
  <div class="wrap">
182
- <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
183
- <input type="hidden" name="cmd" value="_donations" />
184
- <input type="hidden" name="business" value="mitcho@mitcho.com" />
185
- <input type="hidden" name="item_name" value="Yet Another Related Posts Plugin" />
186
- <input type="hidden" name="no_shipping" value="1" />
187
- <input type="hidden" name="return" value="http://mitcho.com/code/yarpp/" />
188
- <input type="hidden" name="cancel_return" value="http://mitcho.com/code/yarpp/" />
189
- <input type="hidden" name="cn" value="Optional Comment" />
190
- <input type="hidden" name="currency_code" value="USD" />
191
- <input type="hidden" name="tax" value="0" />
192
- <input type="hidden" name="lc" value="US" />
193
- <input type="hidden" name="bn" value="PP-DonationsBF" />
194
-
195
  <h2>
196
- <input type="image" src="https://www.paypal.com/en_US/i/btn/x-click-but04.gif" name="submit" alt="Make payments with PayPal - it's fast, free and secure!" title="<?php _e('Donate to mitcho (Michael Yoshitaka Erlewine) for this plugin via PayPal');?>" style="float:right" />
 
 
197
  <?php _e('Yet Another Related Posts Plugin Options','yarpp');?> <small><?php
198
 
199
  $display_version = yarpp_get_option('version');
@@ -206,7 +195,6 @@ document.getElementsByTagName("body")[0].setAttribute('onload',"excerpt();rss_ex
206
  }
207
  ?></small>
208
  </h2>
209
- </form>
210
 
211
  <form method="post">
212
 
@@ -246,7 +234,7 @@ document.getElementsByTagName("body")[0].setAttribute('onload',"excerpt();rss_ex
246
 
247
  <!-- Relatedness -->
248
  <h3><?php _e('"Relatedness" options','yarpp');?></h3>
249
- <p><?php _e('YARPP is different than the <a href="http://wasabi.pbwiki.com/Related%20Entries">previous plugins it is based on</a> as it limits the related posts list by (1) a maximum number and (2) a <em>match threshold</em>.','yarpp');?> <a href="#" class='info'>more&gt;<span><?php _e('The higher the match threshold, the more restrictive, and you get less related posts overall. The default match threshold is 5. If you want to find an appropriate match threshhold, I recommend you turn on the "show admins the match scores" setting below. That way, you can see what kinds of related posts are being picked up and with what kind of match scores, and determine an appropriate threshold for your site.','yarpp');?></span></a></p>
250
 
251
  <table class="form-table" style="margin-top: 0">
252
  <tbody>
@@ -260,7 +248,7 @@ document.getElementsByTagName("body")[0].setAttribute('onload',"excerpt();rss_ex
260
  <th scope='row'>",(!$yarpp_twopointfive?' readonly="readonly" disabled="disabled"':''))?>
261
  <?php importance('categories',__("Categories: ",'yarpp'),'category',"<tr valign='top'>
262
  <th scope='row'>",(!$yarpp_twopointfive?' readonly="readonly" disabled="disabled"':''))?>
263
- <?php checkbox('cross_relate',__("Cross-relate posts and pages?",'yarpp')." <a href='#' class='info'>more&gt;<span>".__("When the \"Cross-relate posts and pages\" option is selected, the <code>related_posts()</code>, <code>related_pages()</code>, and <code>related_entries()</code> all will give the same output, returning both related pages and posts.",'yarpp')."</span></a>"); ?>
264
  </tbody>
265
  </table>
266
 
@@ -318,7 +306,7 @@ $democode .= stripslashes(yarpp_get_option('after_related',true));
318
  if (yarpp_get_option('promote_yarpp'))
319
  $democode .= htmlspecialchars("\n<p>".__("Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.",'yarpp')."</p>");
320
 
321
- checkbox('auto_display',__("Automatically display related posts?",'yarpp')." <a href='#' class='info'>more&gt;<span>".__("This option automatically displays related posts right after the content on single entry pages. If this option is off, you will need to manually insert <code>related_posts()</code> or variants (<code>related_pages()</code> and <code>related_entries()</code>) into your theme files.",'yarpp')."</span></a>","<tr valign='top'>
322
  <th class='th-full' colspan='2' scope='row'>",'','<td rowspan="11" style="border-left:8px white solid;"><b>'.__("Website display code example",'yarpp').'</b><br /><small>'.__("(Update options to reload.)",'yarpp').'</small><br/>'
323
  ."<code><pre style='overflow:auto;width:350px;'>".($democode)."</pre></code></td>"); ?>
324
  <?php textbox('limit',__('Maximum number of related posts:','yarpp'))?>
@@ -356,9 +344,9 @@ checkbox('auto_display',__("Automatically display related posts?",'yarpp')." <a
356
  </tr>
357
 
358
  <?php textbox('no_results',__('Default display if no results:','yarpp'),'40')?>
359
- <?php checkbox('show_score',__("Show admins (user level > 8) the match scores?",'yarpp')." <a href='#' class='info'>more&gt;<span>".__("With this option on, each related entry's total 'match score' (all above the threshold, set above) are displayed after each entry title, <em>if you are an administrator and logged in.</em> Even if you see these values, your visitors will not.",'yarpp')."</span></a>"); ?>
360
  <?php checkbox('promote_yarpp',__("Help promote Yet Another Related Posts Plugin?",'yarpp')
361
- ." <a href='#' class='info'>more&gt;<span>"
362
  .sprintf(__("This option will add the code %s. Try turning it on, updating your options, and see the code in the code example to the right. These links and donations are greatly appreciated."),"<code>".htmlspecialchars(__("Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.",'yarpp'))."</code>")
363
  ."</span></a>"); ?>
364
  </table>
@@ -380,11 +368,11 @@ $democode .= stripslashes(yarpp_get_option('rss_after_related',true));
380
  if (yarpp_get_option('rss_promote_yarpp'))
381
  $democode .= htmlspecialchars("\n<p>".__("Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.",'yarpp')."</p>");
382
 
383
- checkbox('rss_display',__("Display related posts in feeds?",'yarpp')." <a href='#' class='info'>more&gt;<span>".__("This option displays related posts at the end of each item in your RSS and Atom feeds. No template changes are needed.",'yarpp')."</span></a>","<tr valign='top'><th colspan='3'>",' onclick="javascript:do_rss_display();"');
384
- checkbox('rss_excerpt_display',__("Display related posts in the descriptions?",'yarpp')." <a href='#' class='info'>more&gt;<span>".__("This option displays the related posts in the RSS description fields, not just the content. If your feeds are set up to only display excerpts, however, only the description field is used, so this option is required for any display at all.",'yarpp')."</span></a>","<tr name='rss_displayed' valign='top'>
385
  <th class='th-full' colspan='2' scope='row'>",'','<td rowspan="10" style="border-left:8px white solid;"><b>'.__("RSS display code example",'yarpp').'</b><br /><small>'.__("(Update options to reload.)",'yarpp').'</small><br/>'
386
  ."<code><pre style='overflow:auto;width:350px;'>".($democode)."</pre></code></td>"); ?>
387
- <?php textbox('rss_limit','Maximum number of related posts:',2,"<tr valign='top' name='rss_displayed'>
388
  <th scope='row'>")?>
389
  <tr name='rss_displayed' valign='top'>
390
  <th><?php _e("Before / after related entries display:",'yarpp');?></th>
@@ -421,7 +409,7 @@ checkbox('rss_excerpt_display',__("Display related posts in the descriptions?",'
421
 
422
  <?php textbox('rss_no_results',__('Default display if no results:','yarpp'),'40',"<tr valign='top' name='rss_displayed'>
423
  <th scope='row'>")?>
424
- <?php checkbox('rss_promote_yarpp',__("Help promote Yet Another Related Posts Plugin?",'yarpp')." <a href='#' class='info'>more&gt;<span>"
425
  .sprintf(__("This option will add the code %s. Try turning it on, updating your options, and see the code in the code example to the right. These links and donations are greatly appreciated."),"<code>".htmlspecialchars(__("Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.",'yarpp'))."</code>")
426
  ."</span></a>","<tr valign='top' name='rss_displayed'>
427
  <th class='th-full' colspan='2' scope='row'>"); ?>
179
  </script>
180
 
181
  <div class="wrap">
 
 
 
 
 
 
 
 
 
 
 
 
 
182
  <h2>
183
+ <a href='https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=66G4DATK4999L&item_name=mitcho%2ecom%2fcode%3a%20donate%20to%20Michael%20Yoshitaka%20Erlewine&no_shipping=1&no_note=1&tax=0&currency_code=USD&lc=US&charset=UTF%2d8' target='_new'><img src="https://www.paypal.com/<?php echo paypal_directory(); ?>i/btn/btn_donate_SM.gif" name="submit" alt="<?php _e('Donate to mitcho (Michael Yoshitaka Erlewine) for this plugin via PayPal');?>" title="<?php _e('Donate to mitcho (Michael Yoshitaka Erlewine) for this plugin via PayPal');?>" style="float:right" /></a>
184
+
185
+
186
  <?php _e('Yet Another Related Posts Plugin Options','yarpp');?> <small><?php
187
 
188
  $display_version = yarpp_get_option('version');
195
  }
196
  ?></small>
197
  </h2>
 
198
 
199
  <form method="post">
200
 
234
 
235
  <!-- Relatedness -->
236
  <h3><?php _e('"Relatedness" options','yarpp');?></h3>
237
+ <p><?php _e('YARPP is different than the <a href="http://wasabi.pbwiki.com/Related%20Entries">previous plugins it is based on</a> as it limits the related posts list by (1) a maximum number and (2) a <em>match threshold</em>.','yarpp');?> <a href="#" class='info'><?php _e('more&gt;','yarpp');?><span><?php _e('The higher the match threshold, the more restrictive, and you get less related posts overall. The default match threshold is 5. If you want to find an appropriate match threshhold, I recommend you turn on the "show admins the match scores" setting below. That way, you can see what kinds of related posts are being picked up and with what kind of match scores, and determine an appropriate threshold for your site.','yarpp');?></span></a></p>
238
 
239
  <table class="form-table" style="margin-top: 0">
240
  <tbody>
248
  <th scope='row'>",(!$yarpp_twopointfive?' readonly="readonly" disabled="disabled"':''))?>
249
  <?php importance('categories',__("Categories: ",'yarpp'),'category',"<tr valign='top'>
250
  <th scope='row'>",(!$yarpp_twopointfive?' readonly="readonly" disabled="disabled"':''))?>
251
+ <?php checkbox('cross_relate',__("Cross-relate posts and pages?",'yarpp')." <a href='#' class='info'>".__('more&gt;','yarpp')."<span>".__("When the \"Cross-relate posts and pages\" option is selected, the <code>related_posts()</code>, <code>related_pages()</code>, and <code>related_entries()</code> all will give the same output, returning both related pages and posts.",'yarpp')."</span></a>"); ?>
252
  </tbody>
253
  </table>
254
 
306
  if (yarpp_get_option('promote_yarpp'))
307
  $democode .= htmlspecialchars("\n<p>".__("Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.",'yarpp')."</p>");
308
 
309
+ checkbox('auto_display',__("Automatically display related posts?",'yarpp')." <a href='#' class='info'>".__('more&gt;','yarpp')."<span>".__("This option automatically displays related posts right after the content on single entry pages. If this option is off, you will need to manually insert <code>related_posts()</code> or variants (<code>related_pages()</code> and <code>related_entries()</code>) into your theme files.",'yarpp')."</span></a>","<tr valign='top'>
310
  <th class='th-full' colspan='2' scope='row'>",'','<td rowspan="11" style="border-left:8px white solid;"><b>'.__("Website display code example",'yarpp').'</b><br /><small>'.__("(Update options to reload.)",'yarpp').'</small><br/>'
311
  ."<code><pre style='overflow:auto;width:350px;'>".($democode)."</pre></code></td>"); ?>
312
  <?php textbox('limit',__('Maximum number of related posts:','yarpp'))?>
344
  </tr>
345
 
346
  <?php textbox('no_results',__('Default display if no results:','yarpp'),'40')?>
347
+ <?php checkbox('show_score',__("Show admins (user level > 8) the match scores?",'yarpp')." <a href='#' class='info'>".__('more&gt;','yarpp')."<span>".__("With this option on, each related entry's total 'match score' (all above the threshold, set above) are displayed after each entry title, <em>if you are an administrator and logged in.</em> Even if you see these values, your visitors will not.",'yarpp')."</span></a>"); ?>
348
  <?php checkbox('promote_yarpp',__("Help promote Yet Another Related Posts Plugin?",'yarpp')
349
+ ." <a href='#' class='info'>".__('more&gt;','yarpp')."<span>"
350
  .sprintf(__("This option will add the code %s. Try turning it on, updating your options, and see the code in the code example to the right. These links and donations are greatly appreciated."),"<code>".htmlspecialchars(__("Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.",'yarpp'))."</code>")
351
  ."</span></a>"); ?>
352
  </table>
368
  if (yarpp_get_option('rss_promote_yarpp'))
369
  $democode .= htmlspecialchars("\n<p>".__("Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.",'yarpp')."</p>");
370
 
371
+ checkbox('rss_display',__("Display related posts in feeds?",'yarpp')." <a href='#' class='info'>".__('more&gt;','yarpp')."<span>".__("This option displays related posts at the end of each item in your RSS and Atom feeds. No template changes are needed.",'yarpp')."</span></a>","<tr valign='top'><th colspan='3'>",' onclick="javascript:do_rss_display();"');
372
+ checkbox('rss_excerpt_display',__("Display related posts in the descriptions?",'yarpp')." <a href='#' class='info'>".__('more&gt;','yarpp')."<span>".__("This option displays the related posts in the RSS description fields, not just the content. If your feeds are set up to only display excerpts, however, only the description field is used, so this option is required for any display at all.",'yarpp')."</span></a>","<tr name='rss_displayed' valign='top'>
373
  <th class='th-full' colspan='2' scope='row'>",'','<td rowspan="10" style="border-left:8px white solid;"><b>'.__("RSS display code example",'yarpp').'</b><br /><small>'.__("(Update options to reload.)",'yarpp').'</small><br/>'
374
  ."<code><pre style='overflow:auto;width:350px;'>".($democode)."</pre></code></td>"); ?>
375
+ <?php textbox('rss_limit',__('Maximum number of related posts:','yarpp'),2,"<tr valign='top' name='rss_displayed'>
376
  <th scope='row'>")?>
377
  <tr name='rss_displayed' valign='top'>
378
  <th><?php _e("Before / after related entries display:",'yarpp');?></th>
409
 
410
  <?php textbox('rss_no_results',__('Default display if no results:','yarpp'),'40',"<tr valign='top' name='rss_displayed'>
411
  <th scope='row'>")?>
412
+ <?php checkbox('rss_promote_yarpp',__("Help promote Yet Another Related Posts Plugin?",'yarpp')." <a href='#' class='info'>".__('more&gt;','yarpp')."<span>"
413
  .sprintf(__("This option will add the code %s. Try turning it on, updating your options, and see the code in the code example to the right. These links and donations are greatly appreciated."),"<code>".htmlspecialchars(__("Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.",'yarpp'))."</code>")
414
  ."</span></a>","<tr valign='top' name='rss_displayed'>
415
  <th class='th-full' colspan='2' scope='row'>"); ?>
readme.txt CHANGED
@@ -3,11 +3,11 @@ Contributors: mitchoyoshitaka
3
  Author: mitcho (Michael Yoshitaka Erlewine)
4
  Author URI: http://mitcho.com/
5
  Plugin URI: http://mitcho.com/code/yarpp/
6
- Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=mitcho%40mitcho%2ecom&item_name=mitcho%2ecom%2fcode%3a%20donate%20to%20Michael%20Yoshitaka%20Erlewine&no_shipping=0&no_note=1&tax=0&currency_code=USD&lc=US&bn=PP%2dDonationsBF&charset=UTF%2d8
7
  Tags: related, posts, post, pages, page, RSS, feed, feeds
8
  Requires at least: 2.3
9
  Tested up to: 2.7
10
- Stable tag: 2.1.3
11
 
12
  Returns a list of the related entries based on a unique algorithm using titles, post bodies, tags, and categories. Now with RSS feed support!
13
 
@@ -55,7 +55,9 @@ The `related` functions can be used in conjunction to the regular "auto display"
55
 
56
  **Customizing the "related" functions**
57
 
58
- Since YARPP 2.1, you can specify some custom options for each instance of `related_*()`. The arguments are specified as a single array argument (`related_*(array(key=>value, key=>value, ...))`).
 
 
59
 
60
  The available keys in version 2.1 are (roughly in the same order as in the options page):
61
 
@@ -140,9 +142,11 @@ Please submit such bugs by starting a new thread on [the Wordpress.org forums](h
140
 
141
  I highly recommend you disactivate YARPP, replace it with the new one, and then reactivate it.
142
 
143
- = Does YARPP come in different languages? =
144
 
145
- YARPP has been [internationalized](http://codex.wordpress.org/Writing_a_Plugin#Internationalizing_Your_Plugin) as of version 2.1.1. No localizations have been made yet, but they are coming.
 
 
146
 
147
  If you are a bilingual speaker of English and another language and an avid user of YARPP, I would love to talk to you about localizing YARPP! Localizing YARPP can be pretty easy using [the Codestyling Localization plugin](http://www.code-styling.de/english/development/wordpress-plugin-codestyling-localization-en). Please [contact me](mailto:yarpp@mitcho.com) *first* before translating to make sure noone else is working on your language. Thanks!
148
 
@@ -212,13 +216,25 @@ If you are a bilingual speaker of English and another language and an avid user
212
  * 2.1.3
213
  * Bugfix: Turned off [the experimental caching](http://wordpress.org/support/topic/216194#post-894440) which shouldn't have been on in this release...
214
  * Bugfix: an issue with the [keywords algorithm for non-ASCII characters](http://wordpress.org/support/topic/216078)
215
- * Bugfix: [Option sumbmission took you to PayPal](http://wordpress.org/support/topic/214090)
 
 
 
 
 
 
 
 
 
 
 
 
 
216
 
217
  == Future versions ==
218
 
219
  The following feature requests have been made and may be incorporated into a future release. If you have a bug fix, please start a new thread on [the Wordpress.org forums](http://wordpress.org/tags/yet-another-related-posts-plugin).
220
 
221
- * User-defineable stopwords, especially to support other languages, [by request](http://wordpress.org/support/topic/159359)
222
- * Localization
223
- * Date and comment count in excerpt, [by request](http://wordpress.org/support/topic/156231)
224
  * Sentece-aware excerpts, [by request](http://wordpress.org/support/topic/162465)
3
  Author: mitcho (Michael Yoshitaka Erlewine)
4
  Author URI: http://mitcho.com/
5
  Plugin URI: http://mitcho.com/code/yarpp/
6
+ Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=66G4DATK4999L&item_name=mitcho%2ecom%2fcode%3a%20donate%20to%20Michael%20Yoshitaka%20Erlewine&no_shipping=0&no_note=1&tax=0&currency_code=USD&lc=US&charset=UTF%2d8
7
  Tags: related, posts, post, pages, page, RSS, feed, feeds
8
  Requires at least: 2.3
9
  Tested up to: 2.7
10
+ Stable tag: 2.1.4
11
 
12
  Returns a list of the related entries based on a unique algorithm using titles, post bodies, tags, and categories. Now with RSS feed support!
13
 
55
 
56
  **Customizing the "related" functions**
57
 
58
+ Since YARPP 2.1, you can specify some custom options for each instance of `related_*()`. The functions take two arguments: 1. an array with key-value pairs of options, and 2. a boolean called `echo`, with default value of `true`. If `echo` is set to `false`, the result will simply be returned back instead of echoed.
59
+
60
+ For example: `related_*(array(key=>value, key=>value, ...),`(`true` or `false`)`)`.
61
 
62
  The available keys in version 2.1 are (roughly in the same order as in the options page):
63
 
142
 
143
  I highly recommend you disactivate YARPP, replace it with the new one, and then reactivate it.
144
 
145
+ == Localizations ==
146
 
147
+ YARPP is currently localized in the following languages:
148
+ * Simplified Chinese (`zh_CN`) by [Jor Wang](mailto:mail@jorwang.com) of [jorwang.com](http://jorwang.com)
149
+ * German (`de_DE`) by [Michael K.](mailto:yarpp-de@mitcho.com) of [3th.be](http://3th.be)
150
 
151
  If you are a bilingual speaker of English and another language and an avid user of YARPP, I would love to talk to you about localizing YARPP! Localizing YARPP can be pretty easy using [the Codestyling Localization plugin](http://www.code-styling.de/english/development/wordpress-plugin-codestyling-localization-en). Please [contact me](mailto:yarpp@mitcho.com) *first* before translating to make sure noone else is working on your language. Thanks!
152
 
216
  * 2.1.3
217
  * Bugfix: Turned off [the experimental caching](http://wordpress.org/support/topic/216194#post-894440) which shouldn't have been on in this release...
218
  * Bugfix: an issue with the [keywords algorithm for non-ASCII characters](http://wordpress.org/support/topic/216078)
219
+ * 2.1.4
220
+ * Bugfix: [Settings' sumbmit button took you to PayPal](http://wordpress.org/support/topic/214090)
221
+ * Bugfix: Fixed [keyword algorithm for users without `mbstring`](http://wordpress.org/support/topic/216420)
222
+ * Bugfix: `title` attributes were not properly escaped
223
+ * Bugfix: [keywords did not filter tags](http://wordpress.org/support/topic/218211). (This bugfix may vastly improve "relatedness" on some blogs.)
224
+ * Localizations:
225
+ * Simplified Chinese (`zh_CN`) by [Jor Wang](mailto:mail@jorwang.com) of [jorwang.com](http://jorwang.com)
226
+ * German (`de_DE`) by [Michael K.](mailto:yarpp-de@mitcho.com) of [3th.be](http://3th.be)
227
+ * The "show excerpt" option now shows the first `n` words of the excerpt, rather than the content ([by request](http://wordpress.org/support/topic/212577))
228
+ * Added an `echo` parameter to the `related_*()` functions, with default value of `true`. If `false`, the function will simply return the output.
229
+ * Added support for the [AllWebMenus Pro](http://wordpress.org/extend/plugins/allwebmenus-wordpress-menu-plugin/) plugin
230
+ * Further internationalization:
231
+ * the donate button! ^^
232
+ * overused words lists ([by request](http://wordpress.org/support/topic/159359))), with a German word list.
233
 
234
  == Future versions ==
235
 
236
  The following feature requests have been made and may be incorporated into a future release. If you have a bug fix, please start a new thread on [the Wordpress.org forums](http://wordpress.org/tags/yet-another-related-posts-plugin).
237
 
238
+ * More customizeable displays so that you can, for example, add the date and comment count in the excerpt ([by request](http://wordpress.org/support/topic/156231))
239
+ * More localizations
 
240
  * Sentece-aware excerpts, [by request](http://wordpress.org/support/topic/162465)
yarpp.php CHANGED
@@ -3,8 +3,9 @@
3
  Plugin Name: Yet Another Related Posts Plugin
4
  Plugin URI: http://mitcho.com/code/yarpp/
5
  Description: Returns a list of the related entries based on a unique algorithm using titles, post bodies, tags, and categories. Now with RSS feed support!
6
- Version: 2.1.3
7
  Author: mitcho (Michael Yoshitaka Erlewine)
 
8
  */
9
 
10
  require_once('includes.php');
@@ -17,6 +18,8 @@ add_filter('the_content_rss','yarpp_rss',600);
17
  add_filter('the_excerpt_rss','yarpp_rss_excerpt',600);
18
  register_activation_hook(__FILE__,'yarpp_activate');
19
 
 
 
20
  // new in 2.0: add as a widget
21
  add_action('plugins_loaded', 'widget_yarpp_init');
22
 
3
  Plugin Name: Yet Another Related Posts Plugin
4
  Plugin URI: http://mitcho.com/code/yarpp/
5
  Description: Returns a list of the related entries based on a unique algorithm using titles, post bodies, tags, and categories. Now with RSS feed support!
6
+ Version: 2.1.4
7
  Author: mitcho (Michael Yoshitaka Erlewine)
8
+ Author URI: http://mitcho.com/
9
  */
10
 
11
  require_once('includes.php');
18
  add_filter('the_excerpt_rss','yarpp_rss_excerpt',600);
19
  register_activation_hook(__FILE__,'yarpp_activate');
20
 
21
+ load_plugin_textdomain('yarpp', PLUGINDIR.'/'.dirname(plugin_basename(__FILE__)), dirname(plugin_basename(__FILE__)).'/lang',dirname(plugin_basename(__FILE__)).'/lang');
22
+
23
  // new in 2.0: add as a widget
24
  add_action('plugins_loaded', 'widget_yarpp_init');
25