Yet Another Related Posts Plugin (YARPP) - Version 3.2.1b2

Version Description

Download this release

Release Info

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

Code changes from version 3.2.1b1 to 3.2.1b2

Files changed (11) hide show
  1. cache-postmeta.php +8 -4
  2. cache-tables.php +25 -16
  3. includes.php +68 -111
  4. intl.php +2 -0
  5. lang/words-fr_FR.php +3 -0
  6. lang/yarpp-pt_PT.po +50 -50
  7. magic.php +21 -6
  8. options.php +48 -60
  9. readme.txt +15 -7
  10. services.php +0 -8
  11. yarpp.php +4 -5
cache-postmeta.php CHANGED
@@ -13,6 +13,7 @@ class YARPP_Cache_Postmeta {
13
var $related_IDs = array();
14
var $name = "postmeta";
15
var $yarpp_time = false;
16
17
/**
18
* SETUP/STATUS
@@ -32,6 +33,9 @@ class YARPP_Cache_Postmeta {
32
33
function setup() {
34
}
35
36
function cache_status() {
37
global $wpdb;
@@ -92,13 +96,13 @@ class YARPP_Cache_Postmeta {
92
}
93
94
function demo_request_filter($arg) {
95
- global $wpdb, $yarpp_demo_time, $yarpp_limit;
96
- if ($yarpp_demo_time) {
97
$wpdb->query("set @count = 0;");
98
- return "SELECT SQL_CALC_FOUND_ROWS ID + $yarpp_limit as ID, post_author, post_date, post_date_gmt, '" . LOREMIPSUM . "' as post_content,
99
concat('".__('Example post ','yarpp')."',@count:=@count+1) as post_title, 0 as post_category, '' as post_excerpt, 'publish' as post_status, 'open' as comment_status, 'open' as ping_status, '' as post_password, concat('example-post-',@count) as post_name, '' as to_ping, '' as pinged, post_modified, post_modified_gmt, '' as post_content_filtered, 0 as post_parent, concat('PERMALINK',@count) as guid, 0 as menu_order, 'post' as post_type, '' as post_mime_type, 0 as comment_count, 'SCORE' as score
100
FROM $wpdb->posts
101
- ORDER BY ID DESC LIMIT 0, $yarpp_limit";
102
}
103
return $arg;
104
}
13
var $related_IDs = array();
14
var $name = "postmeta";
15
var $yarpp_time = false;
16
+ var $demo_time = false;
17
18
/**
19
* SETUP/STATUS
33
34
function setup() {
35
}
36
+
37
+ function upgrade() {
38
+ }
39
40
function cache_status() {
41
global $wpdb;
96
}
97
98
function demo_request_filter($arg) {
99
+ global $wpdb;
100
+ if ($this->demo_time) {
101
$wpdb->query("set @count = 0;");
102
+ return "SELECT SQL_CALC_FOUND_ROWS ID + {$this->demo_limit} as ID, post_author, post_date, post_date_gmt, '" . LOREMIPSUM . "' as post_content,
103
concat('".__('Example post ','yarpp')."',@count:=@count+1) as post_title, 0 as post_category, '' as post_excerpt, 'publish' as post_status, 'open' as comment_status, 'open' as ping_status, '' as post_password, concat('example-post-',@count) as post_name, '' as to_ping, '' as pinged, post_modified, post_modified_gmt, '' as post_content_filtered, 0 as post_parent, concat('PERMALINK',@count) as guid, 0 as menu_order, 'post' as post_type, '' as post_mime_type, 0 as comment_count, 'SCORE' as score
104
FROM $wpdb->posts
105
+ ORDER BY ID DESC LIMIT 0, {$this->demo_limit}";
106
}
107
return $arg;
108
}
cache-tables.php CHANGED
@@ -8,6 +8,7 @@ define('YARPP_TABLES_KEYWORDS_TABLE', 'yarpp_keyword_cache');
8
class YARPP_Cache_Tables {
9
var $name = "custom tables";
10
var $yarpp_time = false;
11
12
/**
13
* SETUP/STATUS
@@ -35,27 +36,35 @@ class YARPP_Cache_Tables {
35
36
function setup() {
37
global $wpdb;
38
- if (!$wpdb->query("CREATE TABLE IF NOT EXISTS `{$wpdb->prefix}" . YARPP_TABLES_KEYWORDS_TABLE . "` (
39
`ID` bigint(20) unsigned NOT NULL default '0',
40
`body` text NOT NULL,
41
`title` text NOT NULL,
42
`date` timestamp NOT NULL default CURRENT_TIMESTAMP,
43
PRIMARY KEY (`ID`)
44
- ) ENGINE=MyISAM COMMENT='YARPP''s keyword cache table';")) {
45
- echo "<!--MySQL error on creating " . YARPP_TABLES_KEYWORDS_TABLE . " table: ";
46
- $wpdb->print_error();
47
- echo "-->";
48
- }
49
- if (!$wpdb->query("CREATE TABLE IF NOT EXISTS `{$wpdb->prefix}" . YARPP_TABLES_RELATED_TABLE . "` (
50
`reference_ID` bigint(20) unsigned NOT NULL default '0',
51
`ID` bigint(20) unsigned NOT NULL default '0',
52
`score` float unsigned NOT NULL default '0',
53
`date` timestamp NOT NULL default CURRENT_TIMESTAMP,
54
- PRIMARY KEY ( `score` , `date` , `reference_ID` , `ID` )
55
- ) ENGINE=MyISAM;")) {
56
- echo "<!--MySQL error on creating " . YARPP_TABLES_RELATED_TABLE . " table: ";
57
- $wpdb->print_error();
58
- echo "-->";
59
}
60
}
61
@@ -115,13 +124,13 @@ class YARPP_Cache_Tables {
115
}
116
117
function demo_request_filter($arg) {
118
- global $wpdb, $yarpp_demo_time, $yarpp_limit;
119
- if ($yarpp_demo_time) {
120
$wpdb->query("set @count = 0;");
121
- $arg = "SELECT SQL_CALC_FOUND_ROWS ID + $yarpp_limit as ID, post_author, post_date, post_date_gmt, '" . LOREMIPSUM . "' as post_content,
122
concat('".__('Example post ','yarpp')."',@count:=@count+1) as post_title, 0 as post_category, '' as post_excerpt, 'publish' as post_status, 'open' as comment_status, 'open' as ping_status, '' as post_password, concat('example-post-',@count) as post_name, '' as to_ping, '' as pinged, post_modified, post_modified_gmt, '' as post_content_filtered, 0 as post_parent, concat('PERMALINK',@count) as guid, 0 as menu_order, 'post' as post_type, '' as post_mime_type, 0 as comment_count, 'SCORE' as score
123
FROM $wpdb->posts
124
- ORDER BY ID DESC LIMIT 0, $yarpp_limit";
125
}
126
return $arg;
127
}
8
class YARPP_Cache_Tables {
9
var $name = "custom tables";
10
var $yarpp_time = false;
11
+ var $demo_time = false;
12
13
/**
14
* SETUP/STATUS
36
37
function setup() {
38
global $wpdb;
39
+ $wpdb->query("CREATE TABLE IF NOT EXISTS `{$wpdb->prefix}" . YARPP_TABLES_KEYWORDS_TABLE . "` (
40
`ID` bigint(20) unsigned NOT NULL default '0',
41
`body` text NOT NULL,
42
`title` text NOT NULL,
43
`date` timestamp NOT NULL default CURRENT_TIMESTAMP,
44
PRIMARY KEY (`ID`)
45
+ ) ENGINE=MyISAM COMMENT='YARPP''s keyword cache table';");
46
+ $wpdb->query("CREATE TABLE IF NOT EXISTS `{$wpdb->prefix}" . YARPP_TABLES_RELATED_TABLE . "` (
47
`reference_ID` bigint(20) unsigned NOT NULL default '0',
48
`ID` bigint(20) unsigned NOT NULL default '0',
49
`score` float unsigned NOT NULL default '0',
50
`date` timestamp NOT NULL default CURRENT_TIMESTAMP,
51
+ PRIMARY KEY ( `reference_ID` , `ID` ),
52
+ INDEX (`score`)
53
+ ) ENGINE=MyISAM;");
54
+ }
55
+
56
+ function upgrade($last_version) {
57
+ global $wpdb;
58
+ if (version_compare('3.2.1b2', $last_version) > 0) {
59
+ // Change primary key to be (reference_ID, ID) to ensure that we don't
60
+ // get duplicates.
61
+ // We unfortunately have to clear the cache first here, to ensure that there
62
+ // are no duplicates.
63
+ $this->flush();
64
+ $wpdb->query('ALTER TABLE ' . $wpdb->prefix . YARPP_TABLES_RELATED_TABLE .
65
+ ' DROP PRIMARY KEY ,' .
66
+ ' ADD PRIMARY KEY ( `reference_ID` , `ID` ),' .
67
+ ' ADD INDEX (`score`)');
68
}
69
}
70
124
}
125
126
function demo_request_filter($arg) {
127
+ global $wpdb;
128
+ if ($this->demo_time) {
129
$wpdb->query("set @count = 0;");
130
+ $arg = "SELECT SQL_CALC_FOUND_ROWS ID + {$this->demo_limit} as ID, post_author, post_date, post_date_gmt, '" . LOREMIPSUM . "' as post_content,
131
concat('".__('Example post ','yarpp')."',@count:=@count+1) as post_title, 0 as post_category, '' as post_excerpt, 'publish' as post_status, 'open' as comment_status, 'open' as ping_status, '' as post_password, concat('example-post-',@count) as post_name, '' as to_ping, '' as pinged, post_modified, post_modified_gmt, '' as post_content_filtered, 0 as post_parent, concat('PERMALINK',@count) as guid, 0 as menu_order, 'post' as post_type, '' as post_mime_type, 0 as comment_count, 'SCORE' as score
132
FROM $wpdb->posts
133
+ ORDER BY ID DESC LIMIT 0, {$this->demo_limit}";
134
}
135
return $arg;
136
}
includes.php CHANGED
@@ -12,52 +12,56 @@ if ( !defined('WP_CONTENT_DIR') )
12
13
global $yarpp_value_options, $yarpp_binary_options, $yarpp_clear_cache_options;
14
// 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.
15
- $yarpp_value_options = array('threshold' => 5,
16
- 'limit' => 5,
17
- 'template_file' => '', // new in 2.2
18
- 'excerpt_length' => 10,
19
- 'recent_number' => 12,
20
- 'recent_units' => 'month',
21
- 'before_title' => '<li>',
22
- 'after_title' => '</li>',
23
- 'before_post' => ' <small>',
24
- 'after_post' => '</small>',
25
- 'before_related' => '<p>'.__('Related posts:','yarpp').'</p><ol>',
26
- 'after_related' => '</ol>',
27
- 'no_results' => '<p>'.__('No related posts.','yarpp').'</p>',
28
- 'order' => 'score DESC',
29
- 'rss_limit' => 3,
30
- 'rss_template_file' => '', // new in 2.2
31
- 'rss_excerpt_length' => 10,
32
- 'rss_before_title' => '<li>',
33
- 'rss_after_title' => '</li>',
34
- 'rss_before_post' => ' <small>',
35
- 'rss_after_post' => '</small>',
36
- 'rss_before_related' => '<p>'.__('Related posts:','yarpp').'<ol>',
37
- 'rss_after_related' => '</ol></p>',
38
- 'rss_no_results' => '<p>'.__('No related posts.','yarpp').'</p>',
39
- 'rss_order' => 'score DESC',
40
- 'title' => '2',
41
- 'body' => '2',
42
- 'categories' => '2',
43
- 'tags' => '2',
44
- 'distags' => '',
45
- 'discats' => '');
46
- $yarpp_binary_options = array('past_only' => true,
47
- 'show_excerpt' => false,
48
- 'recent_only' => false, // new in 3.0
49
- 'use_template' => false, // new in 2.2
50
- 'rss_show_excerpt' => false,
51
- 'rss_use_template' => false, // new in 2.2
52
- 'show_pass_post' => false,
53
- 'cross_relate' => false,
54
- 'auto_display' => true,
55
- 'rss_display' => false, // changed default in 3.1.7
56
- 'rss_excerpt_display' => true,
57
- 'promote_yarpp' => false,
58
- 'rss_promote_yarpp' => false);
59
// These are options which, when updated, will trigger a clearing of the cache
60
- $yarpp_clear_cache_options = array('distags','discats','show_pass_post','recent_only','threshold','title','body','categories','tags');
61
62
function yarpp_enabled() {
63
global $wpdb, $yarpp_cache;
@@ -71,12 +75,6 @@ function yarpp_enabled() {
71
return false;
72
}
73
74
- function yarpp_reinforce() {
75
- if (!get_option('yarpp_version'))
76
- yarpp_activate();
77
- yarpp_upgrade_check(true);
78
- }
79
-
80
function yarpp_activate() {
81
global $yarpp_version, $wpdb, $yarpp_binary_options, $yarpp_value_options, $yarpp_cache;
82
foreach (array_keys($yarpp_value_options) as $option) {
@@ -89,22 +87,13 @@ function yarpp_activate() {
89
}
90
91
$wpdb->get_results("show index from $wpdb->posts where Key_name='yarpp_title'");
92
- if (!$wpdb->num_rows) {
93
- if (!$wpdb->query("ALTER TABLE $wpdb->posts ADD FULLTEXT `yarpp_title` ( `post_title`)")) {
94
- echo "<!--MySQL error on adding yarpp_title: ";
95
- $wpdb->print_error();
96
- echo "-->";
97
- }
98
- }
99
100
$wpdb->get_results("show index from $wpdb->posts where Key_name='yarpp_content'");
101
- if (!$wpdb->num_rows) {
102
- if (!$wpdb->query("ALTER TABLE $wpdb->posts ADD FULLTEXT `yarpp_content` ( `post_content`)")) {
103
- echo "<!--".__('MySQL error on adding yarpp_content','yarpp').": ";
104
- $wpdb->print_error();
105
- echo "-->";
106
- }
107
- }
108
if (!yarpp_enabled()) {
109
// If we are still not enabled, run the cache abstraction's setup method.
110
$yarpp_cache->setup();
@@ -112,8 +101,12 @@ function yarpp_activate() {
112
if (!yarpp_enabled())
113
return 0;
114
}
115
- add_option('yarpp_version',YARPP_VERSION);
116
- update_option('yarpp_version',YARPP_VERSION);
117
return 1;
118
}
119
@@ -127,8 +120,12 @@ function yarpp_myisam_check() {
127
return 'UNKNOWN';
128
}
129
130
- function yarpp_upgrade_check($inuse = false) {
131
- global $wpdb, $yarpp_value_options, $yarpp_binary_options;
132
133
foreach (array_keys($yarpp_value_options) as $option) {
134
if (get_option("yarpp_$option") === false)
@@ -139,29 +136,9 @@ function yarpp_upgrade_check($inuse = false) {
139
add_option("yarpp_$option",$yarpp_binary_options[$option]);
140
}
141
142
- // upgrade check
143
-
144
- if (get_option('threshold') and get_option('limit') and get_option('len')) {
145
- yarpp_activate();
146
- yarpp_upgrade_one_five();
147
- update_option('yarpp_version','1.5');
148
- }
149
-
150
- if (version_compare('3.2',get_option('yarpp_version')) > 0) {
151
- // check for unnecessary cache tables
152
- // Currently commented out because this depends on the cache engine
153
- // $wpdb->query('DROP TABLE IF EXISTS ' . $wpdb->prefix . 'yarpp_related_cache');
154
- // $wpdb->query('DROP TABLE IF EXISTS ' . $wpdb->prefix . 'yarpp_keyword_cache');
155
- }
156
157
update_option('yarpp_version',YARPP_VERSION);
158
-
159
- // just in case, try to add the index one more time.
160
- if (!yarpp_enabled()) {
161
- $wpdb->query("ALTER TABLE $wpdb->posts ADD FULLTEXT `yarpp_title` ( `post_title`)");
162
- $wpdb->query("ALTER TABLE $wpdb->posts ADD FULLTEXT `yarpp_content` ( `post_content`)");
163
- }
164
-
165
}
166
167
function yarpp_admin_menu() {
@@ -403,27 +380,7 @@ function apply_filters_if_white($tag, $value) {
403
return $value;
404
}
405
406
- // upgrade to 1.5!
407
- function yarpp_upgrade_one_five() {
408
- global $wpdb;
409
- $migrate_options = array('past_only','show_excerpt','show_pass_post','cross_relate','limit','threshold','before_title','after_title','before_post','after_post');
410
- foreach ($migrate_options as $option) {
411
- if (get_option($option) !== null) {
412
- update_option("yarpp_$option",get_option($option));
413
- delete_option($option);
414
- }
415
- }
416
- // len is one option where we actually change the name of the option
417
- update_option('yarpp_excerpt_length',get_option('len'));
418
- delete_option('len');
419
-
420
- // override these defaults for those who upgrade from < 1.5
421
- update_option('yarpp_auto_display',false);
422
- update_option('yarpp_before_related','');
423
- update_option('yarpp_after_related','');
424
- unset($yarpp_version);
425
- }
426
-
427
if (!defined('LOREMIPSUM'))
428
define('LOREMIPSUM','Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Cras tincidunt justo a urna. Ut turpis. Phasellus convallis, odio sit amet cursus convallis, eros orci scelerisque velit, ut sodales neque nisl at ante. Suspendisse metus. Curabitur auctor pede quis mi. Pellentesque lorem justo, condimentum ac, dapibus sit amet, ornare et, erat. Quisque velit. Etiam sodales dui feugiat neque suscipit bibendum. Integer mattis. Nullam et ante non sem commodo malesuada. Pellentesque ultrices fermentum lectus. Maecenas hendrerit neque ac est. Fusce tortor mi, tristique sed, cursus at, pellentesque non, dui. Suspendisse potenti.');
429
12
13
global $yarpp_value_options, $yarpp_binary_options, $yarpp_clear_cache_options;
14
// 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.
15
+ $yarpp_value_options = array(
16
+ 'threshold' => 5,
17
+ 'limit' => 5,
18
+ 'template_file' => '', // new in 2.2
19
+ 'excerpt_length' => 10,
20
+ 'recent_number' => 12,
21
+ 'recent_units' => 'month',
22
+ 'before_title' => '<li>',
23
+ 'after_title' => '</li>',
24
+ 'before_post' => ' <small>',
25
+ 'after_post' => '</small>',
26
+ 'before_related' => '<p>'.__('Related posts:','yarpp').'</p><ol>',
27
+ 'after_related' => '</ol>',
28
+ 'no_results' => '<p>'.__('No related posts.','yarpp').'</p>',
29
+ 'order' => 'score DESC',
30
+ 'rss_limit' => 3,
31
+ 'rss_template_file' => '', // new in 2.2
32
+ 'rss_excerpt_length' => 10,
33
+ 'rss_before_title' => '<li>',
34
+ 'rss_after_title' => '</li>',
35
+ 'rss_before_post' => ' <small>',
36
+ 'rss_after_post' => '</small>',
37
+ 'rss_before_related' => '<p>'.__('Related posts:','yarpp').'<ol>',
38
+ 'rss_after_related' => '</ol></p>',
39
+ 'rss_no_results' => '<p>'.__('No related posts.','yarpp').'</p>',
40
+ 'rss_order' => 'score DESC',
41
+ 'title' => '2',
42
+ 'body' => '2',
43
+ 'categories' => '2',
44
+ 'tags' => '2',
45
+ 'distags' => '',
46
+ 'discats' => '');
47
+ $yarpp_binary_options = array(
48
+ 'past_only' => true,
49
+ 'show_excerpt' => false,
50
+ 'recent_only' => false, // new in 3.0
51
+ 'use_template' => false, // new in 2.2
52
+ 'rss_show_excerpt' => false,
53
+ 'rss_use_template' => false, // new in 2.2
54
+ 'show_pass_post' => false,
55
+ 'cross_relate' => false,
56
+ 'auto_display' => true,
57
+ 'rss_display' => false, // changed default in 3.1.7
58
+ 'rss_excerpt_display' => true,
59
+ 'promote_yarpp' => false,
60
+ 'rss_promote_yarpp' => false);
61
// These are options which, when updated, will trigger a clearing of the cache
62
+ $yarpp_clear_cache_options = array(
63
+ 'distags','discats','show_pass_post','recent_only','threshold','title','body','categories',
64
+ 'tags');
65
66
function yarpp_enabled() {
67
global $wpdb, $yarpp_cache;
75
return false;
76
}
77
78
function yarpp_activate() {
79
global $yarpp_version, $wpdb, $yarpp_binary_options, $yarpp_value_options, $yarpp_cache;
80
foreach (array_keys($yarpp_value_options) as $option) {
87
}
88
89
$wpdb->get_results("show index from $wpdb->posts where Key_name='yarpp_title'");
90
+ if (!$wpdb->num_rows)
91
+ $wpdb->query("ALTER TABLE $wpdb->posts ADD FULLTEXT `yarpp_title` ( `post_title` )");
92
93
$wpdb->get_results("show index from $wpdb->posts where Key_name='yarpp_content'");
94
+ if (!$wpdb->num_rows)
95
+ $wpdb->query("ALTER TABLE $wpdb->posts ADD FULLTEXT `yarpp_content` ( `post_content` )");
96
+
97
if (!yarpp_enabled()) {
98
// If we are still not enabled, run the cache abstraction's setup method.
99
$yarpp_cache->setup();
101
if (!yarpp_enabled())
102
return 0;
103
}
104
+
105
+ if (!get_option('yarpp_version'))
106
+ add_option('yarpp_version',YARPP_VERSION);
107
+ else
108
+ yarpp_upgrade_check();
109
+
110
return 1;
111
}
112
120
return 'UNKNOWN';
121
}
122
123
+ function yarpp_upgrade_check() {
124
+ $last_version = get_option('yarpp_version');
125
+ if (version_compare(YARPP_VERSION, $last_version) === 0)
126
+ return;
127
+
128
+ global $yarpp_value_options, $yarpp_binary_options, $yarpp_cache;
129
130
foreach (array_keys($yarpp_value_options) as $option) {
131
if (get_option("yarpp_$option") === false)
136
add_option("yarpp_$option",$yarpp_binary_options[$option]);
137
}
138
139
+ $yarpp_cache->upgrade($last_version);
140
141
update_option('yarpp_version',YARPP_VERSION);
142
}
143
144
function yarpp_admin_menu() {
380
return $value;
381
}
382
383
+ // Used only in demo mode
384
if (!defined('LOREMIPSUM'))
385
define('LOREMIPSUM','Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Cras tincidunt justo a urna. Ut turpis. Phasellus convallis, odio sit amet cursus convallis, eros orci scelerisque velit, ut sodales neque nisl at ante. Suspendisse metus. Curabitur auctor pede quis mi. Pellentesque lorem justo, condimentum ac, dapibus sit amet, ornare et, erat. Quisque velit. Etiam sodales dui feugiat neque suscipit bibendum. Integer mattis. Nullam et ante non sem commodo malesuada. Pellentesque ultrices fermentum lectus. Maecenas hendrerit neque ac est. Fusce tortor mi, tristique sed, cursus at, pellentesque non, dui. Suspendisse potenti.');
386
intl.php CHANGED
@@ -14,6 +14,8 @@ function word_file_lang() {
14
return 'pl_PL';
15
case preg_match("/^bg/i",WPLANG):
16
return 'bg_BG';
17
default:
18
return 'en_US';
19
}
14
return 'pl_PL';
15
case preg_match("/^bg/i",WPLANG):
16
return 'bg_BG';
17
+ case preg_match("/^fr/i",WPLANG):
18
+ return 'fr_FR';
19
default:
20
return 'en_US';
21
}
lang/words-fr_FR.php ADDED
@@ -0,0 +1,3 @@
1
+ <?php
2
+
3
+ $overusedwords = array('', 'le', 'de', 'un', 'être', 'et', 'à', 'il', 'avoir', 'ne', 'je', 'son', 'que', 'se', 'qui', 'ce', 'dans', 'en', 'du', 'elle', 'au', 'de', 'ce', 'le', 'pour', 'pas', 'que', 'vous', 'par', 'sur', 'faire', 'plus', 'dire', 'me', 'on', 'mon', 'lui', 'nous', 'comme', 'mais', 'pouvoir', 'avec', 'tout', 'y', 'aller', 'voir', 'en', 'bien', 'où', 'sans', 'tu', 'ou', 'leur', 'homme', 'si', 'deux', 'mari', 'moi', 'vouloir', 'te', 'femme', 'venir', 'quand', 'grand', 'celui', 'si', 'notre', 'devoir', 'là', 'jour', 'prendre', 'même', 'votre', 'tout', 'rien', 'petit', 'encore', 'aussi', 'quelque', 'dont', 'tout', 'mer', 'trouver', 'donner', 'temps', 'ça', 'peu', 'même', 'falloir', 'sous', 'parler', 'alors', 'main', 'chose', 'ton', 'mettre', 'vie', 'savoir', 'yeux', 'passer', 'autre', 'après', 'regarder', 'toujours', 'puis', 'jamais', 'cela', 'aimer', 'non', 'heure', 'croire', 'cent', 'monde', 'donc', 'enfant', 'fois', 'seul', 'autre', 'entre', 'vers', 'chez', 'demander', 'jeune', 'jusque', 'très', 'moment', 'rester', 'répondre', 'tout', 'tête', 'père', 'fille', 'mille', 'premier', 'car', 'entendre', 'ni', 'bon', 'trois', 'cœur', 'ainsi', 'an', 'quatre', 'un', 'terre', 'contre', 'dieu', 'monsieur', 'voix', 'penser', 'quel', 'arriver', 'maison', 'devant', 'coup', 'beau', 'connaître', 'devenir', 'air', 'mot', 'nuit', 'sentir', 'eau', 'vieux', 'sembler', 'moins', 'tenir', 'ici', 'comprendre', 'oui', 'rendre', 'toi', 'vingt', 'depuis', 'attendre', 'sortir', 'ami', 'trop', 'porte', 'lequel', 'chaque', 'amour', 'pendant', 'déjà', 'pied', 'tant', 'gens', 'parce que', 'nom', 'vivre', 'reprendre', 'entrer', 'porter', 'pays', 'ciel', 'avant', 'frère', 'regard', 'chercher', 'âme', 'côté', 'mort', 'revenir', 'noir', 'maintenant', 'nouveau', 'ville', 'rue', 'enfin', 'appeler', 'soir', 'chambre', 'mourir', 'pas', 'partir', 'cinq', 'esprit', 'soleil', 'dernier', 'jeter', 'dix', 'roi', 'état', 'corps', 'beaucoup', 'suivre', 'bras', 'écrire', 'blanc', 'montrer', 'tomber', 'place', 'ouvrir', 'ah', 'parti', 'assez', 'leur', 'cher', 'voilà', 'année', 'loin', 'point', 'visage', 'bruit', 'lettre', 'franc', 'fond', 'force', 'arrêter', 'perdre', 'commencer', 'paraître', 'aucun', 'marcher', 'milieu', 'saint', 'idée', 'presque', 'ailleurs', 'travail', 'lumière', 'long', 'seulement', 'mois', 'fils', 'neuf', 'tel', 'lever', 'raison', 'effet', 'gouvernement', 'permettre', 'pauvre', 'asseoir', 'point', 'plein', 'personne', 'vrai', 'peuple', 'fait', 'parole', 'guerre', 'toute', 'écouter', 'pensée', 'affaire', 'quoi', 'matin', 'pierre', 'monter', 'bas', 'vent', 'doute', 'front', 'ombre', 'part', 'maître', 'aujourd\'hui', 'besoin', 'question', 'apercevoir', 'recevoir', 'mieux', 'peine', 'tour', 'servir', 'oh', 'autour', 'près', 'finir', 'famille', 'pourquoi', 'souvent', 'rire', 'dessus', 'madame', 'sorte', 'figure', 'droit', 'peur', 'bout', 'lieu', 'silence', 'gros', 'chef', 'eh', 'six', 'bois', 'mari', 'histoire', 'crier', 'jouer', 'feu', 'tourner', 'doux', 'longtemps', 'fort', 'heureux', 'comme', 'garder', 'partie', 'face', 'mouvement', 'fin', 'reconnaître', 'quitter', 'personne', 'comment', 'route', 'dès', 'manger', 'livre', 'arbre', 'courir', 'cas', 'huit', 'lorsque', 'mur', 'ordre', 'continuer', 'bonheur', 'oublier', 'descendre', 'haut', 'intérêt', 'cacher', 'l\'un', 'chacun', 'profond', 'argent', 'cause', 'poser', 'autant', 'est', 'travers', 'grand', 'instant', 'façon', 'd\'abord', 'oeil', 'tirer', 'forme', 'présenter', 'ajouter', 'agir', 'retrouver', 'chemin', 'cheveu', 'offrir', 'surtout', 'certain', 'plaisir', 'suite', 'apprendre', 'malgré', 'tuer', 'rouge', 'sang', 'retourner', 'rencontrer', 'sentiment', 'fleur', 'cependant', 'service', 'plusieurs', 'table', 'vite', 'paix', 'envoyer', 'moyen', 'dormir', 'pousser', 'lit', 'humain', 'voiture', 'rappeler', 'être', 'lire', 'général', 'nature', 'or', 'pouvoir', 'nouveau', 'français', 'joie', 'sept', 'tard', 'président', 'pourtant', 'bouche', 'changer', 'petit', 'froid', 'compter', 'occuper', 'sens', 'cri', 'cheval', 'loi', 'sombre', 'ci', 'sûr', 'espèce', 'voici', 'ancien', 'tandis que', 'frapper', 'ministre', 'puisque', 'selon', 'travailler', 'expliquer', 'propre', 'obtenir', 'rentrer', 'mal', 'pleurer', 'essayer', 'répéter', 'société', 'parfois', 'politique', 'oreille', 'payer', 'politique', 'apporter', 'fenêtre', 'derrière', 'possible', 'fortune', 'compte', 'champ', 'manier', 'vraiment', 'immense', 'action', 'boire', 'public', 'garçon', 'pareil', 'bleu', 'sourire', 'couleur', 'coucher', 'papier', 'd\'autres', 'mal', 'fort', 'bientôt', 'causer', 'pièce', 'montagne', 'sol', 'œuvre', 'partout', 'trente', 'exister', 'cours', 'raconter', 'serrer', 'songer', 'désir', 'manquer', 'cour', 'nommer', 'bord', 'douleur', 'conduire', 'salle', 'saisir', 'premier', 'comment', 'projet', 'demeurer', 'simple', 'étude', 'remettre', 'journal', 'geste', 'disparaître', 'battre', 'toucher', 'situation', 'oiseau', 'nécessaire', 'exemple', 'siècle', 'apparaître', 'souffrir', 'million', 'prix', 'groupe', 'centre', 'malheur', 'honneur', 'fermer', 'accepter', 'garde', 'mauvais', 'tendre', 'naître', 'sauver', 'entier', 'parmi', 'problème', 'larme', 'avancer', 'chien', 'peau', 'reste', 'traverser', 'nombre', 'debout', 'mesure', 'social', 'souvenir', 'article', 'vue', 'couvrir', 'âge', 'gagner', 'système', 'long', 'former', 'plaire', 'embrasser', 'rêve', 'oser', 'afin de', 'passion', 'auquel', 'rapport', 'refuser', 'important', 'décider', 'produire', 'soldat', 'lèvre', 'signe', 'vérité', 'charger', 'mariage', 'mêler', 'certain', 'plan', 'cesser', 'ressembler', 'dos', 'marche', 'souvenir', 'dame', 'chanter', 'plutôt', 'conseil', 'sou', 'triste', 'coin', 'jardin', 'joli', 'soit', 'empêcher', 'doigt', 'objet', 'fer', 'lendemain', 'lentement', 'combien', 'approcher', 'prier', 'train', 'espérer', 'papa', 'différent', 'valeur', 'jeu', 'échapper', 'glisser', 'secret', 'haut', 'vieillard', 'briller', 'docteur', 'brûler', 'terrible', 'placer', 'ton', 'jambe', 'juger', 'suffire', 'endroit', 'minute', 'atteindre', 'nuage', 'présence', 'fou', 'épaule', 'léger', 'feuille', 'liberté', 'journée', 'libre', 'annoncer', 'avenir', 'sourire', 'hier', 'résultat', 'élever', 'acheter', 'mener', 'préparer', 'pourquoi', 'hôtel', 'semaine', 'forêt', 'assurer', 'pur', 'qualité', 'prince', 'bien', 'également', 'deviner', 'médecin', 'considérer', 'volonté', 'seigneur', 'effort', 'quelque', 'vert', 'art', 'moindre', 'demain', 'quarante', 'cinquante', 'foule', 'appartenir', 'aussitôt', 'ligne', 'représenter', 'tromper', 'intérieur', 'vendre', 'beauté', 'riche', 'craindre', 'étrange', 'emporter', 'ensuite', 'soin', 'naturel', 'hasard', 'puis', 'condition', 'quinze', 'classe', 'voyage', 'auprès', 'présent', 'caractère', 'attention', 'gris', 'or', 'rouler', 'faible', 'posséder', 'scène', 'difficile', 'français', 'réveiller', 'foi', 'aider', 'découvrir', 'odeur', 'choisir', 'musique', 'oncle', 'événement', 'prononcer', 'village', 'taire', 'envie', 'midi', 'ensemble', 'expression', 'herbe', 'vieux', 'pluie', 'près', 'bas', 'rêver', 'appuyer', 'étendre', 'après', 'général', 'lutte', 'trembler', 'réponse', 'grâce', 'espace', 'habitude', 'défendre', 'mémoire', 'créer', 'grave', 'maintenir', 'verre', 'campagne', 'quelqu\'un', 'juge', 'genou', 'impossible', 'fête', 'indiquer', 'prêt', 'promettre', 'relever', 'abandonner', 'ignorer', 'large', 'parent', 'colère', 'exprimer', 'étoile', 'devoir', 'conscience', 'existence', 'accompagner', 'immobile', 'adresser', 'observer', 'juste', 'puissance', 'matière', 'sable', 'séparer', 'marier', 'prévoir', 'vivant', 'accord', 'hiver', 'retour', 'autrefois', 'genre', 'd\'autres', 'vif', 'amener', 'obliger', 'acte', 'image', 'horizon', 'éclairer', 'poursuivre', 'danger', 'livrer', 'rôle', 'escalier', 'goût', 'bête', 'ceci', 'recherche', 'membre', 'pain', 'phrase', 'contenir', 'rire', 'fuir', 'couler', 'terme', 'eaux', 'moyen', 'police', 'rocher', 'proposer', 'tranquille', 'unique', 'éprouver', 'retenir', 'type', 'vin', 'supérieur', 'attacher', 'voler', 'sec', 'justice', 'époque', 'passage', 'somme', 'science', 'surprendre', 'côte', 'doucement', 'gauche', 'faute', 'école', 'bon', 'ensemble', 'rayon', 'briser', 'sujet', 'imaginer', 'diriger', 'douze', 'en', 'l\'une', 'dernier', 'avis', 'parvenir', 'ouvert', 'pénétrer', 'poète', 'meilleur', 'paysan', 'remarquer', 'chair', 'éviter', 'soudain', 'succès', 'île', 'établir', 'réussir', 'pencher', 'habiter', 'entourer', 'déclarer', 'détail', 'arme', 'réalité', 'confiance', 'masse', 'crise', 'étonner', 'poste', 'dresser', 'durer', 'depuis', 'faux', 'fixer', 'énorme', 'principe', 'direction', 'taille', 'désirer', 'santé', 'ventre', 'marché', 'puissant', 'simplement', 'environ', 'tellement', 'arracher', 'entraîner', 'soutenir', 'couper', 'trou', 'inconnu', 'pont', 'lune', 'dehors', 'certes', 'beaux', 'robe', 'douter', 'retirer', 'cesse', 'brusquement', 'entrée', 'source', 'camarade', 'dent', 'quant à', 'connaissance', 'cou', 'but', 'promener', 'vague', 'élément', 'fil', 'voie', 'nez', 'forcer', 'particulier', 'discours', 'maladie', 'chaleur', 'gloire', 'vide', 'examiner', 'revoir', 'aide', 'début', 'ennemi', 'second', 'aile', 'flamme', 'chaise', 'lourd', 'sein', 'véritable', 'toit', 'remplir', 'terminer', 'vaste', 'nu', 'poussière', 'nord', 'tenter', 'émotion', 'hors', 'un', 'remonter', 'révolution', 'théâtre', 'armée', 'court', 'noir', 'appartement', 'semblable', 'installer', 'haine', 'jeune', 'position', 'seconde', 'frais', 'appel', 'soulever', 'espoir', 'allumer', 'imposer', 'avant', 'respirer', 'arrière', 'baisser', 'droite', 'poitrine', 'mort', 'jeunesse', 'bureau', 'sac', 'étranger', 'courage', 'souffler', 'jaune', 'page', 'étranger', 'etc', 'miser', 'passé', 'rapide', 'digne', 'chaud', 'propos', 'attirer', 'prêter', 'clair', 'amuser', 'occasion', 'voile', 'éclater', 'importance', 'quartier', 'soi', 'auteur', 'religion', 'palais', 'réunir', 'traiter', 'flot', 'intelligence', 'tantôt', 'voisin', 'carte', 'secret', 'animal', 'été', 'traîner', 'cabinet', 'morceau', 'employer', 'capable', 'souffrance', 'marquer', 'prouver', 'importer', 'titre', 'désert', 'facile', 'spectacle', 'exiger', 'reposer', 'départ', 'fier', 'danser', 'demande', 'saluer', 'lueur', 'joue', 'saint', 'accorder', 'prière', 'achever', 'avouer', 'distinguer', 'emmener', 'fonction', 'durant', 'haut', 'aspect', 'sommeil', 'éclat', 'moitié', 'demi', 'calme', 'contraire', 'colline', 'agiter', 'hésiter', 'terrain', 'rare', 'poids', 'sonner', 'changement', 'charge', 'davantage', 'composer', 'enlever', 'poche', 'rejoindre', 'son', 'intérieur', 'veille', 'ramener', 'fruit', 'complet', 'étudier', 'partager', 'croix', 'suivant', 'chasser', 'interrompre', 'éloigner', 'trésor', 'compagnie', 'étroit', 'cuisine', 'réduire', 'engager', 'égal', 'empire', 'nation', 'éteindre', 'recommencer', 'sauter', 'plaindre', 'conversation', 'soirée', 'violent', 'impression', 'trait', 'devant', 'préférer', 'révéler', 'sien', 'magnifique', 'désespoir', 'témoin', 'visite', 'respect', 'solitude', 'subir', 'delà', 'prochain', 'anglais', 'rapporter', 'coûter', 'réfléchir', 'officier', 'remercier', 'déposer', 'fauteuil', 'fumer', 'tôt', 'affirmer', 'relation', 'fumée', 'convenir', 'branche', 'malade', 'circonstance', 'ouvrage', 'compagnon', 'vêtir', 'expérience', 'port', 'accomplir', 'avec', 'résoudre', 'plonger', 'goutte', 'mien', 'chant', 'détruire', 'combat', 'personnage', 'aventure', 'intéresser', 'disposer', 'absence', 'machine', 'aucun', 'grâce', 'chaîne', 'honte', 'fait', 'lisser', 'faim', 'plaine', 'verser', 'pointe', 'obéir', 'preuve', 'éternel', 'lutter', 'prétendre', 'bataille', 'construire', 'énergie', 'victime', 'sauvage', 'soumettre', 'usage', 'peser', 'double', 'tache', 'guère', 'hauteur', 'troubler', 'tendre', 'beau', 'curiosité', 'répandre', 'glace', 'résister', 'froid', 'prison', 'étage', 'billet', 'droit', 'sérieux', 'protéger', 'pauvre', 'rose', 'enfermer', 'attitude', 'dur', 'mode', 'neuf', 'crainte', 'creuser', 'grandir', 'enfoncer', 'vêtement', 'envelopper', 'vague', 'prévenir', 'violence', 'inspirer', 'inutile', 'content', 'courant', 'folie', 'pitié', 'intention', 'ramasser', 'endormir', 'inventer', 'trace', 'toile', 'presser', 'confier', 'effacer', 'reculer', 'user', 'blanc', 'nourrir', 'dangereux', 'poésie', 'sommet', 'remplacer', 'souhaiter', 'avance', 'autorité', 'épais', 'inquiétude', 'choix', 'tombe', 'marchand', 'nombreux', 'muet', 'signer', 'absolument', 'cercle', 'interroger', 'dominer', 'défaut', 'enfance', 'faveur', 'réel', 'commander', 'supposer', 'dépasser', 'sourd', 'cruel', 'dimanche', 'erreur', 'cerveau', 'accuser', 'arrivée', 'rapidement', 'vol', 'habiller', 'condamner', 'lors', 'menacer', 'seuil', 'écraser', 'perte', 'troisième', 'chance', 'vieil', 'même', 'céder', 'douceur', 'droite', 'vide', 'autrement', 'drôle', 'ruine', 'écarter', 'rang', 'réclamer', 'chiffre', 'voisin', 'militaire', 'roche', 'distance', 'apparence', 'dessiner', 'conclure', 'françois', 'lier', 'discussion', 'admettre', 'banc', 'terreur', 'attaquer', 'vers', 'respecter', 'rose', 'silencieux', 'anglais', 'course', 'portier', 'chat', 'pendre', 'supporter', 'tempête', 'parfaitement', 'paysage', 'quart', 'figurer', 'profiter', 'accrocher', 'calmer', 'satisfaire', 'public', 'race', 'valoir', 'barbe', 'signifier', 'couche', 'inquiéter', 'colon', 'désormais', 'fidèle', 'assister', 'rideau', 'inviter', 'déchirer', 'fatigue', 'risquer', 'règle', 'gauche', 'parcourir', 'présent', 'rejeter', 'naissance', 'loup', 'renoncer', 'complètement', 'extraordinaire', 'veiller', 'transformer', 'tracer', 'chute', 'divers', 'résistance', 'contenter', 'chemise', 'mince', 'naturellement', 'siège', 'as', 'patron', 'calme', 'mériter', 'printemps', 'angoisse', 'précipiter', 'rompre', 'habitant', 'plein', 'caresser', 'métier', 'étouffer', 'animer', 'note', 'passé', 'fine', 'fixe', 'casser', 'fusil', 'rond', 'agent', 'fonder', 'roman', 'franchir', 'plante', 'abattre', 'discuter', 'fatiguer', 'humide', 'réflexion', 'consentir', 'accent', 'curieux', 'repas', 'étendue', 'regretter', 'joindre', 'profondément', 'secours', 'commencement', 'corde', 'secrétaire', 'vaincre', 'saison', 'précieux', 'précis', 'consulter', 'haïr', 'repousser', 'paupière', 'certainement', 'tapis', 'noire', 'chasse', 'exécuter', 'nerveux', 'nul', 'commun', 'exposer', 'clef', 'claire', 'voyager', 'haute', 'renverser', 'sueur', 'âgé', 'ferme', 'rassurer', 'retomber', 'décrire', 'mentir', 'instinct', 'armer', 'paquet', 'drame', 'absolu', 'savoir', 'mine', 'vision', 'étaler', 'sentier', 'demain', 'beau', 'blond', 'essuyer', 'planche', 'précéder', 'dehors', 'salut', 'tâche', 'désigner', 'fin', 'abri', 'détacher', 'recueillir', 'rencontre', 'croiser', 'entretenir', 'rouge', 'professeur', 'surveiller', 'visible', 'perdu', 'réserver', 'bas', 'lien', 'queue', 'bande', 'confondre', 'grain', 'mensonge', 'dégager', 'probablement', 'illusion', 'incapable', 'parer', 'épreuve', 'immédiatement', 'attente', 'visiter', 'instrument', 'évidemment', 'auparavant', 'détourner', 'explication', 'régulier', 'reproche', 'souci', 'plier', 'extrême', 'accueillir', 'juif', 'leçon', 'redevenir', 'approuver', 'parfait', 'emparer', 'aborder', 'heurter', 'tel', 'noyer', 'semer', 'ferme', 'manche', 'rage', 'gré', 'guider', 'piquer', 'meilleur', 'la', 'une', 'des', 'les', 'ces', 'tes', 'ma', 'fais');
lang/yarpp-pt_PT.po CHANGED
@@ -27,18 +27,18 @@ msgstr "MySQL-Erro ao adicionar \"yarpp_content\""
27
28
#: includes.php:185
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>Mensagem de YARPP</h3><p>Obrigado por actualizar para o YARPP 2. Esta vers�o inclui melhorias no algoritmo m�gico, permite-lhe configurar op��es na quantifica��o das v�rias palavras-chave ou categoria, tem em considera��o as op��es da utiliza��o de determinadas regras de exclus�o e permite-lhe determinar a for�a das vari�veis \"Conte�do\", \"Sobret�tulo\", \"Palavras-chave\" und \"Categorias\". Para mais informa��es, consulte <a href=\"http://mitcho.com/code/yarpp/\">Documenta��o YARPP </a>.</p><p>Esta mensagem nunca mais aparecer�!</p>"
31
32
#: includes.php:197
33
#: includes.php:197
34
msgid "Related Posts (YARPP)"
35
- msgstr "Contribui��es parecidas (YARPP)"
36
37
#: includes.php:224
38
#: yarpp.php:31
39
#: yarpp.php:31
40
msgid "Related Posts"
41
- msgstr "Contribui��es parecidas"
42
43
#: includes.php:229
44
msgid "YARPP"
@@ -47,7 +47,7 @@ msgstr "YARPP"
47
#: template-builtin.php:35
48
#, php-format
49
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."
50
- msgstr "%f a concord�ncia determinada pelo YARPP entre este artigo e o artigo parecido (Valor de relev�ncia). Consegue ver este artigo porque est� a utilizar uma conta de administrador da WordPress. Visitantes normais n�o o v�em."
51
52
#: magic.php:322
53
#: options.php:458
@@ -57,22 +57,22 @@ msgstr "Artigos parecidos fornecidos por <a href='http://mitcho.com/code/yarpp/'
57
58
#: options.php:26
59
msgid "The MyISAM check has been overridden. You may now use the \"consider titles\" and \"consider bodies\" relatedness criteria."
60
- msgstr "O MyISAM-Check foi suspenso. Pode agora utilizar \"consider titles\" e \"consider bodies\" como crit�rio de relev�ncia."
61
62
#: options.php:35
63
#, php-format
64
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."
65
- msgstr "YARPPs \"consider titles\" und \"consider bodies\" Os crit�rios \"consider titles\" und \"consider bodies\" de relev�ncia da YARPP requerem que a sua tabela <code>%s</code> utilize a <a href='http://dev.mysql.com/doc/refman/5.0/en/storage-engines.html'>MyISAM Storage Engine</a>, mas a tabela parece utilizar a <code>%s</code>-Engine. As duas op��es foram desactivadas."
66
67
#: options.php:37
68
#, php-format
69
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."
70
- msgstr "Para reactivar esta fun��o, execute o c�digo <code>%s</code> com o comando SQL: <code>ALTER TABLE `%s` ENGINE = MyISAM;</code>."
71
72
#: options.php:39
73
#, php-format
74
msgid "If, despite this check, you are sure that <code>%s</code> is using the MyISAM engine, press this magic button:"
75
- msgstr "Se, mesmo depois desta verifica��o, tiver a certeza de que <code>%s</code> utiliza a MyISAM-Engine, clique no bot�o m�gico:"
76
77
#: options.php:42
78
msgid "Trust me. Let me use MyISAM features."
@@ -84,13 +84,13 @@ msgstr "Ocorreu um erro na base de dados da YARPP que pode contudo ser corrigido
84
85
#: options.php:67
86
msgid "The YARPP database has an error which could not be fixed."
87
- msgstr "Ocorreu um erro na base de dados da YARPP que n�o pode ser corrigido."
88
89
#: options.php:154
90
#: options.php:171
91
#: options.php:183
92
msgid "do not consider"
93
- msgstr ""n�o ter em conta""
94
95
#: options.php:155
96
#: options.php:172
@@ -104,16 +104,16 @@ msgstr "ter especialmente em conta"
104
105
#: options.php:201
106
msgid "Yet Another Related Posts Plugin version history (RSS 2.0)"
107
- msgstr "Hist�rico da vers�o YARPP (RSS 2.0)"
108
109
#: options.php:271
110
#: options.php:271
111
msgid "Donate to mitcho (Michael Yoshitaka Erlewine) for this plugin via PayPal"
112
- msgstr "Fazer uma doa��o via PayPal a mitcho (Michael Yoshitaka Erlewine) pelo desenvolvimento do plugin"
113
114
#: options.php:255
115
msgid "Yet Another Related Posts Plugin Options"
116
- msgstr "Op��es da YARPP"
117
118
#: options.php:278
119
msgid "\"The Pool\""
@@ -121,7 +121,7 @@ msgstr "\"Pool\""
121
122
#: options.php:279
123
msgid "\"The Pool\" refers to the pool of posts and pages that are candidates for display as related to the current entry."
124
- msgstr "O plugin tem em conta todos os artigos e p�ginas que s�o mencionados (ou n�o exclu�dos) neste \"Pool\"."
125
126
#: options.php:284
127
msgid "Disallow by category:"
@@ -141,12 +141,12 @@ msgstr "Ter em conta apenas artigos passados?"
141
142
#: options.php:306
143
msgid "\"Relatedness\" options"
144
- msgstr "Op��es de parecen�a"
145
146
#: options.php:308
147
#, php-format
148
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>."
149
- msgstr "YA YARPP funciona de um modo um pouco diferente do que [a href=\"http://wasabi.pbwiki.com/Related%20Entries\"]outros plugins de funcionalidade semelhante[/a]: A YARPP tem em conta n�o s� a quantidade de contribui��es por si inserida, como tamb�m o valor \"Relev�ncia\"."
150
151
#: options.php:308
152
#: options.php:322
@@ -163,11 +163,11 @@ msgstr "?"
163
164
#: options.php:313
165
msgid "Match threshold:"
166
- msgstr "Relev�ncia:"
167
168
#: options.php:314
169
msgid "Titles: "
170
- msgstr "Sobret�tulos:"
171
172
#: options.php:316
173
msgid "Bodies: "
@@ -183,41 +183,41 @@ msgstr "Categorias:"
183
184
#: options.php:322
185
msgid "Cross-relate posts and pages?"
186
- msgstr "Emitir artigos e p�ginas em conjunto?"
187
188
#: options.php:322
189
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."
190
- msgstr "Se a op��o \"Emitir artigos e p�ginas em conjunto \" estiver activa, as fun��es <code>related_posts()</code>, <code>related_pages()</code>, e <code>related_entries()</code> emitem o mesmo: Nas contribui��es parecidas n�o aparecem artigos nem p�ginas!"
191
192
#: options.php:401
193
msgid "Display options <small>for your website</small>"
194
- msgstr "Apresenta��o <small>(Website)</small>"
195
196
#: options.php:405
197
msgid "Automatically display related posts?"
198
- msgstr "Mostrar contribui��es parecidas automaticamente?"
199
200
#: options.php:405
201
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."
202
- msgstr "Quando activada, a YARPP anexa apenas a emiss�o de contribui��es parecidas aos artigos actuais. Se estiver desactivada, ter� de tratar da apresenta��o no modelo com as fun��es <code>related_posts()</code> ou variantes (<code>related_pages()</code> ou <code>related_entries()</code>).
203
204
#: options.php:406
205
msgid "Website display code example"
206
- msgstr "Exemplo de um c�digo-fonte para o an�ncio da p�gina"
207
208
#: options.php:406
209
#: options.php:471
210
msgid "(Update options to reload.)"
211
- msgstr "Para ver as suas op��es aqui, ter� de guardar primeiro as op��es!"
212
213
#: options.php:409
214
#: options.php:473
215
msgid "Maximum number of related posts:"
216
- msgstr "Quantidade m�xima de contribui��es:"
217
218
#: options.php:422
219
msgid "Before / after related entries:"
220
- msgstr "C�digo-fonte antes / depois das contribui��es parecidas:"
221
222
#: options.php:423
223
#: options.php:428
@@ -231,7 +231,7 @@ msgstr "Ex.:"
231
#: options.php:427
232
#: options.php:491
233
msgid "Before / after each related entry:"
234
- msgstr "C�digo-fonte antes / depois das respectivas contribui��es:"
235
236
#: options.php:431
237
#: options.php:495
@@ -245,47 +245,47 @@ msgstr "Comprimento do excerto (Quantidade de palavras):"
245
246
#: options.php:436
247
msgid "Before / after (Excerpt):"
248
- msgstr "C�digo-fonte antes / depois dos respectivos excertos:"
249
250
#: options.php:442
251
#: options.php:506
252
msgid "Order results:"
253
- msgstr "Sequ�ncia dos an�ncios:"
254
255
#: options.php:444
256
#: options.php:508
257
msgid "score (high relevance to low)"
258
- msgstr "Relev�ncia (da maior mais pequena)"
259
260
#: options.php:445
261
#: options.php:509
262
msgid "score (low relevance to high)"
263
- msgstr "Relev�ncia (da mais pequena maior)"
264
265
#: options.php:446
266
#: options.php:510
267
msgid "date (new to old)"
268
- msgstr "Estampa da hora (da mais actual mais velha)"
269
270
#: options.php:447
271
#: options.php:511
272
msgid "date (old to new)"
273
- msgstr "Estampa da hora (da mais antiga mais actual)"
274
275
#: options.php:448
276
#: options.php:512
277
msgid "title (alphabetical)"
278
- msgstr "Sobret�tulo (A-Z)"
279
280
#: options.php:449
281
#: options.php:513
282
msgid "title (reverse alphabetical)"
283
- msgstr "Sobret�tulo (Z-A)"
284
285
#: options.php:454
286
#: options.php:518
287
msgid "Default display if no results:"
288
- msgstr "C�digo-fonte quando forem encontrados 0 artigos relevantes:"
289
290
#: options.php:456
291
#: options.php:520
@@ -296,35 +296,35 @@ msgstr "Aplicar a YARPP discretamente?"
296
#: options.php:521
297
#, php-format
298
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."
299
- msgstr "Quando activado, aparece nos resultados uma pequena informa��o em rela��o ao autor e plugin das contribui��es parecidas. Adiciona o c�digo %s."
300
301
#: options.php:464
302
msgid "Display options <small>for RSS</small>"
303
- msgstr "Apresenta��o <small>(RSS)</small>"
304
305
#: options.php:469
306
msgid "Display related posts in feeds?"
307
- msgstr "Mostrar contribui��es parecidas nos feeds de not�cias?"
308
309
#: options.php:470
310
msgid "Display related posts in the descriptions?"
311
- msgstr "Mostrar contribui��es em Descriptions?"
312
313
#: options.php:470
314
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."
315
- msgstr "Mostra as contribui��es parecidas tamb�m em RSS-Descriptions, n�o s� em Content."
316
317
#: options.php:471
318
msgid "RSS display code example"
319
- msgstr "Exemplos de an�ncios RSS"
320
321
#: options.php:486
322
msgid "Before / after related entries display:"
323
- msgstr "C�digo-fonte antes / depois das contribui��es parecidas:"
324
325
#: options.php:500
326
msgid "Before / after (excerpt):"
327
- msgstr "C�digo-fonte antes / depois do excerto:"
328
329
#: options.php:148
330
msgid "word"
@@ -352,7 +352,7 @@ msgstr "mais do que igual a %s"
352
353
#: options.php:126
354
msgid "Options saved!"
355
- msgstr "Op��es gravadas!"
356
357
#: options.php:308
358
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, take a look at some post's related posts display and their scores. 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."
@@ -360,15 +360,15 @@ msgstr ""
360
361
#: options.php:606
362
msgid "Update options"
363
- msgstr "Actualizar op��es"
364
365
#: options.php:607
366
msgid "Do you really want to reset your configuration?"
367
- msgstr "Deseja mesmo reverter as op��es?"
368
369
#: options.php:607
370
msgid "Reset options"
371
- msgstr "Reverter op��es"
372
373
#: includes.php:24
374
#: includes.php:35
@@ -425,7 +425,7 @@ msgid "If you updated the \"pool\" options or \"relatedness\" options displayed,
425
msgstr ""
426
427
#: options.php:273
428
- msgid "by <a href=\"http://mitcho.com/code/\">mitcho (Michael 芳貴 Erlewine)</a>"
429
msgstr ""
430
431
#: options.php:273
27
28
#: includes.php:185
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>Mensagem de YARPP</h3><p>Obrigado por actualizar para o YARPP 2. Esta versão inclui melhorias no algoritmo mágico, permite-lhe configurar opções na quantificação das várias palavras-chave ou categoria, tem em consideração as opções da utilização de determinadas regras de exclusão e permite-lhe determinar a força das variáveis \"Conteúdo\", \"Sobretítulo\", \"Palavras-chave\" und \"Categorias\". Para mais informações, consulte <a href=\"http://mitcho.com/code/yarpp/\">Documentação YARPP </a>.</p><p>Esta mensagem nunca mais aparecerá!</p>"
31
32
#: includes.php:197
33
#: includes.php:197
34
msgid "Related Posts (YARPP)"
35
+ msgstr "Contribuições parecidas (YARPP)"
36
37
#: includes.php:224
38
#: yarpp.php:31
39
#: yarpp.php:31
40
msgid "Related Posts"
41
+ msgstr "Contribuições parecidas"
42
43
#: includes.php:229
44
msgid "YARPP"
47
#: template-builtin.php:35
48
#, php-format
49
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."
50
+ msgstr "%f é a concordância determinada pelo YARPP entre este artigo e o artigo parecido (Valor de relevância). Consegue ver este artigo porque está a utilizar uma conta de administrador da WordPress. Visitantes normais não o vêem."
51
52
#: magic.php:322
53
#: options.php:458
57
58
#: options.php:26
59
msgid "The MyISAM check has been overridden. You may now use the \"consider titles\" and \"consider bodies\" relatedness criteria."
60
+ msgstr "O MyISAM-Check foi suspenso. Pode agora utilizar \"consider titles\" e \"consider bodies\" como critério de relevância."
61
62
#: options.php:35
63
#, php-format
64
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."
65
+ msgstr "YARPPs \"consider titles\" und \"consider bodies\" Os critérios \"consider titles\" und \"consider bodies\" de relevância da YARPP requerem que a sua tabela <code>%s</code> utilize a <a href='http://dev.mysql.com/doc/refman/5.0/en/storage-engines.html'>MyISAM Storage Engine</a>, mas a tabela parece utilizar a <code>%s</code>-Engine. As duas opções foram desactivadas."
66
67
#: options.php:37
68
#, php-format
69
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."
70
+ msgstr "Para reactivar esta função, execute o código <code>%s</code> com o comando SQL: <code>ALTER TABLE `%s` ENGINE = MyISAM;</code>."
71
72
#: options.php:39
73
#, php-format
74
msgid "If, despite this check, you are sure that <code>%s</code> is using the MyISAM engine, press this magic button:"
75
+ msgstr "Se, mesmo depois desta verificação, tiver a certeza de que <code>%s</code> utiliza a MyISAM-Engine, clique no botão mágico:"
76
77
#: options.php:42
78
msgid "Trust me. Let me use MyISAM features."
84
85
#: options.php:67
86
msgid "The YARPP database has an error which could not be fixed."
87
+ msgstr "Ocorreu um erro na base de dados da YARPP que não pode ser corrigido."
88
89
#: options.php:154
90
#: options.php:171
91
#: options.php:183
92
msgid "do not consider"
93
+ msgstr ""não ter em conta""
94
95
#: options.php:155
96
#: options.php:172
104
105
#: options.php:201
106
msgid "Yet Another Related Posts Plugin version history (RSS 2.0)"
107
+ msgstr "Histórico da versão YARPP (RSS 2.0)"
108
109
#: options.php:271
110
#: options.php:271
111
msgid "Donate to mitcho (Michael Yoshitaka Erlewine) for this plugin via PayPal"
112
+ msgstr "Fazer uma doação via PayPal a mitcho (Michael Yoshitaka Erlewine) pelo desenvolvimento do plugin"
113
114
#: options.php:255
115
msgid "Yet Another Related Posts Plugin Options"
116
+ msgstr "Opções da YARPP"
117
118
#: options.php:278
119
msgid "\"The Pool\""
121
122
#: options.php:279
123
msgid "\"The Pool\" refers to the pool of posts and pages that are candidates for display as related to the current entry."
124
+ msgstr "O plugin tem em conta todos os artigos e páginas que são mencionados (ou não excluídos) neste \"Pool\"."
125
126
#: options.php:284
127
msgid "Disallow by category:"
141
142
#: options.php:306
143
msgid "\"Relatedness\" options"
144
+ msgstr "Opções de parecença"
145
146
#: options.php:308
147
#, php-format
148
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>."
149
+ msgstr "YA YARPP funciona de um modo um pouco diferente do que [a href=\"http://wasabi.pbwiki.com/Related%20Entries\"]outros plugins de funcionalidade semelhante[/a]: A YARPP tem em conta não a quantidade de contribuições por si inserida, como também o valor \"Relevância\"."
150
151
#: options.php:308
152
#: options.php:322
163
164
#: options.php:313
165
msgid "Match threshold:"
166
+ msgstr "Relevância:"
167
168
#: options.php:314
169
msgid "Titles: "
170
+ msgstr "Sobretítulos:"
171
172
#: options.php:316
173
msgid "Bodies: "
183
184
#: options.php:322
185
msgid "Cross-relate posts and pages?"
186
+ msgstr "Emitir artigos e páginas em conjunto?"
187
188
#: options.php:322
189
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."
190
+ msgstr "Se a opção \"Emitir artigos e páginas em conjunto \" estiver activa, as funções <code>related_posts()</code>, <code>related_pages()</code>, e <code>related_entries()</code> emitem o mesmo: Nas contribuições parecidas não aparecem artigos nem páginas!"
191
192
#: options.php:401
193
msgid "Display options <small>for your website</small>"
194
+ msgstr "Apresentação <small>(Website)</small>"
195
196
#: options.php:405
197
msgid "Automatically display related posts?"
198
+ msgstr "Mostrar contribuições parecidas automaticamente?"
199
200
#: options.php:405
201
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."
202
+ msgstr "Quando activada, a YARPP anexa apenas a emissão de contribuições parecidas aos artigos actuais. Se estiver desactivada, terá de tratar da apresentação no modelo com as funções <code>related_posts()</code> ou variantes (<code>related_pages()</code> ou <code>related_entries()</code>).
203
204
#: options.php:406
205
msgid "Website display code example"
206
+ msgstr "Exemplo de um código-fonte para o anúncio da página"
207
208
#: options.php:406
209
#: options.php:471
210
msgid "(Update options to reload.)"
211
+ msgstr "Para ver as suas opções aqui, terá de guardar primeiro as opções!"
212
213
#: options.php:409
214
#: options.php:473
215
msgid "Maximum number of related posts:"
216
+ msgstr "Quantidade máxima de contribuições:"
217
218
#: options.php:422
219
msgid "Before / after related entries:"
220
+ msgstr "Código-fonte antes / depois das contribuições parecidas:"
221
222
#: options.php:423
223
#: options.php:428
231
#: options.php:427
232
#: options.php:491
233
msgid "Before / after each related entry:"
234
+ msgstr "Código-fonte antes / depois das respectivas contribuições:"
235
236
#: options.php:431
237
#: options.php:495
245
246
#: options.php:436
247
msgid "Before / after (Excerpt):"
248
+ msgstr "Código-fonte antes / depois dos respectivos excertos:"
249
250
#: options.php:442
251
#: options.php:506
252
msgid "Order results:"
253
+ msgstr "Sequência dos anúncios:"
254
255
#: options.php:444
256
#: options.php:508
257
msgid "score (high relevance to low)"
258
+ msgstr "Relevância (da maior à mais pequena)"
259
260
#: options.php:445
261
#: options.php:509
262
msgid "score (low relevance to high)"
263
+ msgstr "Relevância (da mais pequena à maior)"
264
265
#: options.php:446
266
#: options.php:510
267
msgid "date (new to old)"
268
+ msgstr "Estampa da hora (da mais actual à mais velha)"
269
270
#: options.php:447
271
#: options.php:511
272
msgid "date (old to new)"
273
+ msgstr "Estampa da hora (da mais antiga à mais actual)"
274
275
#: options.php:448
276
#: options.php:512
277
msgid "title (alphabetical)"
278
+ msgstr "Sobretítulo (A-Z)"
279
280
#: options.php:449
281
#: options.php:513
282
msgid "title (reverse alphabetical)"
283
+ msgstr "Sobretítulo (Z-A)"
284
285
#: options.php:454
286
#: options.php:518
287
msgid "Default display if no results:"
288
+ msgstr "Código-fonte quando forem encontrados 0 artigos relevantes:"
289
290
#: options.php:456
291
#: options.php:520
296
#: options.php:521
297
#, php-format
298
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."
299
+ msgstr "Quando activado, aparece nos resultados uma pequena informação em relação ao autor e plugin das contribuições parecidas. Adiciona o código %s."
300
301
#: options.php:464
302
msgid "Display options <small>for RSS</small>"
303
+ msgstr "Apresentação <small>(RSS)</small>"
304
305
#: options.php:469
306
msgid "Display related posts in feeds?"
307
+ msgstr "Mostrar contribuições parecidas nos feeds de notícias?"
308
309
#: options.php:470
310
msgid "Display related posts in the descriptions?"
311
+ msgstr "Mostrar contribuições em Descriptions?"
312
313
#: options.php:470
314
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."
315
+ msgstr "Mostra as contribuições parecidas também em RSS-Descriptions, não em Content."
316
317
#: options.php:471
318
msgid "RSS display code example"
319
+ msgstr "Exemplos de anúncios RSS"
320
321
#: options.php:486
322
msgid "Before / after related entries display:"
323
+ msgstr "Código-fonte antes / depois das contribuições parecidas:"
324
325
#: options.php:500
326
msgid "Before / after (excerpt):"
327
+ msgstr "Código-fonte antes / depois do excerto:"
328
329
#: options.php:148
330
msgid "word"
352
353
#: options.php:126
354
msgid "Options saved!"
355
+ msgstr "Opções gravadas!"
356
357
#: options.php:308
358
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, take a look at some post's related posts display and their scores. 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."
360
361
#: options.php:606
362
msgid "Update options"
363
+ msgstr "Actualizar opções"
364
365
#: options.php:607
366
msgid "Do you really want to reset your configuration?"
367
+ msgstr "Deseja mesmo reverter as opções?"
368
369
#: options.php:607
370
msgid "Reset options"
371
+ msgstr "Reverter opções"
372
373
#: includes.php:24
374
#: includes.php:35
425
msgstr ""
426
427
#: options.php:273
428
+ msgid "by <a href=\"http://mitcho.com/code/\">mitcho (Michael 芳貴 Erlewine)</a>"
429
msgstr ""
430
431
#: options.php:273
magic.php CHANGED
@@ -144,7 +144,7 @@ function yarpp_sql($type,$args,$giveresults = true,$reference_ID=false,$domain='
144
$newsql .= " and post_type = 'post'";
145
146
// GROUP BY
147
- $newsql .= "\n group by id \n";
148
// HAVING
149
// safethreshold is so the new calibration system works.
150
// number_format fix suggested by vkovalcik! :)
@@ -176,7 +176,9 @@ function yarpp_sql($type,$args,$giveresults = true,$reference_ID=false,$domain='
176
/* new in 3.0! new query-based approach: EXTREMELY HACKY! */
177
178
function yarpp_related($type,$args,$echo = true,$reference_ID=false,$domain = 'website') {
179
- global $post, $yarpp_demo_time, $wp_query, $id, $page, $pages, $authordata, $day, $currentmonth, $multipage, $more, $pagenow, $numpages, $yarpp_cache;
180
181
if ($domain != 'demo_web' and $domain != 'demo_rss') {
182
if ($yarpp_cache->yarpp_time) // if we're already in a YARPP loop, stop now.
@@ -185,7 +187,7 @@ function yarpp_related($type,$args,$echo = true,$reference_ID=false,$domain = 'w
185
if (is_object($post) and !$reference_ID)
186
$reference_ID = $post->ID;
187
} else {
188
- if ($yarpp_demo_time) // if we're already in a YARPP loop, stop now.
189
return false;
190
}
191
@@ -221,8 +223,13 @@ function yarpp_related($type,$args,$echo = true,$reference_ID=false,$domain = 'w
221
222
if ($domain != 'demo_web' and $domain != 'demo_rss')
223
$yarpp_cache->begin_yarpp_time($reference_ID); // get ready for YARPP TIME!
224
- else
225
- $yarpp_demo_time = true;
226
// just so we can return to normal later
227
$current_query = $wp_query;
228
$current_post = $post;
@@ -268,7 +275,7 @@ function yarpp_related($type,$args,$echo = true,$reference_ID=false,$domain = 'w
268
if ($domain != 'demo_web' and $domain != 'demo_rss')
269
$yarpp_cache->end_yarpp_time(); // YARPP time is over... :(
270
else
271
- $yarpp_demo_time = false;
272
273
// restore the older wp_query.
274
$wp_query = null; $wp_query = $current_query; unset($current_query);
@@ -293,6 +300,8 @@ function yarpp_related($type,$args,$echo = true,$reference_ID=false,$domain = 'w
293
function yarpp_related_exist($type,$args,$reference_ID=false) {
294
global $post, $yarpp_cache;
295
296
if (is_object($post) and !$reference_ID)
297
$reference_ID = $post->ID;
298
@@ -353,10 +362,16 @@ function yarpp_delete_cache($post_ID) {
353
354
// New in 3.2.1: handle various post_status transitions
355
function yarpp_status_transition($new_status, $old_status, $post) {
356
switch ($new_status) {
357
case "draft":
358
yarpp_delete_cache($post->ID);
359
break;
360
}
361
}
362
144
$newsql .= " and post_type = 'post'";
145
146
// GROUP BY
147
+ $newsql .= "\n group by ID \n";
148
// HAVING
149
// safethreshold is so the new calibration system works.
150
// number_format fix suggested by vkovalcik! :)
176
/* new in 3.0! new query-based approach: EXTREMELY HACKY! */
177
178
function yarpp_related($type,$args,$echo = true,$reference_ID=false,$domain = 'website') {
179
+ global $post, $wp_query, $id, $page, $pages, $authordata, $day, $currentmonth, $multipage, $more, $pagenow, $numpages, $yarpp_cache;
180
+
181
+ yarpp_upgrade_check();
182
183
if ($domain != 'demo_web' and $domain != 'demo_rss') {
184
if ($yarpp_cache->yarpp_time) // if we're already in a YARPP loop, stop now.
187
if (is_object($post) and !$reference_ID)
188
$reference_ID = $post->ID;
189
} else {
190
+ if ($yarpp_cache->demo_time) // if we're already in a YARPP loop, stop now.
191
return false;
192
}
193
223
224
if ($domain != 'demo_web' and $domain != 'demo_rss')
225
$yarpp_cache->begin_yarpp_time($reference_ID); // get ready for YARPP TIME!
226
+ else {
227
+ $yarpp_cache->demo_time = true;
228
+ if ($domain == 'demo_web')
229
+ $yarpp_cache->demo_limit = yarpp_get_option('limit');
230
+ else
231
+ $yarpp_cache->demo_limit = yarpp_get_option('rss_limit');
232
+ }
233
// just so we can return to normal later
234
$current_query = $wp_query;
235
$current_post = $post;
275
if ($domain != 'demo_web' and $domain != 'demo_rss')
276
$yarpp_cache->end_yarpp_time(); // YARPP time is over... :(
277
else
278
+ $yarpp_cache->demo_time = false;
279
280
// restore the older wp_query.
281
$wp_query = null; $wp_query = $current_query; unset($current_query);
300
function yarpp_related_exist($type,$args,$reference_ID=false) {
301
global $post, $yarpp_cache;
302
303
+ yarpp_upgrade_check();
304
+
305
if (is_object($post) and !$reference_ID)
306
$reference_ID = $post->ID;
307
362
363
// New in 3.2.1: handle various post_status transitions
364
function yarpp_status_transition($new_status, $old_status, $post) {
365
+ global $yarpp_cache;
366
switch ($new_status) {
367
case "draft":
368
yarpp_delete_cache($post->ID);
369
break;
370
+ case "publish":
371
+ // find everything which is related to this post, and clear them, so that this
372
+ // post might show up as related to them.
373
+ $related = $yarpp_cache->related($post->ID, null);
374
+ $yarpp_cache->clear($related);
375
}
376
}
377
options.php CHANGED
@@ -2,6 +2,12 @@
2
3
global $wpdb, $yarpp_value_options, $yarpp_binary_options, $wp_version, $yarpp_cache;
4
5
// if action=flush, reset the cache
6
if (isset($_GET['action']) && $_GET['action'] == 'flush') {
7
$yarpp_cache->flush();
@@ -54,32 +60,19 @@ if (!yarpp_get_option('myisam_override')) {
54
}
55
}
56
57
- $yarpp_twopointfive = true;
58
- if (version_compare('2.5',$wp_version) > 0) {
59
- echo "$wp_version<div class='updated'>The \"consider tags\" and \"consider categories\" options require WordPress version 2.5. These two options have been disabled.</div>";
60
-
61
- yarpp_set_option('categories',1);
62
- yarpp_set_option('tags',1);
63
- $yarpp_twopointfive = false;
64
- }
65
-
66
- if ($yarpp_myisam) {
67
- if (!yarpp_enabled()) {
68
- echo '<div class="updated"><p>';
69
- if (yarpp_activate())
70
- _e('The YARPP database had an error but has been fixed.','yarpp');
71
- else
72
- __('The YARPP database has an error which could not be fixed.','yarpp')
73
- .str_replace('<A>','<a href=\'http://mitcho.com/code/yarpp/sql.php?prefix='.urlencode($wpdb->prefix).'\'>',__('Please try <A>manual SQL setup</a>.','yarpp'));
74
- echo '</div></p>';
75
- }
76
}
77
78
- yarpp_reinforce(); // just in case, set default options, etc.
79
-
80
if (isset($_POST['update_yarpp'])) {
81
foreach (array_keys($yarpp_value_options) as $option) {
82
- if (is_string($_POST[$option]))
83
yarpp_set_option($option,addslashes($_POST[$option]));
84
}
85
foreach (array('title','body','tags','categories') as $key) {
@@ -192,14 +185,7 @@ function yarpp_options_select($option,$desc,$type='word',$tr="<tr valign='top'>
192
<script type="text/javascript">
193
//<!--
194
195
- var rss=document.createElement("link");
196
- rss.setAttribute("rel", "alternate");
197
- rss.setAttribute("type", "application/rss+xml");
198
- rss.setAttribute('title',"<?php _e("Yet Another Related Posts Plugin version history (RSS 2.0)",'yarpp');?>");
199
- rss.setAttribute("href", "http://mitcho.com/code/yarpp/yarpp.rss");
200
- document.getElementsByTagName("head")[0].appendChild(rss);
201
-
202
- var css=document.createElement("link");
203
css.setAttribute("rel", "stylesheet");
204
css.setAttribute("type", "text/css");
205
css.setAttribute("href", "../wp-content/plugins/yet-another-related-posts-plugin/options.css");
@@ -209,41 +195,41 @@ var spinner = '<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>'
209
210
function load_display_demo_web() {
211
jQuery.ajax({type:'POST',
212
- url:'admin-ajax.php',
213
- data:'action=yarpp_display_demo_web',
214
- beforeSend:function(){jQuery('#display_demo_web').eq(0).html('<img src="' + spinner + '" alt="loading..."/>')},
215
- success:function(html){jQuery('#display_demo_web').eq(0).html('<pre>'+html+'</pre>')},
216
- dataType:'html'}
217
)
218
}
219
220
function load_display_demo_rss() {
221
jQuery.ajax({type:'POST',
222
- url:'admin-ajax.php',
223
- data:'action=yarpp_display_demo_rss',
224
- beforeSend:function(){jQuery('#display_demo_rss').eq(0).html('<img src="'+spinner+'" alt="loading..."/>')},
225
- success:function(html){jQuery('#display_demo_rss').eq(0).html('<pre>'+html+'</pre>')},
226
- dataType:'html'}
227
)
228
}
229
230
function load_display_distags() {
231
jQuery.ajax({type:'POST',
232
- url:'admin-ajax.php',
233
- data:'action=yarpp_display_distags',
234
- beforeSend:function(){jQuery('#display_distags').eq(0).html('<img src="'+spinner+'" alt="loading..."/>')},
235
- success:function(html){jQuery('#display_distags').eq(0).html(html)},
236
- dataType:'html'}
237
)
238
}
239
240
function load_display_discats() {
241
jQuery.ajax({type:'POST',
242
- url:'admin-ajax.php',
243
- data:'action=yarpp_display_discats',
244
- beforeSend:function(){jQuery('#display_discats').eq(0).html('<img src="'+spinner+'" alt="loading..."/>')},
245
- success:function(html){jQuery('#display_discats').eq(0).html(html)},
246
- dataType:'html'}
247
)
248
}
249
//-->
@@ -252,9 +238,7 @@ function load_display_discats() {
252
<div class="wrap">
253
<h2>
254
<?php _e('Yet Another Related Posts Plugin Options','yarpp');?> <small><?php
255
-
256
- $display_version = yarpp_get_option('version');
257
- echo $display_version;
258
?></small>
259
</h2>
260
@@ -265,8 +249,6 @@ function load_display_discats() {
265
<div>
266
<div id="badges" style="float:right">
267
<!--<small><a href="http://wordpress.org/tags/yet-another-related-posts-plugin" style="padding-right: 10px;">Support forums</a></small>-->
268
- <script type="text/javascript">var WPHC_AFF_ID = "14336"; var WPHC_POSITION = "d1"; var WPHC_PRODUCT = "Yet Another Related Posts Plugin (<?php echo yarpp_get_option('version'); ?>)"; var WPHC_WP_VERSION = "<?php echo $wp_version; ?>";</script>
269
- <script src="http://cloud.wphelpcenter.com/support-form/0001/deliver-a.js" type="text/javascript"></script>
270
<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','yarpp');?>" style="padding-left: 10px;"/></a>
271
</div>
272
@@ -338,9 +320,9 @@ function load_display_discats() {
338
yarpp_options_importance2('body',__("Bodies: ",'yarpp'),'word',"<tr valign='top'>
339
<th scope='row'>",(!$yarpp_myisam?' readonly="readonly" disabled="disabled"':''));
340
yarpp_options_importance('tags',__("Tags: ",'yarpp'),'tag',"<tr valign='top'>
341
- <th scope='row'>",(!$yarpp_twopointfive?' readonly="readonly" disabled="disabled"':''));
342
yarpp_options_importance('categories',__("Categories: ",'yarpp'),'category',"<tr valign='top'>
343
- <th scope='row'>",(!$yarpp_twopointfive?' readonly="readonly" disabled="disabled"':''));
344
yarpp_options_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>");
345
yarpp_options_checkbox('past_only',__("Show only previous posts?",'yarpp'));
346
?>
@@ -402,14 +384,20 @@ function load_display_discats() {
402
403
var version = jQuery('#yarpp-version').html();
404
405
- <?php $ajax_nonce= wp_create_nonce('yarpp_version_json');?>
406
jQuery.getJSON(ajaxurl,
407
'action=yarpp_version_json&_ajax_nonce=<?php echo $ajax_nonce; ?>',
408
function(json) {
409
if (json.result == 'newbeta')
410
- jQuery('#yarpp-version').addClass('updated').html(<?php echo "'<p>".str_replace('VERSION',"'+json.beta.version+'",str_replace('<A>',"<a href=\"'+json.beta.url+'\">",addslashes(__("There is a new beta (VERSION) of Yet Another Related Posts Plugin. You can <A>download it here</a> at your own risk.","yarpp"))))."</p>'"?>).show();
411
if (json.result == 'new')
412
- jQuery('#yarpp-version').addClass('updated').html(<?php echo "'<p>".str_replace('VERSION',"'+json.current.version+'",str_replace('<A>',"<a href=\"'+json.current.url+'\">",addslashes(__("There is a new version (VERSION) of Yet Another Related Posts Plugin available! You can <A>download it here</a>.","yarpp"))))."</p>'"?>).show();
413
}
414
);
415
}
2
3
global $wpdb, $yarpp_value_options, $yarpp_binary_options, $wp_version, $yarpp_cache;
4
5
+ // Reenforce YARPP setup:
6
+ if (!get_option('yarpp_version'))
7
+ yarpp_activate();
8
+ else
9
+ yarpp_upgrade_check();
10
+
11
// if action=flush, reset the cache
12
if (isset($_GET['action']) && $_GET['action'] == 'flush') {
13
$yarpp_cache->flush();
60
}
61
}
62
63
+ if ($yarpp_myisam && !yarpp_enabled()) {
64
+ echo '<div class="updated"><p>';
65
+ if (yarpp_activate())
66
+ _e('The YARPP database had an error but has been fixed.','yarpp');
67
+ else
68
+ __('The YARPP database has an error which could not be fixed.','yarpp')
69
+ .str_replace('<A>','<a href=\'http://mitcho.com/code/yarpp/sql.php?prefix='.urlencode($wpdb->prefix).'\'>',__('Please try <A>manual SQL setup</a>.','yarpp'));
70
+ echo '</div></p>';
71
}
72
73
if (isset($_POST['update_yarpp'])) {
74
foreach (array_keys($yarpp_value_options) as $option) {
75
+ if (isset($_POST[$option]) && is_string($_POST[$option]))
76
yarpp_set_option($option,addslashes($_POST[$option]));
77
}
78
foreach (array('title','body','tags','categories') as $key) {
185
<script type="text/javascript">
186
//<!--
187
188
+ var css = document.createElement("link");
189
css.setAttribute("rel", "stylesheet");
190
css.setAttribute("type", "text/css");
191
css.setAttribute("href", "../wp-content/plugins/yet-another-related-posts-plugin/options.css");
195
196
function load_display_demo_web() {
197
jQuery.ajax({type:'POST',
198
+ url: ajaxurl,
199
+ data:'action=yarpp_display_demo_web',
200
+ beforeSend:function(){jQuery('#display_demo_web').eq(0).html('<img src="' + spinner + '" alt="loading..."/>')},
201
+ success:function(html){jQuery('#display_demo_web').eq(0).html('<pre>'+html+'</pre>')},
202
+ dataType:'html'}
203
)
204
}
205
206
function load_display_demo_rss() {
207
jQuery.ajax({type:'POST',
208
+ url: ajaxurl,
209
+ data:'action=yarpp_display_demo_rss',
210
+ beforeSend:function(){jQuery('#display_demo_rss').eq(0).html('<img src="'+spinner+'" alt="loading..."/>')},
211
+ success:function(html){jQuery('#display_demo_rss').eq(0).html('<pre>'+html+'</pre>')},
212
+ dataType:'html'}
213
)
214
}
215
216
function load_display_distags() {
217
jQuery.ajax({type:'POST',
218
+ url: ajaxurl,
219
+ data:'action=yarpp_display_distags',
220
+ beforeSend:function(){jQuery('#display_distags').eq(0).html('<img src="'+spinner+'" alt="loading..."/>')},
221
+ success:function(html){jQuery('#display_distags').eq(0).html(html)},
222
+ dataType:'html'}
223
)
224
}
225
226
function load_display_discats() {
227
jQuery.ajax({type:'POST',
228
+ url: ajaxurl,
229
+ data:'action=yarpp_display_discats',
230
+ beforeSend:function(){jQuery('#display_discats').eq(0).html('<img src="'+spinner+'" alt="loading..."/>')},
231
+ success:function(html){jQuery('#display_discats').eq(0).html(html)},
232
+ dataType:'html'}
233
)
234
}
235
//-->
238
<div class="wrap">
239
<h2>
240
<?php _e('Yet Another Related Posts Plugin Options','yarpp');?> <small><?php
241
+ echo yarpp_get_option('version');
242
?></small>
243
</h2>
244
249
<div>
250
<div id="badges" style="float:right">
251
<!--<small><a href="http://wordpress.org/tags/yet-another-related-posts-plugin" style="padding-right: 10px;">Support forums</a></small>-->
252
<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','yarpp');?>" style="padding-left: 10px;"/></a>
253
</div>
254
320
yarpp_options_importance2('body',__("Bodies: ",'yarpp'),'word',"<tr valign='top'>
321
<th scope='row'>",(!$yarpp_myisam?' readonly="readonly" disabled="disabled"':''));
322
yarpp_options_importance('tags',__("Tags: ",'yarpp'),'tag',"<tr valign='top'>
323
+ <th scope='row'>",'');
324
yarpp_options_importance('categories',__("Categories: ",'yarpp'),'category',"<tr valign='top'>
325
+ <th scope='row'>",'');
326
yarpp_options_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>");
327
yarpp_options_checkbox('past_only',__("Show only previous posts?",'yarpp'));
328
?>
384
385
var version = jQuery('#yarpp-version').html();
386
387
+ <?php $ajax_nonce = wp_create_nonce('yarpp_version_json');?>
388
jQuery.getJSON(ajaxurl,
389
'action=yarpp_version_json&_ajax_nonce=<?php echo $ajax_nonce; ?>',
390
function(json) {
391
if (json.result == 'newbeta')
392
+ jQuery('#yarpp-version')
393
+ .addClass('updated')
394
+ .html(<?php echo "'<p>".str_replace('VERSION',"'+json.beta.version+'",str_replace('<A>',"<a href=\"'+json.beta.url+'\">",addslashes(__("There is a new beta (VERSION) of Yet Another Related Posts Plugin. You can <A>download it here</a> at your own risk.","yarpp"))))."</p>'"?>)
395
+ .show();
396
if (json.result == 'new')
397
+ jQuery('#yarpp-version')
398
+ .addClass('updated')
399
+ .html(<?php echo "'<p>".str_replace('VERSION',"'+json.current.version+'",str_replace('<A>',"<a href=\"'+json.current.url+'\">",addslashes(__("There is a new version (VERSION) of Yet Another Related Posts Plugin available! You can <A>download it here</a>.","yarpp"))))."</p>'"?>)
400
+ .show();
401
}
402
);
403
}
readme.txt CHANGED
@@ -144,7 +144,7 @@ YARPP is currently localized in the following languages:
144
* Egyptian Arabic (`ar_EG`) by Bishoy Antoun (yarpp-ar at mitcho dot com) of [cdmazika.com](http://www.cdmazika.com).
145
* Standard Arabic (`ar`) by [led](http://led24.de) (yarpp-ar at mitcho dot com)
146
* Belarussian (`by_BY`) by [Fat Cow](http://www.fatcow.com)
147
- * Bulgarian (`bg_BG`) by [Flash Gallery](www.flashgallery.org)
148
* Simplified Chinese (`zh_CN`) by Jor Wang (mail at jorwang dot com) of [jorwang.com](http://jorwang.com)
149
* Cypriot Greek (`el_CY`) by Aristidis Tonikidis (yarpp-el at mitcho dot com) of [akouseto.gr](http://www.akouseto.gr)
150
* Dutch (`nl_NL`) by Sybrand van der Werf (yarpp-nl at mitcho dot com)
@@ -160,9 +160,9 @@ YARPP is currently localized in the following languages:
160
* Korean (`ko_KR`) by [Jong-In Kim](http://incommunity.codex.kr) (yarpp-ko at mitcho dot com)
161
* Latvian (`lv_LV`) by [Mike](http://antsar.info) (yarpp-lv at mitcho dot com)
162
* Lithuanian (`lt_LT`) by [Karolis Vyčius](http://vycius.co.cc) and [Mantas Malcius](http://mantas.malcius.lt) (yarpp-lt at mitcho dot com)
163
- * Norwegian (`nb_NO`) by [Tom Arne Sundtjønn](www.datanerden.no) (yarpp-nb at mitcho dot com)
164
* Polish (`pl_PL`) by [Perfecta](http://perfecta.pro/wp-pl/)
165
- * (European) Portuguese (`pt_PT`) by Stefan Mueller (yarpp-pt at mitcho.com) of [fernstadium-net](www.fernstudium-net.de)
166
* Brazilian Portuguese (`pt_BR`) by Rafael Fischmann (yarpp-ptBR at mitcho.com) of [macmagazine.br](http://macmagazine.com.br/)
167
* Russian (`ru_RU`) by Marat Latypov (yarpp-ru at mitcho.com) of [blogocms.ru](http://blogocms.ru)
168
* Swedish (`sv_SE`) by Max Elander (yarpp-sv at mitcho dot com)
@@ -186,10 +186,18 @@ If you are a bilingual speaker of English and another language and an avid user
186
== Changelog ==
187
188
= 3.2.1 =
189
- * Fixed [a bug in `yarpp_related_exists()`](http://wordpress.org/support/topic/plugin-yet-another-related-posts-plugin-fatal-error-call-to-undefined-method-yarpp_cache_tablesstart_yarpp_time)
190
* Better handling of [`post_status` transitions](http://wordpress.org/support/topic/plugin-yet-another-related-posts-plugin-changed-post-to-draft-still-showing-up-as-related-to-other-posts).
191
* Bugfix: [the widget was not working on pages](http://wordpress.org/support/topic/plugin-yet-another-related-posts-plugin-showing-yarp-widget-in-pages-and-subpages)
192
- * Minor security fix in version-checking code
193
= 3.2 =
194
* Better caching performance:
195
* Previously, the cache would never actually build up properly. This is now fixed. Thanks to Artefact for pointing this out.
@@ -197,11 +205,11 @@ If you are a bilingual speaker of English and another language and an avid user
197
* Caching is no longer performed while batch-importing posts.
198
* A new object-based abstraction for the caching system. YARPP by default uses custom database tables (same behavior as 3.1.x), but you now have an option to use the `postmeta` table instead. To use `postmeta` caching, add `define('YARPP_CACHE_TYPE', 'postmeta');` to your `wp-config.php` file.<!--YARPP no longer uses custom tables! Both custom tables (`yarpp_related_cache` and `yarpp_keywords_cache`) are automatically removed if you have them. WordPress Post Meta is used instead for caching.-->
199
* Localizations:
200
- * added Bulgarian (`bg_BG`) by [Flash Gallery](www.flashgallery.org);
201
* added Farsi/Persian (`fa_IR`) by [Moshen Derakhshan](http://webdesigner.downloadkar.com/);
202
* added Bahasa Indonesia (`id_ID`) by [Hendry Lee](http://hendrylee.com/) of [Kelayang](http://kelayang.com/)
203
* added Norwegian (`nb_NO`) by [Tom Arne Sundtjønn](www.datanerden.no);
204
- * added Portuguese (`pt_PT`) by [Stefan Mueller](www.fernstudium-net.de).
205
* updated Lithuanian (`lt_LT`) by [Mantas Malcius](http://mantas.malcius.lt/)
206
* Added [WordPress HelpCenter](http://wphelpcenter.com/) widget for quick access to professional support.
207
* Some code cleanup (bug [#1246](http://plugins.trac.wordpress.org/ticket/1246))
144
* Egyptian Arabic (`ar_EG`) by Bishoy Antoun (yarpp-ar at mitcho dot com) of [cdmazika.com](http://www.cdmazika.com).
145
* Standard Arabic (`ar`) by [led](http://led24.de) (yarpp-ar at mitcho dot com)
146
* Belarussian (`by_BY`) by [Fat Cow](http://www.fatcow.com)
147
+ * Bulgarian (`bg_BG`) by [Flash Gallery](http://www.flashgallery.org)
148
* Simplified Chinese (`zh_CN`) by Jor Wang (mail at jorwang dot com) of [jorwang.com](http://jorwang.com)
149
* Cypriot Greek (`el_CY`) by Aristidis Tonikidis (yarpp-el at mitcho dot com) of [akouseto.gr](http://www.akouseto.gr)
150
* Dutch (`nl_NL`) by Sybrand van der Werf (yarpp-nl at mitcho dot com)
160
* Korean (`ko_KR`) by [Jong-In Kim](http://incommunity.codex.kr) (yarpp-ko at mitcho dot com)
161
* Latvian (`lv_LV`) by [Mike](http://antsar.info) (yarpp-lv at mitcho dot com)
162
* Lithuanian (`lt_LT`) by [Karolis Vyčius](http://vycius.co.cc) and [Mantas Malcius](http://mantas.malcius.lt) (yarpp-lt at mitcho dot com)
163
+ * Norwegian (`nb_NO`) by [Tom Arne Sundtjønn](http://www.datanerden.no) (yarpp-nb at mitcho dot com)
164
* Polish (`pl_PL`) by [Perfecta](http://perfecta.pro/wp-pl/)
165
+ * (European) Portuguese (`pt_PT`) by Stefan Mueller (yarpp-pt at mitcho.com) of [fernstadium-net](http://www.fernstudium-net.de)
166
* Brazilian Portuguese (`pt_BR`) by Rafael Fischmann (yarpp-ptBR at mitcho.com) of [macmagazine.br](http://macmagazine.com.br/)
167
* Russian (`ru_RU`) by Marat Latypov (yarpp-ru at mitcho.com) of [blogocms.ru](http://blogocms.ru)
168
* Swedish (`sv_SE`) by Max Elander (yarpp-sv at mitcho dot com)
186
== Changelog ==
187
188
= 3.2.1 =
189
+ * Bugfix: [Duplicate results shown for some users](http://wordpress.org/support/topic/plugin-yet-another-related-posts-plugin-yarpp-post-duplicate-related-articles)
190
* Better handling of [`post_status` transitions](http://wordpress.org/support/topic/plugin-yet-another-related-posts-plugin-changed-post-to-draft-still-showing-up-as-related-to-other-posts).
191
* Bugfix: [the widget was not working on pages](http://wordpress.org/support/topic/plugin-yet-another-related-posts-plugin-showing-yarp-widget-in-pages-and-subpages)
192
+ * Added overused words list for French, thanks to [saymonz](http://wordpress.org/support/topic/plugin-yet-another-related-posts-plugin-french-overused-words)
193
+ * Minor code cleanup:
194
+ * Fixed [a bug in `yarpp_related_exists()`](http://wordpress.org/support/topic/plugin-yet-another-related-posts-plugin-fatal-error-call-to-undefined-method-yarpp_cache_tablesstart_yarpp_time)
195
+ * Minor security fix in version-checking code
196
+ * Removed legacy code for gracefully upgrading from YARPP versions < 1.5 and working with WordPress versions < 2.8.
197
+ * Cleanup of `yarpp_upgrade_check()` calling
198
+ * Eliminated a couple globals
199
+ * Cleaned up some edge case causes for "unexpected output" on plugin activation
200
+ * Removed WP Help Center badge, as they are closing
201
= 3.2 =
202
* Better caching performance:
203
* Previously, the cache would never actually build up properly. This is now fixed. Thanks to Artefact for pointing this out.
205
* Caching is no longer performed while batch-importing posts.
206
* A new object-based abstraction for the caching system. YARPP by default uses custom database tables (same behavior as 3.1.x), but you now have an option to use the `postmeta` table instead. To use `postmeta` caching, add `define('YARPP_CACHE_TYPE', 'postmeta');` to your `wp-config.php` file.<!--YARPP no longer uses custom tables! Both custom tables (`yarpp_related_cache` and `yarpp_keywords_cache`) are automatically removed if you have them. WordPress Post Meta is used instead for caching.-->
207
* Localizations:
208
+ * added Bulgarian (`bg_BG`) by [Flash Gallery](http://www.flashgallery.org);
209
* added Farsi/Persian (`fa_IR`) by [Moshen Derakhshan](http://webdesigner.downloadkar.com/);
210
* added Bahasa Indonesia (`id_ID`) by [Hendry Lee](http://hendrylee.com/) of [Kelayang](http://kelayang.com/)
211
* added Norwegian (`nb_NO`) by [Tom Arne Sundtjønn](www.datanerden.no);
212
+ * added Portuguese (`pt_PT`) by [Stefan Mueller](http://www.fernstudium-net.de).
213
* updated Lithuanian (`lt_LT`) by [Mantas Malcius](http://mantas.malcius.lt/)
214
* Added [WordPress HelpCenter](http://wphelpcenter.com/) widget for quick access to professional support.
215
* Some code cleanup (bug [#1246](http://plugins.trac.wordpress.org/ticket/1246))
services.php CHANGED
@@ -37,27 +37,19 @@ function yarpp_ajax_display_distags() {
37
}
38
39
function yarpp_ajax_display_demo_web() {
40
- global $wpdb, $post, $yarpp_demo_time, $wp_query, $id, $page, $pages, $yarpp_limit;
41
-
42
header("HTTP/1.1 200");
43
header("Content-Type: text/html; charset=UTF-8");
44
45
- $yarpp_limit = yarpp_get_option('limit');
46
$return = yarpp_related(array('post'),array(),false,false,'demo_web');
47
- unset($yarpp_limit);
48
echo ereg_replace("[\n\r]",'',nl2br(htmlspecialchars($return)));
49
exit;
50
}
51
52
function yarpp_ajax_display_demo_rss() {
53
- global $wpdb, $post, $yarpp_demo_time, $wp_query, $id, $page, $pages, $yarpp_limit;
54
-
55
header("HTTP/1.1 200");
56
header("Content-Type: text/html; charset=UTF-8");
57
58
- $yarpp_limit = yarpp_get_option('rss_limit');
59
$return = yarpp_related(array('post'),array(),false,false,'demo_rss');
60
- unset($yarpp_limit);
61
echo ereg_replace("[\n\r]",'',nl2br(htmlspecialchars($return)));
62
exit;
63
}
37
}
38
39
function yarpp_ajax_display_demo_web() {
40
header("HTTP/1.1 200");
41
header("Content-Type: text/html; charset=UTF-8");
42
43
$return = yarpp_related(array('post'),array(),false,false,'demo_web');
44
echo ereg_replace("[\n\r]",'',nl2br(htmlspecialchars($return)));
45
exit;
46
}
47
48
function yarpp_ajax_display_demo_rss() {
49
header("HTTP/1.1 200");
50
header("Content-Type: text/html; charset=UTF-8");
51
52
$return = yarpp_related(array('post'),array(),false,false,'demo_rss');
53
echo ereg_replace("[\n\r]",'',nl2br(htmlspecialchars($return)));
54
exit;
55
}
yarpp.php CHANGED
@@ -3,7 +3,7 @@
3
Plugin Name: Yet Another Related Posts Plugin
4
Plugin URI: http://mitcho.com/code/yarpp/
5
Description: Returns a list of related entries based on a unique algorithm for display on your blog and RSS feeds. A templating feature allows customization of the display.
6
- Version: 3.2.1b1
7
Author: mitcho (Michael Yoshitaka Erlewine)
8
Author URI: http://mitcho.com/
9
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
@@ -13,7 +13,7 @@ Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=66G4D
13
if (isset($_REQUEST['yarpp_debug']))
14
$yarpp_debug = true;
15
16
- define('YARPP_VERSION','3.2.1b1');
17
define('YARPP_DIR',dirname(__FILE__));
18
// 3.2.1: safer new version checking
19
add_action('wp_ajax_yarpp_version_json', 'yarpp_version_json');
@@ -28,13 +28,12 @@ require_once(YARPP_DIR.'/template-functions.php');
28
// define('YARPP_CACHE_TYPE', 'postmeta');
29
if (!defined('YARPP_CACHE_TYPE'))
30
define('YARPP_CACHE_TYPE', 'tables');
31
require_once(YARPP_DIR . '/cache-' . YARPP_CACHE_TYPE . '.php');
32
- global $yarpp_cache;
33
$yarpp_cache = new $yarpp_storage_class;
34
35
// Setup admin
36
add_action('admin_menu','yarpp_admin_menu');
37
- add_action('admin_print_scripts','yarpp_upgrade_check');
38
add_filter('the_content','yarpp_default',1200);
39
add_filter('the_content_rss','yarpp_rss',600);
40
add_filter('the_excerpt_rss','yarpp_rss_excerpt',600);
@@ -53,7 +52,7 @@ add_action('save_post','yarpp_save_cache');
53
// new in 3.2: update cache on delete
54
add_action('delete_post','yarpp_delete_cache');
55
// new in 3.2.1: handle post_status transitions
56
- add_action('transition_post_status','yarpp_status_transition', 3);
57
58
// sets the score override flag.
59
add_action('parse_query','yarpp_set_score_override_flag');
3
Plugin Name: Yet Another Related Posts Plugin
4
Plugin URI: http://mitcho.com/code/yarpp/
5
Description: Returns a list of related entries based on a unique algorithm for display on your blog and RSS feeds. A templating feature allows customization of the display.
6
+ Version: 3.2.1b2
7
Author: mitcho (Michael Yoshitaka Erlewine)
8
Author URI: http://mitcho.com/
9
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
13
if (isset($_REQUEST['yarpp_debug']))
14
$yarpp_debug = true;
15
16
+ define('YARPP_VERSION','3.2.1b2');
17
define('YARPP_DIR',dirname(__FILE__));
18
// 3.2.1: safer new version checking
19
add_action('wp_ajax_yarpp_version_json', 'yarpp_version_json');
28
// define('YARPP_CACHE_TYPE', 'postmeta');
29
if (!defined('YARPP_CACHE_TYPE'))
30
define('YARPP_CACHE_TYPE', 'tables');
31
+ global $yarpp_cache, $yarpp_storage_class;
32
require_once(YARPP_DIR . '/cache-' . YARPP_CACHE_TYPE . '.php');
33
$yarpp_cache = new $yarpp_storage_class;
34
35
// Setup admin
36
add_action('admin_menu','yarpp_admin_menu');
37
add_filter('the_content','yarpp_default',1200);
38
add_filter('the_content_rss','yarpp_rss',600);
39
add_filter('the_excerpt_rss','yarpp_rss_excerpt',600);
52
// new in 3.2: update cache on delete
53
add_action('delete_post','yarpp_delete_cache');
54
// new in 3.2.1: handle post_status transitions
55
+ add_action('transition_post_status','yarpp_status_transition', 10, 3);
56
57
// sets the score override flag.
58
add_action('parse_query','yarpp_set_score_override_flag');