Version Description
- Added support for WordPress Custom Post Types, new
Custom Styles
tab, timthumb support. Please visit the Settings page to configure soon after upgrade.
=
Download this release
Release Info
Developer | Ajay |
Plugin | Contextual Related Posts |
Version | 1.8 |
Comparing to | |
See all releases |
Code changes from version 1.7.4 to 1.8
- admin.inc.php +68 -0
- contextual-related-posts.php +49 -8
- default.png +0 -0
- default2.png +0 -0
- languages/crp-da_DK.mo +0 -0
- languages/crp-da_DK.po +107 -67
- languages/crp-de_DE.mo +0 -0
- languages/crp-de_DE.po +108 -67
- languages/crp-en_US.mo +0 -0
- languages/crp-en_US.po +107 -67
- languages/crp-en_US.pot +107 -67
- languages/crp-es_ES.mo +0 -0
- languages/crp-es_ES.po +108 -67
- languages/crp-it_IT.mo +0 -0
- languages/crp-it_IT.po +108 -67
- languages/crp-nl_NL.mo +0 -0
- languages/crp-nl_NL.po +108 -67
- languages/crp-ru_RU.mo +0 -0
- languages/crp-ru_RU.po +108 -67
- readme.txt +45 -23
- screenshot-1.png +0 -0
- screenshot-2.png +0 -0
- screenshot-3.png +0 -0
- timthumb/timthumb.php +1244 -0
admin.inc.php
CHANGED
@@ -10,6 +10,12 @@ function crp_options() {
|
|
10 |
$poststable = $wpdb->posts;
|
11 |
|
12 |
$crp_settings = crp_read_options();
|
|
|
|
|
|
|
|
|
|
|
|
|
13 |
|
14 |
if($_POST['crp_save']){
|
15 |
$crp_settings[title] = ($_POST['title']);
|
@@ -32,10 +38,12 @@ function crp_options() {
|
|
32 |
$crp_settings[thumb_height] = intval($_POST['thumb_height']);
|
33 |
$crp_settings[thumb_width] = intval($_POST['thumb_width']);
|
34 |
$crp_settings[thumb_default_show] = (($_POST['thumb_default_show']) ? true : false);
|
|
|
35 |
$crp_settings[scan_images] = (($_POST['scan_images']) ? true : false);
|
36 |
$crp_settings[show_excerpt] = (($_POST['show_excerpt']) ? true : false);
|
37 |
$crp_settings[excerpt_length] = intval($_POST['excerpt_length']);
|
38 |
$crp_settings[show_credit] = (($_POST['show_credit']) ? true : false);
|
|
|
39 |
|
40 |
$exclude_categories_slugs = explode(", ",$crp_settings[exclude_cat_slugs]);
|
41 |
|
@@ -46,8 +54,19 @@ function crp_options() {
|
|
46 |
}
|
47 |
$crp_settings[exclude_categories] = substr($exclude_categories, 0, -2);
|
48 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
49 |
update_option('ald_crp_settings', $crp_settings);
|
50 |
|
|
|
|
|
|
|
|
|
51 |
$str = '<div id="message" class="updated fade"><p>'. __('Options saved successfully.',CRP_LOCAL_NAME) .'</p></div>';
|
52 |
echo $str;
|
53 |
}
|
@@ -57,6 +76,13 @@ function crp_options() {
|
|
57 |
$crp_settings = crp_default_options();
|
58 |
update_option('ald_crp_settings', $crp_settings);
|
59 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
60 |
$str = '<div id="message" class="updated fade"><p>'. __('Options set to Default.',CRP_LOCAL_NAME) .'</p></div>';
|
61 |
echo $str;
|
62 |
}
|
@@ -117,6 +143,9 @@ function crp_options() {
|
|
117 |
<?php require_once(ABSPATH . WPINC . '/rss.php'); wp_widget_rss_output('http://ajaydsouza.com/archives/category/wordpress/plugins/feed/', array('items' => 5, 'show_author' => 0, 'show_date' => 1));
|
118 |
?>
|
119 |
</div>
|
|
|
|
|
|
|
120 |
</div>
|
121 |
|
122 |
<div id="options-div">
|
@@ -164,6 +193,20 @@ function crp_options() {
|
|
164 |
<tr style="vertical-align: top;"><th scope="row"><label for="exclude_pages"><?php _e('Exclude Pages in Related Posts',CRP_LOCAL_NAME); ?></label></th>
|
165 |
<td><input type="checkbox" name="exclude_pages" id="exclude_pages" <?php if ($crp_settings[exclude_pages]) echo 'checked="checked"' ?> /></td>
|
166 |
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
167 |
<tr style="vertical-align: top;"><th scope="row"><label for="show_credit"><?php _e('Add a link to the plugin page as a final item in the list',CRP_LOCAL_NAME); ?></label></th>
|
168 |
<td><input type="checkbox" name="show_credit" id="show_credit" <?php if ($crp_settings[show_credit]) echo 'checked="checked"' ?> /> <?php _e(' <em>Optional</em>',CRP_LOCAL_NAME); ?></td>
|
169 |
</tr>
|
@@ -239,6 +282,9 @@ function crp_options() {
|
|
239 |
<tr style="vertical-align: top;"><th scope="row"><label for="thumb_height"><?php _e('Maximum height of the thumbnail: ',CRP_LOCAL_NAME); ?></label></th>
|
240 |
<td><input type="textbox" name="thumb_height" id="thumb_height" value="<?php echo attribute_escape(stripslashes($crp_settings[thumb_height])); ?>" style="width:30px" />px</td>
|
241 |
</tr>
|
|
|
|
|
|
|
242 |
<tr style="vertical-align: top;"><th scope="row"><label for="thumb_meta"><?php _e('Post thumbnail meta field name: ',CRP_LOCAL_NAME); ?></label></th>
|
243 |
<td><input type="textbox" name="thumb_meta" id="thumb_meta" value="<?php echo attribute_escape(stripslashes($crp_settings[thumb_meta])); ?>"> <br /><?php _e('The value of this field should contain the image source and is set in the <em>Add New Post</em> screen',CRP_LOCAL_NAME); ?></td>
|
244 |
</tr>
|
@@ -253,6 +299,16 @@ function crp_options() {
|
|
253 |
</tr>
|
254 |
</table>
|
255 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
256 |
</div>
|
257 |
<p>
|
258 |
<input type="submit" name="crp_save" id="crp_save" value="Save Options" style="border:#0C0 1px solid" />
|
@@ -294,6 +350,18 @@ function crp_adminmenu() {
|
|
294 |
}
|
295 |
add_action('admin_menu', 'crp_adminmenu');
|
296 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
297 |
function crp_adminhead() {
|
298 |
global $crp_url;
|
299 |
|
10 |
$poststable = $wpdb->posts;
|
11 |
|
12 |
$crp_settings = crp_read_options();
|
13 |
+
parse_str($crp_settings['post_types'],$post_types);
|
14 |
+
$wp_post_types = get_post_types( array(
|
15 |
+
'public' => true,
|
16 |
+
) );
|
17 |
+
$posts_types_inc = array_intersect($wp_post_types, $post_types);
|
18 |
+
|
19 |
|
20 |
if($_POST['crp_save']){
|
21 |
$crp_settings[title] = ($_POST['title']);
|
38 |
$crp_settings[thumb_height] = intval($_POST['thumb_height']);
|
39 |
$crp_settings[thumb_width] = intval($_POST['thumb_width']);
|
40 |
$crp_settings[thumb_default_show] = (($_POST['thumb_default_show']) ? true : false);
|
41 |
+
$crp_settings[thumb_timthumb] = (($_POST['thumb_timthumb']) ? true : false);
|
42 |
$crp_settings[scan_images] = (($_POST['scan_images']) ? true : false);
|
43 |
$crp_settings[show_excerpt] = (($_POST['show_excerpt']) ? true : false);
|
44 |
$crp_settings[excerpt_length] = intval($_POST['excerpt_length']);
|
45 |
$crp_settings[show_credit] = (($_POST['show_credit']) ? true : false);
|
46 |
+
$crp_settings[custom_CSS] = $_POST['custom_CSS'];
|
47 |
|
48 |
$exclude_categories_slugs = explode(", ",$crp_settings[exclude_cat_slugs]);
|
49 |
|
54 |
}
|
55 |
$crp_settings[exclude_categories] = substr($exclude_categories, 0, -2);
|
56 |
|
57 |
+
$wp_post_types = get_post_types( array(
|
58 |
+
'public' => true,
|
59 |
+
) );
|
60 |
+
$post_types_arr = (is_array($_POST['post_types'])) ? $_POST['post_types'] : array('post' => 'post');
|
61 |
+
$post_types = array_intersect($wp_post_types, $post_types_arr);
|
62 |
+
$crp_settings[post_types] = http_build_query($post_types, '', '&');
|
63 |
+
|
64 |
update_option('ald_crp_settings', $crp_settings);
|
65 |
|
66 |
+
$crp_settings = crp_read_options();
|
67 |
+
parse_str($crp_settings['post_types'],$post_types);
|
68 |
+
$posts_types_inc = array_intersect($wp_post_types, $post_types);
|
69 |
+
|
70 |
$str = '<div id="message" class="updated fade"><p>'. __('Options saved successfully.',CRP_LOCAL_NAME) .'</p></div>';
|
71 |
echo $str;
|
72 |
}
|
76 |
$crp_settings = crp_default_options();
|
77 |
update_option('ald_crp_settings', $crp_settings);
|
78 |
|
79 |
+
$crp_settings = crp_read_options();
|
80 |
+
parse_str($crp_settings['post_types'],$post_types);
|
81 |
+
$wp_post_types = get_post_types( array(
|
82 |
+
'public' => true,
|
83 |
+
) );
|
84 |
+
$posts_types_inc = array_intersect($wp_post_types, $post_types);
|
85 |
+
|
86 |
$str = '<div id="message" class="updated fade"><p>'. __('Options set to Default.',CRP_LOCAL_NAME) .'</p></div>';
|
87 |
echo $str;
|
88 |
}
|
143 |
<?php require_once(ABSPATH . WPINC . '/rss.php'); wp_widget_rss_output('http://ajaydsouza.com/archives/category/wordpress/plugins/feed/', array('items' => 5, 'show_author' => 0, 'show_date' => 1));
|
144 |
?>
|
145 |
</div>
|
146 |
+
<div class="side-widget">
|
147 |
+
<iframe src="//www.facebook.com/plugins/likebox.php?href=http%3A%2F%2Fwww.facebook.com%2Fajaydsouzacom&width=292&height=62&colorscheme=light&show_faces=false&border_color&stream=false&header=true&appId=113175385243" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:292px; height:62px;" allowTransparency="true"></iframe>
|
148 |
+
</div>
|
149 |
</div>
|
150 |
|
151 |
<div id="options-div">
|
193 |
<tr style="vertical-align: top;"><th scope="row"><label for="exclude_pages"><?php _e('Exclude Pages in Related Posts',CRP_LOCAL_NAME); ?></label></th>
|
194 |
<td><input type="checkbox" name="exclude_pages" id="exclude_pages" <?php if ($crp_settings[exclude_pages]) echo 'checked="checked"' ?> /></td>
|
195 |
</tr>
|
196 |
+
<tr style="vertical-align: top;"><th scope="row"><label for="exclude_pages"><?php _e('Post types to include in results (including custom post types)',CRP_LOCAL_NAME); ?></label></th>
|
197 |
+
<td>
|
198 |
+
<select name="post_types[]" multiple="multiple" size="<?php echo min(20,count($wp_post_types)); ?>">
|
199 |
+
<?php foreach ($wp_post_types as $wp_post_type) {
|
200 |
+
$post_type_op = '<option value="'.$wp_post_type.'"';
|
201 |
+
if (in_array($wp_post_type, $posts_types_inc)) $post_type_op .= 'selected="selected"';
|
202 |
+
$post_type_op .= '>'.$wp_post_type.'</option>';
|
203 |
+
echo $post_type_op;
|
204 |
+
}
|
205 |
+
?>
|
206 |
+
</select>
|
207 |
+
<br /><?php _e('Use CTRL on Windows and COMMAND on Mac to select multiple items',CRP_LOCAL_NAME); ?>
|
208 |
+
</td>
|
209 |
+
</tr>
|
210 |
<tr style="vertical-align: top;"><th scope="row"><label for="show_credit"><?php _e('Add a link to the plugin page as a final item in the list',CRP_LOCAL_NAME); ?></label></th>
|
211 |
<td><input type="checkbox" name="show_credit" id="show_credit" <?php if ($crp_settings[show_credit]) echo 'checked="checked"' ?> /> <?php _e(' <em>Optional</em>',CRP_LOCAL_NAME); ?></td>
|
212 |
</tr>
|
282 |
<tr style="vertical-align: top;"><th scope="row"><label for="thumb_height"><?php _e('Maximum height of the thumbnail: ',CRP_LOCAL_NAME); ?></label></th>
|
283 |
<td><input type="textbox" name="thumb_height" id="thumb_height" value="<?php echo attribute_escape(stripslashes($crp_settings[thumb_height])); ?>" style="width:30px" />px</td>
|
284 |
</tr>
|
285 |
+
<tr style="vertical-align: top;"><th scope="row"><label for="thumb_timthumb"><?php _e('Use timthumb to generate thumbnails? ',CRP_LOCAL_NAME); ?></label></th>
|
286 |
+
<td><input type="checkbox" name="thumb_timthumb" id="thumb_timthumb" <?php if ($crp_settings[thumb_timthumb]) echo 'checked="checked"' ?> /> <br /><?php _e('If checked, <a href="http://www.binarymoon.co.uk/projects/timthumb/">timthumb</a> will be used to generate thumbnails',CRP_LOCAL_NAME); ?></td>
|
287 |
+
</tr>
|
288 |
<tr style="vertical-align: top;"><th scope="row"><label for="thumb_meta"><?php _e('Post thumbnail meta field name: ',CRP_LOCAL_NAME); ?></label></th>
|
289 |
<td><input type="textbox" name="thumb_meta" id="thumb_meta" value="<?php echo attribute_escape(stripslashes($crp_settings[thumb_meta])); ?>"> <br /><?php _e('The value of this field should contain the image source and is set in the <em>Add New Post</em> screen',CRP_LOCAL_NAME); ?></td>
|
290 |
</tr>
|
299 |
</tr>
|
300 |
</table>
|
301 |
</div>
|
302 |
+
<div class="tabbertab">
|
303 |
+
<h3>
|
304 |
+
<?php _e('Custom Styles',CRP_LOCAL_NAME); ?>
|
305 |
+
</h3>
|
306 |
+
<table class="form-table">
|
307 |
+
<tr style="vertical-align: top; "><th scope="row" colspan="2"><?php _e('Custom CSS to add to header:',ATA_LOCAL_NAME); ?></th>
|
308 |
+
</tr>
|
309 |
+
<tr style="vertical-align: top; "><td scope="row" colspan="2"><textarea name="custom_CSS" id="custom_CSS" rows="15" cols="80"><?php echo stripslashes($crp_settings[custom_CSS]); ?></textarea>
|
310 |
+
<br /><em><?php _e('Do not include <code>style</code> tags. Check out the <a href="http://wordpress.org/extend/plugins/contextual-related-posts/faq/">FAQ</a> for available CSS classes to style.',ATA_LOCAL_NAME); ?></em></td></tr>
|
311 |
+
</table>
|
312 |
</div>
|
313 |
<p>
|
314 |
<input type="submit" name="crp_save" id="crp_save" value="Save Options" style="border:#0C0 1px solid" />
|
350 |
}
|
351 |
add_action('admin_menu', 'crp_adminmenu');
|
352 |
|
353 |
+
// Admin notices
|
354 |
+
function crp_admin_notice() {
|
355 |
+
$plugin_settings_page = '<a href="' . admin_url( 'options-general.php?page=crp_options' ) . '">' . __('plugin settings page', ATF_LOCAL_NAME ) . '</a>';
|
356 |
+
|
357 |
+
if ( !current_user_can( 'manage_options' ) ) return;
|
358 |
+
|
359 |
+
echo '<div class="error">
|
360 |
+
<p>'.__('Contextual Related Posts plugin has just been installed / upgraded. Please visit the ', ATF_LOCAL_NAME ).$plugin_settings_page.__(' to configure.', ATF_LOCAL_NAME ).'</p>
|
361 |
+
</div>';
|
362 |
+
}
|
363 |
+
// add_action('admin_notices', 'crp_admin_notice');
|
364 |
+
|
365 |
function crp_adminhead() {
|
366 |
global $crp_url;
|
367 |
|
contextual-related-posts.php
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: Contextual Related Posts
|
4 |
-
Version: 1.
|
5 |
Plugin URI: http://ajaydsouza.com/wordpress/plugins/contextual-related-posts/
|
6 |
Description: Displaying a set of related posts on your website or in your feed. Increase reader retention and reduce bounce rates
|
7 |
Author: Ajay D'Souza
|
@@ -45,6 +45,7 @@ function ald_crp() {
|
|
45 |
global $wpdb, $post, $single;
|
46 |
|
47 |
$crp_settings = crp_read_options();
|
|
|
48 |
$limit = (stripslashes($crp_settings['limit']));
|
49 |
$exclude_categories = explode(',',$crp_settings['exclude_categories']);
|
50 |
|
@@ -62,12 +63,19 @@ function ald_crp() {
|
|
62 |
|
63 |
if ((is_int($post->ID))&&($stuff != '')) {
|
64 |
$sql = "SELECT DISTINCT ID,post_title,post_date "
|
65 |
-
. "FROM ".$wpdb->posts." WHERE "
|
66 |
. "MATCH (post_title,post_content) AGAINST ('".$stuff."') "
|
67 |
. "AND post_date <= '".$now."' "
|
68 |
. "AND post_status = 'publish' "
|
69 |
-
. "AND id != ".$post->ID." "
|
70 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
$sql .= "LIMIT ".$limit*3;
|
72 |
|
73 |
$search_counter = 0;
|
@@ -76,7 +84,7 @@ function ald_crp() {
|
|
76 |
$searches = false;
|
77 |
}
|
78 |
|
79 |
-
$output = '<div id="crp_related">';
|
80 |
|
81 |
if($searches){
|
82 |
$output .= (stripslashes($crp_settings[title]));
|
@@ -158,6 +166,12 @@ function crp_default_options() {
|
|
158 |
global $crp_url;
|
159 |
$title = __('<h3>Related Posts:</h3>',CRP_LOCAL_NAME);
|
160 |
$thumb_default = $crp_url.'/default.png';
|
|
|
|
|
|
|
|
|
|
|
|
|
161 |
|
162 |
$crp_settings = Array (
|
163 |
'title' => $title, // Add before the content
|
@@ -181,9 +195,12 @@ function crp_default_options() {
|
|
181 |
'thumb_meta' => 'post-image', // Meta field that is used to store the location of default thumbnail image
|
182 |
'thumb_default' => $thumb_default, // Default thumbnail image
|
183 |
'thumb_default_show' => true, // Show default thumb if none found (if false, don't show thumb at all)
|
|
|
184 |
'scan_images' => false, // Scan post for images
|
185 |
'show_excerpt' => false, // Show description in list item
|
186 |
'excerpt_length' => '10', // Length of characters
|
|
|
|
|
187 |
);
|
188 |
return $crp_settings;
|
189 |
}
|
@@ -210,12 +227,30 @@ function crp_read_options()
|
|
210 |
|
211 |
}
|
212 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
213 |
// Create full text index
|
214 |
function ald_crp_activate() {
|
215 |
global $wpdb;
|
216 |
|
217 |
$wpdb->hide_errors();
|
218 |
-
if($wpdb->db_version()
|
219 |
{ $wpdb->query('ALTER TABLE '.$wpdb->posts.' ENGINE = InnoDB;'); }
|
220 |
else
|
221 |
{ $wpdb->query('ALTER TABLE '.$wpdb->posts.' ENGINE = MYISAM;'); }
|
@@ -224,6 +259,7 @@ function ald_crp_activate() {
|
|
224 |
$wpdb->query('ALTER TABLE '.$wpdb->posts.' ADD FULLTEXT crp_related_title (post_title);');
|
225 |
$wpdb->query('ALTER TABLE '.$wpdb->posts.' ADD FULLTEXT crp_related_content (post_content);');
|
226 |
$wpdb->show_errors();
|
|
|
227 |
}
|
228 |
if (function_exists('register_activation_hook')) {
|
229 |
register_activation_hook(__FILE__,'ald_crp_activate');
|
@@ -232,6 +268,7 @@ if (function_exists('register_activation_hook')) {
|
|
232 |
// Function to get the post thumbnail
|
233 |
function crp_get_the_post_thumbnail($postid) {
|
234 |
|
|
|
235 |
$result = get_post($postid);
|
236 |
$crp_settings = crp_read_options();
|
237 |
$output = '';
|
@@ -251,7 +288,11 @@ function crp_get_the_post_thumbnail($postid) {
|
|
251 |
if (!$postimage) $postimage = get_post_meta($result->ID, '_video_thumbnail', true); // If no other thumbnail set, try to get the custom video thumbnail set by the Video Thumbnails plugin
|
252 |
if ($crp_settings['thumb_default_show'] && !$postimage) $postimage = $crp_settings[thumb_default]; // If no thumb found and settings permit, use default thumb
|
253 |
if ($postimage) {
|
254 |
-
|
|
|
|
|
|
|
|
|
255 |
}
|
256 |
}
|
257 |
|
@@ -292,7 +333,7 @@ function crp_plugin_actions( $links, $file ) {
|
|
292 |
// create link
|
293 |
if ($file == $plugin) {
|
294 |
$links[] = '<a href="' . admin_url( 'options-general.php?page=crp_options' ) . '">' . __('Settings', CRP_LOCAL_NAME ) . '</a>';
|
295 |
-
$links[] = '<a href="http://
|
296 |
$links[] = '<a href="http://ajaydsouza.com/donate/">' . __('Donate', CRP_LOCAL_NAME ) . '</a>';
|
297 |
}
|
298 |
return $links;
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: Contextual Related Posts
|
4 |
+
Version: 1.8
|
5 |
Plugin URI: http://ajaydsouza.com/wordpress/plugins/contextual-related-posts/
|
6 |
Description: Displaying a set of related posts on your website or in your feed. Increase reader retention and reduce bounce rates
|
7 |
Author: Ajay D'Souza
|
45 |
global $wpdb, $post, $single;
|
46 |
|
47 |
$crp_settings = crp_read_options();
|
48 |
+
parse_str($crp_settings['post_types'],$post_types);
|
49 |
$limit = (stripslashes($crp_settings['limit']));
|
50 |
$exclude_categories = explode(',',$crp_settings['exclude_categories']);
|
51 |
|
63 |
|
64 |
if ((is_int($post->ID))&&($stuff != '')) {
|
65 |
$sql = "SELECT DISTINCT ID,post_title,post_date "
|
66 |
+
. " FROM ".$wpdb->posts." WHERE "
|
67 |
. "MATCH (post_title,post_content) AGAINST ('".$stuff."') "
|
68 |
. "AND post_date <= '".$now."' "
|
69 |
. "AND post_status = 'publish' "
|
70 |
+
. "AND id != ".$post->ID." "
|
71 |
+
. "AND ( ";
|
72 |
+
$multiple = false;
|
73 |
+
foreach ($post_types as $post_type) {
|
74 |
+
if ( $multiple ) $sql .= ' OR ';
|
75 |
+
$sql .= " post_type = '".$post_type."' ";
|
76 |
+
$multiple = true;
|
77 |
+
}
|
78 |
+
$sql .=" ) ";
|
79 |
$sql .= "LIMIT ".$limit*3;
|
80 |
|
81 |
$search_counter = 0;
|
84 |
$searches = false;
|
85 |
}
|
86 |
|
87 |
+
$output = (is_singular()) ? '<div id="crp_related" class="crp_related">' : '<div class="crp_related">';
|
88 |
|
89 |
if($searches){
|
90 |
$output .= (stripslashes($crp_settings[title]));
|
166 |
global $crp_url;
|
167 |
$title = __('<h3>Related Posts:</h3>',CRP_LOCAL_NAME);
|
168 |
$thumb_default = $crp_url.'/default.png';
|
169 |
+
// get relevant post types
|
170 |
+
$args = array (
|
171 |
+
'public' => true,
|
172 |
+
'_builtin' => true
|
173 |
+
);
|
174 |
+
$post_types = http_build_query(get_post_types($args), '', '&');
|
175 |
|
176 |
$crp_settings = Array (
|
177 |
'title' => $title, // Add before the content
|
195 |
'thumb_meta' => 'post-image', // Meta field that is used to store the location of default thumbnail image
|
196 |
'thumb_default' => $thumb_default, // Default thumbnail image
|
197 |
'thumb_default_show' => true, // Show default thumb if none found (if false, don't show thumb at all)
|
198 |
+
'thumb_timthumb' => true, // Use timthumb
|
199 |
'scan_images' => false, // Scan post for images
|
200 |
'show_excerpt' => false, // Show description in list item
|
201 |
'excerpt_length' => '10', // Length of characters
|
202 |
+
'post_types' => $post_types, // WordPress custom post types
|
203 |
+
'custom_CSS' => '', // Custom CSS to style the output
|
204 |
);
|
205 |
return $crp_settings;
|
206 |
}
|
227 |
|
228 |
}
|
229 |
|
230 |
+
// Header function
|
231 |
+
add_action('wp_head','crp_header');
|
232 |
+
function crp_header() {
|
233 |
+
global $wpdb, $post, $single;
|
234 |
+
|
235 |
+
$crp_settings = crp_read_options();
|
236 |
+
$crp_custom_CSS = stripslashes($crp_settings[custom_CSS]);
|
237 |
+
|
238 |
+
// Add CSS to header
|
239 |
+
if ($crp_custom_CSS != '') {
|
240 |
+
if((is_single())&&($crp_settings['add_to_content'])) {
|
241 |
+
echo '<style type="text/css">'.$crp_custom_CSS.'</style>';
|
242 |
+
} elseif((is_page())&&($crp_settings['add_to_page'])) {
|
243 |
+
echo '<style type="text/css">'.$crp_custom_CSS.'</style>';
|
244 |
+
}
|
245 |
+
}
|
246 |
+
}
|
247 |
+
|
248 |
// Create full text index
|
249 |
function ald_crp_activate() {
|
250 |
global $wpdb;
|
251 |
|
252 |
$wpdb->hide_errors();
|
253 |
+
if(version_compare(5.6, $wpdb->db_version(), '<='))
|
254 |
{ $wpdb->query('ALTER TABLE '.$wpdb->posts.' ENGINE = InnoDB;'); }
|
255 |
else
|
256 |
{ $wpdb->query('ALTER TABLE '.$wpdb->posts.' ENGINE = MYISAM;'); }
|
259 |
$wpdb->query('ALTER TABLE '.$wpdb->posts.' ADD FULLTEXT crp_related_title (post_title);');
|
260 |
$wpdb->query('ALTER TABLE '.$wpdb->posts.' ADD FULLTEXT crp_related_content (post_content);');
|
261 |
$wpdb->show_errors();
|
262 |
+
|
263 |
}
|
264 |
if (function_exists('register_activation_hook')) {
|
265 |
register_activation_hook(__FILE__,'ald_crp_activate');
|
268 |
// Function to get the post thumbnail
|
269 |
function crp_get_the_post_thumbnail($postid) {
|
270 |
|
271 |
+
global $crp_url;
|
272 |
$result = get_post($postid);
|
273 |
$crp_settings = crp_read_options();
|
274 |
$output = '';
|
288 |
if (!$postimage) $postimage = get_post_meta($result->ID, '_video_thumbnail', true); // If no other thumbnail set, try to get the custom video thumbnail set by the Video Thumbnails plugin
|
289 |
if ($crp_settings['thumb_default_show'] && !$postimage) $postimage = $crp_settings[thumb_default]; // If no thumb found and settings permit, use default thumb
|
290 |
if ($postimage) {
|
291 |
+
if ($crp_settings[thumb_timthumb]) {
|
292 |
+
$output .= '<img src="'.$crp_url.'/timthumb/timthumb.php?src='.urlencode($postimage).'&w='.$crp_settings[thumb_width].'&h='.$crp_settings[thumb_height].'&zc=1&q=75" alt="'.$title.'" title="'.$title.'" style="max-width:'.$crp_settings[thumb_width].'px;max-height:'.$crp_settings[thumb_height].'px;" border="0" class="crp_thumb" />';
|
293 |
+
} else {
|
294 |
+
$output .= '<img src="'.$postimage.'" alt="'.$title.'" title="'.$title.'" style="max-width:'.$crp_settings[thumb_width].'px;max-height:'.$crp_settings[thumb_height].'px;" border="0" class="crp_thumb" />';
|
295 |
+
}
|
296 |
}
|
297 |
}
|
298 |
|
333 |
// create link
|
334 |
if ($file == $plugin) {
|
335 |
$links[] = '<a href="' . admin_url( 'options-general.php?page=crp_options' ) . '">' . __('Settings', CRP_LOCAL_NAME ) . '</a>';
|
336 |
+
$links[] = '<a href="http://wordpress.org/support/plugin/contextual-related-posts">' . __('Support', CRP_LOCAL_NAME ) . '</a>';
|
337 |
$links[] = '<a href="http://ajaydsouza.com/donate/">' . __('Donate', CRP_LOCAL_NAME ) . '</a>';
|
338 |
}
|
339 |
return $links;
|
default.png
CHANGED
Binary file
|
default2.png
ADDED
Binary file
|
languages/crp-da_DK.mo
CHANGED
Binary file
|
languages/crp-da_DK.po
CHANGED
@@ -2,7 +2,7 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts 1.5.1\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
-
"POT-Creation-Date: 2012-
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: Team Blogos <wordpress@blogos.dk>\n"
|
@@ -17,269 +17,309 @@ msgstr ""
|
|
17 |
"X-Poedit-Basepath: ../\n"
|
18 |
"X-Poedit-SearchPath-0: .\n"
|
19 |
|
20 |
-
#: admin.inc.php:
|
21 |
msgid "Options saved successfully."
|
22 |
msgstr "Indstillingerne blev gemt."
|
23 |
|
24 |
-
#: admin.inc.php:
|
25 |
msgid "Options set to Default."
|
26 |
msgstr "Indstillingerne sat til standardværdier."
|
27 |
|
28 |
-
#: admin.inc.php:
|
29 |
msgid "Index recreated"
|
30 |
msgstr "Indeks blev gendannet"
|
31 |
|
32 |
-
#: admin.inc.php:
|
33 |
#, fuzzy
|
34 |
msgid "Support the development"
|
35 |
msgstr "Støt udviklingen"
|
36 |
|
37 |
-
#: admin.inc.php:
|
38 |
msgid "Enter amount in USD: "
|
39 |
msgstr ""
|
40 |
|
41 |
-
#: admin.inc.php:
|
42 |
msgid "Send your donation to the author of"
|
43 |
msgstr ""
|
44 |
|
45 |
-
#: admin.inc.php:
|
46 |
msgid "Quick links"
|
47 |
msgstr ""
|
48 |
|
49 |
-
#: admin.inc.php:
|
50 |
#, fuzzy
|
51 |
msgid "Contextual Related Posts "
|
52 |
msgstr "Related Posts (Lignende indlæg)"
|
53 |
|
54 |
-
#: admin.inc.php:
|
55 |
msgid "plugin page"
|
56 |
msgstr ""
|
57 |
|
58 |
-
#: admin.inc.php:
|
59 |
msgid "Other plugins"
|
60 |
msgstr ""
|
61 |
|
62 |
-
#: admin.inc.php:
|
63 |
msgid "Ajay's blog"
|
64 |
msgstr ""
|
65 |
|
66 |
-
#: admin.inc.php:
|
67 |
-
#: contextual-related-posts.php:
|
68 |
msgid "Support"
|
69 |
msgstr "Support"
|
70 |
|
71 |
-
#: admin.inc.php:
|
72 |
msgid "Follow @ajaydsouza on Twitter"
|
73 |
msgstr ""
|
74 |
|
75 |
-
#: admin.inc.php:
|
76 |
msgid "Recent developments"
|
77 |
msgstr ""
|
78 |
|
79 |
-
#: admin.inc.php:
|
80 |
msgid "General options"
|
81 |
msgstr ""
|
82 |
|
83 |
-
#: admin.inc.php:
|
84 |
msgid "Number of related posts to display: "
|
85 |
msgstr "Antal Lignende indlæg, der skal vises: "
|
86 |
|
87 |
-
#: admin.inc.php:
|
88 |
msgid "Exclude Categories: "
|
89 |
msgstr "Udelad kategorier: "
|
90 |
|
91 |
-
#: admin.inc.php:
|
92 |
msgid "Add related posts to the post content on single posts"
|
93 |
msgstr ""
|
94 |
|
95 |
-
#: admin.inc.php:
|
96 |
-
#: admin.inc.php:
|
97 |
#, fuzzy
|
98 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
99 |
msgstr "Tilføj Lignende indlæg til statiske sider. <br />Hvis du vælger at deaktivere dette, skal du tilføje <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> til din skabelonfil, hvor du ønsker de lignende indlæg vist"
|
100 |
|
101 |
-
#: admin.inc.php:
|
102 |
#, fuzzy
|
103 |
msgid "Add related posts to pages"
|
104 |
msgstr "Tilføj Lignende indlæg til feeds"
|
105 |
|
106 |
-
#: admin.inc.php:
|
107 |
msgid "Add related posts to feed"
|
108 |
msgstr "Tilføj Lignende indlæg til feeds"
|
109 |
|
110 |
-
#: admin.inc.php:
|
111 |
msgid "Find related posts based on content as well as title"
|
112 |
msgstr ""
|
113 |
|
114 |
-
#: admin.inc.php:
|
115 |
#, fuzzy
|
116 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
117 |
msgstr "Find Lignende indlæg ud fra såvel indhold som titel. Hvis umarkeret, bruges kun indlæggenes titler (jeg anbefaler et cache-plugin, hvis du aktiverer dette)"
|
118 |
|
119 |
-
#: admin.inc.php:
|
120 |
msgid "Exclude Pages in Related Posts"
|
121 |
msgstr "Udelad sider i Lignende indlæg"
|
122 |
|
123 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
124 |
msgid "Add a link to the plugin page as a final item in the list"
|
125 |
msgstr ""
|
126 |
|
127 |
-
#: admin.inc.php:
|
128 |
msgid " <em>Optional</em>"
|
129 |
msgstr ""
|
130 |
|
131 |
-
#: admin.inc.php:
|
132 |
#, fuzzy
|
133 |
msgid "Output Options"
|
134 |
msgstr "Indstillinger for output:"
|
135 |
|
136 |
-
#: admin.inc.php:
|
137 |
msgid "Title of related posts: "
|
138 |
msgstr "Titel på Lignende indlæg: "
|
139 |
|
140 |
-
#: admin.inc.php:
|
141 |
msgid "When there are no posts, what should be shown?"
|
142 |
msgstr "Hvad skal der vises, hvis der ingen indlæg er?"
|
143 |
|
144 |
-
#: admin.inc.php:
|
145 |
msgid "Blank Output"
|
146 |
msgstr "Intet"
|
147 |
|
148 |
-
#: admin.inc.php:
|
149 |
msgid "Display \"No Related Posts\""
|
150 |
msgstr "Vis \"Ingen lignende indlæg\""
|
151 |
|
152 |
-
#: admin.inc.php:
|
153 |
msgid "Show post excerpt in list?"
|
154 |
msgstr ""
|
155 |
|
156 |
-
#: admin.inc.php:
|
157 |
msgid "Length of excerpt (in words): "
|
158 |
msgstr ""
|
159 |
|
160 |
-
#: admin.inc.php:
|
161 |
msgid "Customize the output:"
|
162 |
msgstr "Tilpas outputtet:"
|
163 |
|
164 |
-
#: admin.inc.php:
|
165 |
msgid "HTML to display before the list of posts: "
|
166 |
msgstr "HTML, der skal vises før listen med indlæg: "
|
167 |
|
168 |
-
#: admin.inc.php:
|
169 |
msgid "HTML to display before each list item: "
|
170 |
msgstr "HTML, der skal vises før hvert punkt på listen: "
|
171 |
|
172 |
-
#: admin.inc.php:
|
173 |
msgid "HTML to display after each list item: "
|
174 |
msgstr "HTML, der skal vises efter hvert punkt på listen: "
|
175 |
|
176 |
-
#: admin.inc.php:
|
177 |
msgid "HTML to display after the list of posts: "
|
178 |
msgstr "HTML, der skal vises efter listen med indlæg: "
|
179 |
|
180 |
-
#: admin.inc.php:
|
181 |
msgid "Post thumbnail options:"
|
182 |
msgstr "Indstillinger for indlægsminiaturer:"
|
183 |
|
184 |
-
#: admin.inc.php:
|
185 |
msgid "Location of post thumbnail:"
|
186 |
msgstr ""
|
187 |
|
188 |
-
#: admin.inc.php:
|
189 |
#, fuzzy
|
190 |
msgid "Display thumbnails inline with posts, before title"
|
191 |
msgstr "Vis miniaturer inline med indlæg"
|
192 |
|
193 |
-
#: admin.inc.php:
|
194 |
#, fuzzy
|
195 |
msgid "Display thumbnails inline with posts, after title"
|
196 |
msgstr "Vis miniaturer inline med indlæg"
|
197 |
|
198 |
-
#: admin.inc.php:
|
199 |
msgid "Display only thumbnails, no text"
|
200 |
msgstr "Vis kun miniaturer, ingen tekst"
|
201 |
|
202 |
-
#: admin.inc.php:
|
203 |
msgid "Do not display thumbnails, only text."
|
204 |
msgstr "Vis ikke miniaturer, kun tekst."
|
205 |
|
206 |
-
#: admin.inc.php:
|
207 |
msgid "Maximum width of the thumbnail: "
|
208 |
msgstr ""
|
209 |
|
210 |
-
#: admin.inc.php:
|
211 |
msgid "Maximum height of the thumbnail: "
|
212 |
msgstr ""
|
213 |
|
214 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
215 |
#, fuzzy
|
216 |
msgid "Post thumbnail meta field name: "
|
217 |
msgstr "Indstillinger for indlægsminiaturer:"
|
218 |
|
219 |
-
#: admin.inc.php:
|
220 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
221 |
msgstr ""
|
222 |
|
223 |
-
#: admin.inc.php:
|
224 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
225 |
msgstr ""
|
226 |
|
227 |
-
#: admin.inc.php:
|
228 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
229 |
msgstr ""
|
230 |
|
231 |
-
#: admin.inc.php:
|
232 |
msgid "Use default thumbnail? "
|
233 |
msgstr ""
|
234 |
|
235 |
-
#: admin.inc.php:
|
236 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
237 |
msgstr ""
|
238 |
|
239 |
-
#: admin.inc.php:
|
240 |
msgid "Default thumbnail: "
|
241 |
msgstr ""
|
242 |
|
243 |
-
#: admin.inc.php:
|
244 |
#, fuzzy
|
245 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
246 |
msgstr "Pluginnet tjekker først, om indlægget indeholder en miniature. Hvis indlægget ikke gør det, tjekker pluginnet metafeltet. Hvis dette ikke findes, vil det vise standardbilledet specificeret nedenfor:"
|
247 |
|
248 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
249 |
msgid "Do you want to set options to Default?"
|
250 |
msgstr "Ønsker du at sætte indstillingerne til standardværdierne?"
|
251 |
|
252 |
-
#: admin.inc.php:
|
253 |
msgid "Are you sure you want to recreate the index?"
|
254 |
msgstr "Er du sikker på, du ønsker at gendanne indekset?"
|
255 |
|
256 |
-
#: admin.inc.php:
|
257 |
#, fuzzy
|
258 |
msgid "Contextual Related Posts"
|
259 |
msgstr "Related Posts (Lignende indlæg)"
|
260 |
|
261 |
-
#: admin.inc.php:
|
262 |
msgid "Related Posts"
|
263 |
msgstr "Related Posts (Lignende indlæg)"
|
264 |
|
265 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
266 |
msgid "Powered by"
|
267 |
msgstr ""
|
268 |
|
269 |
-
#: contextual-related-posts.php:
|
270 |
-
#: contextual-related-posts.php:
|
271 |
msgid "No related posts found"
|
272 |
msgstr "Ingen lignende indlæg fundet"
|
273 |
|
274 |
-
#: contextual-related-posts.php:
|
275 |
msgid "<h3>Related Posts:</h3>"
|
276 |
msgstr "<h3>Lignende indlæg:</h3>"
|
277 |
|
278 |
-
#: contextual-related-posts.php:
|
279 |
msgid "Settings"
|
280 |
msgstr "Opsætning"
|
281 |
|
282 |
-
#: contextual-related-posts.php:
|
283 |
msgid "Donate"
|
284 |
msgstr "Donation"
|
285 |
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts 1.5.1\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2012-06-04 18:53-0000\n"
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: Team Blogos <wordpress@blogos.dk>\n"
|
17 |
"X-Poedit-Basepath: ../\n"
|
18 |
"X-Poedit-SearchPath-0: .\n"
|
19 |
|
20 |
+
#: admin.inc.php:70
|
21 |
msgid "Options saved successfully."
|
22 |
msgstr "Indstillingerne blev gemt."
|
23 |
|
24 |
+
#: admin.inc.php:86
|
25 |
msgid "Options set to Default."
|
26 |
msgstr "Indstillingerne sat til standardværdier."
|
27 |
|
28 |
+
#: admin.inc.php:101
|
29 |
msgid "Index recreated"
|
30 |
msgstr "Indeks blev gendannet"
|
31 |
|
32 |
+
#: admin.inc.php:114
|
33 |
#, fuzzy
|
34 |
msgid "Support the development"
|
35 |
msgstr "Støt udviklingen"
|
36 |
|
37 |
+
#: admin.inc.php:122
|
38 |
msgid "Enter amount in USD: "
|
39 |
msgstr ""
|
40 |
|
41 |
+
#: admin.inc.php:126
|
42 |
msgid "Send your donation to the author of"
|
43 |
msgstr ""
|
44 |
|
45 |
+
#: admin.inc.php:132
|
46 |
msgid "Quick links"
|
47 |
msgstr ""
|
48 |
|
49 |
+
#: admin.inc.php:134
|
50 |
#, fuzzy
|
51 |
msgid "Contextual Related Posts "
|
52 |
msgstr "Related Posts (Lignende indlæg)"
|
53 |
|
54 |
+
#: admin.inc.php:134
|
55 |
msgid "plugin page"
|
56 |
msgstr ""
|
57 |
|
58 |
+
#: admin.inc.php:135
|
59 |
msgid "Other plugins"
|
60 |
msgstr ""
|
61 |
|
62 |
+
#: admin.inc.php:136
|
63 |
msgid "Ajay's blog"
|
64 |
msgstr ""
|
65 |
|
66 |
+
#: admin.inc.php:137
|
67 |
+
#: contextual-related-posts.php:336
|
68 |
msgid "Support"
|
69 |
msgstr "Support"
|
70 |
|
71 |
+
#: admin.inc.php:138
|
72 |
msgid "Follow @ajaydsouza on Twitter"
|
73 |
msgstr ""
|
74 |
|
75 |
+
#: admin.inc.php:142
|
76 |
msgid "Recent developments"
|
77 |
msgstr ""
|
78 |
|
79 |
+
#: admin.inc.php:157
|
80 |
msgid "General options"
|
81 |
msgstr ""
|
82 |
|
83 |
+
#: admin.inc.php:160
|
84 |
msgid "Number of related posts to display: "
|
85 |
msgstr "Antal Lignende indlæg, der skal vises: "
|
86 |
|
87 |
+
#: admin.inc.php:163
|
88 |
msgid "Exclude Categories: "
|
89 |
msgstr "Udelad kategorier: "
|
90 |
|
91 |
+
#: admin.inc.php:181
|
92 |
msgid "Add related posts to the post content on single posts"
|
93 |
msgstr ""
|
94 |
|
95 |
+
#: admin.inc.php:182
|
96 |
+
#: admin.inc.php:185
|
97 |
#, fuzzy
|
98 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
99 |
msgstr "Tilføj Lignende indlæg til statiske sider. <br />Hvis du vælger at deaktivere dette, skal du tilføje <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> til din skabelonfil, hvor du ønsker de lignende indlæg vist"
|
100 |
|
101 |
+
#: admin.inc.php:184
|
102 |
#, fuzzy
|
103 |
msgid "Add related posts to pages"
|
104 |
msgstr "Tilføj Lignende indlæg til feeds"
|
105 |
|
106 |
+
#: admin.inc.php:187
|
107 |
msgid "Add related posts to feed"
|
108 |
msgstr "Tilføj Lignende indlæg til feeds"
|
109 |
|
110 |
+
#: admin.inc.php:190
|
111 |
msgid "Find related posts based on content as well as title"
|
112 |
msgstr ""
|
113 |
|
114 |
+
#: admin.inc.php:191
|
115 |
#, fuzzy
|
116 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
117 |
msgstr "Find Lignende indlæg ud fra såvel indhold som titel. Hvis umarkeret, bruges kun indlæggenes titler (jeg anbefaler et cache-plugin, hvis du aktiverer dette)"
|
118 |
|
119 |
+
#: admin.inc.php:193
|
120 |
msgid "Exclude Pages in Related Posts"
|
121 |
msgstr "Udelad sider i Lignende indlæg"
|
122 |
|
123 |
+
#: admin.inc.php:196
|
124 |
+
msgid "Post types to include in results (including custom post types)"
|
125 |
+
msgstr ""
|
126 |
+
|
127 |
+
#: admin.inc.php:207
|
128 |
+
msgid "Use CTRL on Windows and COMMAND on Mac to select multiple items"
|
129 |
+
msgstr ""
|
130 |
+
|
131 |
+
#: admin.inc.php:210
|
132 |
msgid "Add a link to the plugin page as a final item in the list"
|
133 |
msgstr ""
|
134 |
|
135 |
+
#: admin.inc.php:211
|
136 |
msgid " <em>Optional</em>"
|
137 |
msgstr ""
|
138 |
|
139 |
+
#: admin.inc.php:219
|
140 |
#, fuzzy
|
141 |
msgid "Output Options"
|
142 |
msgstr "Indstillinger for output:"
|
143 |
|
144 |
+
#: admin.inc.php:222
|
145 |
msgid "Title of related posts: "
|
146 |
msgstr "Titel på Lignende indlæg: "
|
147 |
|
148 |
+
#: admin.inc.php:225
|
149 |
msgid "When there are no posts, what should be shown?"
|
150 |
msgstr "Hvad skal der vises, hvis der ingen indlæg er?"
|
151 |
|
152 |
+
#: admin.inc.php:229
|
153 |
msgid "Blank Output"
|
154 |
msgstr "Intet"
|
155 |
|
156 |
+
#: admin.inc.php:233
|
157 |
msgid "Display \"No Related Posts\""
|
158 |
msgstr "Vis \"Ingen lignende indlæg\""
|
159 |
|
160 |
+
#: admin.inc.php:237
|
161 |
msgid "Show post excerpt in list?"
|
162 |
msgstr ""
|
163 |
|
164 |
+
#: admin.inc.php:240
|
165 |
msgid "Length of excerpt (in words): "
|
166 |
msgstr ""
|
167 |
|
168 |
+
#: admin.inc.php:243
|
169 |
msgid "Customize the output:"
|
170 |
msgstr "Tilpas outputtet:"
|
171 |
|
172 |
+
#: admin.inc.php:245
|
173 |
msgid "HTML to display before the list of posts: "
|
174 |
msgstr "HTML, der skal vises før listen med indlæg: "
|
175 |
|
176 |
+
#: admin.inc.php:248
|
177 |
msgid "HTML to display before each list item: "
|
178 |
msgstr "HTML, der skal vises før hvert punkt på listen: "
|
179 |
|
180 |
+
#: admin.inc.php:251
|
181 |
msgid "HTML to display after each list item: "
|
182 |
msgstr "HTML, der skal vises efter hvert punkt på listen: "
|
183 |
|
184 |
+
#: admin.inc.php:254
|
185 |
msgid "HTML to display after the list of posts: "
|
186 |
msgstr "HTML, der skal vises efter listen med indlæg: "
|
187 |
|
188 |
+
#: admin.inc.php:257
|
189 |
msgid "Post thumbnail options:"
|
190 |
msgstr "Indstillinger for indlægsminiaturer:"
|
191 |
|
192 |
+
#: admin.inc.php:259
|
193 |
msgid "Location of post thumbnail:"
|
194 |
msgstr ""
|
195 |
|
196 |
+
#: admin.inc.php:263
|
197 |
#, fuzzy
|
198 |
msgid "Display thumbnails inline with posts, before title"
|
199 |
msgstr "Vis miniaturer inline med indlæg"
|
200 |
|
201 |
+
#: admin.inc.php:267
|
202 |
#, fuzzy
|
203 |
msgid "Display thumbnails inline with posts, after title"
|
204 |
msgstr "Vis miniaturer inline med indlæg"
|
205 |
|
206 |
+
#: admin.inc.php:271
|
207 |
msgid "Display only thumbnails, no text"
|
208 |
msgstr "Vis kun miniaturer, ingen tekst"
|
209 |
|
210 |
+
#: admin.inc.php:275
|
211 |
msgid "Do not display thumbnails, only text."
|
212 |
msgstr "Vis ikke miniaturer, kun tekst."
|
213 |
|
214 |
+
#: admin.inc.php:279
|
215 |
msgid "Maximum width of the thumbnail: "
|
216 |
msgstr ""
|
217 |
|
218 |
+
#: admin.inc.php:282
|
219 |
msgid "Maximum height of the thumbnail: "
|
220 |
msgstr ""
|
221 |
|
222 |
+
#: admin.inc.php:285
|
223 |
+
msgid "Use timthumb to generate thumbnails? "
|
224 |
+
msgstr ""
|
225 |
+
|
226 |
+
#: admin.inc.php:286
|
227 |
+
msgid "If checked, <a href=\"http://www.binarymoon.co.uk/projects/timthumb/\">timthumb</a> will be used to generate thumbnails"
|
228 |
+
msgstr ""
|
229 |
+
|
230 |
+
#: admin.inc.php:288
|
231 |
#, fuzzy
|
232 |
msgid "Post thumbnail meta field name: "
|
233 |
msgstr "Indstillinger for indlægsminiaturer:"
|
234 |
|
235 |
+
#: admin.inc.php:289
|
236 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
237 |
msgstr ""
|
238 |
|
239 |
+
#: admin.inc.php:291
|
240 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
241 |
msgstr ""
|
242 |
|
243 |
+
#: admin.inc.php:292
|
244 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
245 |
msgstr ""
|
246 |
|
247 |
+
#: admin.inc.php:294
|
248 |
msgid "Use default thumbnail? "
|
249 |
msgstr ""
|
250 |
|
251 |
+
#: admin.inc.php:295
|
252 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
253 |
msgstr ""
|
254 |
|
255 |
+
#: admin.inc.php:297
|
256 |
msgid "Default thumbnail: "
|
257 |
msgstr ""
|
258 |
|
259 |
+
#: admin.inc.php:298
|
260 |
#, fuzzy
|
261 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
262 |
msgstr "Pluginnet tjekker først, om indlægget indeholder en miniature. Hvis indlægget ikke gør det, tjekker pluginnet metafeltet. Hvis dette ikke findes, vil det vise standardbilledet specificeret nedenfor:"
|
263 |
|
264 |
+
#: admin.inc.php:304
|
265 |
+
msgid "Custom Styles"
|
266 |
+
msgstr ""
|
267 |
+
|
268 |
+
#: admin.inc.php:307
|
269 |
+
msgid "Custom CSS to add to header:"
|
270 |
+
msgstr ""
|
271 |
+
|
272 |
+
#: admin.inc.php:310
|
273 |
+
msgid "Do not include <code>style</code> tags. Check out the <a href=\"http://wordpress.org/extend/plugins/contextual-related-posts/faq/\">FAQ</a> for available CSS classes to style."
|
274 |
+
msgstr ""
|
275 |
+
|
276 |
+
#: admin.inc.php:315
|
277 |
msgid "Do you want to set options to Default?"
|
278 |
msgstr "Ønsker du at sætte indstillingerne til standardværdierne?"
|
279 |
|
280 |
+
#: admin.inc.php:316
|
281 |
msgid "Are you sure you want to recreate the index?"
|
282 |
msgstr "Er du sikker på, du ønsker at gendanne indekset?"
|
283 |
|
284 |
+
#: admin.inc.php:346
|
285 |
#, fuzzy
|
286 |
msgid "Contextual Related Posts"
|
287 |
msgstr "Related Posts (Lignende indlæg)"
|
288 |
|
289 |
+
#: admin.inc.php:346
|
290 |
msgid "Related Posts"
|
291 |
msgstr "Related Posts (Lignende indlæg)"
|
292 |
|
293 |
+
#: admin.inc.php:355
|
294 |
+
msgid "plugin settings page"
|
295 |
+
msgstr ""
|
296 |
+
|
297 |
+
#: admin.inc.php:360
|
298 |
+
msgid "Contextual Related Posts plugin has just been installed / upgraded. Please visit the "
|
299 |
+
msgstr ""
|
300 |
+
|
301 |
+
#: admin.inc.php:360
|
302 |
+
msgid " to configure."
|
303 |
+
msgstr ""
|
304 |
+
|
305 |
+
#: contextual-related-posts.php:125
|
306 |
msgid "Powered by"
|
307 |
msgstr ""
|
308 |
|
309 |
+
#: contextual-related-posts.php:130
|
310 |
+
#: contextual-related-posts.php:134
|
311 |
msgid "No related posts found"
|
312 |
msgstr "Ingen lignende indlæg fundet"
|
313 |
|
314 |
+
#: contextual-related-posts.php:167
|
315 |
msgid "<h3>Related Posts:</h3>"
|
316 |
msgstr "<h3>Lignende indlæg:</h3>"
|
317 |
|
318 |
+
#: contextual-related-posts.php:335
|
319 |
msgid "Settings"
|
320 |
msgstr "Opsætning"
|
321 |
|
322 |
+
#: contextual-related-posts.php:337
|
323 |
msgid "Donate"
|
324 |
msgstr "Donation"
|
325 |
|
languages/crp-de_DE.mo
CHANGED
Binary file
|
languages/crp-de_DE.po
CHANGED
@@ -2,7 +2,7 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
-
"POT-Creation-Date: 2012-
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: <me@ajaydsouza.com>\n"
|
@@ -14,268 +14,309 @@ msgstr ""
|
|
14 |
"X-Poedit-Basepath: ../\n"
|
15 |
"X-Poedit-SearchPath-0: .\n"
|
16 |
|
17 |
-
#: admin.inc.php:
|
18 |
msgid "Options saved successfully."
|
19 |
msgstr "Optionen gespeichert."
|
20 |
|
21 |
-
#: admin.inc.php:
|
22 |
msgid "Options set to Default."
|
23 |
msgstr "Optionen auf die Voreinstellungen zurückgesetzt."
|
24 |
|
25 |
-
#: admin.inc.php:
|
26 |
msgid "Index recreated"
|
27 |
msgstr "Index aufgefrischt"
|
28 |
|
29 |
-
#: admin.inc.php:
|
30 |
msgid "Support the development"
|
31 |
msgstr "Unterstützen Sie die Entwicklung"
|
32 |
|
33 |
-
#: admin.inc.php:
|
34 |
msgid "Enter amount in USD: "
|
35 |
msgstr "Den Betrag in USD eingeben: "
|
36 |
|
37 |
-
#: admin.inc.php:
|
38 |
msgid "Send your donation to the author of"
|
39 |
msgstr "Schicken Sie eine Spende an den Autor von"
|
40 |
|
41 |
-
#: admin.inc.php:
|
42 |
msgid "Quick links"
|
43 |
msgstr "Links"
|
44 |
|
45 |
-
#: admin.inc.php:
|
46 |
msgid "Contextual Related Posts "
|
47 |
msgstr "Contextual Related Posts "
|
48 |
|
49 |
-
#: admin.inc.php:
|
50 |
msgid "plugin page"
|
51 |
msgstr "Plugin-Seite"
|
52 |
|
53 |
-
#: admin.inc.php:
|
54 |
msgid "Other plugins"
|
55 |
msgstr "Weitere Plugins"
|
56 |
|
57 |
-
#: admin.inc.php:
|
58 |
msgid "Ajay's blog"
|
59 |
msgstr "Ajay's Blog"
|
60 |
|
61 |
-
#: admin.inc.php:
|
62 |
-
#: contextual-related-posts.php:
|
63 |
msgid "Support"
|
64 |
msgstr "Support"
|
65 |
|
66 |
-
#: admin.inc.php:
|
67 |
msgid "Follow @ajaydsouza on Twitter"
|
68 |
msgstr "@ajaydsouza auf Twitter folgen"
|
69 |
|
70 |
-
#: admin.inc.php:
|
71 |
msgid "Recent developments"
|
72 |
msgstr "Neueste Entwicklungen"
|
73 |
|
74 |
-
#: admin.inc.php:
|
75 |
msgid "General options"
|
76 |
msgstr ""
|
77 |
|
78 |
-
#: admin.inc.php:
|
79 |
msgid "Number of related posts to display: "
|
80 |
msgstr "Maximale Anzahl der angezeigten ähnlichen Beiträge: "
|
81 |
|
82 |
-
#: admin.inc.php:
|
83 |
msgid "Exclude Categories: "
|
84 |
msgstr "Kategorien ausschließen: "
|
85 |
|
86 |
-
#: admin.inc.php:
|
87 |
msgid "Add related posts to the post content on single posts"
|
88 |
msgstr ""
|
89 |
|
90 |
-
#: admin.inc.php:
|
91 |
-
#: admin.inc.php:
|
92 |
#, fuzzy
|
93 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
94 |
msgstr "Ähnliche Beiträge auch in statischen Seiten auflisten.<br />Wenn Sie das deaktivieren wollen, fügen Sie <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> in das Template ein, in dem die ähnlichen Beiträge aufgeliistet werden sollen"
|
95 |
|
96 |
-
#: admin.inc.php:
|
97 |
#, fuzzy
|
98 |
msgid "Add related posts to pages"
|
99 |
msgstr "Ähnliche Beiträge auch in die Feeds aufnehmen"
|
100 |
|
101 |
-
#: admin.inc.php:
|
102 |
msgid "Add related posts to feed"
|
103 |
msgstr "Ähnliche Beiträge auch in die Feeds aufnehmen"
|
104 |
|
105 |
-
#: admin.inc.php:
|
106 |
msgid "Find related posts based on content as well as title"
|
107 |
msgstr ""
|
108 |
|
109 |
-
#: admin.inc.php:
|
110 |
#, fuzzy
|
111 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
112 |
msgstr "Ähnliche Beiträge sowohl im Beitragstitel als auch im Beitragsinhalt suchen. Bei Deaktivierung wird nur in den Beittragstiteln gesucht. (Im Falle der Aktivierung wird empfohlen, ein Cache-Plugin einzusetzen)"
|
113 |
|
114 |
-
#: admin.inc.php:
|
115 |
msgid "Exclude Pages in Related Posts"
|
116 |
msgstr "Statische Seiten in ähnlichen Beiträgen ausschließen"
|
117 |
|
118 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
119 |
msgid "Add a link to the plugin page as a final item in the list"
|
120 |
msgstr ""
|
121 |
|
122 |
-
#: admin.inc.php:
|
123 |
msgid " <em>Optional</em>"
|
124 |
msgstr ""
|
125 |
|
126 |
-
#: admin.inc.php:
|
127 |
#, fuzzy
|
128 |
msgid "Output Options"
|
129 |
msgstr "Ausgabeotionen:"
|
130 |
|
131 |
-
#: admin.inc.php:
|
132 |
msgid "Title of related posts: "
|
133 |
msgstr "Überschrift über der Liste der ähnlichen Beiträge: "
|
134 |
|
135 |
-
#: admin.inc.php:
|
136 |
msgid "When there are no posts, what should be shown?"
|
137 |
msgstr "Wenn keine ähnlichen Beiträge gefunden werden, was soll dann angezeigt werden?"
|
138 |
|
139 |
-
#: admin.inc.php:
|
140 |
msgid "Blank Output"
|
141 |
msgstr "Nichts"
|
142 |
|
143 |
-
#: admin.inc.php:
|
144 |
msgid "Display \"No Related Posts\""
|
145 |
msgstr "\"Keine ähnlichen Beiträge\" anzeigen"
|
146 |
|
147 |
-
#: admin.inc.php:
|
148 |
msgid "Show post excerpt in list?"
|
149 |
msgstr "Auszug des Beitrags in der Liste anzeigen?"
|
150 |
|
151 |
-
#: admin.inc.php:
|
152 |
msgid "Length of excerpt (in words): "
|
153 |
msgstr "Länge des Auszugs (in Worten): "
|
154 |
|
155 |
-
#: admin.inc.php:
|
156 |
msgid "Customize the output:"
|
157 |
msgstr "Die Ausgabe anpassen:"
|
158 |
|
159 |
-
#: admin.inc.php:
|
160 |
msgid "HTML to display before the list of posts: "
|
161 |
msgstr "HTML vor der Beitragsliste: "
|
162 |
|
163 |
-
#: admin.inc.php:
|
164 |
msgid "HTML to display before each list item: "
|
165 |
msgstr "HTML vor jedem Listenelement: "
|
166 |
|
167 |
-
#: admin.inc.php:
|
168 |
msgid "HTML to display after each list item: "
|
169 |
msgstr "HTML nach jedem Listenelement: "
|
170 |
|
171 |
-
#: admin.inc.php:
|
172 |
msgid "HTML to display after the list of posts: "
|
173 |
msgstr "HTML nach der Beitragsliste: "
|
174 |
|
175 |
-
#: admin.inc.php:
|
176 |
msgid "Post thumbnail options:"
|
177 |
msgstr "Optionen für die Beitrags-Thumbnails:"
|
178 |
|
179 |
-
#: admin.inc.php:
|
180 |
msgid "Location of post thumbnail:"
|
181 |
msgstr ""
|
182 |
|
183 |
-
#: admin.inc.php:
|
184 |
#, fuzzy
|
185 |
msgid "Display thumbnails inline with posts, before title"
|
186 |
msgstr "Thumbnails und Beitragstitel anzeigen"
|
187 |
|
188 |
-
#: admin.inc.php:
|
189 |
#, fuzzy
|
190 |
msgid "Display thumbnails inline with posts, after title"
|
191 |
msgstr "Thumbnails und Beitragstitel anzeigen"
|
192 |
|
193 |
-
#: admin.inc.php:
|
194 |
msgid "Display only thumbnails, no text"
|
195 |
msgstr "Nur Thumbnails, keine Beitragstitel anzeigen"
|
196 |
|
197 |
-
#: admin.inc.php:
|
198 |
msgid "Do not display thumbnails, only text."
|
199 |
msgstr "Keine Thumbnails, nur Beitragstitel anzeigen"
|
200 |
|
201 |
-
#: admin.inc.php:
|
202 |
msgid "Maximum width of the thumbnail: "
|
203 |
msgstr ""
|
204 |
|
205 |
-
#: admin.inc.php:
|
206 |
msgid "Maximum height of the thumbnail: "
|
207 |
msgstr ""
|
208 |
|
209 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
210 |
#, fuzzy
|
211 |
msgid "Post thumbnail meta field name: "
|
212 |
msgstr "Optionen für die Beitrags-Thumbnails:"
|
213 |
|
214 |
-
#: admin.inc.php:
|
215 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
216 |
msgstr ""
|
217 |
|
218 |
-
#: admin.inc.php:
|
219 |
#, fuzzy
|
220 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
221 |
msgstr "Wenn 'Postmeta' nicht gesetzt ist, dann soll das Plugin das erste Bild aus dem jeweiligen Beitrag verwenden. Das kann allerdings das Laden des Beitrags verlangsamen, wenn die Bilddateien der ähnlichen Beiträge groß sind!"
|
222 |
|
223 |
-
#: admin.inc.php:
|
224 |
#, fuzzy
|
225 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
226 |
msgstr "Wenn 'Postmeta' nicht gesetzt ist, dann soll das Plugin das erste Bild aus dem jeweiligen Beitrag verwenden. Das kann allerdings das Laden des Beitrags verlangsamen, wenn die Bilddateien der ähnlichen Beiträge groß sind!"
|
227 |
|
228 |
-
#: admin.inc.php:
|
229 |
msgid "Use default thumbnail? "
|
230 |
msgstr ""
|
231 |
|
232 |
-
#: admin.inc.php:
|
233 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
234 |
msgstr ""
|
235 |
|
236 |
-
#: admin.inc.php:
|
237 |
msgid "Default thumbnail: "
|
238 |
msgstr ""
|
239 |
|
240 |
-
#: admin.inc.php:
|
241 |
#, fuzzy
|
242 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
243 |
msgstr "Das Plugin prüft zunächst, ob der Beitrag einen Thumbnail enthält. Wenn nicht, wird das Meta-Feld überprüft. Wenn auch dieses nicht vorhanden ist, wird das unten spezifizierte Default-Thumbnail angezeigt:"
|
244 |
|
245 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
246 |
msgid "Do you want to set options to Default?"
|
247 |
msgstr "Wollen Sie die Optionen auf die Voreinstellungen zurücksetzen?"
|
248 |
|
249 |
-
#: admin.inc.php:
|
250 |
msgid "Are you sure you want to recreate the index?"
|
251 |
msgstr "Sind Sie sicher, einen neuen Index zu erzeugen?"
|
252 |
|
253 |
-
#: admin.inc.php:
|
254 |
msgid "Contextual Related Posts"
|
255 |
msgstr "Contextual Related Posts"
|
256 |
|
257 |
-
#: admin.inc.php:
|
258 |
msgid "Related Posts"
|
259 |
msgstr "Related Posts"
|
260 |
|
261 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
262 |
msgid "Powered by"
|
263 |
msgstr "Powered by"
|
264 |
|
265 |
-
#: contextual-related-posts.php:
|
266 |
-
#: contextual-related-posts.php:
|
267 |
msgid "No related posts found"
|
268 |
msgstr "Keine ähnlichen Beiträge gefunden"
|
269 |
|
270 |
-
#: contextual-related-posts.php:
|
271 |
msgid "<h3>Related Posts:</h3>"
|
272 |
msgstr "<h3>Ähnliche Beiträge:</h3>"
|
273 |
|
274 |
-
#: contextual-related-posts.php:
|
275 |
msgid "Settings"
|
276 |
msgstr "Einstellungen"
|
277 |
|
278 |
-
#: contextual-related-posts.php:
|
279 |
msgid "Donate"
|
280 |
msgstr "Spenden"
|
281 |
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2012-06-04 18:53-0000\n"
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: <me@ajaydsouza.com>\n"
|
14 |
"X-Poedit-Basepath: ../\n"
|
15 |
"X-Poedit-SearchPath-0: .\n"
|
16 |
|
17 |
+
#: admin.inc.php:70
|
18 |
msgid "Options saved successfully."
|
19 |
msgstr "Optionen gespeichert."
|
20 |
|
21 |
+
#: admin.inc.php:86
|
22 |
msgid "Options set to Default."
|
23 |
msgstr "Optionen auf die Voreinstellungen zurückgesetzt."
|
24 |
|
25 |
+
#: admin.inc.php:101
|
26 |
msgid "Index recreated"
|
27 |
msgstr "Index aufgefrischt"
|
28 |
|
29 |
+
#: admin.inc.php:114
|
30 |
msgid "Support the development"
|
31 |
msgstr "Unterstützen Sie die Entwicklung"
|
32 |
|
33 |
+
#: admin.inc.php:122
|
34 |
msgid "Enter amount in USD: "
|
35 |
msgstr "Den Betrag in USD eingeben: "
|
36 |
|
37 |
+
#: admin.inc.php:126
|
38 |
msgid "Send your donation to the author of"
|
39 |
msgstr "Schicken Sie eine Spende an den Autor von"
|
40 |
|
41 |
+
#: admin.inc.php:132
|
42 |
msgid "Quick links"
|
43 |
msgstr "Links"
|
44 |
|
45 |
+
#: admin.inc.php:134
|
46 |
msgid "Contextual Related Posts "
|
47 |
msgstr "Contextual Related Posts "
|
48 |
|
49 |
+
#: admin.inc.php:134
|
50 |
msgid "plugin page"
|
51 |
msgstr "Plugin-Seite"
|
52 |
|
53 |
+
#: admin.inc.php:135
|
54 |
msgid "Other plugins"
|
55 |
msgstr "Weitere Plugins"
|
56 |
|
57 |
+
#: admin.inc.php:136
|
58 |
msgid "Ajay's blog"
|
59 |
msgstr "Ajay's Blog"
|
60 |
|
61 |
+
#: admin.inc.php:137
|
62 |
+
#: contextual-related-posts.php:336
|
63 |
msgid "Support"
|
64 |
msgstr "Support"
|
65 |
|
66 |
+
#: admin.inc.php:138
|
67 |
msgid "Follow @ajaydsouza on Twitter"
|
68 |
msgstr "@ajaydsouza auf Twitter folgen"
|
69 |
|
70 |
+
#: admin.inc.php:142
|
71 |
msgid "Recent developments"
|
72 |
msgstr "Neueste Entwicklungen"
|
73 |
|
74 |
+
#: admin.inc.php:157
|
75 |
msgid "General options"
|
76 |
msgstr ""
|
77 |
|
78 |
+
#: admin.inc.php:160
|
79 |
msgid "Number of related posts to display: "
|
80 |
msgstr "Maximale Anzahl der angezeigten ähnlichen Beiträge: "
|
81 |
|
82 |
+
#: admin.inc.php:163
|
83 |
msgid "Exclude Categories: "
|
84 |
msgstr "Kategorien ausschließen: "
|
85 |
|
86 |
+
#: admin.inc.php:181
|
87 |
msgid "Add related posts to the post content on single posts"
|
88 |
msgstr ""
|
89 |
|
90 |
+
#: admin.inc.php:182
|
91 |
+
#: admin.inc.php:185
|
92 |
#, fuzzy
|
93 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
94 |
msgstr "Ähnliche Beiträge auch in statischen Seiten auflisten.<br />Wenn Sie das deaktivieren wollen, fügen Sie <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> in das Template ein, in dem die ähnlichen Beiträge aufgeliistet werden sollen"
|
95 |
|
96 |
+
#: admin.inc.php:184
|
97 |
#, fuzzy
|
98 |
msgid "Add related posts to pages"
|
99 |
msgstr "Ähnliche Beiträge auch in die Feeds aufnehmen"
|
100 |
|
101 |
+
#: admin.inc.php:187
|
102 |
msgid "Add related posts to feed"
|
103 |
msgstr "Ähnliche Beiträge auch in die Feeds aufnehmen"
|
104 |
|
105 |
+
#: admin.inc.php:190
|
106 |
msgid "Find related posts based on content as well as title"
|
107 |
msgstr ""
|
108 |
|
109 |
+
#: admin.inc.php:191
|
110 |
#, fuzzy
|
111 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
112 |
msgstr "Ähnliche Beiträge sowohl im Beitragstitel als auch im Beitragsinhalt suchen. Bei Deaktivierung wird nur in den Beittragstiteln gesucht. (Im Falle der Aktivierung wird empfohlen, ein Cache-Plugin einzusetzen)"
|
113 |
|
114 |
+
#: admin.inc.php:193
|
115 |
msgid "Exclude Pages in Related Posts"
|
116 |
msgstr "Statische Seiten in ähnlichen Beiträgen ausschließen"
|
117 |
|
118 |
+
#: admin.inc.php:196
|
119 |
+
msgid "Post types to include in results (including custom post types)"
|
120 |
+
msgstr ""
|
121 |
+
|
122 |
+
#: admin.inc.php:207
|
123 |
+
msgid "Use CTRL on Windows and COMMAND on Mac to select multiple items"
|
124 |
+
msgstr ""
|
125 |
+
|
126 |
+
#: admin.inc.php:210
|
127 |
msgid "Add a link to the plugin page as a final item in the list"
|
128 |
msgstr ""
|
129 |
|
130 |
+
#: admin.inc.php:211
|
131 |
msgid " <em>Optional</em>"
|
132 |
msgstr ""
|
133 |
|
134 |
+
#: admin.inc.php:219
|
135 |
#, fuzzy
|
136 |
msgid "Output Options"
|
137 |
msgstr "Ausgabeotionen:"
|
138 |
|
139 |
+
#: admin.inc.php:222
|
140 |
msgid "Title of related posts: "
|
141 |
msgstr "Überschrift über der Liste der ähnlichen Beiträge: "
|
142 |
|
143 |
+
#: admin.inc.php:225
|
144 |
msgid "When there are no posts, what should be shown?"
|
145 |
msgstr "Wenn keine ähnlichen Beiträge gefunden werden, was soll dann angezeigt werden?"
|
146 |
|
147 |
+
#: admin.inc.php:229
|
148 |
msgid "Blank Output"
|
149 |
msgstr "Nichts"
|
150 |
|
151 |
+
#: admin.inc.php:233
|
152 |
msgid "Display \"No Related Posts\""
|
153 |
msgstr "\"Keine ähnlichen Beiträge\" anzeigen"
|
154 |
|
155 |
+
#: admin.inc.php:237
|
156 |
msgid "Show post excerpt in list?"
|
157 |
msgstr "Auszug des Beitrags in der Liste anzeigen?"
|
158 |
|
159 |
+
#: admin.inc.php:240
|
160 |
msgid "Length of excerpt (in words): "
|
161 |
msgstr "Länge des Auszugs (in Worten): "
|
162 |
|
163 |
+
#: admin.inc.php:243
|
164 |
msgid "Customize the output:"
|
165 |
msgstr "Die Ausgabe anpassen:"
|
166 |
|
167 |
+
#: admin.inc.php:245
|
168 |
msgid "HTML to display before the list of posts: "
|
169 |
msgstr "HTML vor der Beitragsliste: "
|
170 |
|
171 |
+
#: admin.inc.php:248
|
172 |
msgid "HTML to display before each list item: "
|
173 |
msgstr "HTML vor jedem Listenelement: "
|
174 |
|
175 |
+
#: admin.inc.php:251
|
176 |
msgid "HTML to display after each list item: "
|
177 |
msgstr "HTML nach jedem Listenelement: "
|
178 |
|
179 |
+
#: admin.inc.php:254
|
180 |
msgid "HTML to display after the list of posts: "
|
181 |
msgstr "HTML nach der Beitragsliste: "
|
182 |
|
183 |
+
#: admin.inc.php:257
|
184 |
msgid "Post thumbnail options:"
|
185 |
msgstr "Optionen für die Beitrags-Thumbnails:"
|
186 |
|
187 |
+
#: admin.inc.php:259
|
188 |
msgid "Location of post thumbnail:"
|
189 |
msgstr ""
|
190 |
|
191 |
+
#: admin.inc.php:263
|
192 |
#, fuzzy
|
193 |
msgid "Display thumbnails inline with posts, before title"
|
194 |
msgstr "Thumbnails und Beitragstitel anzeigen"
|
195 |
|
196 |
+
#: admin.inc.php:267
|
197 |
#, fuzzy
|
198 |
msgid "Display thumbnails inline with posts, after title"
|
199 |
msgstr "Thumbnails und Beitragstitel anzeigen"
|
200 |
|
201 |
+
#: admin.inc.php:271
|
202 |
msgid "Display only thumbnails, no text"
|
203 |
msgstr "Nur Thumbnails, keine Beitragstitel anzeigen"
|
204 |
|
205 |
+
#: admin.inc.php:275
|
206 |
msgid "Do not display thumbnails, only text."
|
207 |
msgstr "Keine Thumbnails, nur Beitragstitel anzeigen"
|
208 |
|
209 |
+
#: admin.inc.php:279
|
210 |
msgid "Maximum width of the thumbnail: "
|
211 |
msgstr ""
|
212 |
|
213 |
+
#: admin.inc.php:282
|
214 |
msgid "Maximum height of the thumbnail: "
|
215 |
msgstr ""
|
216 |
|
217 |
+
#: admin.inc.php:285
|
218 |
+
msgid "Use timthumb to generate thumbnails? "
|
219 |
+
msgstr ""
|
220 |
+
|
221 |
+
#: admin.inc.php:286
|
222 |
+
msgid "If checked, <a href=\"http://www.binarymoon.co.uk/projects/timthumb/\">timthumb</a> will be used to generate thumbnails"
|
223 |
+
msgstr ""
|
224 |
+
|
225 |
+
#: admin.inc.php:288
|
226 |
#, fuzzy
|
227 |
msgid "Post thumbnail meta field name: "
|
228 |
msgstr "Optionen für die Beitrags-Thumbnails:"
|
229 |
|
230 |
+
#: admin.inc.php:289
|
231 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
232 |
msgstr ""
|
233 |
|
234 |
+
#: admin.inc.php:291
|
235 |
#, fuzzy
|
236 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
237 |
msgstr "Wenn 'Postmeta' nicht gesetzt ist, dann soll das Plugin das erste Bild aus dem jeweiligen Beitrag verwenden. Das kann allerdings das Laden des Beitrags verlangsamen, wenn die Bilddateien der ähnlichen Beiträge groß sind!"
|
238 |
|
239 |
+
#: admin.inc.php:292
|
240 |
#, fuzzy
|
241 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
242 |
msgstr "Wenn 'Postmeta' nicht gesetzt ist, dann soll das Plugin das erste Bild aus dem jeweiligen Beitrag verwenden. Das kann allerdings das Laden des Beitrags verlangsamen, wenn die Bilddateien der ähnlichen Beiträge groß sind!"
|
243 |
|
244 |
+
#: admin.inc.php:294
|
245 |
msgid "Use default thumbnail? "
|
246 |
msgstr ""
|
247 |
|
248 |
+
#: admin.inc.php:295
|
249 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
250 |
msgstr ""
|
251 |
|
252 |
+
#: admin.inc.php:297
|
253 |
msgid "Default thumbnail: "
|
254 |
msgstr ""
|
255 |
|
256 |
+
#: admin.inc.php:298
|
257 |
#, fuzzy
|
258 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
259 |
msgstr "Das Plugin prüft zunächst, ob der Beitrag einen Thumbnail enthält. Wenn nicht, wird das Meta-Feld überprüft. Wenn auch dieses nicht vorhanden ist, wird das unten spezifizierte Default-Thumbnail angezeigt:"
|
260 |
|
261 |
+
#: admin.inc.php:304
|
262 |
+
msgid "Custom Styles"
|
263 |
+
msgstr ""
|
264 |
+
|
265 |
+
#: admin.inc.php:307
|
266 |
+
msgid "Custom CSS to add to header:"
|
267 |
+
msgstr ""
|
268 |
+
|
269 |
+
#: admin.inc.php:310
|
270 |
+
msgid "Do not include <code>style</code> tags. Check out the <a href=\"http://wordpress.org/extend/plugins/contextual-related-posts/faq/\">FAQ</a> for available CSS classes to style."
|
271 |
+
msgstr ""
|
272 |
+
|
273 |
+
#: admin.inc.php:315
|
274 |
msgid "Do you want to set options to Default?"
|
275 |
msgstr "Wollen Sie die Optionen auf die Voreinstellungen zurücksetzen?"
|
276 |
|
277 |
+
#: admin.inc.php:316
|
278 |
msgid "Are you sure you want to recreate the index?"
|
279 |
msgstr "Sind Sie sicher, einen neuen Index zu erzeugen?"
|
280 |
|
281 |
+
#: admin.inc.php:346
|
282 |
msgid "Contextual Related Posts"
|
283 |
msgstr "Contextual Related Posts"
|
284 |
|
285 |
+
#: admin.inc.php:346
|
286 |
msgid "Related Posts"
|
287 |
msgstr "Related Posts"
|
288 |
|
289 |
+
#: admin.inc.php:355
|
290 |
+
#, fuzzy
|
291 |
+
msgid "plugin settings page"
|
292 |
+
msgstr "Plugin-Seite"
|
293 |
+
|
294 |
+
#: admin.inc.php:360
|
295 |
+
msgid "Contextual Related Posts plugin has just been installed / upgraded. Please visit the "
|
296 |
+
msgstr ""
|
297 |
+
|
298 |
+
#: admin.inc.php:360
|
299 |
+
msgid " to configure."
|
300 |
+
msgstr ""
|
301 |
+
|
302 |
+
#: contextual-related-posts.php:125
|
303 |
msgid "Powered by"
|
304 |
msgstr "Powered by"
|
305 |
|
306 |
+
#: contextual-related-posts.php:130
|
307 |
+
#: contextual-related-posts.php:134
|
308 |
msgid "No related posts found"
|
309 |
msgstr "Keine ähnlichen Beiträge gefunden"
|
310 |
|
311 |
+
#: contextual-related-posts.php:167
|
312 |
msgid "<h3>Related Posts:</h3>"
|
313 |
msgstr "<h3>Ähnliche Beiträge:</h3>"
|
314 |
|
315 |
+
#: contextual-related-posts.php:335
|
316 |
msgid "Settings"
|
317 |
msgstr "Einstellungen"
|
318 |
|
319 |
+
#: contextual-related-posts.php:337
|
320 |
msgid "Donate"
|
321 |
msgstr "Spenden"
|
322 |
|
languages/crp-en_US.mo
CHANGED
Binary file
|
languages/crp-en_US.po
CHANGED
@@ -2,7 +2,7 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
-
"POT-Creation-Date: 2012-
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: <me@ajaydsouza.com>\n"
|
@@ -14,258 +14,298 @@ msgstr ""
|
|
14 |
"X-Poedit-Basepath: ../\n"
|
15 |
"X-Poedit-SearchPath-0: .\n"
|
16 |
|
17 |
-
#: admin.inc.php:
|
18 |
msgid "Options saved successfully."
|
19 |
msgstr ""
|
20 |
|
21 |
-
#: admin.inc.php:
|
22 |
msgid "Options set to Default."
|
23 |
msgstr ""
|
24 |
|
25 |
-
#: admin.inc.php:
|
26 |
msgid "Index recreated"
|
27 |
msgstr ""
|
28 |
|
29 |
-
#: admin.inc.php:
|
30 |
msgid "Support the development"
|
31 |
msgstr ""
|
32 |
|
33 |
-
#: admin.inc.php:
|
34 |
msgid "Enter amount in USD: "
|
35 |
msgstr ""
|
36 |
|
37 |
-
#: admin.inc.php:
|
38 |
msgid "Send your donation to the author of"
|
39 |
msgstr ""
|
40 |
|
41 |
-
#: admin.inc.php:
|
42 |
msgid "Quick links"
|
43 |
msgstr ""
|
44 |
|
45 |
-
#: admin.inc.php:
|
46 |
msgid "Contextual Related Posts "
|
47 |
msgstr ""
|
48 |
|
49 |
-
#: admin.inc.php:
|
50 |
msgid "plugin page"
|
51 |
msgstr ""
|
52 |
|
53 |
-
#: admin.inc.php:
|
54 |
msgid "Other plugins"
|
55 |
msgstr ""
|
56 |
|
57 |
-
#: admin.inc.php:
|
58 |
msgid "Ajay's blog"
|
59 |
msgstr ""
|
60 |
|
61 |
-
#: admin.inc.php:
|
62 |
-
#: contextual-related-posts.php:
|
63 |
msgid "Support"
|
64 |
msgstr ""
|
65 |
|
66 |
-
#: admin.inc.php:
|
67 |
msgid "Follow @ajaydsouza on Twitter"
|
68 |
msgstr ""
|
69 |
|
70 |
-
#: admin.inc.php:
|
71 |
msgid "Recent developments"
|
72 |
msgstr ""
|
73 |
|
74 |
-
#: admin.inc.php:
|
75 |
msgid "General options"
|
76 |
msgstr ""
|
77 |
|
78 |
-
#: admin.inc.php:
|
79 |
msgid "Number of related posts to display: "
|
80 |
msgstr ""
|
81 |
|
82 |
-
#: admin.inc.php:
|
83 |
msgid "Exclude Categories: "
|
84 |
msgstr ""
|
85 |
|
86 |
-
#: admin.inc.php:
|
87 |
msgid "Add related posts to the post content on single posts"
|
88 |
msgstr ""
|
89 |
|
90 |
-
#: admin.inc.php:
|
91 |
-
#: admin.inc.php:
|
92 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
93 |
msgstr ""
|
94 |
|
95 |
-
#: admin.inc.php:
|
96 |
msgid "Add related posts to pages"
|
97 |
msgstr ""
|
98 |
|
99 |
-
#: admin.inc.php:
|
100 |
msgid "Add related posts to feed"
|
101 |
msgstr ""
|
102 |
|
103 |
-
#: admin.inc.php:
|
104 |
msgid "Find related posts based on content as well as title"
|
105 |
msgstr ""
|
106 |
|
107 |
-
#: admin.inc.php:
|
108 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
109 |
msgstr ""
|
110 |
|
111 |
-
#: admin.inc.php:
|
112 |
msgid "Exclude Pages in Related Posts"
|
113 |
msgstr ""
|
114 |
|
115 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
116 |
msgid "Add a link to the plugin page as a final item in the list"
|
117 |
msgstr ""
|
118 |
|
119 |
-
#: admin.inc.php:
|
120 |
msgid " <em>Optional</em>"
|
121 |
msgstr ""
|
122 |
|
123 |
-
#: admin.inc.php:
|
124 |
msgid "Output Options"
|
125 |
msgstr ""
|
126 |
|
127 |
-
#: admin.inc.php:
|
128 |
msgid "Title of related posts: "
|
129 |
msgstr ""
|
130 |
|
131 |
-
#: admin.inc.php:
|
132 |
msgid "When there are no posts, what should be shown?"
|
133 |
msgstr ""
|
134 |
|
135 |
-
#: admin.inc.php:
|
136 |
msgid "Blank Output"
|
137 |
msgstr ""
|
138 |
|
139 |
-
#: admin.inc.php:
|
140 |
msgid "Display \"No Related Posts\""
|
141 |
msgstr ""
|
142 |
|
143 |
-
#: admin.inc.php:
|
144 |
msgid "Show post excerpt in list?"
|
145 |
msgstr ""
|
146 |
|
147 |
-
#: admin.inc.php:
|
148 |
msgid "Length of excerpt (in words): "
|
149 |
msgstr ""
|
150 |
|
151 |
-
#: admin.inc.php:
|
152 |
msgid "Customize the output:"
|
153 |
msgstr ""
|
154 |
|
155 |
-
#: admin.inc.php:
|
156 |
msgid "HTML to display before the list of posts: "
|
157 |
msgstr ""
|
158 |
|
159 |
-
#: admin.inc.php:
|
160 |
msgid "HTML to display before each list item: "
|
161 |
msgstr ""
|
162 |
|
163 |
-
#: admin.inc.php:
|
164 |
msgid "HTML to display after each list item: "
|
165 |
msgstr ""
|
166 |
|
167 |
-
#: admin.inc.php:
|
168 |
msgid "HTML to display after the list of posts: "
|
169 |
msgstr ""
|
170 |
|
171 |
-
#: admin.inc.php:
|
172 |
msgid "Post thumbnail options:"
|
173 |
msgstr ""
|
174 |
|
175 |
-
#: admin.inc.php:
|
176 |
msgid "Location of post thumbnail:"
|
177 |
msgstr ""
|
178 |
|
179 |
-
#: admin.inc.php:
|
180 |
msgid "Display thumbnails inline with posts, before title"
|
181 |
msgstr ""
|
182 |
|
183 |
-
#: admin.inc.php:
|
184 |
msgid "Display thumbnails inline with posts, after title"
|
185 |
msgstr ""
|
186 |
|
187 |
-
#: admin.inc.php:
|
188 |
msgid "Display only thumbnails, no text"
|
189 |
msgstr ""
|
190 |
|
191 |
-
#: admin.inc.php:
|
192 |
msgid "Do not display thumbnails, only text."
|
193 |
msgstr ""
|
194 |
|
195 |
-
#: admin.inc.php:
|
196 |
msgid "Maximum width of the thumbnail: "
|
197 |
msgstr ""
|
198 |
|
199 |
-
#: admin.inc.php:
|
200 |
msgid "Maximum height of the thumbnail: "
|
201 |
msgstr ""
|
202 |
|
203 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
204 |
msgid "Post thumbnail meta field name: "
|
205 |
msgstr ""
|
206 |
|
207 |
-
#: admin.inc.php:
|
208 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
209 |
msgstr ""
|
210 |
|
211 |
-
#: admin.inc.php:
|
212 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
213 |
msgstr ""
|
214 |
|
215 |
-
#: admin.inc.php:
|
216 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
217 |
msgstr ""
|
218 |
|
219 |
-
#: admin.inc.php:
|
220 |
msgid "Use default thumbnail? "
|
221 |
msgstr ""
|
222 |
|
223 |
-
#: admin.inc.php:
|
224 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
225 |
msgstr ""
|
226 |
|
227 |
-
#: admin.inc.php:
|
228 |
msgid "Default thumbnail: "
|
229 |
msgstr ""
|
230 |
|
231 |
-
#: admin.inc.php:
|
232 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
233 |
msgstr ""
|
234 |
|
235 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
236 |
msgid "Do you want to set options to Default?"
|
237 |
msgstr ""
|
238 |
|
239 |
-
#: admin.inc.php:
|
240 |
msgid "Are you sure you want to recreate the index?"
|
241 |
msgstr ""
|
242 |
|
243 |
-
#: admin.inc.php:
|
244 |
msgid "Contextual Related Posts"
|
245 |
msgstr ""
|
246 |
|
247 |
-
#: admin.inc.php:
|
248 |
msgid "Related Posts"
|
249 |
msgstr ""
|
250 |
|
251 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
252 |
msgid "Powered by"
|
253 |
msgstr ""
|
254 |
|
255 |
-
#: contextual-related-posts.php:
|
256 |
-
#: contextual-related-posts.php:
|
257 |
msgid "No related posts found"
|
258 |
msgstr ""
|
259 |
|
260 |
-
#: contextual-related-posts.php:
|
261 |
msgid "<h3>Related Posts:</h3>"
|
262 |
msgstr ""
|
263 |
|
264 |
-
#: contextual-related-posts.php:
|
265 |
msgid "Settings"
|
266 |
msgstr ""
|
267 |
|
268 |
-
#: contextual-related-posts.php:
|
269 |
msgid "Donate"
|
270 |
msgstr ""
|
271 |
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2012-06-04 18:52-0000\n"
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: <me@ajaydsouza.com>\n"
|
14 |
"X-Poedit-Basepath: ../\n"
|
15 |
"X-Poedit-SearchPath-0: .\n"
|
16 |
|
17 |
+
#: admin.inc.php:70
|
18 |
msgid "Options saved successfully."
|
19 |
msgstr ""
|
20 |
|
21 |
+
#: admin.inc.php:86
|
22 |
msgid "Options set to Default."
|
23 |
msgstr ""
|
24 |
|
25 |
+
#: admin.inc.php:101
|
26 |
msgid "Index recreated"
|
27 |
msgstr ""
|
28 |
|
29 |
+
#: admin.inc.php:114
|
30 |
msgid "Support the development"
|
31 |
msgstr ""
|
32 |
|
33 |
+
#: admin.inc.php:122
|
34 |
msgid "Enter amount in USD: "
|
35 |
msgstr ""
|
36 |
|
37 |
+
#: admin.inc.php:126
|
38 |
msgid "Send your donation to the author of"
|
39 |
msgstr ""
|
40 |
|
41 |
+
#: admin.inc.php:132
|
42 |
msgid "Quick links"
|
43 |
msgstr ""
|
44 |
|
45 |
+
#: admin.inc.php:134
|
46 |
msgid "Contextual Related Posts "
|
47 |
msgstr ""
|
48 |
|
49 |
+
#: admin.inc.php:134
|
50 |
msgid "plugin page"
|
51 |
msgstr ""
|
52 |
|
53 |
+
#: admin.inc.php:135
|
54 |
msgid "Other plugins"
|
55 |
msgstr ""
|
56 |
|
57 |
+
#: admin.inc.php:136
|
58 |
msgid "Ajay's blog"
|
59 |
msgstr ""
|
60 |
|
61 |
+
#: admin.inc.php:137
|
62 |
+
#: contextual-related-posts.php:336
|
63 |
msgid "Support"
|
64 |
msgstr ""
|
65 |
|
66 |
+
#: admin.inc.php:138
|
67 |
msgid "Follow @ajaydsouza on Twitter"
|
68 |
msgstr ""
|
69 |
|
70 |
+
#: admin.inc.php:142
|
71 |
msgid "Recent developments"
|
72 |
msgstr ""
|
73 |
|
74 |
+
#: admin.inc.php:157
|
75 |
msgid "General options"
|
76 |
msgstr ""
|
77 |
|
78 |
+
#: admin.inc.php:160
|
79 |
msgid "Number of related posts to display: "
|
80 |
msgstr ""
|
81 |
|
82 |
+
#: admin.inc.php:163
|
83 |
msgid "Exclude Categories: "
|
84 |
msgstr ""
|
85 |
|
86 |
+
#: admin.inc.php:181
|
87 |
msgid "Add related posts to the post content on single posts"
|
88 |
msgstr ""
|
89 |
|
90 |
+
#: admin.inc.php:182
|
91 |
+
#: admin.inc.php:185
|
92 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
93 |
msgstr ""
|
94 |
|
95 |
+
#: admin.inc.php:184
|
96 |
msgid "Add related posts to pages"
|
97 |
msgstr ""
|
98 |
|
99 |
+
#: admin.inc.php:187
|
100 |
msgid "Add related posts to feed"
|
101 |
msgstr ""
|
102 |
|
103 |
+
#: admin.inc.php:190
|
104 |
msgid "Find related posts based on content as well as title"
|
105 |
msgstr ""
|
106 |
|
107 |
+
#: admin.inc.php:191
|
108 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
109 |
msgstr ""
|
110 |
|
111 |
+
#: admin.inc.php:193
|
112 |
msgid "Exclude Pages in Related Posts"
|
113 |
msgstr ""
|
114 |
|
115 |
+
#: admin.inc.php:196
|
116 |
+
msgid "Post types to include in results (including custom post types)"
|
117 |
+
msgstr ""
|
118 |
+
|
119 |
+
#: admin.inc.php:207
|
120 |
+
msgid "Use CTRL on Windows and COMMAND on Mac to select multiple items"
|
121 |
+
msgstr ""
|
122 |
+
|
123 |
+
#: admin.inc.php:210
|
124 |
msgid "Add a link to the plugin page as a final item in the list"
|
125 |
msgstr ""
|
126 |
|
127 |
+
#: admin.inc.php:211
|
128 |
msgid " <em>Optional</em>"
|
129 |
msgstr ""
|
130 |
|
131 |
+
#: admin.inc.php:219
|
132 |
msgid "Output Options"
|
133 |
msgstr ""
|
134 |
|
135 |
+
#: admin.inc.php:222
|
136 |
msgid "Title of related posts: "
|
137 |
msgstr ""
|
138 |
|
139 |
+
#: admin.inc.php:225
|
140 |
msgid "When there are no posts, what should be shown?"
|
141 |
msgstr ""
|
142 |
|
143 |
+
#: admin.inc.php:229
|
144 |
msgid "Blank Output"
|
145 |
msgstr ""
|
146 |
|
147 |
+
#: admin.inc.php:233
|
148 |
msgid "Display \"No Related Posts\""
|
149 |
msgstr ""
|
150 |
|
151 |
+
#: admin.inc.php:237
|
152 |
msgid "Show post excerpt in list?"
|
153 |
msgstr ""
|
154 |
|
155 |
+
#: admin.inc.php:240
|
156 |
msgid "Length of excerpt (in words): "
|
157 |
msgstr ""
|
158 |
|
159 |
+
#: admin.inc.php:243
|
160 |
msgid "Customize the output:"
|
161 |
msgstr ""
|
162 |
|
163 |
+
#: admin.inc.php:245
|
164 |
msgid "HTML to display before the list of posts: "
|
165 |
msgstr ""
|
166 |
|
167 |
+
#: admin.inc.php:248
|
168 |
msgid "HTML to display before each list item: "
|
169 |
msgstr ""
|
170 |
|
171 |
+
#: admin.inc.php:251
|
172 |
msgid "HTML to display after each list item: "
|
173 |
msgstr ""
|
174 |
|
175 |
+
#: admin.inc.php:254
|
176 |
msgid "HTML to display after the list of posts: "
|
177 |
msgstr ""
|
178 |
|
179 |
+
#: admin.inc.php:257
|
180 |
msgid "Post thumbnail options:"
|
181 |
msgstr ""
|
182 |
|
183 |
+
#: admin.inc.php:259
|
184 |
msgid "Location of post thumbnail:"
|
185 |
msgstr ""
|
186 |
|
187 |
+
#: admin.inc.php:263
|
188 |
msgid "Display thumbnails inline with posts, before title"
|
189 |
msgstr ""
|
190 |
|
191 |
+
#: admin.inc.php:267
|
192 |
msgid "Display thumbnails inline with posts, after title"
|
193 |
msgstr ""
|
194 |
|
195 |
+
#: admin.inc.php:271
|
196 |
msgid "Display only thumbnails, no text"
|
197 |
msgstr ""
|
198 |
|
199 |
+
#: admin.inc.php:275
|
200 |
msgid "Do not display thumbnails, only text."
|
201 |
msgstr ""
|
202 |
|
203 |
+
#: admin.inc.php:279
|
204 |
msgid "Maximum width of the thumbnail: "
|
205 |
msgstr ""
|
206 |
|
207 |
+
#: admin.inc.php:282
|
208 |
msgid "Maximum height of the thumbnail: "
|
209 |
msgstr ""
|
210 |
|
211 |
+
#: admin.inc.php:285
|
212 |
+
msgid "Use timthumb to generate thumbnails? "
|
213 |
+
msgstr ""
|
214 |
+
|
215 |
+
#: admin.inc.php:286
|
216 |
+
msgid "If checked, <a href=\"http://www.binarymoon.co.uk/projects/timthumb/\">timthumb</a> will be used to generate thumbnails"
|
217 |
+
msgstr ""
|
218 |
+
|
219 |
+
#: admin.inc.php:288
|
220 |
msgid "Post thumbnail meta field name: "
|
221 |
msgstr ""
|
222 |
|
223 |
+
#: admin.inc.php:289
|
224 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
225 |
msgstr ""
|
226 |
|
227 |
+
#: admin.inc.php:291
|
228 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
229 |
msgstr ""
|
230 |
|
231 |
+
#: admin.inc.php:292
|
232 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
233 |
msgstr ""
|
234 |
|
235 |
+
#: admin.inc.php:294
|
236 |
msgid "Use default thumbnail? "
|
237 |
msgstr ""
|
238 |
|
239 |
+
#: admin.inc.php:295
|
240 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
241 |
msgstr ""
|
242 |
|
243 |
+
#: admin.inc.php:297
|
244 |
msgid "Default thumbnail: "
|
245 |
msgstr ""
|
246 |
|
247 |
+
#: admin.inc.php:298
|
248 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
249 |
msgstr ""
|
250 |
|
251 |
+
#: admin.inc.php:304
|
252 |
+
msgid "Custom Styles"
|
253 |
+
msgstr ""
|
254 |
+
|
255 |
+
#: admin.inc.php:307
|
256 |
+
msgid "Custom CSS to add to header:"
|
257 |
+
msgstr ""
|
258 |
+
|
259 |
+
#: admin.inc.php:310
|
260 |
+
msgid "Do not include <code>style</code> tags. Check out the <a href=\"http://wordpress.org/extend/plugins/contextual-related-posts/faq/\">FAQ</a> for available CSS classes to style."
|
261 |
+
msgstr ""
|
262 |
+
|
263 |
+
#: admin.inc.php:315
|
264 |
msgid "Do you want to set options to Default?"
|
265 |
msgstr ""
|
266 |
|
267 |
+
#: admin.inc.php:316
|
268 |
msgid "Are you sure you want to recreate the index?"
|
269 |
msgstr ""
|
270 |
|
271 |
+
#: admin.inc.php:346
|
272 |
msgid "Contextual Related Posts"
|
273 |
msgstr ""
|
274 |
|
275 |
+
#: admin.inc.php:346
|
276 |
msgid "Related Posts"
|
277 |
msgstr ""
|
278 |
|
279 |
+
#: admin.inc.php:355
|
280 |
+
msgid "plugin settings page"
|
281 |
+
msgstr ""
|
282 |
+
|
283 |
+
#: admin.inc.php:360
|
284 |
+
msgid "Contextual Related Posts plugin has just been installed / upgraded. Please visit the "
|
285 |
+
msgstr ""
|
286 |
+
|
287 |
+
#: admin.inc.php:360
|
288 |
+
msgid " to configure."
|
289 |
+
msgstr ""
|
290 |
+
|
291 |
+
#: contextual-related-posts.php:125
|
292 |
msgid "Powered by"
|
293 |
msgstr ""
|
294 |
|
295 |
+
#: contextual-related-posts.php:130
|
296 |
+
#: contextual-related-posts.php:134
|
297 |
msgid "No related posts found"
|
298 |
msgstr ""
|
299 |
|
300 |
+
#: contextual-related-posts.php:167
|
301 |
msgid "<h3>Related Posts:</h3>"
|
302 |
msgstr ""
|
303 |
|
304 |
+
#: contextual-related-posts.php:335
|
305 |
msgid "Settings"
|
306 |
msgstr ""
|
307 |
|
308 |
+
#: contextual-related-posts.php:337
|
309 |
msgid "Donate"
|
310 |
msgstr ""
|
311 |
|
languages/crp-en_US.pot
CHANGED
@@ -2,7 +2,7 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
-
"POT-Creation-Date: 2012-
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: <me@ajaydsouza.com>\n"
|
@@ -14,258 +14,298 @@ msgstr ""
|
|
14 |
"X-Poedit-Basepath: ../\n"
|
15 |
"X-Poedit-SearchPath-0: .\n"
|
16 |
|
17 |
-
#: admin.inc.php:
|
18 |
msgid "Options saved successfully."
|
19 |
msgstr ""
|
20 |
|
21 |
-
#: admin.inc.php:
|
22 |
msgid "Options set to Default."
|
23 |
msgstr ""
|
24 |
|
25 |
-
#: admin.inc.php:
|
26 |
msgid "Index recreated"
|
27 |
msgstr ""
|
28 |
|
29 |
-
#: admin.inc.php:
|
30 |
msgid "Support the development"
|
31 |
msgstr ""
|
32 |
|
33 |
-
#: admin.inc.php:
|
34 |
msgid "Enter amount in USD: "
|
35 |
msgstr ""
|
36 |
|
37 |
-
#: admin.inc.php:
|
38 |
msgid "Send your donation to the author of"
|
39 |
msgstr ""
|
40 |
|
41 |
-
#: admin.inc.php:
|
42 |
msgid "Quick links"
|
43 |
msgstr ""
|
44 |
|
45 |
-
#: admin.inc.php:
|
46 |
msgid "Contextual Related Posts "
|
47 |
msgstr ""
|
48 |
|
49 |
-
#: admin.inc.php:
|
50 |
msgid "plugin page"
|
51 |
msgstr ""
|
52 |
|
53 |
-
#: admin.inc.php:
|
54 |
msgid "Other plugins"
|
55 |
msgstr ""
|
56 |
|
57 |
-
#: admin.inc.php:
|
58 |
msgid "Ajay's blog"
|
59 |
msgstr ""
|
60 |
|
61 |
-
#: admin.inc.php:
|
62 |
-
#: contextual-related-posts.php:
|
63 |
msgid "Support"
|
64 |
msgstr ""
|
65 |
|
66 |
-
#: admin.inc.php:
|
67 |
msgid "Follow @ajaydsouza on Twitter"
|
68 |
msgstr ""
|
69 |
|
70 |
-
#: admin.inc.php:
|
71 |
msgid "Recent developments"
|
72 |
msgstr ""
|
73 |
|
74 |
-
#: admin.inc.php:
|
75 |
msgid "General options"
|
76 |
msgstr ""
|
77 |
|
78 |
-
#: admin.inc.php:
|
79 |
msgid "Number of related posts to display: "
|
80 |
msgstr ""
|
81 |
|
82 |
-
#: admin.inc.php:
|
83 |
msgid "Exclude Categories: "
|
84 |
msgstr ""
|
85 |
|
86 |
-
#: admin.inc.php:
|
87 |
msgid "Add related posts to the post content on single posts"
|
88 |
msgstr ""
|
89 |
|
90 |
-
#: admin.inc.php:
|
91 |
-
#: admin.inc.php:
|
92 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
93 |
msgstr ""
|
94 |
|
95 |
-
#: admin.inc.php:
|
96 |
msgid "Add related posts to pages"
|
97 |
msgstr ""
|
98 |
|
99 |
-
#: admin.inc.php:
|
100 |
msgid "Add related posts to feed"
|
101 |
msgstr ""
|
102 |
|
103 |
-
#: admin.inc.php:
|
104 |
msgid "Find related posts based on content as well as title"
|
105 |
msgstr ""
|
106 |
|
107 |
-
#: admin.inc.php:
|
108 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
109 |
msgstr ""
|
110 |
|
111 |
-
#: admin.inc.php:
|
112 |
msgid "Exclude Pages in Related Posts"
|
113 |
msgstr ""
|
114 |
|
115 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
116 |
msgid "Add a link to the plugin page as a final item in the list"
|
117 |
msgstr ""
|
118 |
|
119 |
-
#: admin.inc.php:
|
120 |
msgid " <em>Optional</em>"
|
121 |
msgstr ""
|
122 |
|
123 |
-
#: admin.inc.php:
|
124 |
msgid "Output Options"
|
125 |
msgstr ""
|
126 |
|
127 |
-
#: admin.inc.php:
|
128 |
msgid "Title of related posts: "
|
129 |
msgstr ""
|
130 |
|
131 |
-
#: admin.inc.php:
|
132 |
msgid "When there are no posts, what should be shown?"
|
133 |
msgstr ""
|
134 |
|
135 |
-
#: admin.inc.php:
|
136 |
msgid "Blank Output"
|
137 |
msgstr ""
|
138 |
|
139 |
-
#: admin.inc.php:
|
140 |
msgid "Display \"No Related Posts\""
|
141 |
msgstr ""
|
142 |
|
143 |
-
#: admin.inc.php:
|
144 |
msgid "Show post excerpt in list?"
|
145 |
msgstr ""
|
146 |
|
147 |
-
#: admin.inc.php:
|
148 |
msgid "Length of excerpt (in words): "
|
149 |
msgstr ""
|
150 |
|
151 |
-
#: admin.inc.php:
|
152 |
msgid "Customize the output:"
|
153 |
msgstr ""
|
154 |
|
155 |
-
#: admin.inc.php:
|
156 |
msgid "HTML to display before the list of posts: "
|
157 |
msgstr ""
|
158 |
|
159 |
-
#: admin.inc.php:
|
160 |
msgid "HTML to display before each list item: "
|
161 |
msgstr ""
|
162 |
|
163 |
-
#: admin.inc.php:
|
164 |
msgid "HTML to display after each list item: "
|
165 |
msgstr ""
|
166 |
|
167 |
-
#: admin.inc.php:
|
168 |
msgid "HTML to display after the list of posts: "
|
169 |
msgstr ""
|
170 |
|
171 |
-
#: admin.inc.php:
|
172 |
msgid "Post thumbnail options:"
|
173 |
msgstr ""
|
174 |
|
175 |
-
#: admin.inc.php:
|
176 |
msgid "Location of post thumbnail:"
|
177 |
msgstr ""
|
178 |
|
179 |
-
#: admin.inc.php:
|
180 |
msgid "Display thumbnails inline with posts, before title"
|
181 |
msgstr ""
|
182 |
|
183 |
-
#: admin.inc.php:
|
184 |
msgid "Display thumbnails inline with posts, after title"
|
185 |
msgstr ""
|
186 |
|
187 |
-
#: admin.inc.php:
|
188 |
msgid "Display only thumbnails, no text"
|
189 |
msgstr ""
|
190 |
|
191 |
-
#: admin.inc.php:
|
192 |
msgid "Do not display thumbnails, only text."
|
193 |
msgstr ""
|
194 |
|
195 |
-
#: admin.inc.php:
|
196 |
msgid "Maximum width of the thumbnail: "
|
197 |
msgstr ""
|
198 |
|
199 |
-
#: admin.inc.php:
|
200 |
msgid "Maximum height of the thumbnail: "
|
201 |
msgstr ""
|
202 |
|
203 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
204 |
msgid "Post thumbnail meta field name: "
|
205 |
msgstr ""
|
206 |
|
207 |
-
#: admin.inc.php:
|
208 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
209 |
msgstr ""
|
210 |
|
211 |
-
#: admin.inc.php:
|
212 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
213 |
msgstr ""
|
214 |
|
215 |
-
#: admin.inc.php:
|
216 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
217 |
msgstr ""
|
218 |
|
219 |
-
#: admin.inc.php:
|
220 |
msgid "Use default thumbnail? "
|
221 |
msgstr ""
|
222 |
|
223 |
-
#: admin.inc.php:
|
224 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
225 |
msgstr ""
|
226 |
|
227 |
-
#: admin.inc.php:
|
228 |
msgid "Default thumbnail: "
|
229 |
msgstr ""
|
230 |
|
231 |
-
#: admin.inc.php:
|
232 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
233 |
msgstr ""
|
234 |
|
235 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
236 |
msgid "Do you want to set options to Default?"
|
237 |
msgstr ""
|
238 |
|
239 |
-
#: admin.inc.php:
|
240 |
msgid "Are you sure you want to recreate the index?"
|
241 |
msgstr ""
|
242 |
|
243 |
-
#: admin.inc.php:
|
244 |
msgid "Contextual Related Posts"
|
245 |
msgstr ""
|
246 |
|
247 |
-
#: admin.inc.php:
|
248 |
msgid "Related Posts"
|
249 |
msgstr ""
|
250 |
|
251 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
252 |
msgid "Powered by"
|
253 |
msgstr ""
|
254 |
|
255 |
-
#: contextual-related-posts.php:
|
256 |
-
#: contextual-related-posts.php:
|
257 |
msgid "No related posts found"
|
258 |
msgstr ""
|
259 |
|
260 |
-
#: contextual-related-posts.php:
|
261 |
msgid "<h3>Related Posts:</h3>"
|
262 |
msgstr ""
|
263 |
|
264 |
-
#: contextual-related-posts.php:
|
265 |
msgid "Settings"
|
266 |
msgstr ""
|
267 |
|
268 |
-
#: contextual-related-posts.php:
|
269 |
msgid "Donate"
|
270 |
msgstr ""
|
271 |
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2012-06-04 18:52-0000\n"
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: <me@ajaydsouza.com>\n"
|
14 |
"X-Poedit-Basepath: ../\n"
|
15 |
"X-Poedit-SearchPath-0: .\n"
|
16 |
|
17 |
+
#: admin.inc.php:70
|
18 |
msgid "Options saved successfully."
|
19 |
msgstr ""
|
20 |
|
21 |
+
#: admin.inc.php:86
|
22 |
msgid "Options set to Default."
|
23 |
msgstr ""
|
24 |
|
25 |
+
#: admin.inc.php:101
|
26 |
msgid "Index recreated"
|
27 |
msgstr ""
|
28 |
|
29 |
+
#: admin.inc.php:114
|
30 |
msgid "Support the development"
|
31 |
msgstr ""
|
32 |
|
33 |
+
#: admin.inc.php:122
|
34 |
msgid "Enter amount in USD: "
|
35 |
msgstr ""
|
36 |
|
37 |
+
#: admin.inc.php:126
|
38 |
msgid "Send your donation to the author of"
|
39 |
msgstr ""
|
40 |
|
41 |
+
#: admin.inc.php:132
|
42 |
msgid "Quick links"
|
43 |
msgstr ""
|
44 |
|
45 |
+
#: admin.inc.php:134
|
46 |
msgid "Contextual Related Posts "
|
47 |
msgstr ""
|
48 |
|
49 |
+
#: admin.inc.php:134
|
50 |
msgid "plugin page"
|
51 |
msgstr ""
|
52 |
|
53 |
+
#: admin.inc.php:135
|
54 |
msgid "Other plugins"
|
55 |
msgstr ""
|
56 |
|
57 |
+
#: admin.inc.php:136
|
58 |
msgid "Ajay's blog"
|
59 |
msgstr ""
|
60 |
|
61 |
+
#: admin.inc.php:137
|
62 |
+
#: contextual-related-posts.php:336
|
63 |
msgid "Support"
|
64 |
msgstr ""
|
65 |
|
66 |
+
#: admin.inc.php:138
|
67 |
msgid "Follow @ajaydsouza on Twitter"
|
68 |
msgstr ""
|
69 |
|
70 |
+
#: admin.inc.php:142
|
71 |
msgid "Recent developments"
|
72 |
msgstr ""
|
73 |
|
74 |
+
#: admin.inc.php:157
|
75 |
msgid "General options"
|
76 |
msgstr ""
|
77 |
|
78 |
+
#: admin.inc.php:160
|
79 |
msgid "Number of related posts to display: "
|
80 |
msgstr ""
|
81 |
|
82 |
+
#: admin.inc.php:163
|
83 |
msgid "Exclude Categories: "
|
84 |
msgstr ""
|
85 |
|
86 |
+
#: admin.inc.php:181
|
87 |
msgid "Add related posts to the post content on single posts"
|
88 |
msgstr ""
|
89 |
|
90 |
+
#: admin.inc.php:182
|
91 |
+
#: admin.inc.php:185
|
92 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
93 |
msgstr ""
|
94 |
|
95 |
+
#: admin.inc.php:184
|
96 |
msgid "Add related posts to pages"
|
97 |
msgstr ""
|
98 |
|
99 |
+
#: admin.inc.php:187
|
100 |
msgid "Add related posts to feed"
|
101 |
msgstr ""
|
102 |
|
103 |
+
#: admin.inc.php:190
|
104 |
msgid "Find related posts based on content as well as title"
|
105 |
msgstr ""
|
106 |
|
107 |
+
#: admin.inc.php:191
|
108 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
109 |
msgstr ""
|
110 |
|
111 |
+
#: admin.inc.php:193
|
112 |
msgid "Exclude Pages in Related Posts"
|
113 |
msgstr ""
|
114 |
|
115 |
+
#: admin.inc.php:196
|
116 |
+
msgid "Post types to include in results (including custom post types)"
|
117 |
+
msgstr ""
|
118 |
+
|
119 |
+
#: admin.inc.php:207
|
120 |
+
msgid "Use CTRL on Windows and COMMAND on Mac to select multiple items"
|
121 |
+
msgstr ""
|
122 |
+
|
123 |
+
#: admin.inc.php:210
|
124 |
msgid "Add a link to the plugin page as a final item in the list"
|
125 |
msgstr ""
|
126 |
|
127 |
+
#: admin.inc.php:211
|
128 |
msgid " <em>Optional</em>"
|
129 |
msgstr ""
|
130 |
|
131 |
+
#: admin.inc.php:219
|
132 |
msgid "Output Options"
|
133 |
msgstr ""
|
134 |
|
135 |
+
#: admin.inc.php:222
|
136 |
msgid "Title of related posts: "
|
137 |
msgstr ""
|
138 |
|
139 |
+
#: admin.inc.php:225
|
140 |
msgid "When there are no posts, what should be shown?"
|
141 |
msgstr ""
|
142 |
|
143 |
+
#: admin.inc.php:229
|
144 |
msgid "Blank Output"
|
145 |
msgstr ""
|
146 |
|
147 |
+
#: admin.inc.php:233
|
148 |
msgid "Display \"No Related Posts\""
|
149 |
msgstr ""
|
150 |
|
151 |
+
#: admin.inc.php:237
|
152 |
msgid "Show post excerpt in list?"
|
153 |
msgstr ""
|
154 |
|
155 |
+
#: admin.inc.php:240
|
156 |
msgid "Length of excerpt (in words): "
|
157 |
msgstr ""
|
158 |
|
159 |
+
#: admin.inc.php:243
|
160 |
msgid "Customize the output:"
|
161 |
msgstr ""
|
162 |
|
163 |
+
#: admin.inc.php:245
|
164 |
msgid "HTML to display before the list of posts: "
|
165 |
msgstr ""
|
166 |
|
167 |
+
#: admin.inc.php:248
|
168 |
msgid "HTML to display before each list item: "
|
169 |
msgstr ""
|
170 |
|
171 |
+
#: admin.inc.php:251
|
172 |
msgid "HTML to display after each list item: "
|
173 |
msgstr ""
|
174 |
|
175 |
+
#: admin.inc.php:254
|
176 |
msgid "HTML to display after the list of posts: "
|
177 |
msgstr ""
|
178 |
|
179 |
+
#: admin.inc.php:257
|
180 |
msgid "Post thumbnail options:"
|
181 |
msgstr ""
|
182 |
|
183 |
+
#: admin.inc.php:259
|
184 |
msgid "Location of post thumbnail:"
|
185 |
msgstr ""
|
186 |
|
187 |
+
#: admin.inc.php:263
|
188 |
msgid "Display thumbnails inline with posts, before title"
|
189 |
msgstr ""
|
190 |
|
191 |
+
#: admin.inc.php:267
|
192 |
msgid "Display thumbnails inline with posts, after title"
|
193 |
msgstr ""
|
194 |
|
195 |
+
#: admin.inc.php:271
|
196 |
msgid "Display only thumbnails, no text"
|
197 |
msgstr ""
|
198 |
|
199 |
+
#: admin.inc.php:275
|
200 |
msgid "Do not display thumbnails, only text."
|
201 |
msgstr ""
|
202 |
|
203 |
+
#: admin.inc.php:279
|
204 |
msgid "Maximum width of the thumbnail: "
|
205 |
msgstr ""
|
206 |
|
207 |
+
#: admin.inc.php:282
|
208 |
msgid "Maximum height of the thumbnail: "
|
209 |
msgstr ""
|
210 |
|
211 |
+
#: admin.inc.php:285
|
212 |
+
msgid "Use timthumb to generate thumbnails? "
|
213 |
+
msgstr ""
|
214 |
+
|
215 |
+
#: admin.inc.php:286
|
216 |
+
msgid "If checked, <a href=\"http://www.binarymoon.co.uk/projects/timthumb/\">timthumb</a> will be used to generate thumbnails"
|
217 |
+
msgstr ""
|
218 |
+
|
219 |
+
#: admin.inc.php:288
|
220 |
msgid "Post thumbnail meta field name: "
|
221 |
msgstr ""
|
222 |
|
223 |
+
#: admin.inc.php:289
|
224 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
225 |
msgstr ""
|
226 |
|
227 |
+
#: admin.inc.php:291
|
228 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
229 |
msgstr ""
|
230 |
|
231 |
+
#: admin.inc.php:292
|
232 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
233 |
msgstr ""
|
234 |
|
235 |
+
#: admin.inc.php:294
|
236 |
msgid "Use default thumbnail? "
|
237 |
msgstr ""
|
238 |
|
239 |
+
#: admin.inc.php:295
|
240 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
241 |
msgstr ""
|
242 |
|
243 |
+
#: admin.inc.php:297
|
244 |
msgid "Default thumbnail: "
|
245 |
msgstr ""
|
246 |
|
247 |
+
#: admin.inc.php:298
|
248 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
249 |
msgstr ""
|
250 |
|
251 |
+
#: admin.inc.php:304
|
252 |
+
msgid "Custom Styles"
|
253 |
+
msgstr ""
|
254 |
+
|
255 |
+
#: admin.inc.php:307
|
256 |
+
msgid "Custom CSS to add to header:"
|
257 |
+
msgstr ""
|
258 |
+
|
259 |
+
#: admin.inc.php:310
|
260 |
+
msgid "Do not include <code>style</code> tags. Check out the <a href=\"http://wordpress.org/extend/plugins/contextual-related-posts/faq/\">FAQ</a> for available CSS classes to style."
|
261 |
+
msgstr ""
|
262 |
+
|
263 |
+
#: admin.inc.php:315
|
264 |
msgid "Do you want to set options to Default?"
|
265 |
msgstr ""
|
266 |
|
267 |
+
#: admin.inc.php:316
|
268 |
msgid "Are you sure you want to recreate the index?"
|
269 |
msgstr ""
|
270 |
|
271 |
+
#: admin.inc.php:346
|
272 |
msgid "Contextual Related Posts"
|
273 |
msgstr ""
|
274 |
|
275 |
+
#: admin.inc.php:346
|
276 |
msgid "Related Posts"
|
277 |
msgstr ""
|
278 |
|
279 |
+
#: admin.inc.php:355
|
280 |
+
msgid "plugin settings page"
|
281 |
+
msgstr ""
|
282 |
+
|
283 |
+
#: admin.inc.php:360
|
284 |
+
msgid "Contextual Related Posts plugin has just been installed / upgraded. Please visit the "
|
285 |
+
msgstr ""
|
286 |
+
|
287 |
+
#: admin.inc.php:360
|
288 |
+
msgid " to configure."
|
289 |
+
msgstr ""
|
290 |
+
|
291 |
+
#: contextual-related-posts.php:125
|
292 |
msgid "Powered by"
|
293 |
msgstr ""
|
294 |
|
295 |
+
#: contextual-related-posts.php:130
|
296 |
+
#: contextual-related-posts.php:134
|
297 |
msgid "No related posts found"
|
298 |
msgstr ""
|
299 |
|
300 |
+
#: contextual-related-posts.php:167
|
301 |
msgid "<h3>Related Posts:</h3>"
|
302 |
msgstr ""
|
303 |
|
304 |
+
#: contextual-related-posts.php:335
|
305 |
msgid "Settings"
|
306 |
msgstr ""
|
307 |
|
308 |
+
#: contextual-related-posts.php:337
|
309 |
msgid "Donate"
|
310 |
msgstr ""
|
311 |
|
languages/crp-es_ES.mo
CHANGED
Binary file
|
languages/crp-es_ES.po
CHANGED
@@ -2,7 +2,7 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
-
"POT-Creation-Date: 2012-
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: \n"
|
@@ -15,268 +15,309 @@ msgstr ""
|
|
15 |
"X-Poedit-Country: SPAIN\n"
|
16 |
"X-Poedit-SearchPath-0: .\n"
|
17 |
|
18 |
-
#: admin.inc.php:
|
19 |
msgid "Options saved successfully."
|
20 |
msgstr "Opciones guardadas correctament."
|
21 |
|
22 |
-
#: admin.inc.php:
|
23 |
msgid "Options set to Default."
|
24 |
msgstr "Restablecer opciones originales"
|
25 |
|
26 |
-
#: admin.inc.php:
|
27 |
msgid "Index recreated"
|
28 |
msgstr "Recrear el Index"
|
29 |
|
30 |
-
#: admin.inc.php:
|
31 |
msgid "Support the development"
|
32 |
msgstr "Apoya el desarrollo"
|
33 |
|
34 |
-
#: admin.inc.php:
|
35 |
msgid "Enter amount in USD: "
|
36 |
msgstr "Ingresa monto en USD:"
|
37 |
|
38 |
-
#: admin.inc.php:
|
39 |
msgid "Send your donation to the author of"
|
40 |
msgstr "Enviar tu donación al autor de"
|
41 |
|
42 |
-
#: admin.inc.php:
|
43 |
msgid "Quick links"
|
44 |
msgstr "Links rápidos"
|
45 |
|
46 |
-
#: admin.inc.php:
|
47 |
msgid "Contextual Related Posts "
|
48 |
msgstr "Posts relacionados contextualmente"
|
49 |
|
50 |
-
#: admin.inc.php:
|
51 |
msgid "plugin page"
|
52 |
msgstr "sitio del plugin"
|
53 |
|
54 |
-
#: admin.inc.php:
|
55 |
msgid "Other plugins"
|
56 |
msgstr "Otros plugins"
|
57 |
|
58 |
-
#: admin.inc.php:
|
59 |
msgid "Ajay's blog"
|
60 |
msgstr ""
|
61 |
|
62 |
-
#: admin.inc.php:
|
63 |
-
#: contextual-related-posts.php:
|
64 |
msgid "Support"
|
65 |
msgstr "Soporte"
|
66 |
|
67 |
-
#: admin.inc.php:
|
68 |
msgid "Follow @ajaydsouza on Twitter"
|
69 |
msgstr "Seguir @ajaydsouza en Twitter"
|
70 |
|
71 |
-
#: admin.inc.php:
|
72 |
msgid "Recent developments"
|
73 |
msgstr "Desarrollos recientes"
|
74 |
|
75 |
-
#: admin.inc.php:
|
76 |
msgid "General options"
|
77 |
msgstr ""
|
78 |
|
79 |
-
#: admin.inc.php:
|
80 |
msgid "Number of related posts to display: "
|
81 |
msgstr "Número de posts relacionados a mostrar:"
|
82 |
|
83 |
-
#: admin.inc.php:
|
84 |
msgid "Exclude Categories: "
|
85 |
msgstr "Excluir Categorías:"
|
86 |
|
87 |
-
#: admin.inc.php:
|
88 |
msgid "Add related posts to the post content on single posts"
|
89 |
msgstr ""
|
90 |
|
91 |
-
#: admin.inc.php:
|
92 |
-
#: admin.inc.php:
|
93 |
#, fuzzy
|
94 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
95 |
msgstr "Agregar posts relacionados a páginas. <br />Si eliges desabilitar esto, por favor agrega <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> a tu archivo de template donde quieras q se muestre"
|
96 |
|
97 |
-
#: admin.inc.php:
|
98 |
#, fuzzy
|
99 |
msgid "Add related posts to pages"
|
100 |
msgstr "Agregar posts relacionados al feed"
|
101 |
|
102 |
-
#: admin.inc.php:
|
103 |
msgid "Add related posts to feed"
|
104 |
msgstr "Agregar posts relacionados al feed"
|
105 |
|
106 |
-
#: admin.inc.php:
|
107 |
msgid "Find related posts based on content as well as title"
|
108 |
msgstr ""
|
109 |
|
110 |
-
#: admin.inc.php:
|
111 |
#, fuzzy
|
112 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
113 |
msgstr "Encuentra posts relacionados basados en el contexto y el título. Si es deseleccionado, solo los títulos serán usados. (Recomiendo usar un plugin de caché si activas esto)"
|
114 |
|
115 |
-
#: admin.inc.php:
|
116 |
msgid "Exclude Pages in Related Posts"
|
117 |
msgstr "Excluir Post Relacionados de las Páginas"
|
118 |
|
119 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
120 |
msgid "Add a link to the plugin page as a final item in the list"
|
121 |
msgstr ""
|
122 |
|
123 |
-
#: admin.inc.php:
|
124 |
msgid " <em>Optional</em>"
|
125 |
msgstr ""
|
126 |
|
127 |
-
#: admin.inc.php:
|
128 |
#, fuzzy
|
129 |
msgid "Output Options"
|
130 |
msgstr "Opciones de Salida:"
|
131 |
|
132 |
-
#: admin.inc.php:
|
133 |
msgid "Title of related posts: "
|
134 |
msgstr "Título de posts relacionados:"
|
135 |
|
136 |
-
#: admin.inc.php:
|
137 |
msgid "When there are no posts, what should be shown?"
|
138 |
msgstr "Cuando no hay posts, ¿Qué se debe mostrar?"
|
139 |
|
140 |
-
#: admin.inc.php:
|
141 |
msgid "Blank Output"
|
142 |
msgstr "Salida vacía"
|
143 |
|
144 |
-
#: admin.inc.php:
|
145 |
msgid "Display \"No Related Posts\""
|
146 |
msgstr "Mostrar \"Posts No Relacionados\""
|
147 |
|
148 |
-
#: admin.inc.php:
|
149 |
msgid "Show post excerpt in list?"
|
150 |
msgstr "¿Mostrar extracto con los items?"
|
151 |
|
152 |
-
#: admin.inc.php:
|
153 |
msgid "Length of excerpt (in words): "
|
154 |
msgstr "Tamaño del extracto (en palabras):"
|
155 |
|
156 |
-
#: admin.inc.php:
|
157 |
msgid "Customize the output:"
|
158 |
msgstr "Personalizar la salida:"
|
159 |
|
160 |
-
#: admin.inc.php:
|
161 |
msgid "HTML to display before the list of posts: "
|
162 |
msgstr "HTML a mostrar antes de todos los items:"
|
163 |
|
164 |
-
#: admin.inc.php:
|
165 |
msgid "HTML to display before each list item: "
|
166 |
msgstr "HTML a mostrar antes de cada item:"
|
167 |
|
168 |
-
#: admin.inc.php:
|
169 |
msgid "HTML to display after each list item: "
|
170 |
msgstr "HTML a mostrar despues de cada item:"
|
171 |
|
172 |
-
#: admin.inc.php:
|
173 |
msgid "HTML to display after the list of posts: "
|
174 |
msgstr "HTML a mostrar despues de todos los items:"
|
175 |
|
176 |
-
#: admin.inc.php:
|
177 |
msgid "Post thumbnail options:"
|
178 |
msgstr "Opciones de miniaturas en el post:"
|
179 |
|
180 |
-
#: admin.inc.php:
|
181 |
msgid "Location of post thumbnail:"
|
182 |
msgstr ""
|
183 |
|
184 |
-
#: admin.inc.php:
|
185 |
#, fuzzy
|
186 |
msgid "Display thumbnails inline with posts, before title"
|
187 |
msgstr "Miniaturas en línea con los posts"
|
188 |
|
189 |
-
#: admin.inc.php:
|
190 |
#, fuzzy
|
191 |
msgid "Display thumbnails inline with posts, after title"
|
192 |
msgstr "Miniaturas en línea con los posts"
|
193 |
|
194 |
-
#: admin.inc.php:
|
195 |
msgid "Display only thumbnails, no text"
|
196 |
msgstr "Solo miniaturas, sin texto"
|
197 |
|
198 |
-
#: admin.inc.php:
|
199 |
msgid "Do not display thumbnails, only text."
|
200 |
msgstr "No mostrar miniaturas, solo texto."
|
201 |
|
202 |
-
#: admin.inc.php:
|
203 |
msgid "Maximum width of the thumbnail: "
|
204 |
msgstr ""
|
205 |
|
206 |
-
#: admin.inc.php:
|
207 |
msgid "Maximum height of the thumbnail: "
|
208 |
msgstr ""
|
209 |
|
210 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
211 |
#, fuzzy
|
212 |
msgid "Post thumbnail meta field name: "
|
213 |
msgstr "Opciones de miniaturas en el post:"
|
214 |
|
215 |
-
#: admin.inc.php:
|
216 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
217 |
msgstr ""
|
218 |
|
219 |
-
#: admin.inc.php:
|
220 |
#, fuzzy
|
221 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
222 |
msgstr "Si el postmeta no está definido, entonces el plugin extrae la primera imágen del post. Esto puede relentizar la carga si la primera imágen es de gran tamaño"
|
223 |
|
224 |
-
#: admin.inc.php:
|
225 |
#, fuzzy
|
226 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
227 |
msgstr "Si el postmeta no está definido, entonces el plugin extrae la primera imágen del post. Esto puede relentizar la carga si la primera imágen es de gran tamaño"
|
228 |
|
229 |
-
#: admin.inc.php:
|
230 |
msgid "Use default thumbnail? "
|
231 |
msgstr ""
|
232 |
|
233 |
-
#: admin.inc.php:
|
234 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
235 |
msgstr ""
|
236 |
|
237 |
-
#: admin.inc.php:
|
238 |
msgid "Default thumbnail: "
|
239 |
msgstr ""
|
240 |
|
241 |
-
#: admin.inc.php:
|
242 |
#, fuzzy
|
243 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
244 |
msgstr "El plugin primero verificará si el post contiene miniaturas. Si no tiene ninguno verificará el campo meta. Si no está disponible, entonces mostrará la imágen padrón especificada a continuación:"
|
245 |
|
246 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
247 |
msgid "Do you want to set options to Default?"
|
248 |
msgstr "¿Quieres resetear las opciones?"
|
249 |
|
250 |
-
#: admin.inc.php:
|
251 |
msgid "Are you sure you want to recreate the index?"
|
252 |
msgstr "¿Está seguro que quiere recrear el index?"
|
253 |
|
254 |
-
#: admin.inc.php:
|
255 |
msgid "Contextual Related Posts"
|
256 |
msgstr "Posts Relacionados Contextualmente"
|
257 |
|
258 |
-
#: admin.inc.php:
|
259 |
msgid "Related Posts"
|
260 |
msgstr "Post Relacionados"
|
261 |
|
262 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
263 |
msgid "Powered by"
|
264 |
msgstr "Creado por"
|
265 |
|
266 |
-
#: contextual-related-posts.php:
|
267 |
-
#: contextual-related-posts.php:
|
268 |
msgid "No related posts found"
|
269 |
msgstr "No hay posts relacionados"
|
270 |
|
271 |
-
#: contextual-related-posts.php:
|
272 |
msgid "<h3>Related Posts:</h3>"
|
273 |
msgstr "<h3>Post Relacionados:</h3>"
|
274 |
|
275 |
-
#: contextual-related-posts.php:
|
276 |
msgid "Settings"
|
277 |
msgstr "Opciones"
|
278 |
|
279 |
-
#: contextual-related-posts.php:
|
280 |
msgid "Donate"
|
281 |
msgstr "Donar"
|
282 |
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2012-06-04 18:54-0000\n"
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: \n"
|
15 |
"X-Poedit-Country: SPAIN\n"
|
16 |
"X-Poedit-SearchPath-0: .\n"
|
17 |
|
18 |
+
#: admin.inc.php:70
|
19 |
msgid "Options saved successfully."
|
20 |
msgstr "Opciones guardadas correctament."
|
21 |
|
22 |
+
#: admin.inc.php:86
|
23 |
msgid "Options set to Default."
|
24 |
msgstr "Restablecer opciones originales"
|
25 |
|
26 |
+
#: admin.inc.php:101
|
27 |
msgid "Index recreated"
|
28 |
msgstr "Recrear el Index"
|
29 |
|
30 |
+
#: admin.inc.php:114
|
31 |
msgid "Support the development"
|
32 |
msgstr "Apoya el desarrollo"
|
33 |
|
34 |
+
#: admin.inc.php:122
|
35 |
msgid "Enter amount in USD: "
|
36 |
msgstr "Ingresa monto en USD:"
|
37 |
|
38 |
+
#: admin.inc.php:126
|
39 |
msgid "Send your donation to the author of"
|
40 |
msgstr "Enviar tu donación al autor de"
|
41 |
|
42 |
+
#: admin.inc.php:132
|
43 |
msgid "Quick links"
|
44 |
msgstr "Links rápidos"
|
45 |
|
46 |
+
#: admin.inc.php:134
|
47 |
msgid "Contextual Related Posts "
|
48 |
msgstr "Posts relacionados contextualmente"
|
49 |
|
50 |
+
#: admin.inc.php:134
|
51 |
msgid "plugin page"
|
52 |
msgstr "sitio del plugin"
|
53 |
|
54 |
+
#: admin.inc.php:135
|
55 |
msgid "Other plugins"
|
56 |
msgstr "Otros plugins"
|
57 |
|
58 |
+
#: admin.inc.php:136
|
59 |
msgid "Ajay's blog"
|
60 |
msgstr ""
|
61 |
|
62 |
+
#: admin.inc.php:137
|
63 |
+
#: contextual-related-posts.php:336
|
64 |
msgid "Support"
|
65 |
msgstr "Soporte"
|
66 |
|
67 |
+
#: admin.inc.php:138
|
68 |
msgid "Follow @ajaydsouza on Twitter"
|
69 |
msgstr "Seguir @ajaydsouza en Twitter"
|
70 |
|
71 |
+
#: admin.inc.php:142
|
72 |
msgid "Recent developments"
|
73 |
msgstr "Desarrollos recientes"
|
74 |
|
75 |
+
#: admin.inc.php:157
|
76 |
msgid "General options"
|
77 |
msgstr ""
|
78 |
|
79 |
+
#: admin.inc.php:160
|
80 |
msgid "Number of related posts to display: "
|
81 |
msgstr "Número de posts relacionados a mostrar:"
|
82 |
|
83 |
+
#: admin.inc.php:163
|
84 |
msgid "Exclude Categories: "
|
85 |
msgstr "Excluir Categorías:"
|
86 |
|
87 |
+
#: admin.inc.php:181
|
88 |
msgid "Add related posts to the post content on single posts"
|
89 |
msgstr ""
|
90 |
|
91 |
+
#: admin.inc.php:182
|
92 |
+
#: admin.inc.php:185
|
93 |
#, fuzzy
|
94 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
95 |
msgstr "Agregar posts relacionados a páginas. <br />Si eliges desabilitar esto, por favor agrega <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> a tu archivo de template donde quieras q se muestre"
|
96 |
|
97 |
+
#: admin.inc.php:184
|
98 |
#, fuzzy
|
99 |
msgid "Add related posts to pages"
|
100 |
msgstr "Agregar posts relacionados al feed"
|
101 |
|
102 |
+
#: admin.inc.php:187
|
103 |
msgid "Add related posts to feed"
|
104 |
msgstr "Agregar posts relacionados al feed"
|
105 |
|
106 |
+
#: admin.inc.php:190
|
107 |
msgid "Find related posts based on content as well as title"
|
108 |
msgstr ""
|
109 |
|
110 |
+
#: admin.inc.php:191
|
111 |
#, fuzzy
|
112 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
113 |
msgstr "Encuentra posts relacionados basados en el contexto y el título. Si es deseleccionado, solo los títulos serán usados. (Recomiendo usar un plugin de caché si activas esto)"
|
114 |
|
115 |
+
#: admin.inc.php:193
|
116 |
msgid "Exclude Pages in Related Posts"
|
117 |
msgstr "Excluir Post Relacionados de las Páginas"
|
118 |
|
119 |
+
#: admin.inc.php:196
|
120 |
+
msgid "Post types to include in results (including custom post types)"
|
121 |
+
msgstr ""
|
122 |
+
|
123 |
+
#: admin.inc.php:207
|
124 |
+
msgid "Use CTRL on Windows and COMMAND on Mac to select multiple items"
|
125 |
+
msgstr ""
|
126 |
+
|
127 |
+
#: admin.inc.php:210
|
128 |
msgid "Add a link to the plugin page as a final item in the list"
|
129 |
msgstr ""
|
130 |
|
131 |
+
#: admin.inc.php:211
|
132 |
msgid " <em>Optional</em>"
|
133 |
msgstr ""
|
134 |
|
135 |
+
#: admin.inc.php:219
|
136 |
#, fuzzy
|
137 |
msgid "Output Options"
|
138 |
msgstr "Opciones de Salida:"
|
139 |
|
140 |
+
#: admin.inc.php:222
|
141 |
msgid "Title of related posts: "
|
142 |
msgstr "Título de posts relacionados:"
|
143 |
|
144 |
+
#: admin.inc.php:225
|
145 |
msgid "When there are no posts, what should be shown?"
|
146 |
msgstr "Cuando no hay posts, ¿Qué se debe mostrar?"
|
147 |
|
148 |
+
#: admin.inc.php:229
|
149 |
msgid "Blank Output"
|
150 |
msgstr "Salida vacía"
|
151 |
|
152 |
+
#: admin.inc.php:233
|
153 |
msgid "Display \"No Related Posts\""
|
154 |
msgstr "Mostrar \"Posts No Relacionados\""
|
155 |
|
156 |
+
#: admin.inc.php:237
|
157 |
msgid "Show post excerpt in list?"
|
158 |
msgstr "¿Mostrar extracto con los items?"
|
159 |
|
160 |
+
#: admin.inc.php:240
|
161 |
msgid "Length of excerpt (in words): "
|
162 |
msgstr "Tamaño del extracto (en palabras):"
|
163 |
|
164 |
+
#: admin.inc.php:243
|
165 |
msgid "Customize the output:"
|
166 |
msgstr "Personalizar la salida:"
|
167 |
|
168 |
+
#: admin.inc.php:245
|
169 |
msgid "HTML to display before the list of posts: "
|
170 |
msgstr "HTML a mostrar antes de todos los items:"
|
171 |
|
172 |
+
#: admin.inc.php:248
|
173 |
msgid "HTML to display before each list item: "
|
174 |
msgstr "HTML a mostrar antes de cada item:"
|
175 |
|
176 |
+
#: admin.inc.php:251
|
177 |
msgid "HTML to display after each list item: "
|
178 |
msgstr "HTML a mostrar despues de cada item:"
|
179 |
|
180 |
+
#: admin.inc.php:254
|
181 |
msgid "HTML to display after the list of posts: "
|
182 |
msgstr "HTML a mostrar despues de todos los items:"
|
183 |
|
184 |
+
#: admin.inc.php:257
|
185 |
msgid "Post thumbnail options:"
|
186 |
msgstr "Opciones de miniaturas en el post:"
|
187 |
|
188 |
+
#: admin.inc.php:259
|
189 |
msgid "Location of post thumbnail:"
|
190 |
msgstr ""
|
191 |
|
192 |
+
#: admin.inc.php:263
|
193 |
#, fuzzy
|
194 |
msgid "Display thumbnails inline with posts, before title"
|
195 |
msgstr "Miniaturas en línea con los posts"
|
196 |
|
197 |
+
#: admin.inc.php:267
|
198 |
#, fuzzy
|
199 |
msgid "Display thumbnails inline with posts, after title"
|
200 |
msgstr "Miniaturas en línea con los posts"
|
201 |
|
202 |
+
#: admin.inc.php:271
|
203 |
msgid "Display only thumbnails, no text"
|
204 |
msgstr "Solo miniaturas, sin texto"
|
205 |
|
206 |
+
#: admin.inc.php:275
|
207 |
msgid "Do not display thumbnails, only text."
|
208 |
msgstr "No mostrar miniaturas, solo texto."
|
209 |
|
210 |
+
#: admin.inc.php:279
|
211 |
msgid "Maximum width of the thumbnail: "
|
212 |
msgstr ""
|
213 |
|
214 |
+
#: admin.inc.php:282
|
215 |
msgid "Maximum height of the thumbnail: "
|
216 |
msgstr ""
|
217 |
|
218 |
+
#: admin.inc.php:285
|
219 |
+
msgid "Use timthumb to generate thumbnails? "
|
220 |
+
msgstr ""
|
221 |
+
|
222 |
+
#: admin.inc.php:286
|
223 |
+
msgid "If checked, <a href=\"http://www.binarymoon.co.uk/projects/timthumb/\">timthumb</a> will be used to generate thumbnails"
|
224 |
+
msgstr ""
|
225 |
+
|
226 |
+
#: admin.inc.php:288
|
227 |
#, fuzzy
|
228 |
msgid "Post thumbnail meta field name: "
|
229 |
msgstr "Opciones de miniaturas en el post:"
|
230 |
|
231 |
+
#: admin.inc.php:289
|
232 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
233 |
msgstr ""
|
234 |
|
235 |
+
#: admin.inc.php:291
|
236 |
#, fuzzy
|
237 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
238 |
msgstr "Si el postmeta no está definido, entonces el plugin extrae la primera imágen del post. Esto puede relentizar la carga si la primera imágen es de gran tamaño"
|
239 |
|
240 |
+
#: admin.inc.php:292
|
241 |
#, fuzzy
|
242 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
243 |
msgstr "Si el postmeta no está definido, entonces el plugin extrae la primera imágen del post. Esto puede relentizar la carga si la primera imágen es de gran tamaño"
|
244 |
|
245 |
+
#: admin.inc.php:294
|
246 |
msgid "Use default thumbnail? "
|
247 |
msgstr ""
|
248 |
|
249 |
+
#: admin.inc.php:295
|
250 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
251 |
msgstr ""
|
252 |
|
253 |
+
#: admin.inc.php:297
|
254 |
msgid "Default thumbnail: "
|
255 |
msgstr ""
|
256 |
|
257 |
+
#: admin.inc.php:298
|
258 |
#, fuzzy
|
259 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
260 |
msgstr "El plugin primero verificará si el post contiene miniaturas. Si no tiene ninguno verificará el campo meta. Si no está disponible, entonces mostrará la imágen padrón especificada a continuación:"
|
261 |
|
262 |
+
#: admin.inc.php:304
|
263 |
+
msgid "Custom Styles"
|
264 |
+
msgstr ""
|
265 |
+
|
266 |
+
#: admin.inc.php:307
|
267 |
+
msgid "Custom CSS to add to header:"
|
268 |
+
msgstr ""
|
269 |
+
|
270 |
+
#: admin.inc.php:310
|
271 |
+
msgid "Do not include <code>style</code> tags. Check out the <a href=\"http://wordpress.org/extend/plugins/contextual-related-posts/faq/\">FAQ</a> for available CSS classes to style."
|
272 |
+
msgstr ""
|
273 |
+
|
274 |
+
#: admin.inc.php:315
|
275 |
msgid "Do you want to set options to Default?"
|
276 |
msgstr "¿Quieres resetear las opciones?"
|
277 |
|
278 |
+
#: admin.inc.php:316
|
279 |
msgid "Are you sure you want to recreate the index?"
|
280 |
msgstr "¿Está seguro que quiere recrear el index?"
|
281 |
|
282 |
+
#: admin.inc.php:346
|
283 |
msgid "Contextual Related Posts"
|
284 |
msgstr "Posts Relacionados Contextualmente"
|
285 |
|
286 |
+
#: admin.inc.php:346
|
287 |
msgid "Related Posts"
|
288 |
msgstr "Post Relacionados"
|
289 |
|
290 |
+
#: admin.inc.php:355
|
291 |
+
#, fuzzy
|
292 |
+
msgid "plugin settings page"
|
293 |
+
msgstr "sitio del plugin"
|
294 |
+
|
295 |
+
#: admin.inc.php:360
|
296 |
+
msgid "Contextual Related Posts plugin has just been installed / upgraded. Please visit the "
|
297 |
+
msgstr ""
|
298 |
+
|
299 |
+
#: admin.inc.php:360
|
300 |
+
msgid " to configure."
|
301 |
+
msgstr ""
|
302 |
+
|
303 |
+
#: contextual-related-posts.php:125
|
304 |
msgid "Powered by"
|
305 |
msgstr "Creado por"
|
306 |
|
307 |
+
#: contextual-related-posts.php:130
|
308 |
+
#: contextual-related-posts.php:134
|
309 |
msgid "No related posts found"
|
310 |
msgstr "No hay posts relacionados"
|
311 |
|
312 |
+
#: contextual-related-posts.php:167
|
313 |
msgid "<h3>Related Posts:</h3>"
|
314 |
msgstr "<h3>Post Relacionados:</h3>"
|
315 |
|
316 |
+
#: contextual-related-posts.php:335
|
317 |
msgid "Settings"
|
318 |
msgstr "Opciones"
|
319 |
|
320 |
+
#: contextual-related-posts.php:337
|
321 |
msgid "Donate"
|
322 |
msgstr "Donar"
|
323 |
|
languages/crp-it_IT.mo
CHANGED
Binary file
|
languages/crp-it_IT.po
CHANGED
@@ -2,7 +2,7 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts in italiano\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
-
"POT-Creation-Date: 2012-
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: Gianni Diurno | http://gidibao.net/ <gidibao@gmail.com>\n"
|
@@ -15,268 +15,309 @@ msgstr ""
|
|
15 |
"X-Poedit-Country: ITALY\n"
|
16 |
"X-Poedit-SearchPath-0: .\n"
|
17 |
|
18 |
-
#: admin.inc.php:
|
19 |
msgid "Options saved successfully."
|
20 |
msgstr "Le opzioni sono state salvate correttamente."
|
21 |
|
22 |
-
#: admin.inc.php:
|
23 |
msgid "Options set to Default."
|
24 |
msgstr "Opzioni impostate alle predefinite."
|
25 |
|
26 |
-
#: admin.inc.php:
|
27 |
msgid "Index recreated"
|
28 |
msgstr "E' stato ricreato l'indice"
|
29 |
|
30 |
-
#: admin.inc.php:
|
31 |
msgid "Support the development"
|
32 |
msgstr "Sostieni lo sviluppo"
|
33 |
|
34 |
-
#: admin.inc.php:
|
35 |
msgid "Enter amount in USD: "
|
36 |
msgstr "Inserisci la cifra in USD: "
|
37 |
|
38 |
-
#: admin.inc.php:
|
39 |
msgid "Send your donation to the author of"
|
40 |
msgstr "Invia la tua donazione all'autore di"
|
41 |
|
42 |
-
#: admin.inc.php:
|
43 |
msgid "Quick links"
|
44 |
msgstr "Collegamenti veloci"
|
45 |
|
46 |
-
#: admin.inc.php:
|
47 |
msgid "Contextual Related Posts "
|
48 |
msgstr "Contextual Related Posts "
|
49 |
|
50 |
-
#: admin.inc.php:
|
51 |
msgid "plugin page"
|
52 |
msgstr "pagina plugin"
|
53 |
|
54 |
-
#: admin.inc.php:
|
55 |
msgid "Other plugins"
|
56 |
msgstr "Altri plugin"
|
57 |
|
58 |
-
#: admin.inc.php:
|
59 |
msgid "Ajay's blog"
|
60 |
msgstr "Il blog di Ajay"
|
61 |
|
62 |
-
#: admin.inc.php:
|
63 |
-
#: contextual-related-posts.php:
|
64 |
msgid "Support"
|
65 |
msgstr "Supporto"
|
66 |
|
67 |
-
#: admin.inc.php:
|
68 |
msgid "Follow @ajaydsouza on Twitter"
|
69 |
msgstr "Segui @ajaydsouza su Twitter"
|
70 |
|
71 |
-
#: admin.inc.php:
|
72 |
msgid "Recent developments"
|
73 |
msgstr "Sviluppi recenti"
|
74 |
|
75 |
-
#: admin.inc.php:
|
76 |
msgid "General options"
|
77 |
msgstr ""
|
78 |
|
79 |
-
#: admin.inc.php:
|
80 |
msgid "Number of related posts to display: "
|
81 |
msgstr "numero di articoli correlati da mostrare:"
|
82 |
|
83 |
-
#: admin.inc.php:
|
84 |
msgid "Exclude Categories: "
|
85 |
msgstr "escludi le categorie:"
|
86 |
|
87 |
-
#: admin.inc.php:
|
88 |
msgid "Add related posts to the post content on single posts"
|
89 |
msgstr ""
|
90 |
|
91 |
-
#: admin.inc.php:
|
92 |
-
#: admin.inc.php:
|
93 |
#, fuzzy
|
94 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
95 |
msgstr "aggiungi gli articoli correlati alle pagine. <br />oppure disattiva ed inserisci <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> nel tuo template laddove desideri che siano visualizzati"
|
96 |
|
97 |
-
#: admin.inc.php:
|
98 |
#, fuzzy
|
99 |
msgid "Add related posts to pages"
|
100 |
msgstr "aggiungi gli articoli correlati al feed"
|
101 |
|
102 |
-
#: admin.inc.php:
|
103 |
msgid "Add related posts to feed"
|
104 |
msgstr "aggiungi gli articoli correlati al feed"
|
105 |
|
106 |
-
#: admin.inc.php:
|
107 |
msgid "Find related posts based on content as well as title"
|
108 |
msgstr ""
|
109 |
|
110 |
-
#: admin.inc.php:
|
111 |
#, fuzzy
|
112 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
113 |
msgstr "Ricerca degli articoli correlati in relazione al contenuto ed al titolo. Se disattivata, verranno utilizzati i soli titoli dei post. (in questo caso é preferibile attivare un plugin per la cache)"
|
114 |
|
115 |
-
#: admin.inc.php:
|
116 |
msgid "Exclude Pages in Related Posts"
|
117 |
msgstr "Escludi le pagine da Related Posts"
|
118 |
|
119 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
120 |
msgid "Add a link to the plugin page as a final item in the list"
|
121 |
msgstr ""
|
122 |
|
123 |
-
#: admin.inc.php:
|
124 |
msgid " <em>Optional</em>"
|
125 |
msgstr ""
|
126 |
|
127 |
-
#: admin.inc.php:
|
128 |
#, fuzzy
|
129 |
msgid "Output Options"
|
130 |
msgstr "Opzioni output:"
|
131 |
|
132 |
-
#: admin.inc.php:
|
133 |
msgid "Title of related posts: "
|
134 |
msgstr "titolo per gli articoli correlati:"
|
135 |
|
136 |
-
#: admin.inc.php:
|
137 |
msgid "When there are no posts, what should be shown?"
|
138 |
msgstr "Cosa desideri mostrare in assenza di articoli?"
|
139 |
|
140 |
-
#: admin.inc.php:
|
141 |
msgid "Blank Output"
|
142 |
msgstr "nulla"
|
143 |
|
144 |
-
#: admin.inc.php:
|
145 |
msgid "Display \"No Related Posts\""
|
146 |
msgstr "\"Nessun articolo correlato\""
|
147 |
|
148 |
-
#: admin.inc.php:
|
149 |
msgid "Show post excerpt in list?"
|
150 |
msgstr "Desideri mostrare gli estratti?"
|
151 |
|
152 |
-
#: admin.inc.php:
|
153 |
msgid "Length of excerpt (in words): "
|
154 |
msgstr "Lunghezza estratto (in parole): "
|
155 |
|
156 |
-
#: admin.inc.php:
|
157 |
msgid "Customize the output:"
|
158 |
msgstr "Personalizzazione output:"
|
159 |
|
160 |
-
#: admin.inc.php:
|
161 |
msgid "HTML to display before the list of posts: "
|
162 |
msgstr "HTML da mostrare davanti alla lista degli articoli:"
|
163 |
|
164 |
-
#: admin.inc.php:
|
165 |
msgid "HTML to display before each list item: "
|
166 |
msgstr "HTML da mostrare davanti ad ogni singola lista:"
|
167 |
|
168 |
-
#: admin.inc.php:
|
169 |
msgid "HTML to display after each list item: "
|
170 |
msgstr "HTML da mostrare dopo ogni lista:"
|
171 |
|
172 |
-
#: admin.inc.php:
|
173 |
msgid "HTML to display after the list of posts: "
|
174 |
msgstr "HTML da mostrare dopo la lista degli articoli:"
|
175 |
|
176 |
-
#: admin.inc.php:
|
177 |
msgid "Post thumbnail options:"
|
178 |
msgstr "Opzioni miniature articolo:"
|
179 |
|
180 |
-
#: admin.inc.php:
|
181 |
msgid "Location of post thumbnail:"
|
182 |
msgstr ""
|
183 |
|
184 |
-
#: admin.inc.php:
|
185 |
#, fuzzy
|
186 |
msgid "Display thumbnails inline with posts, before title"
|
187 |
msgstr "Mostra gli articoli con le miniature inline"
|
188 |
|
189 |
-
#: admin.inc.php:
|
190 |
#, fuzzy
|
191 |
msgid "Display thumbnails inline with posts, after title"
|
192 |
msgstr "Mostra gli articoli con le miniature inline"
|
193 |
|
194 |
-
#: admin.inc.php:
|
195 |
msgid "Display only thumbnails, no text"
|
196 |
msgstr "Mostra le sole miniature, nessun testo"
|
197 |
|
198 |
-
#: admin.inc.php:
|
199 |
msgid "Do not display thumbnails, only text."
|
200 |
msgstr "Non mostrare le miniature, solo testo."
|
201 |
|
202 |
-
#: admin.inc.php:
|
203 |
msgid "Maximum width of the thumbnail: "
|
204 |
msgstr ""
|
205 |
|
206 |
-
#: admin.inc.php:
|
207 |
msgid "Maximum height of the thumbnail: "
|
208 |
msgstr ""
|
209 |
|
210 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
211 |
#, fuzzy
|
212 |
msgid "Post thumbnail meta field name: "
|
213 |
msgstr "Opzioni miniature articolo:"
|
214 |
|
215 |
-
#: admin.inc.php:
|
216 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
217 |
msgstr ""
|
218 |
|
219 |
-
#: admin.inc.php:
|
220 |
#, fuzzy
|
221 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
222 |
msgstr "Se il postmeta non fosse stato impostato, il plugin estrarrà dall'articolo la prima immagine. Questa operazione potrebbe rallentare il caricamento del tuo articolo nel caso in cui la prima immagine corelata fosse di grandi dimensioni"
|
223 |
|
224 |
-
#: admin.inc.php:
|
225 |
#, fuzzy
|
226 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
227 |
msgstr "Se il postmeta non fosse stato impostato, il plugin estrarrà dall'articolo la prima immagine. Questa operazione potrebbe rallentare il caricamento del tuo articolo nel caso in cui la prima immagine corelata fosse di grandi dimensioni"
|
228 |
|
229 |
-
#: admin.inc.php:
|
230 |
msgid "Use default thumbnail? "
|
231 |
msgstr ""
|
232 |
|
233 |
-
#: admin.inc.php:
|
234 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
235 |
msgstr ""
|
236 |
|
237 |
-
#: admin.inc.php:
|
238 |
msgid "Default thumbnail: "
|
239 |
msgstr ""
|
240 |
|
241 |
-
#: admin.inc.php:
|
242 |
#, fuzzy
|
243 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
244 |
msgstr "Come prima operazione, il plugin controllerà la presenza di una miniatura nell'articolo. Nel caso in cui non fosse presente, verificherà il campo meta. Qualora non fosse disponibile, mostrerà l'immagine predefinita come specificato qui sotto:"
|
245 |
|
246 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
247 |
msgid "Do you want to set options to Default?"
|
248 |
msgstr "Sei certo di volere impostare alle opzioni predefinite?"
|
249 |
|
250 |
-
#: admin.inc.php:
|
251 |
msgid "Are you sure you want to recreate the index?"
|
252 |
msgstr "Sei certo di volere ricreare l'indice?"
|
253 |
|
254 |
-
#: admin.inc.php:
|
255 |
msgid "Contextual Related Posts"
|
256 |
msgstr "Contextual Related Posts"
|
257 |
|
258 |
-
#: admin.inc.php:
|
259 |
msgid "Related Posts"
|
260 |
msgstr "Related Posts"
|
261 |
|
262 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
263 |
msgid "Powered by"
|
264 |
msgstr "Powered by"
|
265 |
|
266 |
-
#: contextual-related-posts.php:
|
267 |
-
#: contextual-related-posts.php:
|
268 |
msgid "No related posts found"
|
269 |
msgstr "Non é stato trovato alcun articolo correlato"
|
270 |
|
271 |
-
#: contextual-related-posts.php:
|
272 |
msgid "<h3>Related Posts:</h3>"
|
273 |
msgstr "<h3>Related Posts:</h3>"
|
274 |
|
275 |
-
#: contextual-related-posts.php:
|
276 |
msgid "Settings"
|
277 |
msgstr "Impostazioni"
|
278 |
|
279 |
-
#: contextual-related-posts.php:
|
280 |
msgid "Donate"
|
281 |
msgstr "Donazioni"
|
282 |
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts in italiano\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2012-06-04 18:54-0000\n"
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: Gianni Diurno | http://gidibao.net/ <gidibao@gmail.com>\n"
|
15 |
"X-Poedit-Country: ITALY\n"
|
16 |
"X-Poedit-SearchPath-0: .\n"
|
17 |
|
18 |
+
#: admin.inc.php:70
|
19 |
msgid "Options saved successfully."
|
20 |
msgstr "Le opzioni sono state salvate correttamente."
|
21 |
|
22 |
+
#: admin.inc.php:86
|
23 |
msgid "Options set to Default."
|
24 |
msgstr "Opzioni impostate alle predefinite."
|
25 |
|
26 |
+
#: admin.inc.php:101
|
27 |
msgid "Index recreated"
|
28 |
msgstr "E' stato ricreato l'indice"
|
29 |
|
30 |
+
#: admin.inc.php:114
|
31 |
msgid "Support the development"
|
32 |
msgstr "Sostieni lo sviluppo"
|
33 |
|
34 |
+
#: admin.inc.php:122
|
35 |
msgid "Enter amount in USD: "
|
36 |
msgstr "Inserisci la cifra in USD: "
|
37 |
|
38 |
+
#: admin.inc.php:126
|
39 |
msgid "Send your donation to the author of"
|
40 |
msgstr "Invia la tua donazione all'autore di"
|
41 |
|
42 |
+
#: admin.inc.php:132
|
43 |
msgid "Quick links"
|
44 |
msgstr "Collegamenti veloci"
|
45 |
|
46 |
+
#: admin.inc.php:134
|
47 |
msgid "Contextual Related Posts "
|
48 |
msgstr "Contextual Related Posts "
|
49 |
|
50 |
+
#: admin.inc.php:134
|
51 |
msgid "plugin page"
|
52 |
msgstr "pagina plugin"
|
53 |
|
54 |
+
#: admin.inc.php:135
|
55 |
msgid "Other plugins"
|
56 |
msgstr "Altri plugin"
|
57 |
|
58 |
+
#: admin.inc.php:136
|
59 |
msgid "Ajay's blog"
|
60 |
msgstr "Il blog di Ajay"
|
61 |
|
62 |
+
#: admin.inc.php:137
|
63 |
+
#: contextual-related-posts.php:336
|
64 |
msgid "Support"
|
65 |
msgstr "Supporto"
|
66 |
|
67 |
+
#: admin.inc.php:138
|
68 |
msgid "Follow @ajaydsouza on Twitter"
|
69 |
msgstr "Segui @ajaydsouza su Twitter"
|
70 |
|
71 |
+
#: admin.inc.php:142
|
72 |
msgid "Recent developments"
|
73 |
msgstr "Sviluppi recenti"
|
74 |
|
75 |
+
#: admin.inc.php:157
|
76 |
msgid "General options"
|
77 |
msgstr ""
|
78 |
|
79 |
+
#: admin.inc.php:160
|
80 |
msgid "Number of related posts to display: "
|
81 |
msgstr "numero di articoli correlati da mostrare:"
|
82 |
|
83 |
+
#: admin.inc.php:163
|
84 |
msgid "Exclude Categories: "
|
85 |
msgstr "escludi le categorie:"
|
86 |
|
87 |
+
#: admin.inc.php:181
|
88 |
msgid "Add related posts to the post content on single posts"
|
89 |
msgstr ""
|
90 |
|
91 |
+
#: admin.inc.php:182
|
92 |
+
#: admin.inc.php:185
|
93 |
#, fuzzy
|
94 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
95 |
msgstr "aggiungi gli articoli correlati alle pagine. <br />oppure disattiva ed inserisci <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> nel tuo template laddove desideri che siano visualizzati"
|
96 |
|
97 |
+
#: admin.inc.php:184
|
98 |
#, fuzzy
|
99 |
msgid "Add related posts to pages"
|
100 |
msgstr "aggiungi gli articoli correlati al feed"
|
101 |
|
102 |
+
#: admin.inc.php:187
|
103 |
msgid "Add related posts to feed"
|
104 |
msgstr "aggiungi gli articoli correlati al feed"
|
105 |
|
106 |
+
#: admin.inc.php:190
|
107 |
msgid "Find related posts based on content as well as title"
|
108 |
msgstr ""
|
109 |
|
110 |
+
#: admin.inc.php:191
|
111 |
#, fuzzy
|
112 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
113 |
msgstr "Ricerca degli articoli correlati in relazione al contenuto ed al titolo. Se disattivata, verranno utilizzati i soli titoli dei post. (in questo caso é preferibile attivare un plugin per la cache)"
|
114 |
|
115 |
+
#: admin.inc.php:193
|
116 |
msgid "Exclude Pages in Related Posts"
|
117 |
msgstr "Escludi le pagine da Related Posts"
|
118 |
|
119 |
+
#: admin.inc.php:196
|
120 |
+
msgid "Post types to include in results (including custom post types)"
|
121 |
+
msgstr ""
|
122 |
+
|
123 |
+
#: admin.inc.php:207
|
124 |
+
msgid "Use CTRL on Windows and COMMAND on Mac to select multiple items"
|
125 |
+
msgstr ""
|
126 |
+
|
127 |
+
#: admin.inc.php:210
|
128 |
msgid "Add a link to the plugin page as a final item in the list"
|
129 |
msgstr ""
|
130 |
|
131 |
+
#: admin.inc.php:211
|
132 |
msgid " <em>Optional</em>"
|
133 |
msgstr ""
|
134 |
|
135 |
+
#: admin.inc.php:219
|
136 |
#, fuzzy
|
137 |
msgid "Output Options"
|
138 |
msgstr "Opzioni output:"
|
139 |
|
140 |
+
#: admin.inc.php:222
|
141 |
msgid "Title of related posts: "
|
142 |
msgstr "titolo per gli articoli correlati:"
|
143 |
|
144 |
+
#: admin.inc.php:225
|
145 |
msgid "When there are no posts, what should be shown?"
|
146 |
msgstr "Cosa desideri mostrare in assenza di articoli?"
|
147 |
|
148 |
+
#: admin.inc.php:229
|
149 |
msgid "Blank Output"
|
150 |
msgstr "nulla"
|
151 |
|
152 |
+
#: admin.inc.php:233
|
153 |
msgid "Display \"No Related Posts\""
|
154 |
msgstr "\"Nessun articolo correlato\""
|
155 |
|
156 |
+
#: admin.inc.php:237
|
157 |
msgid "Show post excerpt in list?"
|
158 |
msgstr "Desideri mostrare gli estratti?"
|
159 |
|
160 |
+
#: admin.inc.php:240
|
161 |
msgid "Length of excerpt (in words): "
|
162 |
msgstr "Lunghezza estratto (in parole): "
|
163 |
|
164 |
+
#: admin.inc.php:243
|
165 |
msgid "Customize the output:"
|
166 |
msgstr "Personalizzazione output:"
|
167 |
|
168 |
+
#: admin.inc.php:245
|
169 |
msgid "HTML to display before the list of posts: "
|
170 |
msgstr "HTML da mostrare davanti alla lista degli articoli:"
|
171 |
|
172 |
+
#: admin.inc.php:248
|
173 |
msgid "HTML to display before each list item: "
|
174 |
msgstr "HTML da mostrare davanti ad ogni singola lista:"
|
175 |
|
176 |
+
#: admin.inc.php:251
|
177 |
msgid "HTML to display after each list item: "
|
178 |
msgstr "HTML da mostrare dopo ogni lista:"
|
179 |
|
180 |
+
#: admin.inc.php:254
|
181 |
msgid "HTML to display after the list of posts: "
|
182 |
msgstr "HTML da mostrare dopo la lista degli articoli:"
|
183 |
|
184 |
+
#: admin.inc.php:257
|
185 |
msgid "Post thumbnail options:"
|
186 |
msgstr "Opzioni miniature articolo:"
|
187 |
|
188 |
+
#: admin.inc.php:259
|
189 |
msgid "Location of post thumbnail:"
|
190 |
msgstr ""
|
191 |
|
192 |
+
#: admin.inc.php:263
|
193 |
#, fuzzy
|
194 |
msgid "Display thumbnails inline with posts, before title"
|
195 |
msgstr "Mostra gli articoli con le miniature inline"
|
196 |
|
197 |
+
#: admin.inc.php:267
|
198 |
#, fuzzy
|
199 |
msgid "Display thumbnails inline with posts, after title"
|
200 |
msgstr "Mostra gli articoli con le miniature inline"
|
201 |
|
202 |
+
#: admin.inc.php:271
|
203 |
msgid "Display only thumbnails, no text"
|
204 |
msgstr "Mostra le sole miniature, nessun testo"
|
205 |
|
206 |
+
#: admin.inc.php:275
|
207 |
msgid "Do not display thumbnails, only text."
|
208 |
msgstr "Non mostrare le miniature, solo testo."
|
209 |
|
210 |
+
#: admin.inc.php:279
|
211 |
msgid "Maximum width of the thumbnail: "
|
212 |
msgstr ""
|
213 |
|
214 |
+
#: admin.inc.php:282
|
215 |
msgid "Maximum height of the thumbnail: "
|
216 |
msgstr ""
|
217 |
|
218 |
+
#: admin.inc.php:285
|
219 |
+
msgid "Use timthumb to generate thumbnails? "
|
220 |
+
msgstr ""
|
221 |
+
|
222 |
+
#: admin.inc.php:286
|
223 |
+
msgid "If checked, <a href=\"http://www.binarymoon.co.uk/projects/timthumb/\">timthumb</a> will be used to generate thumbnails"
|
224 |
+
msgstr ""
|
225 |
+
|
226 |
+
#: admin.inc.php:288
|
227 |
#, fuzzy
|
228 |
msgid "Post thumbnail meta field name: "
|
229 |
msgstr "Opzioni miniature articolo:"
|
230 |
|
231 |
+
#: admin.inc.php:289
|
232 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
233 |
msgstr ""
|
234 |
|
235 |
+
#: admin.inc.php:291
|
236 |
#, fuzzy
|
237 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
238 |
msgstr "Se il postmeta non fosse stato impostato, il plugin estrarrà dall'articolo la prima immagine. Questa operazione potrebbe rallentare il caricamento del tuo articolo nel caso in cui la prima immagine corelata fosse di grandi dimensioni"
|
239 |
|
240 |
+
#: admin.inc.php:292
|
241 |
#, fuzzy
|
242 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
243 |
msgstr "Se il postmeta non fosse stato impostato, il plugin estrarrà dall'articolo la prima immagine. Questa operazione potrebbe rallentare il caricamento del tuo articolo nel caso in cui la prima immagine corelata fosse di grandi dimensioni"
|
244 |
|
245 |
+
#: admin.inc.php:294
|
246 |
msgid "Use default thumbnail? "
|
247 |
msgstr ""
|
248 |
|
249 |
+
#: admin.inc.php:295
|
250 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
251 |
msgstr ""
|
252 |
|
253 |
+
#: admin.inc.php:297
|
254 |
msgid "Default thumbnail: "
|
255 |
msgstr ""
|
256 |
|
257 |
+
#: admin.inc.php:298
|
258 |
#, fuzzy
|
259 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
260 |
msgstr "Come prima operazione, il plugin controllerà la presenza di una miniatura nell'articolo. Nel caso in cui non fosse presente, verificherà il campo meta. Qualora non fosse disponibile, mostrerà l'immagine predefinita come specificato qui sotto:"
|
261 |
|
262 |
+
#: admin.inc.php:304
|
263 |
+
msgid "Custom Styles"
|
264 |
+
msgstr ""
|
265 |
+
|
266 |
+
#: admin.inc.php:307
|
267 |
+
msgid "Custom CSS to add to header:"
|
268 |
+
msgstr ""
|
269 |
+
|
270 |
+
#: admin.inc.php:310
|
271 |
+
msgid "Do not include <code>style</code> tags. Check out the <a href=\"http://wordpress.org/extend/plugins/contextual-related-posts/faq/\">FAQ</a> for available CSS classes to style."
|
272 |
+
msgstr ""
|
273 |
+
|
274 |
+
#: admin.inc.php:315
|
275 |
msgid "Do you want to set options to Default?"
|
276 |
msgstr "Sei certo di volere impostare alle opzioni predefinite?"
|
277 |
|
278 |
+
#: admin.inc.php:316
|
279 |
msgid "Are you sure you want to recreate the index?"
|
280 |
msgstr "Sei certo di volere ricreare l'indice?"
|
281 |
|
282 |
+
#: admin.inc.php:346
|
283 |
msgid "Contextual Related Posts"
|
284 |
msgstr "Contextual Related Posts"
|
285 |
|
286 |
+
#: admin.inc.php:346
|
287 |
msgid "Related Posts"
|
288 |
msgstr "Related Posts"
|
289 |
|
290 |
+
#: admin.inc.php:355
|
291 |
+
#, fuzzy
|
292 |
+
msgid "plugin settings page"
|
293 |
+
msgstr "pagina plugin"
|
294 |
+
|
295 |
+
#: admin.inc.php:360
|
296 |
+
msgid "Contextual Related Posts plugin has just been installed / upgraded. Please visit the "
|
297 |
+
msgstr ""
|
298 |
+
|
299 |
+
#: admin.inc.php:360
|
300 |
+
msgid " to configure."
|
301 |
+
msgstr ""
|
302 |
+
|
303 |
+
#: contextual-related-posts.php:125
|
304 |
msgid "Powered by"
|
305 |
msgstr "Powered by"
|
306 |
|
307 |
+
#: contextual-related-posts.php:130
|
308 |
+
#: contextual-related-posts.php:134
|
309 |
msgid "No related posts found"
|
310 |
msgstr "Non é stato trovato alcun articolo correlato"
|
311 |
|
312 |
+
#: contextual-related-posts.php:167
|
313 |
msgid "<h3>Related Posts:</h3>"
|
314 |
msgstr "<h3>Related Posts:</h3>"
|
315 |
|
316 |
+
#: contextual-related-posts.php:335
|
317 |
msgid "Settings"
|
318 |
msgstr "Impostazioni"
|
319 |
|
320 |
+
#: contextual-related-posts.php:337
|
321 |
msgid "Donate"
|
322 |
msgstr "Donazioni"
|
323 |
|
languages/crp-nl_NL.mo
CHANGED
Binary file
|
languages/crp-nl_NL.po
CHANGED
@@ -2,7 +2,7 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
-
"POT-Creation-Date: 2012-
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: http://WPwebshop.com <info@wppg.me>\n"
|
@@ -17,268 +17,309 @@ msgstr ""
|
|
17 |
"X-Poedit-SourceCharset: utf-8\n"
|
18 |
"X-Poedit-SearchPath-0: .\n"
|
19 |
|
20 |
-
#: admin.inc.php:
|
21 |
msgid "Options saved successfully."
|
22 |
msgstr "Opties succesvol opgeslagen."
|
23 |
|
24 |
-
#: admin.inc.php:
|
25 |
msgid "Options set to Default."
|
26 |
msgstr "Opties ingesteld op standaard."
|
27 |
|
28 |
-
#: admin.inc.php:
|
29 |
msgid "Index recreated"
|
30 |
msgstr "Index opnieuw gemaakt"
|
31 |
|
32 |
-
#: admin.inc.php:
|
33 |
msgid "Support the development"
|
34 |
msgstr "Ondersteun de ontwikkeling"
|
35 |
|
36 |
-
#: admin.inc.php:
|
37 |
msgid "Enter amount in USD: "
|
38 |
msgstr "Voer het bedrag in USD in:"
|
39 |
|
40 |
-
#: admin.inc.php:
|
41 |
msgid "Send your donation to the author of"
|
42 |
msgstr "Stuur je donatie aan de auteur van"
|
43 |
|
44 |
-
#: admin.inc.php:
|
45 |
msgid "Quick links"
|
46 |
msgstr "Quick links"
|
47 |
|
48 |
-
#: admin.inc.php:
|
49 |
msgid "Contextual Related Posts "
|
50 |
msgstr "Contextual Related Posts "
|
51 |
|
52 |
-
#: admin.inc.php:
|
53 |
msgid "plugin page"
|
54 |
msgstr "plugin pagina"
|
55 |
|
56 |
-
#: admin.inc.php:
|
57 |
msgid "Other plugins"
|
58 |
msgstr "Andere plugins"
|
59 |
|
60 |
-
#: admin.inc.php:
|
61 |
msgid "Ajay's blog"
|
62 |
msgstr "Ajay's blog"
|
63 |
|
64 |
-
#: admin.inc.php:
|
65 |
-
#: contextual-related-posts.php:
|
66 |
msgid "Support"
|
67 |
msgstr "Ondersteuning"
|
68 |
|
69 |
-
#: admin.inc.php:
|
70 |
msgid "Follow @ajaydsouza on Twitter"
|
71 |
msgstr "Volg @ajaydsouza via Twitter"
|
72 |
|
73 |
-
#: admin.inc.php:
|
74 |
msgid "Recent developments"
|
75 |
msgstr "Recente ontwikkelingen"
|
76 |
|
77 |
-
#: admin.inc.php:
|
78 |
msgid "General options"
|
79 |
msgstr ""
|
80 |
|
81 |
-
#: admin.inc.php:
|
82 |
msgid "Number of related posts to display: "
|
83 |
msgstr "Aantal weer te geven gerelateerde berichten:"
|
84 |
|
85 |
-
#: admin.inc.php:
|
86 |
msgid "Exclude Categories: "
|
87 |
msgstr "Uitsluiten Categorieën"
|
88 |
|
89 |
-
#: admin.inc.php:
|
90 |
msgid "Add related posts to the post content on single posts"
|
91 |
msgstr ""
|
92 |
|
93 |
-
#: admin.inc.php:
|
94 |
-
#: admin.inc.php:
|
95 |
#, fuzzy
|
96 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
97 |
msgstr "Voeg gerelateerde berichten toe aan pagina's. <br />Wanneer je ervoor kiest om dit uit te zetten moet je de code <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> toevoegen aan je sjabloon bestand waar je het wilt laten weergeven"
|
98 |
|
99 |
-
#: admin.inc.php:
|
100 |
#, fuzzy
|
101 |
msgid "Add related posts to pages"
|
102 |
msgstr "Voeg gerelateerde berichten toe aan feed"
|
103 |
|
104 |
-
#: admin.inc.php:
|
105 |
msgid "Add related posts to feed"
|
106 |
msgstr "Voeg gerelateerde berichten toe aan feed"
|
107 |
|
108 |
-
#: admin.inc.php:
|
109 |
msgid "Find related posts based on content as well as title"
|
110 |
msgstr ""
|
111 |
|
112 |
-
#: admin.inc.php:
|
113 |
#, fuzzy
|
114 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
115 |
msgstr "Vind gerelateerde berichten gebaseerd op zowel content als titel. Indien niet geselecteerd worden er alleen berichttitels gebruikt. (Ik beveel het gebruik van een caching plugin aan wanneer je dit inschakelt)"
|
116 |
|
117 |
-
#: admin.inc.php:
|
118 |
msgid "Exclude Pages in Related Posts"
|
119 |
msgstr "Uitsluiten Pagina's in Gerelateerde Berichten"
|
120 |
|
121 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
122 |
msgid "Add a link to the plugin page as a final item in the list"
|
123 |
msgstr ""
|
124 |
|
125 |
-
#: admin.inc.php:
|
126 |
msgid " <em>Optional</em>"
|
127 |
msgstr ""
|
128 |
|
129 |
-
#: admin.inc.php:
|
130 |
#, fuzzy
|
131 |
msgid "Output Options"
|
132 |
msgstr "Output Opties:"
|
133 |
|
134 |
-
#: admin.inc.php:
|
135 |
msgid "Title of related posts: "
|
136 |
msgstr "Titel van gerelateerde berichten:"
|
137 |
|
138 |
-
#: admin.inc.php:
|
139 |
msgid "When there are no posts, what should be shown?"
|
140 |
msgstr "Wat moet er weergegeven worden wanneer er geen berichten zijn?"
|
141 |
|
142 |
-
#: admin.inc.php:
|
143 |
msgid "Blank Output"
|
144 |
msgstr "Lege Output"
|
145 |
|
146 |
-
#: admin.inc.php:
|
147 |
msgid "Display \"No Related Posts\""
|
148 |
msgstr "Weergave \"Geen Gerelateerde Berichten\""
|
149 |
|
150 |
-
#: admin.inc.php:
|
151 |
msgid "Show post excerpt in list?"
|
152 |
msgstr "Laat bericht uittreksel zien in lijst?"
|
153 |
|
154 |
-
#: admin.inc.php:
|
155 |
msgid "Length of excerpt (in words): "
|
156 |
msgstr "Lengte van uittreksel (in woorden):"
|
157 |
|
158 |
-
#: admin.inc.php:
|
159 |
msgid "Customize the output:"
|
160 |
msgstr "Aanpassen van de output:"
|
161 |
|
162 |
-
#: admin.inc.php:
|
163 |
msgid "HTML to display before the list of posts: "
|
164 |
msgstr "Weer te geven HTML voor de berichtenlijst:"
|
165 |
|
166 |
-
#: admin.inc.php:
|
167 |
msgid "HTML to display before each list item: "
|
168 |
msgstr "Weer te geven HTML voor elk item in de lijst:"
|
169 |
|
170 |
-
#: admin.inc.php:
|
171 |
msgid "HTML to display after each list item: "
|
172 |
msgstr "Weer te geven HTML na elk item in de lijst:"
|
173 |
|
174 |
-
#: admin.inc.php:
|
175 |
msgid "HTML to display after the list of posts: "
|
176 |
msgstr "Weer te geven HTML na de berichtenlijst:"
|
177 |
|
178 |
-
#: admin.inc.php:
|
179 |
msgid "Post thumbnail options:"
|
180 |
msgstr "Berichtopties miniatuurafbeelding:"
|
181 |
|
182 |
-
#: admin.inc.php:
|
183 |
msgid "Location of post thumbnail:"
|
184 |
msgstr ""
|
185 |
|
186 |
-
#: admin.inc.php:
|
187 |
#, fuzzy
|
188 |
msgid "Display thumbnails inline with posts, before title"
|
189 |
msgstr "Toon miniatuurafbeeldingen inline met berichten"
|
190 |
|
191 |
-
#: admin.inc.php:
|
192 |
#, fuzzy
|
193 |
msgid "Display thumbnails inline with posts, after title"
|
194 |
msgstr "Toon miniatuurafbeeldingen inline met berichten"
|
195 |
|
196 |
-
#: admin.inc.php:
|
197 |
msgid "Display only thumbnails, no text"
|
198 |
msgstr "Alleen miniatuurafbeeldingen weergeven, geen tekst"
|
199 |
|
200 |
-
#: admin.inc.php:
|
201 |
msgid "Do not display thumbnails, only text."
|
202 |
msgstr "Geen miniatuurafbeeldingen weergeven, alleen tekst."
|
203 |
|
204 |
-
#: admin.inc.php:
|
205 |
msgid "Maximum width of the thumbnail: "
|
206 |
msgstr ""
|
207 |
|
208 |
-
#: admin.inc.php:
|
209 |
msgid "Maximum height of the thumbnail: "
|
210 |
msgstr ""
|
211 |
|
212 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
213 |
#, fuzzy
|
214 |
msgid "Post thumbnail meta field name: "
|
215 |
msgstr "Berichtopties miniatuurafbeelding:"
|
216 |
|
217 |
-
#: admin.inc.php:
|
218 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
219 |
msgstr ""
|
220 |
|
221 |
-
#: admin.inc.php:
|
222 |
#, fuzzy
|
223 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
224 |
msgstr "Als de postmeta niet is ingesteld moet de plugin de eerste afbeelding van het bericht uitpakken. Dit kan het laden van uw bericht vertragen, indien het eerste beeld in de gerelateerde berichten groot is qua bestandsgrootte"
|
225 |
|
226 |
-
#: admin.inc.php:
|
227 |
#, fuzzy
|
228 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
229 |
msgstr "Als de postmeta niet is ingesteld moet de plugin de eerste afbeelding van het bericht uitpakken. Dit kan het laden van uw bericht vertragen, indien het eerste beeld in de gerelateerde berichten groot is qua bestandsgrootte"
|
230 |
|
231 |
-
#: admin.inc.php:
|
232 |
msgid "Use default thumbnail? "
|
233 |
msgstr ""
|
234 |
|
235 |
-
#: admin.inc.php:
|
236 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
237 |
msgstr ""
|
238 |
|
239 |
-
#: admin.inc.php:
|
240 |
msgid "Default thumbnail: "
|
241 |
msgstr ""
|
242 |
|
243 |
-
#: admin.inc.php:
|
244 |
#, fuzzy
|
245 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
246 |
msgstr "De plugin zal eerst controleren of het bericht een miniatuurafbeelding bevat, zoniet dan zal de plugin het metaveld controleren. Wanneer het geen miniatuurafbeelding bevat wordt de standaard afbeelding getoond zoals hieronder aangegeven:"
|
247 |
|
248 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
249 |
msgid "Do you want to set options to Default?"
|
250 |
msgstr "Wil je opties terug naar standaard instellen?"
|
251 |
|
252 |
-
#: admin.inc.php:
|
253 |
msgid "Are you sure you want to recreate the index?"
|
254 |
msgstr "Weet je zeker dat je de index opnieuw wilt creeëren?"
|
255 |
|
256 |
-
#: admin.inc.php:
|
257 |
msgid "Contextual Related Posts"
|
258 |
msgstr "Contextual Related Posts"
|
259 |
|
260 |
-
#: admin.inc.php:
|
261 |
msgid "Related Posts"
|
262 |
msgstr "Gerelateerde Berichten"
|
263 |
|
264 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
265 |
msgid "Powered by"
|
266 |
msgstr "Powered by"
|
267 |
|
268 |
-
#: contextual-related-posts.php:
|
269 |
-
#: contextual-related-posts.php:
|
270 |
msgid "No related posts found"
|
271 |
msgstr "Geen gerelateerde berichten gevonden"
|
272 |
|
273 |
-
#: contextual-related-posts.php:
|
274 |
msgid "<h3>Related Posts:</h3>"
|
275 |
msgstr "<h3>Gerelateerde Berichten:</h3>"
|
276 |
|
277 |
-
#: contextual-related-posts.php:
|
278 |
msgid "Settings"
|
279 |
msgstr "Instellingen"
|
280 |
|
281 |
-
#: contextual-related-posts.php:
|
282 |
msgid "Donate"
|
283 |
msgstr "Doneren"
|
284 |
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2012-06-04 18:54-0000\n"
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: http://WPwebshop.com <info@wppg.me>\n"
|
17 |
"X-Poedit-SourceCharset: utf-8\n"
|
18 |
"X-Poedit-SearchPath-0: .\n"
|
19 |
|
20 |
+
#: admin.inc.php:70
|
21 |
msgid "Options saved successfully."
|
22 |
msgstr "Opties succesvol opgeslagen."
|
23 |
|
24 |
+
#: admin.inc.php:86
|
25 |
msgid "Options set to Default."
|
26 |
msgstr "Opties ingesteld op standaard."
|
27 |
|
28 |
+
#: admin.inc.php:101
|
29 |
msgid "Index recreated"
|
30 |
msgstr "Index opnieuw gemaakt"
|
31 |
|
32 |
+
#: admin.inc.php:114
|
33 |
msgid "Support the development"
|
34 |
msgstr "Ondersteun de ontwikkeling"
|
35 |
|
36 |
+
#: admin.inc.php:122
|
37 |
msgid "Enter amount in USD: "
|
38 |
msgstr "Voer het bedrag in USD in:"
|
39 |
|
40 |
+
#: admin.inc.php:126
|
41 |
msgid "Send your donation to the author of"
|
42 |
msgstr "Stuur je donatie aan de auteur van"
|
43 |
|
44 |
+
#: admin.inc.php:132
|
45 |
msgid "Quick links"
|
46 |
msgstr "Quick links"
|
47 |
|
48 |
+
#: admin.inc.php:134
|
49 |
msgid "Contextual Related Posts "
|
50 |
msgstr "Contextual Related Posts "
|
51 |
|
52 |
+
#: admin.inc.php:134
|
53 |
msgid "plugin page"
|
54 |
msgstr "plugin pagina"
|
55 |
|
56 |
+
#: admin.inc.php:135
|
57 |
msgid "Other plugins"
|
58 |
msgstr "Andere plugins"
|
59 |
|
60 |
+
#: admin.inc.php:136
|
61 |
msgid "Ajay's blog"
|
62 |
msgstr "Ajay's blog"
|
63 |
|
64 |
+
#: admin.inc.php:137
|
65 |
+
#: contextual-related-posts.php:336
|
66 |
msgid "Support"
|
67 |
msgstr "Ondersteuning"
|
68 |
|
69 |
+
#: admin.inc.php:138
|
70 |
msgid "Follow @ajaydsouza on Twitter"
|
71 |
msgstr "Volg @ajaydsouza via Twitter"
|
72 |
|
73 |
+
#: admin.inc.php:142
|
74 |
msgid "Recent developments"
|
75 |
msgstr "Recente ontwikkelingen"
|
76 |
|
77 |
+
#: admin.inc.php:157
|
78 |
msgid "General options"
|
79 |
msgstr ""
|
80 |
|
81 |
+
#: admin.inc.php:160
|
82 |
msgid "Number of related posts to display: "
|
83 |
msgstr "Aantal weer te geven gerelateerde berichten:"
|
84 |
|
85 |
+
#: admin.inc.php:163
|
86 |
msgid "Exclude Categories: "
|
87 |
msgstr "Uitsluiten Categorieën"
|
88 |
|
89 |
+
#: admin.inc.php:181
|
90 |
msgid "Add related posts to the post content on single posts"
|
91 |
msgstr ""
|
92 |
|
93 |
+
#: admin.inc.php:182
|
94 |
+
#: admin.inc.php:185
|
95 |
#, fuzzy
|
96 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
97 |
msgstr "Voeg gerelateerde berichten toe aan pagina's. <br />Wanneer je ervoor kiest om dit uit te zetten moet je de code <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> toevoegen aan je sjabloon bestand waar je het wilt laten weergeven"
|
98 |
|
99 |
+
#: admin.inc.php:184
|
100 |
#, fuzzy
|
101 |
msgid "Add related posts to pages"
|
102 |
msgstr "Voeg gerelateerde berichten toe aan feed"
|
103 |
|
104 |
+
#: admin.inc.php:187
|
105 |
msgid "Add related posts to feed"
|
106 |
msgstr "Voeg gerelateerde berichten toe aan feed"
|
107 |
|
108 |
+
#: admin.inc.php:190
|
109 |
msgid "Find related posts based on content as well as title"
|
110 |
msgstr ""
|
111 |
|
112 |
+
#: admin.inc.php:191
|
113 |
#, fuzzy
|
114 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
115 |
msgstr "Vind gerelateerde berichten gebaseerd op zowel content als titel. Indien niet geselecteerd worden er alleen berichttitels gebruikt. (Ik beveel het gebruik van een caching plugin aan wanneer je dit inschakelt)"
|
116 |
|
117 |
+
#: admin.inc.php:193
|
118 |
msgid "Exclude Pages in Related Posts"
|
119 |
msgstr "Uitsluiten Pagina's in Gerelateerde Berichten"
|
120 |
|
121 |
+
#: admin.inc.php:196
|
122 |
+
msgid "Post types to include in results (including custom post types)"
|
123 |
+
msgstr ""
|
124 |
+
|
125 |
+
#: admin.inc.php:207
|
126 |
+
msgid "Use CTRL on Windows and COMMAND on Mac to select multiple items"
|
127 |
+
msgstr ""
|
128 |
+
|
129 |
+
#: admin.inc.php:210
|
130 |
msgid "Add a link to the plugin page as a final item in the list"
|
131 |
msgstr ""
|
132 |
|
133 |
+
#: admin.inc.php:211
|
134 |
msgid " <em>Optional</em>"
|
135 |
msgstr ""
|
136 |
|
137 |
+
#: admin.inc.php:219
|
138 |
#, fuzzy
|
139 |
msgid "Output Options"
|
140 |
msgstr "Output Opties:"
|
141 |
|
142 |
+
#: admin.inc.php:222
|
143 |
msgid "Title of related posts: "
|
144 |
msgstr "Titel van gerelateerde berichten:"
|
145 |
|
146 |
+
#: admin.inc.php:225
|
147 |
msgid "When there are no posts, what should be shown?"
|
148 |
msgstr "Wat moet er weergegeven worden wanneer er geen berichten zijn?"
|
149 |
|
150 |
+
#: admin.inc.php:229
|
151 |
msgid "Blank Output"
|
152 |
msgstr "Lege Output"
|
153 |
|
154 |
+
#: admin.inc.php:233
|
155 |
msgid "Display \"No Related Posts\""
|
156 |
msgstr "Weergave \"Geen Gerelateerde Berichten\""
|
157 |
|
158 |
+
#: admin.inc.php:237
|
159 |
msgid "Show post excerpt in list?"
|
160 |
msgstr "Laat bericht uittreksel zien in lijst?"
|
161 |
|
162 |
+
#: admin.inc.php:240
|
163 |
msgid "Length of excerpt (in words): "
|
164 |
msgstr "Lengte van uittreksel (in woorden):"
|
165 |
|
166 |
+
#: admin.inc.php:243
|
167 |
msgid "Customize the output:"
|
168 |
msgstr "Aanpassen van de output:"
|
169 |
|
170 |
+
#: admin.inc.php:245
|
171 |
msgid "HTML to display before the list of posts: "
|
172 |
msgstr "Weer te geven HTML voor de berichtenlijst:"
|
173 |
|
174 |
+
#: admin.inc.php:248
|
175 |
msgid "HTML to display before each list item: "
|
176 |
msgstr "Weer te geven HTML voor elk item in de lijst:"
|
177 |
|
178 |
+
#: admin.inc.php:251
|
179 |
msgid "HTML to display after each list item: "
|
180 |
msgstr "Weer te geven HTML na elk item in de lijst:"
|
181 |
|
182 |
+
#: admin.inc.php:254
|
183 |
msgid "HTML to display after the list of posts: "
|
184 |
msgstr "Weer te geven HTML na de berichtenlijst:"
|
185 |
|
186 |
+
#: admin.inc.php:257
|
187 |
msgid "Post thumbnail options:"
|
188 |
msgstr "Berichtopties miniatuurafbeelding:"
|
189 |
|
190 |
+
#: admin.inc.php:259
|
191 |
msgid "Location of post thumbnail:"
|
192 |
msgstr ""
|
193 |
|
194 |
+
#: admin.inc.php:263
|
195 |
#, fuzzy
|
196 |
msgid "Display thumbnails inline with posts, before title"
|
197 |
msgstr "Toon miniatuurafbeeldingen inline met berichten"
|
198 |
|
199 |
+
#: admin.inc.php:267
|
200 |
#, fuzzy
|
201 |
msgid "Display thumbnails inline with posts, after title"
|
202 |
msgstr "Toon miniatuurafbeeldingen inline met berichten"
|
203 |
|
204 |
+
#: admin.inc.php:271
|
205 |
msgid "Display only thumbnails, no text"
|
206 |
msgstr "Alleen miniatuurafbeeldingen weergeven, geen tekst"
|
207 |
|
208 |
+
#: admin.inc.php:275
|
209 |
msgid "Do not display thumbnails, only text."
|
210 |
msgstr "Geen miniatuurafbeeldingen weergeven, alleen tekst."
|
211 |
|
212 |
+
#: admin.inc.php:279
|
213 |
msgid "Maximum width of the thumbnail: "
|
214 |
msgstr ""
|
215 |
|
216 |
+
#: admin.inc.php:282
|
217 |
msgid "Maximum height of the thumbnail: "
|
218 |
msgstr ""
|
219 |
|
220 |
+
#: admin.inc.php:285
|
221 |
+
msgid "Use timthumb to generate thumbnails? "
|
222 |
+
msgstr ""
|
223 |
+
|
224 |
+
#: admin.inc.php:286
|
225 |
+
msgid "If checked, <a href=\"http://www.binarymoon.co.uk/projects/timthumb/\">timthumb</a> will be used to generate thumbnails"
|
226 |
+
msgstr ""
|
227 |
+
|
228 |
+
#: admin.inc.php:288
|
229 |
#, fuzzy
|
230 |
msgid "Post thumbnail meta field name: "
|
231 |
msgstr "Berichtopties miniatuurafbeelding:"
|
232 |
|
233 |
+
#: admin.inc.php:289
|
234 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
235 |
msgstr ""
|
236 |
|
237 |
+
#: admin.inc.php:291
|
238 |
#, fuzzy
|
239 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
240 |
msgstr "Als de postmeta niet is ingesteld moet de plugin de eerste afbeelding van het bericht uitpakken. Dit kan het laden van uw bericht vertragen, indien het eerste beeld in de gerelateerde berichten groot is qua bestandsgrootte"
|
241 |
|
242 |
+
#: admin.inc.php:292
|
243 |
#, fuzzy
|
244 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
245 |
msgstr "Als de postmeta niet is ingesteld moet de plugin de eerste afbeelding van het bericht uitpakken. Dit kan het laden van uw bericht vertragen, indien het eerste beeld in de gerelateerde berichten groot is qua bestandsgrootte"
|
246 |
|
247 |
+
#: admin.inc.php:294
|
248 |
msgid "Use default thumbnail? "
|
249 |
msgstr ""
|
250 |
|
251 |
+
#: admin.inc.php:295
|
252 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
253 |
msgstr ""
|
254 |
|
255 |
+
#: admin.inc.php:297
|
256 |
msgid "Default thumbnail: "
|
257 |
msgstr ""
|
258 |
|
259 |
+
#: admin.inc.php:298
|
260 |
#, fuzzy
|
261 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
262 |
msgstr "De plugin zal eerst controleren of het bericht een miniatuurafbeelding bevat, zoniet dan zal de plugin het metaveld controleren. Wanneer het geen miniatuurafbeelding bevat wordt de standaard afbeelding getoond zoals hieronder aangegeven:"
|
263 |
|
264 |
+
#: admin.inc.php:304
|
265 |
+
msgid "Custom Styles"
|
266 |
+
msgstr ""
|
267 |
+
|
268 |
+
#: admin.inc.php:307
|
269 |
+
msgid "Custom CSS to add to header:"
|
270 |
+
msgstr ""
|
271 |
+
|
272 |
+
#: admin.inc.php:310
|
273 |
+
msgid "Do not include <code>style</code> tags. Check out the <a href=\"http://wordpress.org/extend/plugins/contextual-related-posts/faq/\">FAQ</a> for available CSS classes to style."
|
274 |
+
msgstr ""
|
275 |
+
|
276 |
+
#: admin.inc.php:315
|
277 |
msgid "Do you want to set options to Default?"
|
278 |
msgstr "Wil je opties terug naar standaard instellen?"
|
279 |
|
280 |
+
#: admin.inc.php:316
|
281 |
msgid "Are you sure you want to recreate the index?"
|
282 |
msgstr "Weet je zeker dat je de index opnieuw wilt creeëren?"
|
283 |
|
284 |
+
#: admin.inc.php:346
|
285 |
msgid "Contextual Related Posts"
|
286 |
msgstr "Contextual Related Posts"
|
287 |
|
288 |
+
#: admin.inc.php:346
|
289 |
msgid "Related Posts"
|
290 |
msgstr "Gerelateerde Berichten"
|
291 |
|
292 |
+
#: admin.inc.php:355
|
293 |
+
#, fuzzy
|
294 |
+
msgid "plugin settings page"
|
295 |
+
msgstr "plugin pagina"
|
296 |
+
|
297 |
+
#: admin.inc.php:360
|
298 |
+
msgid "Contextual Related Posts plugin has just been installed / upgraded. Please visit the "
|
299 |
+
msgstr ""
|
300 |
+
|
301 |
+
#: admin.inc.php:360
|
302 |
+
msgid " to configure."
|
303 |
+
msgstr ""
|
304 |
+
|
305 |
+
#: contextual-related-posts.php:125
|
306 |
msgid "Powered by"
|
307 |
msgstr "Powered by"
|
308 |
|
309 |
+
#: contextual-related-posts.php:130
|
310 |
+
#: contextual-related-posts.php:134
|
311 |
msgid "No related posts found"
|
312 |
msgstr "Geen gerelateerde berichten gevonden"
|
313 |
|
314 |
+
#: contextual-related-posts.php:167
|
315 |
msgid "<h3>Related Posts:</h3>"
|
316 |
msgstr "<h3>Gerelateerde Berichten:</h3>"
|
317 |
|
318 |
+
#: contextual-related-posts.php:335
|
319 |
msgid "Settings"
|
320 |
msgstr "Instellingen"
|
321 |
|
322 |
+
#: contextual-related-posts.php:337
|
323 |
msgid "Donate"
|
324 |
msgstr "Doneren"
|
325 |
|
languages/crp-ru_RU.mo
CHANGED
Binary file
|
languages/crp-ru_RU.po
CHANGED
@@ -2,7 +2,7 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
-
"POT-Creation-Date: 2012-
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: <me@ajaydsouza.com>\n"
|
@@ -15,268 +15,309 @@ msgstr ""
|
|
15 |
"X-Poedit-Country: RUSSIAN FEDERATION\n"
|
16 |
"X-Poedit-SearchPath-0: .\n"
|
17 |
|
18 |
-
#: admin.inc.php:
|
19 |
msgid "Options saved successfully."
|
20 |
msgstr "Настройки сохранены успешно."
|
21 |
|
22 |
-
#: admin.inc.php:
|
23 |
msgid "Options set to Default."
|
24 |
msgstr "Опции возвращены к стандартным"
|
25 |
|
26 |
-
#: admin.inc.php:
|
27 |
msgid "Index recreated"
|
28 |
msgstr "Индекс воссоздан"
|
29 |
|
30 |
-
#: admin.inc.php:
|
31 |
msgid "Support the development"
|
32 |
msgstr "Поддержка развития проекта"
|
33 |
|
34 |
-
#: admin.inc.php:
|
35 |
msgid "Enter amount in USD: "
|
36 |
msgstr "Введите сумму в долларах США:"
|
37 |
|
38 |
-
#: admin.inc.php:
|
39 |
msgid "Send your donation to the author of"
|
40 |
msgstr "Отправить пожертвование автору"
|
41 |
|
42 |
-
#: admin.inc.php:
|
43 |
msgid "Quick links"
|
44 |
msgstr "Быстрые ссылки"
|
45 |
|
46 |
-
#: admin.inc.php:
|
47 |
msgid "Contextual Related Posts "
|
48 |
msgstr "Контекстные похожие посты"
|
49 |
|
50 |
-
#: admin.inc.php:
|
51 |
msgid "plugin page"
|
52 |
msgstr "Страница плагина"
|
53 |
|
54 |
-
#: admin.inc.php:
|
55 |
msgid "Other plugins"
|
56 |
msgstr "Другие плагины"
|
57 |
|
58 |
-
#: admin.inc.php:
|
59 |
msgid "Ajay's blog"
|
60 |
msgstr "Блог автора (Ajay, английский язык)"
|
61 |
|
62 |
-
#: admin.inc.php:
|
63 |
-
#: contextual-related-posts.php:
|
64 |
msgid "Support"
|
65 |
msgstr "Поддержка"
|
66 |
|
67 |
-
#: admin.inc.php:
|
68 |
msgid "Follow @ajaydsouza on Twitter"
|
69 |
msgstr "Следовать @ajaydsouza на Твиттере"
|
70 |
|
71 |
-
#: admin.inc.php:
|
72 |
msgid "Recent developments"
|
73 |
msgstr "Последние разработки"
|
74 |
|
75 |
-
#: admin.inc.php:
|
76 |
msgid "General options"
|
77 |
msgstr ""
|
78 |
|
79 |
-
#: admin.inc.php:
|
80 |
msgid "Number of related posts to display: "
|
81 |
msgstr "Количество отображаемых похожих постов:"
|
82 |
|
83 |
-
#: admin.inc.php:
|
84 |
msgid "Exclude Categories: "
|
85 |
msgstr "Исключить категории:"
|
86 |
|
87 |
-
#: admin.inc.php:
|
88 |
msgid "Add related posts to the post content on single posts"
|
89 |
msgstr ""
|
90 |
|
91 |
-
#: admin.inc.php:
|
92 |
-
#: admin.inc.php:
|
93 |
#, fuzzy
|
94 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
95 |
msgstr "Показывать связанные посты на страницах. <br />Если вы захотите отключить эту опцию, пожалуйста, добавьте код: <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code>, в отображаемый шаблон на вашем сайте"
|
96 |
|
97 |
-
#: admin.inc.php:
|
98 |
#, fuzzy
|
99 |
msgid "Add related posts to pages"
|
100 |
msgstr "Добавить похожие посты в фид"
|
101 |
|
102 |
-
#: admin.inc.php:
|
103 |
msgid "Add related posts to feed"
|
104 |
msgstr "Добавить похожие посты в фид"
|
105 |
|
106 |
-
#: admin.inc.php:
|
107 |
msgid "Find related posts based on content as well as title"
|
108 |
msgstr ""
|
109 |
|
110 |
-
#: admin.inc.php:
|
111 |
#, fuzzy
|
112 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
113 |
msgstr "Найти связанные сообщения в зависимости от содержания и заголовка. Если вы не выберете эту опцию, то для поиска будут использоваться только заголовки сообщений. (Я рекомендую использовать плагин кэширования, если вы включите опцию)"
|
114 |
|
115 |
-
#: admin.inc.php:
|
116 |
msgid "Exclude Pages in Related Posts"
|
117 |
msgstr "Исключить страницы в Похожих постах"
|
118 |
|
119 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
120 |
msgid "Add a link to the plugin page as a final item in the list"
|
121 |
msgstr ""
|
122 |
|
123 |
-
#: admin.inc.php:
|
124 |
msgid " <em>Optional</em>"
|
125 |
msgstr ""
|
126 |
|
127 |
-
#: admin.inc.php:
|
128 |
#, fuzzy
|
129 |
msgid "Output Options"
|
130 |
msgstr "Опции вывода:"
|
131 |
|
132 |
-
#: admin.inc.php:
|
133 |
msgid "Title of related posts: "
|
134 |
msgstr "Названия связанных постов:"
|
135 |
|
136 |
-
#: admin.inc.php:
|
137 |
msgid "When there are no posts, what should be shown?"
|
138 |
msgstr "Когда нет сообщений, что должно быть показано?"
|
139 |
|
140 |
-
#: admin.inc.php:
|
141 |
msgid "Blank Output"
|
142 |
msgstr "Пустой выход"
|
143 |
|
144 |
-
#: admin.inc.php:
|
145 |
msgid "Display \"No Related Posts\""
|
146 |
msgstr "Показывать \"Нет похожих постов\""
|
147 |
|
148 |
-
#: admin.inc.php:
|
149 |
msgid "Show post excerpt in list?"
|
150 |
msgstr "Показать выдержки из поста в списке?"
|
151 |
|
152 |
-
#: admin.inc.php:
|
153 |
msgid "Length of excerpt (in words): "
|
154 |
msgstr "Длина выдержки (в словах):"
|
155 |
|
156 |
-
#: admin.inc.php:
|
157 |
msgid "Customize the output:"
|
158 |
msgstr "Настройки выхода:"
|
159 |
|
160 |
-
#: admin.inc.php:
|
161 |
msgid "HTML to display before the list of posts: "
|
162 |
msgstr "HTML для показа перед списком сообщений: "
|
163 |
|
164 |
-
#: admin.inc.php:
|
165 |
msgid "HTML to display before each list item: "
|
166 |
msgstr "HTML для показа перед каждым элементом списка: "
|
167 |
|
168 |
-
#: admin.inc.php:
|
169 |
msgid "HTML to display after each list item: "
|
170 |
msgstr "HTML для отображения после каждого элемента списка: "
|
171 |
|
172 |
-
#: admin.inc.php:
|
173 |
msgid "HTML to display after the list of posts: "
|
174 |
msgstr "HTML для отображения после списка сообщений: "
|
175 |
|
176 |
-
#: admin.inc.php:
|
177 |
msgid "Post thumbnail options:"
|
178 |
msgstr "Опции изображения поста:"
|
179 |
|
180 |
-
#: admin.inc.php:
|
181 |
msgid "Location of post thumbnail:"
|
182 |
msgstr ""
|
183 |
|
184 |
-
#: admin.inc.php:
|
185 |
#, fuzzy
|
186 |
msgid "Display thumbnails inline with posts, before title"
|
187 |
msgstr "Показать эскизы в соответствии с сообщениями"
|
188 |
|
189 |
-
#: admin.inc.php:
|
190 |
#, fuzzy
|
191 |
msgid "Display thumbnails inline with posts, after title"
|
192 |
msgstr "Показать эскизы в соответствии с сообщениями"
|
193 |
|
194 |
-
#: admin.inc.php:
|
195 |
msgid "Display only thumbnails, no text"
|
196 |
msgstr "Показывать только изображения, без текста"
|
197 |
|
198 |
-
#: admin.inc.php:
|
199 |
msgid "Do not display thumbnails, only text."
|
200 |
msgstr "Не показывать изображения, только текст"
|
201 |
|
202 |
-
#: admin.inc.php:
|
203 |
msgid "Maximum width of the thumbnail: "
|
204 |
msgstr ""
|
205 |
|
206 |
-
#: admin.inc.php:
|
207 |
msgid "Maximum height of the thumbnail: "
|
208 |
msgstr ""
|
209 |
|
210 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
211 |
#, fuzzy
|
212 |
msgid "Post thumbnail meta field name: "
|
213 |
msgstr "Опции изображения поста:"
|
214 |
|
215 |
-
#: admin.inc.php:
|
216 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
217 |
msgstr ""
|
218 |
|
219 |
-
#: admin.inc.php:
|
220 |
#, fuzzy
|
221 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
222 |
msgstr "Если postmeta не установлен, то плагин скачает первое изображение поста. Это может замедлить загрузку сообщения (если изображение слишком велико)"
|
223 |
|
224 |
-
#: admin.inc.php:
|
225 |
#, fuzzy
|
226 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
227 |
msgstr "Если postmeta не установлен, то плагин скачает первое изображение поста. Это может замедлить загрузку сообщения (если изображение слишком велико)"
|
228 |
|
229 |
-
#: admin.inc.php:
|
230 |
msgid "Use default thumbnail? "
|
231 |
msgstr ""
|
232 |
|
233 |
-
#: admin.inc.php:
|
234 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
235 |
msgstr ""
|
236 |
|
237 |
-
#: admin.inc.php:
|
238 |
msgid "Default thumbnail: "
|
239 |
msgstr ""
|
240 |
|
241 |
-
#: admin.inc.php:
|
242 |
#, fuzzy
|
243 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
244 |
msgstr "Плагин сначала проверит, содержит ли пост миниатюры. Если они не обнаружатся, то плагин проверит мета-данные. Если они будут недоступны, то плагин будет показывать изображение по умолчанию, как указано ниже:"
|
245 |
|
246 |
-
#: admin.inc.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
247 |
msgid "Do you want to set options to Default?"
|
248 |
msgstr "Вы хотите задать параметры по умолчанию?"
|
249 |
|
250 |
-
#: admin.inc.php:
|
251 |
msgid "Are you sure you want to recreate the index?"
|
252 |
msgstr "Вы уверены, что хотите воссоздать индекс?"
|
253 |
|
254 |
-
#: admin.inc.php:
|
255 |
msgid "Contextual Related Posts"
|
256 |
msgstr "Контекстные похожие посты"
|
257 |
|
258 |
-
#: admin.inc.php:
|
259 |
msgid "Related Posts"
|
260 |
msgstr "Похожие посты"
|
261 |
|
262 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
263 |
msgid "Powered by"
|
264 |
msgstr "Автор:"
|
265 |
|
266 |
-
#: contextual-related-posts.php:
|
267 |
-
#: contextual-related-posts.php:
|
268 |
msgid "No related posts found"
|
269 |
msgstr "Не найдены похожие посты"
|
270 |
|
271 |
-
#: contextual-related-posts.php:
|
272 |
msgid "<h3>Related Posts:</h3>"
|
273 |
msgstr "<h3>Похожие посты:</h3>"
|
274 |
|
275 |
-
#: contextual-related-posts.php:
|
276 |
msgid "Settings"
|
277 |
msgstr "Настройки"
|
278 |
|
279 |
-
#: contextual-related-posts.php:
|
280 |
msgid "Donate"
|
281 |
msgstr "Пожертвование"
|
282 |
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Contextual Related Posts\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2012-06-04 18:54-0000\n"
|
6 |
"PO-Revision-Date: \n"
|
7 |
"Last-Translator: Ajay D'Souza <me@ajaydsouza.com>\n"
|
8 |
"Language-Team: <me@ajaydsouza.com>\n"
|
15 |
"X-Poedit-Country: RUSSIAN FEDERATION\n"
|
16 |
"X-Poedit-SearchPath-0: .\n"
|
17 |
|
18 |
+
#: admin.inc.php:70
|
19 |
msgid "Options saved successfully."
|
20 |
msgstr "Настройки сохранены успешно."
|
21 |
|
22 |
+
#: admin.inc.php:86
|
23 |
msgid "Options set to Default."
|
24 |
msgstr "Опции возвращены к стандартным"
|
25 |
|
26 |
+
#: admin.inc.php:101
|
27 |
msgid "Index recreated"
|
28 |
msgstr "Индекс воссоздан"
|
29 |
|
30 |
+
#: admin.inc.php:114
|
31 |
msgid "Support the development"
|
32 |
msgstr "Поддержка развития проекта"
|
33 |
|
34 |
+
#: admin.inc.php:122
|
35 |
msgid "Enter amount in USD: "
|
36 |
msgstr "Введите сумму в долларах США:"
|
37 |
|
38 |
+
#: admin.inc.php:126
|
39 |
msgid "Send your donation to the author of"
|
40 |
msgstr "Отправить пожертвование автору"
|
41 |
|
42 |
+
#: admin.inc.php:132
|
43 |
msgid "Quick links"
|
44 |
msgstr "Быстрые ссылки"
|
45 |
|
46 |
+
#: admin.inc.php:134
|
47 |
msgid "Contextual Related Posts "
|
48 |
msgstr "Контекстные похожие посты"
|
49 |
|
50 |
+
#: admin.inc.php:134
|
51 |
msgid "plugin page"
|
52 |
msgstr "Страница плагина"
|
53 |
|
54 |
+
#: admin.inc.php:135
|
55 |
msgid "Other plugins"
|
56 |
msgstr "Другие плагины"
|
57 |
|
58 |
+
#: admin.inc.php:136
|
59 |
msgid "Ajay's blog"
|
60 |
msgstr "Блог автора (Ajay, английский язык)"
|
61 |
|
62 |
+
#: admin.inc.php:137
|
63 |
+
#: contextual-related-posts.php:336
|
64 |
msgid "Support"
|
65 |
msgstr "Поддержка"
|
66 |
|
67 |
+
#: admin.inc.php:138
|
68 |
msgid "Follow @ajaydsouza on Twitter"
|
69 |
msgstr "Следовать @ajaydsouza на Твиттере"
|
70 |
|
71 |
+
#: admin.inc.php:142
|
72 |
msgid "Recent developments"
|
73 |
msgstr "Последние разработки"
|
74 |
|
75 |
+
#: admin.inc.php:157
|
76 |
msgid "General options"
|
77 |
msgstr ""
|
78 |
|
79 |
+
#: admin.inc.php:160
|
80 |
msgid "Number of related posts to display: "
|
81 |
msgstr "Количество отображаемых похожих постов:"
|
82 |
|
83 |
+
#: admin.inc.php:163
|
84 |
msgid "Exclude Categories: "
|
85 |
msgstr "Исключить категории:"
|
86 |
|
87 |
+
#: admin.inc.php:181
|
88 |
msgid "Add related posts to the post content on single posts"
|
89 |
msgstr ""
|
90 |
|
91 |
+
#: admin.inc.php:182
|
92 |
+
#: admin.inc.php:185
|
93 |
#, fuzzy
|
94 |
msgid "If you choose to disable this, please add <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code> to your template file where you want it displayed"
|
95 |
msgstr "Показывать связанные посты на страницах. <br />Если вы захотите отключить эту опцию, пожалуйста, добавьте код: <code><?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?></code>, в отображаемый шаблон на вашем сайте"
|
96 |
|
97 |
+
#: admin.inc.php:184
|
98 |
#, fuzzy
|
99 |
msgid "Add related posts to pages"
|
100 |
msgstr "Добавить похожие посты в фид"
|
101 |
|
102 |
+
#: admin.inc.php:187
|
103 |
msgid "Add related posts to feed"
|
104 |
msgstr "Добавить похожие посты в фид"
|
105 |
|
106 |
+
#: admin.inc.php:190
|
107 |
msgid "Find related posts based on content as well as title"
|
108 |
msgstr ""
|
109 |
|
110 |
+
#: admin.inc.php:191
|
111 |
#, fuzzy
|
112 |
msgid "If unchecked, only posts titles are used. (I recommend using a caching plugin if you enable this)"
|
113 |
msgstr "Найти связанные сообщения в зависимости от содержания и заголовка. Если вы не выберете эту опцию, то для поиска будут использоваться только заголовки сообщений. (Я рекомендую использовать плагин кэширования, если вы включите опцию)"
|
114 |
|
115 |
+
#: admin.inc.php:193
|
116 |
msgid "Exclude Pages in Related Posts"
|
117 |
msgstr "Исключить страницы в Похожих постах"
|
118 |
|
119 |
+
#: admin.inc.php:196
|
120 |
+
msgid "Post types to include in results (including custom post types)"
|
121 |
+
msgstr ""
|
122 |
+
|
123 |
+
#: admin.inc.php:207
|
124 |
+
msgid "Use CTRL on Windows and COMMAND on Mac to select multiple items"
|
125 |
+
msgstr ""
|
126 |
+
|
127 |
+
#: admin.inc.php:210
|
128 |
msgid "Add a link to the plugin page as a final item in the list"
|
129 |
msgstr ""
|
130 |
|
131 |
+
#: admin.inc.php:211
|
132 |
msgid " <em>Optional</em>"
|
133 |
msgstr ""
|
134 |
|
135 |
+
#: admin.inc.php:219
|
136 |
#, fuzzy
|
137 |
msgid "Output Options"
|
138 |
msgstr "Опции вывода:"
|
139 |
|
140 |
+
#: admin.inc.php:222
|
141 |
msgid "Title of related posts: "
|
142 |
msgstr "Названия связанных постов:"
|
143 |
|
144 |
+
#: admin.inc.php:225
|
145 |
msgid "When there are no posts, what should be shown?"
|
146 |
msgstr "Когда нет сообщений, что должно быть показано?"
|
147 |
|
148 |
+
#: admin.inc.php:229
|
149 |
msgid "Blank Output"
|
150 |
msgstr "Пустой выход"
|
151 |
|
152 |
+
#: admin.inc.php:233
|
153 |
msgid "Display \"No Related Posts\""
|
154 |
msgstr "Показывать \"Нет похожих постов\""
|
155 |
|
156 |
+
#: admin.inc.php:237
|
157 |
msgid "Show post excerpt in list?"
|
158 |
msgstr "Показать выдержки из поста в списке?"
|
159 |
|
160 |
+
#: admin.inc.php:240
|
161 |
msgid "Length of excerpt (in words): "
|
162 |
msgstr "Длина выдержки (в словах):"
|
163 |
|
164 |
+
#: admin.inc.php:243
|
165 |
msgid "Customize the output:"
|
166 |
msgstr "Настройки выхода:"
|
167 |
|
168 |
+
#: admin.inc.php:245
|
169 |
msgid "HTML to display before the list of posts: "
|
170 |
msgstr "HTML для показа перед списком сообщений: "
|
171 |
|
172 |
+
#: admin.inc.php:248
|
173 |
msgid "HTML to display before each list item: "
|
174 |
msgstr "HTML для показа перед каждым элементом списка: "
|
175 |
|
176 |
+
#: admin.inc.php:251
|
177 |
msgid "HTML to display after each list item: "
|
178 |
msgstr "HTML для отображения после каждого элемента списка: "
|
179 |
|
180 |
+
#: admin.inc.php:254
|
181 |
msgid "HTML to display after the list of posts: "
|
182 |
msgstr "HTML для отображения после списка сообщений: "
|
183 |
|
184 |
+
#: admin.inc.php:257
|
185 |
msgid "Post thumbnail options:"
|
186 |
msgstr "Опции изображения поста:"
|
187 |
|
188 |
+
#: admin.inc.php:259
|
189 |
msgid "Location of post thumbnail:"
|
190 |
msgstr ""
|
191 |
|
192 |
+
#: admin.inc.php:263
|
193 |
#, fuzzy
|
194 |
msgid "Display thumbnails inline with posts, before title"
|
195 |
msgstr "Показать эскизы в соответствии с сообщениями"
|
196 |
|
197 |
+
#: admin.inc.php:267
|
198 |
#, fuzzy
|
199 |
msgid "Display thumbnails inline with posts, after title"
|
200 |
msgstr "Показать эскизы в соответствии с сообщениями"
|
201 |
|
202 |
+
#: admin.inc.php:271
|
203 |
msgid "Display only thumbnails, no text"
|
204 |
msgstr "Показывать только изображения, без текста"
|
205 |
|
206 |
+
#: admin.inc.php:275
|
207 |
msgid "Do not display thumbnails, only text."
|
208 |
msgstr "Не показывать изображения, только текст"
|
209 |
|
210 |
+
#: admin.inc.php:279
|
211 |
msgid "Maximum width of the thumbnail: "
|
212 |
msgstr ""
|
213 |
|
214 |
+
#: admin.inc.php:282
|
215 |
msgid "Maximum height of the thumbnail: "
|
216 |
msgstr ""
|
217 |
|
218 |
+
#: admin.inc.php:285
|
219 |
+
msgid "Use timthumb to generate thumbnails? "
|
220 |
+
msgstr ""
|
221 |
+
|
222 |
+
#: admin.inc.php:286
|
223 |
+
msgid "If checked, <a href=\"http://www.binarymoon.co.uk/projects/timthumb/\">timthumb</a> will be used to generate thumbnails"
|
224 |
+
msgstr ""
|
225 |
+
|
226 |
+
#: admin.inc.php:288
|
227 |
#, fuzzy
|
228 |
msgid "Post thumbnail meta field name: "
|
229 |
msgstr "Опции изображения поста:"
|
230 |
|
231 |
+
#: admin.inc.php:289
|
232 |
msgid "The value of this field should contain the image source and is set in the <em>Add New Post</em> screen"
|
233 |
msgstr ""
|
234 |
|
235 |
+
#: admin.inc.php:291
|
236 |
#, fuzzy
|
237 |
msgid "If the postmeta is not set, then should the plugin extract the first image from the post?"
|
238 |
msgstr "Если postmeta не установлен, то плагин скачает первое изображение поста. Это может замедлить загрузку сообщения (если изображение слишком велико)"
|
239 |
|
240 |
+
#: admin.inc.php:292
|
241 |
#, fuzzy
|
242 |
msgid "This can slow down the loading of your page if the first image in the related posts is large in file-size"
|
243 |
msgstr "Если postmeta не установлен, то плагин скачает первое изображение поста. Это может замедлить загрузку сообщения (если изображение слишком велико)"
|
244 |
|
245 |
+
#: admin.inc.php:294
|
246 |
msgid "Use default thumbnail? "
|
247 |
msgstr ""
|
248 |
|
249 |
+
#: admin.inc.php:295
|
250 |
msgid "If checked, when no thumbnail is found, show a default one from the URL below. If not checked and no thumbnail is found, no image will be shown."
|
251 |
msgstr ""
|
252 |
|
253 |
+
#: admin.inc.php:297
|
254 |
msgid "Default thumbnail: "
|
255 |
msgstr ""
|
256 |
|
257 |
+
#: admin.inc.php:298
|
258 |
#, fuzzy
|
259 |
msgid "The plugin will first check if the post contains a thumbnail. If it doesn't then it will check the meta field. If this is not available, then it will show the default image as specified above"
|
260 |
msgstr "Плагин сначала проверит, содержит ли пост миниатюры. Если они не обнаружатся, то плагин проверит мета-данные. Если они будут недоступны, то плагин будет показывать изображение по умолчанию, как указано ниже:"
|
261 |
|
262 |
+
#: admin.inc.php:304
|
263 |
+
msgid "Custom Styles"
|
264 |
+
msgstr ""
|
265 |
+
|
266 |
+
#: admin.inc.php:307
|
267 |
+
msgid "Custom CSS to add to header:"
|
268 |
+
msgstr ""
|
269 |
+
|
270 |
+
#: admin.inc.php:310
|
271 |
+
msgid "Do not include <code>style</code> tags. Check out the <a href=\"http://wordpress.org/extend/plugins/contextual-related-posts/faq/\">FAQ</a> for available CSS classes to style."
|
272 |
+
msgstr ""
|
273 |
+
|
274 |
+
#: admin.inc.php:315
|
275 |
msgid "Do you want to set options to Default?"
|
276 |
msgstr "Вы хотите задать параметры по умолчанию?"
|
277 |
|
278 |
+
#: admin.inc.php:316
|
279 |
msgid "Are you sure you want to recreate the index?"
|
280 |
msgstr "Вы уверены, что хотите воссоздать индекс?"
|
281 |
|
282 |
+
#: admin.inc.php:346
|
283 |
msgid "Contextual Related Posts"
|
284 |
msgstr "Контекстные похожие посты"
|
285 |
|
286 |
+
#: admin.inc.php:346
|
287 |
msgid "Related Posts"
|
288 |
msgstr "Похожие посты"
|
289 |
|
290 |
+
#: admin.inc.php:355
|
291 |
+
#, fuzzy
|
292 |
+
msgid "plugin settings page"
|
293 |
+
msgstr "Страница плагина"
|
294 |
+
|
295 |
+
#: admin.inc.php:360
|
296 |
+
msgid "Contextual Related Posts plugin has just been installed / upgraded. Please visit the "
|
297 |
+
msgstr ""
|
298 |
+
|
299 |
+
#: admin.inc.php:360
|
300 |
+
msgid " to configure."
|
301 |
+
msgstr ""
|
302 |
+
|
303 |
+
#: contextual-related-posts.php:125
|
304 |
msgid "Powered by"
|
305 |
msgstr "Автор:"
|
306 |
|
307 |
+
#: contextual-related-posts.php:130
|
308 |
+
#: contextual-related-posts.php:134
|
309 |
msgid "No related posts found"
|
310 |
msgstr "Не найдены похожие посты"
|
311 |
|
312 |
+
#: contextual-related-posts.php:167
|
313 |
msgid "<h3>Related Posts:</h3>"
|
314 |
msgstr "<h3>Похожие посты:</h3>"
|
315 |
|
316 |
+
#: contextual-related-posts.php:335
|
317 |
msgid "Settings"
|
318 |
msgstr "Настройки"
|
319 |
|
320 |
+
#: contextual-related-posts.php:337
|
321 |
msgid "Donate"
|
322 |
msgstr "Пожертвование"
|
323 |
|
readme.txt
CHANGED
@@ -1,11 +1,11 @@
|
|
1 |
-
=== Contextual Related Posts ===
|
2 |
Tags: related posts, related, similar posts, posts, post, feed, feeds, rss, widget, thumbnail
|
3 |
-
Contributors: Ajay
|
4 |
Donate link: http://ajaydsouza.com/donate/
|
5 |
Stable tag: trunk
|
6 |
-
Requires at least:
|
7 |
Tested up to: 3.4
|
8 |
-
|
9 |
|
10 |
Increase reader retention and reduce bounce rates by displaying a set of related posts on your website or in your feed
|
11 |
|
@@ -23,24 +23,30 @@ The list is based on the content of the title and/or content of the posts which
|
|
23 |
* Relevancy matching based on title and/or content of the post
|
24 |
* Exclude posts from categories from being displayed in the list
|
25 |
* Exclude display of related posts on Pages
|
26 |
-
* Support for
|
27 |
-
*
|
28 |
-
*
|
|
|
|
|
|
|
29 |
* Display excerpts in post. You can select the length of the excerpt in words
|
30 |
-
* Output wrapped in CSS class that allows you to style the list
|
31 |
-
*
|
32 |
|
33 |
== Upgrade Notice ==
|
34 |
|
35 |
-
= 1.
|
36 |
-
*
|
37 |
|
38 |
|
39 |
== Changelog ==
|
40 |
|
41 |
-
= 1.
|
42 |
-
*
|
43 |
-
|
|
|
|
|
|
|
44 |
|
45 |
= 1.7.3 =
|
46 |
* Fixed: Donation link
|
@@ -146,27 +152,32 @@ The list is based on the content of the title and/or content of the posts which
|
|
146 |
|
147 |
3. Activate the Plugin in WP-Admin.
|
148 |
|
149 |
-
4. Goto Settings
|
|
|
|
|
150 |
|
151 |
== Screenshots ==
|
152 |
|
153 |
1. CRP options in WP-Admin - General Options
|
154 |
2. CRP options in WP-Admin - Output Options
|
|
|
155 |
|
156 |
|
157 |
== Frequently Asked Questions ==
|
158 |
|
159 |
-
If your question isn't listed here, please post a comment at the <a href="http://wordpress.org/
|
160 |
|
161 |
= How can I customise the output? =
|
162 |
|
163 |
-
Several customization options are available via the Settings page in WordPress Admin. You can access this via <strong>Settings
|
164 |
|
165 |
The plugin also provides you with a set of CSS classes that allow you to style your posts by adding code to the *style.css* sheet. In a future version, I will be adding in CSS support within the plugins Settings page.
|
166 |
|
167 |
-
The following CSS
|
|
|
|
|
168 |
|
169 |
-
* **crp_related**:
|
170 |
|
171 |
* **crp_title**: Class of the `span` tag for title of the post
|
172 |
|
@@ -180,7 +191,7 @@ For more information, please visit http://ajaydsouza.com/wordpress/plugins/conte
|
|
180 |
|
181 |
The plugin selects thumbnails in the following order:
|
182 |
|
183 |
-
1. Post Thumbnail image: The image that you can set while editing your post in WordPress
|
184 |
|
185 |
2. Post meta field: This is the meta field value you can use when editing your post. The default is `post-image`
|
186 |
|
@@ -190,6 +201,13 @@ The plugin selects thumbnails in the following order:
|
|
190 |
|
191 |
4. Default Thumbnail: If enabled, it will use the default thumbnail that you specify in the Settings screen
|
192 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
193 |
== Wishlist ==
|
194 |
|
195 |
Below are a few features that I plan on implementing in future versions of the plugin. However, there is no fixed time-frame for this and largely depends on how much time I can contribute to development.
|
@@ -197,11 +215,15 @@ Below are a few features that I plan on implementing in future versions of the p
|
|
197 |
* Select random posts if there are no similar posts
|
198 |
* Widget to display the related posts
|
199 |
* Shortcode support
|
200 |
-
* Exclude display on select categories
|
201 |
* Exclude display on select posts
|
202 |
* Caching related posts
|
203 |
* Better relevance tweaking
|
204 |
-
* Custom post support
|
|
|
|
|
|
|
|
|
205 |
|
206 |
-
If you would like a feature to be added, or if you already have the code for the feature, you can let us know by <a href="http://wordpress.org/
|
207 |
|
1 |
+
=== Contextual Related Posts ===
|
2 |
Tags: related posts, related, similar posts, posts, post, feed, feeds, rss, widget, thumbnail
|
3 |
+
Contributors: Ajay
|
4 |
Donate link: http://ajaydsouza.com/donate/
|
5 |
Stable tag: trunk
|
6 |
+
Requires at least: 3.0
|
7 |
Tested up to: 3.4
|
8 |
+
License: GPLv2 or later
|
9 |
|
10 |
Increase reader retention and reduce bounce rates by displaying a set of related posts on your website or in your feed
|
11 |
|
23 |
* Relevancy matching based on title and/or content of the post
|
24 |
* Exclude posts from categories from being displayed in the list
|
25 |
* Exclude display of related posts on Pages
|
26 |
+
* Support for Custom Post Types
|
27 |
+
* Thumbnail support
|
28 |
+
* Support for WordPress post thumbnails
|
29 |
+
* Auto-extract the first image in your post to be displayed as a thumbnail
|
30 |
+
* Manually enter the URL of the thumbnail via <a href="http://codex.wordpress.org/Custom_Fields">WordPress meta fields</a>
|
31 |
+
* Use timthumb to resize images
|
32 |
* Display excerpts in post. You can select the length of the excerpt in words
|
33 |
+
* Output wrapped in CSS class that allows you to style the list. You can enter your custom CSS styles from within WordPress Admin area
|
34 |
+
* Customise which HTML tags to use for displaying the output in case you don't prefer the default `list` format
|
35 |
|
36 |
== Upgrade Notice ==
|
37 |
|
38 |
+
= 1.8 =
|
39 |
+
* Added support for WordPress Custom Post Types, new `Custom Styles` tab, timthumb support. Please visit the Settings page to configure soon after upgrade.
|
40 |
|
41 |
|
42 |
== Changelog ==
|
43 |
|
44 |
+
= 1.8 =
|
45 |
+
* Modified: Replaced `id` attribute with `class` tag on non-singular pages. On singular pages it will display both `id` and `class`
|
46 |
+
* Added: Option to use timthumb to create thumbnail images (turned ON by default)
|
47 |
+
* Added: Support for WordPress Custom Post Types
|
48 |
+
* Added: New `Custom Styles` tab to allow you to easily style the output
|
49 |
+
* Modified: New "default.png" file based on from KDE’s <a href="http://www.oxygen-icons.org/">Oxygen icon set</a>
|
50 |
|
51 |
= 1.7.3 =
|
52 |
* Fixed: Donation link
|
152 |
|
153 |
3. Activate the Plugin in WP-Admin.
|
154 |
|
155 |
+
4. Goto **Settings » Related Posts** to configure
|
156 |
+
|
157 |
+
5. Optionally visit the **Custom Styles** tab to add any custom CSS styles. These are added to `wp_head` on the pages where the posts are displayed
|
158 |
|
159 |
== Screenshots ==
|
160 |
|
161 |
1. CRP options in WP-Admin - General Options
|
162 |
2. CRP options in WP-Admin - Output Options
|
163 |
+
3. CRP options in WP-Admin - Custom Styles
|
164 |
|
165 |
|
166 |
== Frequently Asked Questions ==
|
167 |
|
168 |
+
If your question isn't listed here, please post a comment at the <a href="http://wordpress.org/support/plugin/contextual-related-posts">WordPress.org support forum</a>. I monitor the forums on an ongoing basis. If you're looking for more advanced support, please see <a href="http://ajaydsouza.com/support/">details here</a>.
|
169 |
|
170 |
= How can I customise the output? =
|
171 |
|
172 |
+
Several customization options are available via the Settings page in WordPress Admin. You can access this via <strong>Settings » Related Posts</strong>
|
173 |
|
174 |
The plugin also provides you with a set of CSS classes that allow you to style your posts by adding code to the *style.css* sheet. In a future version, I will be adding in CSS support within the plugins Settings page.
|
175 |
|
176 |
+
The following CSS classes / IDs are available:
|
177 |
+
|
178 |
+
* **crp_related**: ID of the main wrapper `div`. This is only displayed on singular pages, i.e. post, page and attachment
|
179 |
|
180 |
+
* **crp_related**: Class of the main wrapper `div`. If you are displaying the related posts on non-singular pages, then you should style this
|
181 |
|
182 |
* **crp_title**: Class of the `span` tag for title of the post
|
183 |
|
191 |
|
192 |
The plugin selects thumbnails in the following order:
|
193 |
|
194 |
+
1. Post Thumbnail image: The image that you can set while editing your post in WordPress » New Post screen
|
195 |
|
196 |
2. Post meta field: This is the meta field value you can use when editing your post. The default is `post-image`
|
197 |
|
201 |
|
202 |
4. Default Thumbnail: If enabled, it will use the default thumbnail that you specify in the Settings screen
|
203 |
|
204 |
+
The plugin uses <a href="http://www.binarymoon.co.uk/projects/timthumb/">timthumb</a> to generate thumbnails by default. Depending on the configuration of your webhost you might run into certain problems. Please check out <a href="http://www.binarymoon.co.uk/2010/11/timthumb-hints-tips/">the timthumb troubleshooting page</a> regarding permission settings for the folder and files.
|
205 |
+
|
206 |
+
= Manual install =
|
207 |
+
|
208 |
+
If you disable automatic display of related posts please add `<?php if(function_exists('echo_ald_crp')) echo_ald_crp(); ?>` to your template file where you want the related posts to be displayed.
|
209 |
+
You can also use this function to display related posts on any type of page generated by WordPress including homepage and archive pages.
|
210 |
+
|
211 |
== Wishlist ==
|
212 |
|
213 |
Below are a few features that I plan on implementing in future versions of the plugin. However, there is no fixed time-frame for this and largely depends on how much time I can contribute to development.
|
215 |
* Select random posts if there are no similar posts
|
216 |
* Widget to display the related posts
|
217 |
* Shortcode support
|
218 |
+
* Exclude display on select categories and tags
|
219 |
* Exclude display on select posts
|
220 |
* Caching related posts
|
221 |
* Better relevance tweaking
|
222 |
+
* Improved Custom post support
|
223 |
+
* Multi-side support
|
224 |
+
* Ready-made styles
|
225 |
+
* Better post excerpt support
|
226 |
+
* Upload your own default thumbnail
|
227 |
|
228 |
+
If you would like a feature to be added, or if you already have the code for the feature, you can let us know by <a href="http://wordpress.org/support/plugin/contextual-related-posts">posting in this forum</a>.
|
229 |
|
screenshot-1.png
CHANGED
Binary file
|
screenshot-2.png
CHANGED
Binary file
|
screenshot-3.png
ADDED
Binary file
|
timthumb/timthumb.php
ADDED
@@ -0,0 +1,1244 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* TimThumb by Ben Gillbanks and Mark Maunder
|
4 |
+
* Based on work done by Tim McDaniels and Darren Hoyt
|
5 |
+
* http://code.google.com/p/timthumb/
|
6 |
+
*
|
7 |
+
* GNU General Public License, version 2
|
8 |
+
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
9 |
+
*
|
10 |
+
* Examples and documentation available on the project homepage
|
11 |
+
* http://www.binarymoon.co.uk/projects/timthumb/
|
12 |
+
*
|
13 |
+
* $Rev$
|
14 |
+
*/
|
15 |
+
|
16 |
+
/*
|
17 |
+
* --- TimThumb CONFIGURATION ---
|
18 |
+
* To edit the configs it is best to create a file called timthumb-config.php
|
19 |
+
* and define variables you want to customize in there. It will automatically be
|
20 |
+
* loaded by timthumb. This will save you having to re-edit these variables
|
21 |
+
* everytime you download a new version
|
22 |
+
*/
|
23 |
+
define ('VERSION', '2.8.10'); // Version of this script
|
24 |
+
//Load a config file if it exists. Otherwise, use the values below
|
25 |
+
if( file_exists(dirname(__FILE__) . '/timthumb-config.php')) require_once('timthumb-config.php');
|
26 |
+
if(! defined('DEBUG_ON') ) define ('DEBUG_ON', false); // Enable debug logging to web server error log (STDERR)
|
27 |
+
if(! defined('DEBUG_LEVEL') ) define ('DEBUG_LEVEL', 1); // Debug level 1 is less noisy and 3 is the most noisy
|
28 |
+
if(! defined('MEMORY_LIMIT') ) define ('MEMORY_LIMIT', '30M'); // Set PHP memory limit
|
29 |
+
if(! defined('BLOCK_EXTERNAL_LEECHERS') ) define ('BLOCK_EXTERNAL_LEECHERS', false); // If the image or webshot is being loaded on an external site, display a red "No Hotlinking" gif.
|
30 |
+
|
31 |
+
//Image fetching and caching
|
32 |
+
if(! defined('ALLOW_EXTERNAL') ) define ('ALLOW_EXTERNAL', TRUE); // Allow image fetching from external websites. Will check against ALLOWED_SITES if ALLOW_ALL_EXTERNAL_SITES is false
|
33 |
+
if(! defined('ALLOW_ALL_EXTERNAL_SITES') ) define ('ALLOW_ALL_EXTERNAL_SITES', false); // Less secure.
|
34 |
+
if(! defined('FILE_CACHE_ENABLED') ) define ('FILE_CACHE_ENABLED', TRUE); // Should we store resized/modified images on disk to speed things up?
|
35 |
+
if(! defined('FILE_CACHE_TIME_BETWEEN_CLEANS')) define ('FILE_CACHE_TIME_BETWEEN_CLEANS', 86400); // How often the cache is cleaned
|
36 |
+
|
37 |
+
if(! defined('FILE_CACHE_MAX_FILE_AGE') ) define ('FILE_CACHE_MAX_FILE_AGE', 86400); // How old does a file have to be to be deleted from the cache
|
38 |
+
if(! defined('FILE_CACHE_SUFFIX') ) define ('FILE_CACHE_SUFFIX', '.timthumb.txt'); // What to put at the end of all files in the cache directory so we can identify them
|
39 |
+
if(! defined('FILE_CACHE_PREFIX') ) define ('FILE_CACHE_PREFIX', 'timthumb'); // What to put at the beg of all files in the cache directory so we can identify them
|
40 |
+
if(! defined('FILE_CACHE_DIRECTORY') ) define ('FILE_CACHE_DIRECTORY', './cache'); // Directory where images are cached. Left blank it will use the system temporary directory (which is better for security)
|
41 |
+
if(! defined('MAX_FILE_SIZE') ) define ('MAX_FILE_SIZE', 10485760); // 10 Megs is 10485760. This is the max internal or external file size that we'll process.
|
42 |
+
if(! defined('CURL_TIMEOUT') ) define ('CURL_TIMEOUT', 20); // Timeout duration for Curl. This only applies if you have Curl installed and aren't using PHP's default URL fetching mechanism.
|
43 |
+
if(! defined('WAIT_BETWEEN_FETCH_ERRORS') ) define ('WAIT_BETWEEN_FETCH_ERRORS', 3600); //Time to wait between errors fetching remote file
|
44 |
+
|
45 |
+
//Browser caching
|
46 |
+
if(! defined('BROWSER_CACHE_MAX_AGE') ) define ('BROWSER_CACHE_MAX_AGE', 864000); // Time to cache in the browser
|
47 |
+
if(! defined('BROWSER_CACHE_DISABLE') ) define ('BROWSER_CACHE_DISABLE', false); // Use for testing if you want to disable all browser caching
|
48 |
+
|
49 |
+
//Image size and defaults
|
50 |
+
if(! defined('MAX_WIDTH') ) define ('MAX_WIDTH', 1500); // Maximum image width
|
51 |
+
if(! defined('MAX_HEIGHT') ) define ('MAX_HEIGHT', 1500); // Maximum image height
|
52 |
+
if(! defined('NOT_FOUND_IMAGE') ) define ('NOT_FOUND_IMAGE', ''); // Image to serve if any 404 occurs
|
53 |
+
if(! defined('ERROR_IMAGE') ) define ('ERROR_IMAGE', ''); // Image to serve if an error occurs instead of showing error message
|
54 |
+
if(! defined('PNG_IS_TRANSPARENT') ) define ('PNG_IS_TRANSPARENT', FALSE); //42 Define if a png image should have a transparent background color. Use False value if you want to display a custom coloured canvas_colour
|
55 |
+
if(! defined('DEFAULT_Q') ) define ('DEFAULT_Q', 90); // Default image quality. Allows overrid in timthumb-config.php
|
56 |
+
if(! defined('DEFAULT_ZC') ) define ('DEFAULT_ZC', 1); // Default zoom/crop setting. Allows overrid in timthumb-config.php
|
57 |
+
if(! defined('DEFAULT_F') ) define ('DEFAULT_F', ''); // Default image filters. Allows overrid in timthumb-config.php
|
58 |
+
if(! defined('DEFAULT_S') ) define ('DEFAULT_S', 0); // Default sharpen value. Allows overrid in timthumb-config.php
|
59 |
+
if(! defined('DEFAULT_CC') ) define ('DEFAULT_CC', 'ffffff'); // Default canvas colour. Allows overrid in timthumb-config.php
|
60 |
+
|
61 |
+
|
62 |
+
//Image compression is enabled if either of these point to valid paths
|
63 |
+
|
64 |
+
//These are now disabled by default because the file sizes of PNGs (and GIFs) are much smaller than we used to generate.
|
65 |
+
//They only work for PNGs. GIFs and JPEGs are not affected.
|
66 |
+
if(! defined('OPTIPNG_ENABLED') ) define ('OPTIPNG_ENABLED', false);
|
67 |
+
if(! defined('OPTIPNG_PATH') ) define ('OPTIPNG_PATH', '/usr/bin/optipng'); //This will run first because it gives better compression than pngcrush.
|
68 |
+
if(! defined('PNGCRUSH_ENABLED') ) define ('PNGCRUSH_ENABLED', false);
|
69 |
+
if(! defined('PNGCRUSH_PATH') ) define ('PNGCRUSH_PATH', '/usr/bin/pngcrush'); //This will only run if OPTIPNG_PATH is not set or is not valid
|
70 |
+
|
71 |
+
/*
|
72 |
+
-------====Website Screenshots configuration - BETA====-------
|
73 |
+
|
74 |
+
If you just want image thumbnails and don't want website screenshots, you can safely leave this as is.
|
75 |
+
|
76 |
+
If you would like to get website screenshots set up, you will need root access to your own server.
|
77 |
+
|
78 |
+
Enable ALLOW_ALL_EXTERNAL_SITES so you can fetch any external web page. This is more secure now that we're using a non-web folder for cache.
|
79 |
+
Enable BLOCK_EXTERNAL_LEECHERS so that your site doesn't generate thumbnails for the whole Internet.
|
80 |
+
|
81 |
+
Instructions to get website screenshots enabled on Ubuntu Linux:
|
82 |
+
|
83 |
+
1. Install Xvfb with the following command: sudo apt-get install subversion libqt4-webkit libqt4-dev g++ xvfb
|
84 |
+
2. Go to a directory where you can download some code
|
85 |
+
3. Check-out the latest version of CutyCapt with the following command: svn co https://cutycapt.svn.sourceforge.net/svnroot/cutycapt
|
86 |
+
4. Compile CutyCapt by doing: cd cutycapt/CutyCapt
|
87 |
+
5. qmake
|
88 |
+
6. make
|
89 |
+
7. cp CutyCapt /usr/local/bin/
|
90 |
+
8. Test it by running: xvfb-run --server-args="-screen 0, 1024x768x24" CutyCapt --url="http://markmaunder.com/" --out=test.png
|
91 |
+
9. If you get a file called test.png with something in it, it probably worked. Now test the script by accessing it as follows:
|
92 |
+
10. http://yoursite.com/path/to/timthumb.php?src=http://markmaunder.com/&webshot=1
|
93 |
+
|
94 |
+
Notes on performance:
|
95 |
+
The first time a webshot loads, it will take a few seconds.
|
96 |
+
From then on it uses the regular timthumb caching mechanism with the configurable options above
|
97 |
+
and loading will be very fast.
|
98 |
+
|
99 |
+
--ADVANCED USERS ONLY--
|
100 |
+
If you'd like a slight speedup (about 25%) and you know Linux, you can run the following command which will keep Xvfb running in the background.
|
101 |
+
nohup Xvfb :100 -ac -nolisten tcp -screen 0, 1024x768x24 > /dev/null 2>&1 &
|
102 |
+
Then set WEBSHOT_XVFB_RUNNING = true below. This will save your server having to fire off a new Xvfb server and shut it down every time a new shot is generated.
|
103 |
+
You will need to take responsibility for keeping Xvfb running in case it crashes. (It seems pretty stable)
|
104 |
+
You will also need to take responsibility for server security if you're running Xvfb as root.
|
105 |
+
|
106 |
+
|
107 |
+
*/
|
108 |
+
if(! defined('WEBSHOT_ENABLED') ) define ('WEBSHOT_ENABLED', false); //Beta feature. Adding webshot=1 to your query string will cause the script to return a browser screenshot rather than try to fetch an image.
|
109 |
+
if(! defined('WEBSHOT_CUTYCAPT') ) define ('WEBSHOT_CUTYCAPT', '/usr/local/bin/CutyCapt'); //The path to CutyCapt.
|
110 |
+
if(! defined('WEBSHOT_XVFB') ) define ('WEBSHOT_XVFB', '/usr/bin/xvfb-run'); //The path to the Xvfb server
|
111 |
+
if(! defined('WEBSHOT_SCREEN_X') ) define ('WEBSHOT_SCREEN_X', '1024'); //1024 works ok
|
112 |
+
if(! defined('WEBSHOT_SCREEN_Y') ) define ('WEBSHOT_SCREEN_Y', '768'); //768 works ok
|
113 |
+
if(! defined('WEBSHOT_COLOR_DEPTH') ) define ('WEBSHOT_COLOR_DEPTH', '24'); //I haven't tested anything besides 24
|
114 |
+
if(! defined('WEBSHOT_IMAGE_FORMAT') ) define ('WEBSHOT_IMAGE_FORMAT', 'png'); //png is about 2.5 times the size of jpg but is a LOT better quality
|
115 |
+
if(! defined('WEBSHOT_TIMEOUT') ) define ('WEBSHOT_TIMEOUT', '20'); //Seconds to wait for a webshot
|
116 |
+
if(! defined('WEBSHOT_USER_AGENT') ) define ('WEBSHOT_USER_AGENT', "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.2.18) Gecko/20110614 Firefox/3.6.18"); //I hate to do this, but a non-browser robot user agent might not show what humans see. So we pretend to be Firefox
|
117 |
+
if(! defined('WEBSHOT_JAVASCRIPT_ON') ) define ('WEBSHOT_JAVASCRIPT_ON', true); //Setting to false might give you a slight speedup and block ads. But it could cause other issues.
|
118 |
+
if(! defined('WEBSHOT_JAVA_ON') ) define ('WEBSHOT_JAVA_ON', false); //Have only tested this as fase
|
119 |
+
if(! defined('WEBSHOT_PLUGINS_ON') ) define ('WEBSHOT_PLUGINS_ON', true); //Enable flash and other plugins
|
120 |
+
if(! defined('WEBSHOT_PROXY') ) define ('WEBSHOT_PROXY', ''); //In case you're behind a proxy server.
|
121 |
+
if(! defined('WEBSHOT_XVFB_RUNNING') ) define ('WEBSHOT_XVFB_RUNNING', false); //ADVANCED: Enable this if you've got Xvfb running in the background.
|
122 |
+
|
123 |
+
|
124 |
+
// If ALLOW_EXTERNAL is true and ALLOW_ALL_EXTERNAL_SITES is false, then external images will only be fetched from these domains and their subdomains.
|
125 |
+
if(! isset($ALLOWED_SITES)){
|
126 |
+
$ALLOWED_SITES = array (
|
127 |
+
'flickr.com',
|
128 |
+
'staticflickr.com',
|
129 |
+
'picasa.com',
|
130 |
+
'img.youtube.com',
|
131 |
+
'upload.wikimedia.org',
|
132 |
+
'photobucket.com',
|
133 |
+
'imgur.com',
|
134 |
+
'imageshack.us',
|
135 |
+
'tinypic.com',
|
136 |
+
);
|
137 |
+
}
|
138 |
+
// -------------------------------------------------------------
|
139 |
+
// -------------- STOP EDITING CONFIGURATION HERE --------------
|
140 |
+
// -------------------------------------------------------------
|
141 |
+
|
142 |
+
timthumb::start();
|
143 |
+
|
144 |
+
class timthumb {
|
145 |
+
protected $src = "";
|
146 |
+
protected $is404 = false;
|
147 |
+
protected $docRoot = "";
|
148 |
+
protected $lastURLError = false;
|
149 |
+
protected $localImage = "";
|
150 |
+
protected $localImageMTime = 0;
|
151 |
+
protected $url = false;
|
152 |
+
protected $myHost = "";
|
153 |
+
protected $isURL = false;
|
154 |
+
protected $cachefile = '';
|
155 |
+
protected $errors = array();
|
156 |
+
protected $toDeletes = array();
|
157 |
+
protected $cacheDirectory = '';
|
158 |
+
protected $startTime = 0;
|
159 |
+
protected $lastBenchTime = 0;
|
160 |
+
protected $cropTop = false;
|
161 |
+
protected $salt = "";
|
162 |
+
protected $fileCacheVersion = 1; //Generally if timthumb.php is modifed (upgraded) then the salt changes and all cache files are recreated. This is a backup mechanism to force regen.
|
163 |
+
protected $filePrependSecurityBlock = "<?php die('Execution denied!'); //"; //Designed to have three letter mime type, space, question mark and greater than symbol appended. 6 bytes total.
|
164 |
+
protected static $curlDataWritten = 0;
|
165 |
+
protected static $curlFH = false;
|
166 |
+
public static function start(){
|
167 |
+
$tim = new timthumb();
|
168 |
+
$tim->handleErrors();
|
169 |
+
$tim->securityChecks();
|
170 |
+
if($tim->tryBrowserCache()){
|
171 |
+
exit(0);
|
172 |
+
}
|
173 |
+
$tim->handleErrors();
|
174 |
+
if(FILE_CACHE_ENABLED && $tim->tryServerCache()){
|
175 |
+
exit(0);
|
176 |
+
}
|
177 |
+
$tim->handleErrors();
|
178 |
+
$tim->run();
|
179 |
+
$tim->handleErrors();
|
180 |
+
exit(0);
|
181 |
+
}
|
182 |
+
public function __construct(){
|
183 |
+
global $ALLOWED_SITES;
|
184 |
+
$this->startTime = microtime(true);
|
185 |
+
date_default_timezone_set('UTC');
|
186 |
+
$this->debug(1, "Starting new request from " . $this->getIP() . " to " . $_SERVER['REQUEST_URI']);
|
187 |
+
$this->calcDocRoot();
|
188 |
+
//On windows systems I'm assuming fileinode returns an empty string or a number that doesn't change. Check this.
|
189 |
+
$this->salt = @filemtime(__FILE__) . '-' . @fileinode(__FILE__);
|
190 |
+
$this->debug(3, "Salt is: " . $this->salt);
|
191 |
+
if(FILE_CACHE_DIRECTORY){
|
192 |
+
if(! is_dir(FILE_CACHE_DIRECTORY)){
|
193 |
+
@mkdir(FILE_CACHE_DIRECTORY);
|
194 |
+
if(! is_dir(FILE_CACHE_DIRECTORY)){
|
195 |
+
$this->error("Could not create the file cache directory.");
|
196 |
+
return false;
|
197 |
+
}
|
198 |
+
}
|
199 |
+
$this->cacheDirectory = FILE_CACHE_DIRECTORY;
|
200 |
+
if (!touch($this->cacheDirectory . '/index.html')) {
|
201 |
+
$this->error("Could not create the index.html file - to fix this create an empty file named index.html file in the cache directory.");
|
202 |
+
}
|
203 |
+
} else {
|
204 |
+
$this->cacheDirectory = sys_get_temp_dir();
|
205 |
+
}
|
206 |
+
//Clean the cache before we do anything because we don't want the first visitor after FILE_CACHE_TIME_BETWEEN_CLEANS expires to get a stale image.
|
207 |
+
$this->cleanCache();
|
208 |
+
|
209 |
+
$this->myHost = preg_replace('/^www\./i', '', $_SERVER['HTTP_HOST']);
|
210 |
+
$this->src = $this->param('src');
|
211 |
+
$this->url = parse_url($this->src);
|
212 |
+
$this->src = preg_replace('/https?:\/\/(?:www\.)?' . $this->myHost . '/i', '', $this->src);
|
213 |
+
|
214 |
+
if(strlen($this->src) <= 3){
|
215 |
+
$this->error("No image specified");
|
216 |
+
return false;
|
217 |
+
}
|
218 |
+
if(BLOCK_EXTERNAL_LEECHERS && array_key_exists('HTTP_REFERER', $_SERVER) && (! preg_match('/^https?:\/\/(?:www\.)?' . $this->myHost . '(?:$|\/)/i', $_SERVER['HTTP_REFERER']))){
|
219 |
+
// base64 encoded red image that says 'no hotlinkers'
|
220 |
+
// nothing to worry about! :)
|
221 |
+
$imgData = base64_decode("R0lGODlhUAAMAIAAAP8AAP///yH5BAAHAP8ALAAAAABQAAwAAAJpjI+py+0Po5y0OgAMjjv01YUZ\nOGplhWXfNa6JCLnWkXplrcBmW+spbwvaVr/cDyg7IoFC2KbYVC2NQ5MQ4ZNao9Ynzjl9ScNYpneb\nDULB3RP6JuPuaGfuuV4fumf8PuvqFyhYtjdoeFgAADs=");
|
222 |
+
header('Content-Type: image/gif');
|
223 |
+
header('Content-Length: ' . sizeof($imgData));
|
224 |
+
header('Cache-Control: no-store, no-cache, must-revalidate, max-age=0');
|
225 |
+
header("Pragma: no-cache");
|
226 |
+
header('Expires: ' . gmdate ('D, d M Y H:i:s', time()));
|
227 |
+
echo $imgData;
|
228 |
+
return false;
|
229 |
+
exit(0);
|
230 |
+
}
|
231 |
+
if(preg_match('/^https?:\/\/[^\/]+/i', $this->src)){
|
232 |
+
$this->debug(2, "Is a request for an external URL: " . $this->src);
|
233 |
+
$this->isURL = true;
|
234 |
+
} else {
|
235 |
+
$this->debug(2, "Is a request for an internal file: " . $this->src);
|
236 |
+
}
|
237 |
+
if($this->isURL && (! ALLOW_EXTERNAL)){
|
238 |
+
$this->error("You are not allowed to fetch images from an external website.");
|
239 |
+
return false;
|
240 |
+
}
|
241 |
+
if($this->isURL){
|
242 |
+
if(ALLOW_ALL_EXTERNAL_SITES){
|
243 |
+
$this->debug(2, "Fetching from all external sites is enabled.");
|
244 |
+
} else {
|
245 |
+
$this->debug(2, "Fetching only from selected external sites is enabled.");
|
246 |
+
$allowed = false;
|
247 |
+
foreach($ALLOWED_SITES as $site){
|
248 |
+
if ((strtolower(substr($this->url['host'],-strlen($site)-1)) === strtolower(".$site")) || (strtolower($this->url['host'])===strtolower($site))) {
|
249 |
+
$this->debug(3, "URL hostname {$this->url['host']} matches $site so allowing.");
|
250 |
+
$allowed = true;
|
251 |
+
}
|
252 |
+
}
|
253 |
+
if(! $allowed){
|
254 |
+
return $this->error("You may not fetch images from that site. To enable this site in timthumb, you can either add it to \$ALLOWED_SITES and set ALLOW_EXTERNAL=true. Or you can set ALLOW_ALL_EXTERNAL_SITES=true, depending on your security needs.");
|
255 |
+
}
|
256 |
+
}
|
257 |
+
}
|
258 |
+
|
259 |
+
$cachePrefix = ($this->isURL ? '_ext_' : '_int_');
|
260 |
+
if($this->isURL){
|
261 |
+
$arr = explode('&', $_SERVER ['QUERY_STRING']);
|
262 |
+
asort($arr);
|
263 |
+
$this->cachefile = $this->cacheDirectory . '/' . FILE_CACHE_PREFIX . $cachePrefix . md5($this->salt . implode('', $arr) . $this->fileCacheVersion) . FILE_CACHE_SUFFIX;
|
264 |
+
} else {
|
265 |
+
$this->localImage = $this->getLocalImagePath($this->src);
|
266 |
+
if(! $this->localImage){
|
267 |
+
$this->debug(1, "Could not find the local image: {$this->localImage}");
|
268 |
+
$this->error("Could not find the internal image you specified.");
|
269 |
+
$this->set404();
|
270 |
+
return false;
|
271 |
+
}
|
272 |
+
$this->debug(1, "Local image path is {$this->localImage}");
|
273 |
+
$this->localImageMTime = @filemtime($this->localImage);
|
274 |
+
//We include the mtime of the local file in case in changes on disk.
|
275 |
+
$this->cachefile = $this->cacheDirectory . '/' . FILE_CACHE_PREFIX . $cachePrefix . md5($this->salt . $this->localImageMTime . $_SERVER ['QUERY_STRING'] . $this->fileCacheVersion) . FILE_CACHE_SUFFIX;
|
276 |
+
}
|
277 |
+
$this->debug(2, "Cache file is: " . $this->cachefile);
|
278 |
+
|
279 |
+
return true;
|
280 |
+
}
|
281 |
+
public function __destruct(){
|
282 |
+
foreach($this->toDeletes as $del){
|
283 |
+
$this->debug(2, "Deleting temp file $del");
|
284 |
+
@unlink($del);
|
285 |
+
}
|
286 |
+
}
|
287 |
+
public function run(){
|
288 |
+
if($this->isURL){
|
289 |
+
if(! ALLOW_EXTERNAL){
|
290 |
+
$this->debug(1, "Got a request for an external image but ALLOW_EXTERNAL is disabled so returning error msg.");
|
291 |
+
$this->error("You are not allowed to fetch images from an external website.");
|
292 |
+
return false;
|
293 |
+
}
|
294 |
+
$this->debug(3, "Got request for external image. Starting serveExternalImage.");
|
295 |
+
if($this->param('webshot')){
|
296 |
+
if(WEBSHOT_ENABLED){
|
297 |
+
$this->debug(3, "webshot param is set, so we're going to take a webshot.");
|
298 |
+
$this->serveWebshot();
|
299 |
+
} else {
|
300 |
+
$this->error("You added the webshot parameter but webshots are disabled on this server. You need to set WEBSHOT_ENABLED == true to enable webshots.");
|
301 |
+
}
|
302 |
+
} else {
|
303 |
+
$this->debug(3, "webshot is NOT set so we're going to try to fetch a regular image.");
|
304 |
+
$this->serveExternalImage();
|
305 |
+
|
306 |
+
}
|
307 |
+
} else {
|
308 |
+
$this->debug(3, "Got request for internal image. Starting serveInternalImage()");
|
309 |
+
$this->serveInternalImage();
|
310 |
+
}
|
311 |
+
return true;
|
312 |
+
}
|
313 |
+
protected function handleErrors(){
|
314 |
+
if($this->haveErrors()){
|
315 |
+
if(NOT_FOUND_IMAGE && $this->is404()){
|
316 |
+
if($this->serveImg(NOT_FOUND_IMAGE)){
|
317 |
+
exit(0);
|
318 |
+
} else {
|
319 |
+
$this->error("Additionally, the 404 image that is configured could not be found or there was an error serving it.");
|
320 |
+
}
|
321 |
+
}
|
322 |
+
if(ERROR_IMAGE){
|
323 |
+
if($this->serveImg(ERROR_IMAGE)){
|
324 |
+
exit(0);
|
325 |
+
} else {
|
326 |
+
$this->error("Additionally, the error image that is configured could not be found or there was an error serving it.");
|
327 |
+
}
|
328 |
+
}
|
329 |
+
$this->serveErrors();
|
330 |
+
exit(0);
|
331 |
+
}
|
332 |
+
return false;
|
333 |
+
}
|
334 |
+
protected function tryBrowserCache(){
|
335 |
+
if(BROWSER_CACHE_DISABLE){ $this->debug(3, "Browser caching is disabled"); return false; }
|
336 |
+
if(!empty($_SERVER['HTTP_IF_MODIFIED_SINCE']) ){
|
337 |
+
$this->debug(3, "Got a conditional get");
|
338 |
+
$mtime = false;
|
339 |
+
//We've already checked if the real file exists in the constructor
|
340 |
+
if(! is_file($this->cachefile)){
|
341 |
+
//If we don't have something cached, regenerate the cached image.
|
342 |
+
return false;
|
343 |
+
}
|
344 |
+
if($this->localImageMTime){
|
345 |
+
$mtime = $this->localImageMTime;
|
346 |
+
$this->debug(3, "Local real file's modification time is $mtime");
|
347 |
+
} else if(is_file($this->cachefile)){ //If it's not a local request then use the mtime of the cached file to determine the 304
|
348 |
+
$mtime = @filemtime($this->cachefile);
|
349 |
+
$this->debug(3, "Cached file's modification time is $mtime");
|
350 |
+
}
|
351 |
+
if(! $mtime){ return false; }
|
352 |
+
|
353 |
+
$iftime = strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE']);
|
354 |
+
$this->debug(3, "The conditional get's if-modified-since unixtime is $iftime");
|
355 |
+
if($iftime < 1){
|
356 |
+
$this->debug(3, "Got an invalid conditional get modified since time. Returning false.");
|
357 |
+
return false;
|
358 |
+
}
|
359 |
+
if($iftime < $mtime){ //Real file or cache file has been modified since last request, so force refetch.
|
360 |
+
$this->debug(3, "File has been modified since last fetch.");
|
361 |
+
return false;
|
362 |
+
} else { //Otherwise serve a 304
|
363 |
+
$this->debug(3, "File has not been modified since last get, so serving a 304.");
|
364 |
+
header ($_SERVER['SERVER_PROTOCOL'] . ' 304 Not Modified');
|
365 |
+
$this->debug(1, "Returning 304 not modified");
|
366 |
+
return true;
|
367 |
+
}
|
368 |
+
}
|
369 |
+
return false;
|
370 |
+
}
|
371 |
+
protected function tryServerCache(){
|
372 |
+
$this->debug(3, "Trying server cache");
|
373 |
+
if(file_exists($this->cachefile)){
|
374 |
+
$this->debug(3, "Cachefile {$this->cachefile} exists");
|
375 |
+
if($this->isURL){
|
376 |
+
$this->debug(3, "This is an external request, so checking if the cachefile is empty which means the request failed previously.");
|
377 |
+
if(filesize($this->cachefile) < 1){
|
378 |
+
$this->debug(3, "Found an empty cachefile indicating a failed earlier request. Checking how old it is.");
|
379 |
+
//Fetching error occured previously
|
380 |
+
if(time() - @filemtime($this->cachefile) > WAIT_BETWEEN_FETCH_ERRORS){
|
381 |
+
$this->debug(3, "File is older than " . WAIT_BETWEEN_FETCH_ERRORS . " seconds. Deleting and returning false so app can try and load file.");
|
382 |
+
@unlink($this->cachefile);
|
383 |
+
return false; //to indicate we didn't serve from cache and app should try and load
|
384 |
+
} else {
|
385 |
+
$this->debug(3, "Empty cachefile is still fresh so returning message saying we had an error fetching this image from remote host.");
|
386 |
+
$this->set404();
|
387 |
+
$this->error("An error occured fetching image.");
|
388 |
+
return false;
|
389 |
+
}
|
390 |
+
}
|
391 |
+
} else {
|
392 |
+
$this->debug(3, "Trying to serve cachefile {$this->cachefile}");
|
393 |
+
}
|
394 |
+
if($this->serveCacheFile()){
|
395 |
+
$this->debug(3, "Succesfully served cachefile {$this->cachefile}");
|
396 |
+
return true;
|
397 |
+
} else {
|
398 |
+
$this->debug(3, "Failed to serve cachefile {$this->cachefile} - Deleting it from cache.");
|
399 |
+
//Image serving failed. We can't retry at this point, but lets remove it from cache so the next request recreates it
|
400 |
+
@unlink($this->cachefile);
|
401 |
+
return true;
|
402 |
+
}
|
403 |
+
}
|
404 |
+
}
|
405 |
+
protected function error($err){
|
406 |
+
$this->debug(3, "Adding error message: $err");
|
407 |
+
$this->errors[] = $err;
|
408 |
+
return false;
|
409 |
+
|
410 |
+
}
|
411 |
+
protected function haveErrors(){
|
412 |
+
if(sizeof($this->errors) > 0){
|
413 |
+
return true;
|
414 |
+
}
|
415 |
+
return false;
|
416 |
+
}
|
417 |
+
protected function serveErrors(){
|
418 |
+
header ($_SERVER['SERVER_PROTOCOL'] . ' 400 Bad Request');
|
419 |
+
$html = '<ul>';
|
420 |
+
foreach($this->errors as $err){
|
421 |
+
$html .= '<li>' . htmlentities($err) . '</li>';
|
422 |
+
}
|
423 |
+
$html .= '</ul>';
|
424 |
+
echo '<h1>A TimThumb error has occured</h1>The following error(s) occured:<br />' . $html . '<br />';
|
425 |
+
echo '<br />Query String : ' . htmlentities ($_SERVER['QUERY_STRING']);
|
426 |
+
echo '<br />TimThumb version : ' . VERSION . '</pre>';
|
427 |
+
}
|
428 |
+
protected function serveInternalImage(){
|
429 |
+
$this->debug(3, "Local image path is $this->localImage");
|
430 |
+
if(! $this->localImage){
|
431 |
+
$this->sanityFail("localImage not set after verifying it earlier in the code.");
|
432 |
+
return false;
|
433 |
+
}
|
434 |
+
$fileSize = filesize($this->localImage);
|
435 |
+
if($fileSize > MAX_FILE_SIZE){
|
436 |
+
$this->error("The file you specified is greater than the maximum allowed file size.");
|
437 |
+
return false;
|
438 |
+
}
|
439 |
+
if($fileSize <= 0){
|
440 |
+
$this->error("The file you specified is <= 0 bytes.");
|
441 |
+
return false;
|
442 |
+
}
|
443 |
+
$this->debug(3, "Calling processImageAndWriteToCache() for local image.");
|
444 |
+
if($this->processImageAndWriteToCache($this->localImage)){
|
445 |
+
$this->serveCacheFile();
|
446 |
+
return true;
|
447 |
+
} else {
|
448 |
+
return false;
|
449 |
+
}
|
450 |
+
}
|
451 |
+
protected function cleanCache(){
|
452 |
+
if (FILE_CACHE_TIME_BETWEEN_CLEANS < 0) {
|
453 |
+
return;
|
454 |
+
}
|
455 |
+
$this->debug(3, "cleanCache() called");
|
456 |
+
$lastCleanFile = $this->cacheDirectory . '/timthumb_cacheLastCleanTime.touch';
|
457 |
+
|
458 |
+
//If this is a new timthumb installation we need to create the file
|
459 |
+
if(! is_file($lastCleanFile)){
|
460 |
+
$this->debug(1, "File tracking last clean doesn't exist. Creating $lastCleanFile");
|
461 |
+
if (!touch($lastCleanFile)) {
|
462 |
+
$this->error("Could not create cache clean timestamp file.");
|
463 |
+
}
|
464 |
+
return;
|
465 |
+
}
|
466 |
+
if(@filemtime($lastCleanFile) < (time() - FILE_CACHE_TIME_BETWEEN_CLEANS) ){ //Cache was last cleaned more than 1 day ago
|
467 |
+
$this->debug(1, "Cache was last cleaned more than " . FILE_CACHE_TIME_BETWEEN_CLEANS . " seconds ago. Cleaning now.");
|
468 |
+
// Very slight race condition here, but worst case we'll have 2 or 3 servers cleaning the cache simultaneously once a day.
|
469 |
+
if (!touch($lastCleanFile)) {
|
470 |
+
$this->error("Could not create cache clean timestamp file.");
|
471 |
+
}
|
472 |
+
$files = glob($this->cacheDirectory . '/*' . FILE_CACHE_SUFFIX);
|
473 |
+
if ($files) {
|
474 |
+
$timeAgo = time() - FILE_CACHE_MAX_FILE_AGE;
|
475 |
+
foreach($files as $file){
|
476 |
+
if(@filemtime($file) < $timeAgo){
|
477 |
+
$this->debug(3, "Deleting cache file $file older than max age: " . FILE_CACHE_MAX_FILE_AGE . " seconds");
|
478 |
+
@unlink($file);
|
479 |
+
}
|
480 |
+
}
|
481 |
+
}
|
482 |
+
return true;
|
483 |
+
} else {
|
484 |
+
$this->debug(3, "Cache was cleaned less than " . FILE_CACHE_TIME_BETWEEN_CLEANS . " seconds ago so no cleaning needed.");
|
485 |
+
}
|
486 |
+
return false;
|
487 |
+
}
|
488 |
+
protected function processImageAndWriteToCache($localImage){
|
489 |
+
$sData = getimagesize($localImage);
|
490 |
+
$origType = $sData[2];
|
491 |
+
$mimeType = $sData['mime'];
|
492 |
+
|
493 |
+
$this->debug(3, "Mime type of image is $mimeType");
|
494 |
+
if(! preg_match('/^image\/(?:gif|jpg|jpeg|png)$/i', $mimeType)){
|
495 |
+
return $this->error("The image being resized is not a valid gif, jpg or png.");
|
496 |
+
}
|
497 |
+
|
498 |
+
if (!function_exists ('imagecreatetruecolor')) {
|
499 |
+
return $this->error('GD Library Error: imagecreatetruecolor does not exist - please contact your webhost and ask them to install the GD library');
|
500 |
+
}
|
501 |
+
|
502 |
+
if (function_exists ('imagefilter') && defined ('IMG_FILTER_NEGATE')) {
|
503 |
+
$imageFilters = array (
|
504 |
+
1 => array (IMG_FILTER_NEGATE, 0),
|
505 |
+
2 => array (IMG_FILTER_GRAYSCALE, 0),
|
506 |
+
3 => array (IMG_FILTER_BRIGHTNESS, 1),
|
507 |
+
4 => array (IMG_FILTER_CONTRAST, 1),
|
508 |
+
5 => array (IMG_FILTER_COLORIZE, 4),
|
509 |
+
6 => array (IMG_FILTER_EDGEDETECT, 0),
|
510 |
+
7 => array (IMG_FILTER_EMBOSS, 0),
|
511 |
+
8 => array (IMG_FILTER_GAUSSIAN_BLUR, 0),
|
512 |
+
9 => array (IMG_FILTER_SELECTIVE_BLUR, 0),
|
513 |
+
10 => array (IMG_FILTER_MEAN_REMOVAL, 0),
|
514 |
+
11 => array (IMG_FILTER_SMOOTH, 0),
|
515 |
+
);
|
516 |
+
}
|
517 |
+
|
518 |
+
// get standard input properties
|
519 |
+
$new_width = (int) abs ($this->param('w', 0));
|
520 |
+
$new_height = (int) abs ($this->param('h', 0));
|
521 |
+
$zoom_crop = (int) $this->param('zc', DEFAULT_ZC);
|
522 |
+
$quality = (int) abs ($this->param('q', DEFAULT_Q));
|
523 |
+
$align = $this->cropTop ? 't' : $this->param('a', 'c');
|
524 |
+
$filters = $this->param('f', DEFAULT_F);
|
525 |
+
$sharpen = (bool) $this->param('s', DEFAULT_S);
|
526 |
+
$canvas_color = $this->param('cc', DEFAULT_CC);
|
527 |
+
$canvas_trans = (bool) $this->param('ct', '1');
|
528 |
+
|
529 |
+
// set default width and height if neither are set already
|
530 |
+
if ($new_width == 0 && $new_height == 0) {
|
531 |
+
$new_width = 100;
|
532 |
+
$new_height = 100;
|
533 |
+
}
|
534 |
+
|
535 |
+
// ensure size limits can not be abused
|
536 |
+
$new_width = min ($new_width, MAX_WIDTH);
|
537 |
+
$new_height = min ($new_height, MAX_HEIGHT);
|
538 |
+
|
539 |
+
// set memory limit to be able to have enough space to resize larger images
|
540 |
+
$this->setMemoryLimit();
|
541 |
+
|
542 |
+
// open the existing image
|
543 |
+
$image = $this->openImage ($mimeType, $localImage);
|
544 |
+
if ($image === false) {
|
545 |
+
return $this->error('Unable to open image.');
|
546 |
+
}
|
547 |
+
|
548 |
+
// Get original width and height
|
549 |
+
$width = imagesx ($image);
|
550 |
+
$height = imagesy ($image);
|
551 |
+
$origin_x = 0;
|
552 |
+
$origin_y = 0;
|
553 |
+
|
554 |
+
// generate new w/h if not provided
|
555 |
+
if ($new_width && !$new_height) {
|
556 |
+
$new_height = floor ($height * ($new_width / $width));
|
557 |
+
} else if ($new_height && !$new_width) {
|
558 |
+
$new_width = floor ($width * ($new_height / $height));
|
559 |
+
}
|
560 |
+
|
561 |
+
// scale down and add borders
|
562 |
+
if ($zoom_crop == 3) {
|
563 |
+
|
564 |
+
$final_height = $height * ($new_width / $width);
|
565 |
+
|
566 |
+
if ($final_height > $new_height) {
|
567 |
+
$new_width = $width * ($new_height / $height);
|
568 |
+
} else {
|
569 |
+
$new_height = $final_height;
|
570 |
+
}
|
571 |
+
|
572 |
+
}
|
573 |
+
|
574 |
+
// create a new true color image
|
575 |
+
$canvas = imagecreatetruecolor ($new_width, $new_height);
|
576 |
+
imagealphablending ($canvas, false);
|
577 |
+
|
578 |
+
if (strlen($canvas_color) == 3) { //if is 3-char notation, edit string into 6-char notation
|
579 |
+
$canvas_color = str_repeat(substr($canvas_color, 0, 1), 2) . str_repeat(substr($canvas_color, 1, 1), 2) . str_repeat(substr($canvas_color, 2, 1), 2);
|
580 |
+
} else if (strlen($canvas_color) != 6) {
|
581 |
+
$canvas_color = DEFAULT_CC; // on error return default canvas color
|
582 |
+
}
|
583 |
+
|
584 |
+
$canvas_color_R = hexdec (substr ($canvas_color, 0, 2));
|
585 |
+
$canvas_color_G = hexdec (substr ($canvas_color, 2, 2));
|
586 |
+
$canvas_color_B = hexdec (substr ($canvas_color, 4, 2));
|
587 |
+
|
588 |
+
// Create a new transparent color for image
|
589 |
+
// If is a png and PNG_IS_TRANSPARENT is false then remove the alpha transparency
|
590 |
+
// (and if is set a canvas color show it in the background)
|
591 |
+
if(preg_match('/^image\/png$/i', $mimeType) && !PNG_IS_TRANSPARENT && $canvas_trans){
|
592 |
+
$color = imagecolorallocatealpha ($canvas, $canvas_color_R, $canvas_color_G, $canvas_color_B, 127);
|
593 |
+
}else{
|
594 |
+
$color = imagecolorallocatealpha ($canvas, $canvas_color_R, $canvas_color_G, $canvas_color_B, 0);
|
595 |
+
}
|
596 |
+
|
597 |
+
|
598 |
+
// Completely fill the background of the new image with allocated color.
|
599 |
+
imagefill ($canvas, 0, 0, $color);
|
600 |
+
|
601 |
+
// scale down and add borders
|
602 |
+
if ($zoom_crop == 2) {
|
603 |
+
|
604 |
+
$final_height = $height * ($new_width / $width);
|
605 |
+
|
606 |
+
if ($final_height > $new_height) {
|
607 |
+
|
608 |
+
$origin_x = $new_width / 2;
|
609 |
+
$new_width = $width * ($new_height / $height);
|
610 |
+
$origin_x = round ($origin_x - ($new_width / 2));
|
611 |
+
|
612 |
+
} else {
|
613 |
+
|
614 |
+
$origin_y = $new_height / 2;
|
615 |
+
$new_height = $final_height;
|
616 |
+
$origin_y = round ($origin_y - ($new_height / 2));
|
617 |
+
|
618 |
+
}
|
619 |
+
|
620 |
+
}
|
621 |
+
|
622 |
+
// Restore transparency blending
|
623 |
+
imagesavealpha ($canvas, true);
|
624 |
+
|
625 |
+
if ($zoom_crop > 0) {
|
626 |
+
|
627 |
+
$src_x = $src_y = 0;
|
628 |
+
$src_w = $width;
|
629 |
+
$src_h = $height;
|
630 |
+
|
631 |
+
$cmp_x = $width / $new_width;
|
632 |
+
$cmp_y = $height / $new_height;
|
633 |
+
|
634 |
+
// calculate x or y coordinate and width or height of source
|
635 |
+
if ($cmp_x > $cmp_y) {
|
636 |
+
|
637 |
+
$src_w = round ($width / $cmp_x * $cmp_y);
|
638 |
+
$src_x = round (($width - ($width / $cmp_x * $cmp_y)) / 2);
|
639 |
+
|
640 |
+
} else if ($cmp_y > $cmp_x) {
|
641 |
+
|
642 |
+
$src_h = round ($height / $cmp_y * $cmp_x);
|
643 |
+
$src_y = round (($height - ($height / $cmp_y * $cmp_x)) / 2);
|
644 |
+
|
645 |
+
}
|
646 |
+
|
647 |
+
// positional cropping!
|
648 |
+
if ($align) {
|
649 |
+
if (strpos ($align, 't') !== false) {
|
650 |
+
$src_y = 0;
|
651 |
+
}
|
652 |
+
if (strpos ($align, 'b') !== false) {
|
653 |
+
$src_y = $height - $src_h;
|
654 |
+
}
|
655 |
+
if (strpos ($align, 'l') !== false) {
|
656 |
+
$src_x = 0;
|
657 |
+
}
|
658 |
+
if (strpos ($align, 'r') !== false) {
|
659 |
+
$src_x = $width - $src_w;
|
660 |
+
}
|
661 |
+
}
|
662 |
+
|
663 |
+
imagecopyresampled ($canvas, $image, $origin_x, $origin_y, $src_x, $src_y, $new_width, $new_height, $src_w, $src_h);
|
664 |
+
|
665 |
+
} else {
|
666 |
+
|
667 |
+
// copy and resize part of an image with resampling
|
668 |
+
imagecopyresampled ($canvas, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
|
669 |
+
|
670 |
+
}
|
671 |
+
|
672 |
+
if ($filters != '' && function_exists ('imagefilter') && defined ('IMG_FILTER_NEGATE')) {
|
673 |
+
// apply filters to image
|
674 |
+
$filterList = explode ('|', $filters);
|
675 |
+
foreach ($filterList as $fl) {
|
676 |
+
|
677 |
+
$filterSettings = explode (',', $fl);
|
678 |
+
if (isset ($imageFilters[$filterSettings[0]])) {
|
679 |
+
|
680 |
+
for ($i = 0; $i < 4; $i ++) {
|
681 |
+
if (!isset ($filterSettings[$i])) {
|
682 |
+
$filterSettings[$i] = null;
|
683 |
+
} else {
|
684 |
+
$filterSettings[$i] = (int) $filterSettings[$i];
|
685 |
+
}
|
686 |
+
}
|
687 |
+
|
688 |
+
switch ($imageFilters[$filterSettings[0]][1]) {
|
689 |
+
|
690 |
+
case 1:
|
691 |
+
|
692 |
+
imagefilter ($canvas, $imageFilters[$filterSettings[0]][0], $filterSettings[1]);
|
693 |
+
break;
|
694 |
+
|
695 |
+
case 2:
|
696 |
+
|
697 |
+
imagefilter ($canvas, $imageFilters[$filterSettings[0]][0], $filterSettings[1], $filterSettings[2]);
|
698 |
+
break;
|
699 |
+
|
700 |
+
case 3:
|
701 |
+
|
702 |
+
imagefilter ($canvas, $imageFilters[$filterSettings[0]][0], $filterSettings[1], $filterSettings[2], $filterSettings[3]);
|
703 |
+
break;
|
704 |
+
|
705 |
+
case 4:
|
706 |
+
|
707 |
+
imagefilter ($canvas, $imageFilters[$filterSettings[0]][0], $filterSettings[1], $filterSettings[2], $filterSettings[3], $filterSettings[4]);
|
708 |
+
break;
|
709 |
+
|
710 |
+
default:
|
711 |
+
|
712 |
+
imagefilter ($canvas, $imageFilters[$filterSettings[0]][0]);
|
713 |
+
break;
|
714 |
+
|
715 |
+
}
|
716 |
+
}
|
717 |
+
}
|
718 |
+
}
|
719 |
+
|
720 |
+
// sharpen image
|
721 |
+
if ($sharpen && function_exists ('imageconvolution')) {
|
722 |
+
|
723 |
+
$sharpenMatrix = array (
|
724 |
+
array (-1,-1,-1),
|
725 |
+
array (-1,16,-1),
|
726 |
+
array (-1,-1,-1),
|
727 |
+
);
|
728 |
+
|
729 |
+
$divisor = 8;
|
730 |
+
$offset = 0;
|
731 |
+
|
732 |
+
imageconvolution ($canvas, $sharpenMatrix, $divisor, $offset);
|
733 |
+
|
734 |
+
}
|
735 |
+
//Straight from Wordpress core code. Reduces filesize by up to 70% for PNG's
|
736 |
+
if ( (IMAGETYPE_PNG == $origType || IMAGETYPE_GIF == $origType) && function_exists('imageistruecolor') && !imageistruecolor( $image ) && imagecolortransparent( $image ) > 0 ){
|
737 |
+
imagetruecolortopalette( $canvas, false, imagecolorstotal( $image ) );
|
738 |
+
}
|
739 |
+
|
740 |
+
$imgType = "";
|
741 |
+
$tempfile = tempnam($this->cacheDirectory, 'timthumb_tmpimg_');
|
742 |
+
if(preg_match('/^image\/(?:jpg|jpeg)$/i', $mimeType)){
|
743 |
+
$imgType = 'jpg';
|
744 |
+
imagejpeg($canvas, $tempfile, $quality);
|
745 |
+
} else if(preg_match('/^image\/png$/i', $mimeType)){
|
746 |
+
$imgType = 'png';
|
747 |
+
imagepng($canvas, $tempfile, floor($quality * 0.09));
|
748 |
+
} else if(preg_match('/^image\/gif$/i', $mimeType)){
|
749 |
+
$imgType = 'gif';
|
750 |
+
imagegif($canvas, $tempfile);
|
751 |
+
} else {
|
752 |
+
return $this->sanityFail("Could not match mime type after verifying it previously.");
|
753 |
+
}
|
754 |
+
|
755 |
+
if($imgType == 'png' && OPTIPNG_ENABLED && OPTIPNG_PATH && @is_file(OPTIPNG_PATH)){
|
756 |
+
$exec = OPTIPNG_PATH;
|
757 |
+
$this->debug(3, "optipng'ing $tempfile");
|
758 |
+
$presize = filesize($tempfile);
|
759 |
+
$out = `$exec -o1 $tempfile`; //you can use up to -o7 but it really slows things down
|
760 |
+
clearstatcache();
|
761 |
+
$aftersize = filesize($tempfile);
|
762 |
+
$sizeDrop = $presize - $aftersize;
|
763 |
+
if($sizeDrop > 0){
|
764 |
+
$this->debug(1, "optipng reduced size by $sizeDrop");
|
765 |
+
} else if($sizeDrop < 0){
|
766 |
+
$this->debug(1, "optipng increased size! Difference was: $sizeDrop");
|
767 |
+
} else {
|
768 |
+
$this->debug(1, "optipng did not change image size.");
|
769 |
+
}
|
770 |
+
} else if($imgType == 'png' && PNGCRUSH_ENABLED && PNGCRUSH_PATH && @is_file(PNGCRUSH_PATH)){
|
771 |
+
$exec = PNGCRUSH_PATH;
|
772 |
+
$tempfile2 = tempnam($this->cacheDirectory, 'timthumb_tmpimg_');
|
773 |
+
$this->debug(3, "pngcrush'ing $tempfile to $tempfile2");
|
774 |
+
$out = `$exec $tempfile $tempfile2`;
|
775 |
+
$todel = "";
|
776 |
+
if(is_file($tempfile2)){
|
777 |
+
$sizeDrop = filesize($tempfile) - filesize($tempfile2);
|
778 |
+
if($sizeDrop > 0){
|
779 |
+
$this->debug(1, "pngcrush was succesful and gave a $sizeDrop byte size reduction");
|
780 |
+
$todel = $tempfile;
|
781 |
+
$tempfile = $tempfile2;
|
782 |
+
} else {
|
783 |
+
$this->debug(1, "pngcrush did not reduce file size. Difference was $sizeDrop bytes.");
|
784 |
+
$todel = $tempfile2;
|
785 |
+
}
|
786 |
+
} else {
|
787 |
+
$this->debug(3, "pngcrush failed with output: $out");
|
788 |
+
$todel = $tempfile2;
|
789 |
+
}
|
790 |
+
@unlink($todel);
|
791 |
+
}
|
792 |
+
|
793 |
+
$this->debug(3, "Rewriting image with security header.");
|
794 |
+
$tempfile4 = tempnam($this->cacheDirectory, 'timthumb_tmpimg_');
|
795 |
+
$context = stream_context_create ();
|
796 |
+
$fp = fopen($tempfile,'r',0,$context);
|
797 |
+
file_put_contents($tempfile4, $this->filePrependSecurityBlock . $imgType . ' ?' . '>'); //6 extra bytes, first 3 being image type
|
798 |
+
file_put_contents($tempfile4, $fp, FILE_APPEND);
|
799 |
+
fclose($fp);
|
800 |
+
@unlink($tempfile);
|
801 |
+
$this->debug(3, "Locking and replacing cache file.");
|
802 |
+
$lockFile = $this->cachefile . '.lock';
|
803 |
+
$fh = fopen($lockFile, 'w');
|
804 |
+
if(! $fh){
|
805 |
+
return $this->error("Could not open the lockfile for writing an image.");
|
806 |
+
}
|
807 |
+
if(flock($fh, LOCK_EX)){
|
808 |
+
@unlink($this->cachefile); //rename generally overwrites, but doing this in case of platform specific quirks. File might not exist yet.
|
809 |
+
rename($tempfile4, $this->cachefile);
|
810 |
+
flock($fh, LOCK_UN);
|
811 |
+
fclose($fh);
|
812 |
+
@unlink($lockFile);
|
813 |
+
} else {
|
814 |
+
fclose($fh);
|
815 |
+
@unlink($lockFile);
|
816 |
+
@unlink($tempfile4);
|
817 |
+
return $this->error("Could not get a lock for writing.");
|
818 |
+
}
|
819 |
+
$this->debug(3, "Done image replace with security header. Cleaning up and running cleanCache()");
|
820 |
+
imagedestroy($canvas);
|
821 |
+
imagedestroy($image);
|
822 |
+
return true;
|
823 |
+
}
|
824 |
+
protected function calcDocRoot(){
|
825 |
+
$docRoot = @$_SERVER['DOCUMENT_ROOT'];
|
826 |
+
if (defined('LOCAL_FILE_BASE_DIRECTORY')) {
|
827 |
+
$docRoot = LOCAL_FILE_BASE_DIRECTORY;
|
828 |
+
}
|
829 |
+
if(!isset($docRoot)){
|
830 |
+
$this->debug(3, "DOCUMENT_ROOT is not set. This is probably windows. Starting search 1.");
|
831 |
+
if(isset($_SERVER['SCRIPT_FILENAME'])){
|
832 |
+
$docRoot = str_replace( '\\', '/', substr($_SERVER['SCRIPT_FILENAME'], 0, 0-strlen($_SERVER['PHP_SELF'])));
|
833 |
+
$this->debug(3, "Generated docRoot using SCRIPT_FILENAME and PHP_SELF as: $docRoot");
|
834 |
+
}
|
835 |
+
}
|
836 |
+
if(!isset($docRoot)){
|
837 |
+
$this->debug(3, "DOCUMENT_ROOT still is not set. Starting search 2.");
|
838 |
+
if(isset($_SERVER['PATH_TRANSLATED'])){
|
839 |
+
$docRoot = str_replace( '\\', '/', substr(str_replace('\\\\', '\\', $_SERVER['PATH_TRANSLATED']), 0, 0-strlen($_SERVER['PHP_SELF'])));
|
840 |
+
$this->debug(3, "Generated docRoot using PATH_TRANSLATED and PHP_SELF as: $docRoot");
|
841 |
+
}
|
842 |
+
}
|
843 |
+
if($docRoot && $_SERVER['DOCUMENT_ROOT'] != '/'){ $docRoot = preg_replace('/\/$/', '', $docRoot); }
|
844 |
+
$this->debug(3, "Doc root is: " . $docRoot);
|
845 |
+
$this->docRoot = $docRoot;
|
846 |
+
|
847 |
+
}
|
848 |
+
protected function getLocalImagePath($src){
|
849 |
+
$src = ltrim($src, '/'); //strip off the leading '/'
|
850 |
+
if(! $this->docRoot){
|
851 |
+
$this->debug(3, "We have no document root set, so as a last resort, lets check if the image is in the current dir and serve that.");
|
852 |
+
//We don't support serving images outside the current dir if we don't have a doc root for security reasons.
|
853 |
+
$file = preg_replace('/^.*?([^\/\\\\]+)$/', '$1', $src); //strip off any path info and just leave the filename.
|
854 |
+
if(is_file($file)){
|
855 |
+
return $this->realpath($file);
|
856 |
+
}
|
857 |
+
return $this->error("Could not find your website document root and the file specified doesn't exist in timthumbs directory. We don't support serving files outside timthumb's directory without a document root for security reasons.");
|
858 |
+
} //Do not go past this point without docRoot set
|
859 |
+
|
860 |
+
//Try src under docRoot
|
861 |
+
if(file_exists ($this->docRoot . '/' . $src)) {
|
862 |
+
$this->debug(3, "Found file as " . $this->docRoot . '/' . $src);
|
863 |
+
$real = $this->realpath($this->docRoot . '/' . $src);
|
864 |
+
if(stripos($real, $this->docRoot) === 0){
|
865 |
+
return $real;
|
866 |
+
} else {
|
867 |
+
$this->debug(1, "Security block: The file specified occurs outside the document root.");
|
868 |
+
//allow search to continue
|
869 |
+
}
|
870 |
+
}
|
871 |
+
//Check absolute paths and then verify the real path is under doc root
|
872 |
+
$absolute = $this->realpath('/' . $src);
|
873 |
+
if($absolute && file_exists($absolute)){ //realpath does file_exists check, so can probably skip the exists check here
|
874 |
+
$this->debug(3, "Found absolute path: $absolute");
|
875 |
+
if(! $this->docRoot){ $this->sanityFail("docRoot not set when checking absolute path."); }
|
876 |
+
if(stripos($absolute, $this->docRoot) === 0){
|
877 |
+
return $absolute;
|
878 |
+
} else {
|
879 |
+
$this->debug(1, "Security block: The file specified occurs outside the document root.");
|
880 |
+
//and continue search
|
881 |
+
}
|
882 |
+
}
|
883 |
+
|
884 |
+
$base = $this->docRoot;
|
885 |
+
|
886 |
+
// account for Windows directory structure
|
887 |
+
if (strstr($_SERVER['SCRIPT_FILENAME'],':')) {
|
888 |
+
$sub_directories = explode('\\', str_replace($this->docRoot, '', $_SERVER['SCRIPT_FILENAME']));
|
889 |
+
} else {
|
890 |
+
$sub_directories = explode('/', str_replace($this->docRoot, '', $_SERVER['SCRIPT_FILENAME']));
|
891 |
+
}
|
892 |
+
|
893 |
+
foreach ($sub_directories as $sub){
|
894 |
+
$base .= $sub . '/';
|
895 |
+
$this->debug(3, "Trying file as: " . $base . $src);
|
896 |
+
if(file_exists($base . $src)){
|
897 |
+
$this->debug(3, "Found file as: " . $base . $src);
|
898 |
+
$real = $this->realpath($base . $src);
|
899 |
+
if(stripos($real, $this->realpath($this->docRoot)) === 0){
|
900 |
+
return $real;
|
901 |
+
} else {
|
902 |
+
$this->debug(1, "Security block: The file specified occurs outside the document root.");
|
903 |
+
//And continue search
|
904 |
+
}
|
905 |
+
}
|
906 |
+
}
|
907 |
+
return false;
|
908 |
+
}
|
909 |
+
protected function realpath($path){
|
910 |
+
//try to remove any relative paths
|
911 |
+
$remove_relatives = '/\w+\/\.\.\//';
|
912 |
+
while(preg_match($remove_relatives,$path)){
|
913 |
+
$path = preg_replace($remove_relatives, '', $path);
|
914 |
+
}
|
915 |
+
//if any remain use PHP realpath to strip them out, otherwise return $path
|
916 |
+
//if using realpath, any symlinks will also be resolved
|
917 |
+
return preg_match('#^\.\./|/\.\./#', $path) ? realpath($path) : $path;
|
918 |
+
}
|
919 |
+
protected function toDelete($name){
|
920 |
+
$this->debug(3, "Scheduling file $name to delete on destruct.");
|
921 |
+
$this->toDeletes[] = $name;
|
922 |
+
}
|
923 |
+
protected function serveWebshot(){
|
924 |
+
$this->debug(3, "Starting serveWebshot");
|
925 |
+
$instr = "Please follow the instructions at http://code.google.com/p/timthumb/ to set your server up for taking website screenshots.";
|
926 |
+
if(! is_file(WEBSHOT_CUTYCAPT)){
|
927 |
+
return $this->error("CutyCapt is not installed. $instr");
|
928 |
+
}
|
929 |
+
if(! is_file(WEBSHOT_XVFB)){
|
930 |
+
return $this->Error("Xvfb is not installed. $instr");
|
931 |
+
}
|
932 |
+
$cuty = WEBSHOT_CUTYCAPT;
|
933 |
+
$xv = WEBSHOT_XVFB;
|
934 |
+
$screenX = WEBSHOT_SCREEN_X;
|
935 |
+
$screenY = WEBSHOT_SCREEN_Y;
|
936 |
+
$colDepth = WEBSHOT_COLOR_DEPTH;
|
937 |
+
$format = WEBSHOT_IMAGE_FORMAT;
|
938 |
+
$timeout = WEBSHOT_TIMEOUT * 1000;
|
939 |
+
$ua = WEBSHOT_USER_AGENT;
|
940 |
+
$jsOn = WEBSHOT_JAVASCRIPT_ON ? 'on' : 'off';
|
941 |
+
$javaOn = WEBSHOT_JAVA_ON ? 'on' : 'off';
|
942 |
+
$pluginsOn = WEBSHOT_PLUGINS_ON ? 'on' : 'off';
|
943 |
+
$proxy = WEBSHOT_PROXY ? ' --http-proxy=' . WEBSHOT_PROXY : '';
|
944 |
+
$tempfile = tempnam($this->cacheDirectory, 'timthumb_webshot');
|
945 |
+
$url = $this->src;
|
946 |
+
if(! preg_match('/^https?:\/\/[a-zA-Z0-9\.\-]+/i', $url)){
|
947 |
+
return $this->error("Invalid URL supplied.");
|
948 |
+
}
|
949 |
+
$url = preg_replace('/[^A-Za-z0-9\-\.\_\~:\/\?\#\[\]\@\!\$\&\'\(\)\*\+\,\;\=]+/', '', $url); //RFC 3986
|
950 |
+
//Very important we don't allow injection of shell commands here. URL is between quotes and we are only allowing through chars allowed by a the RFC
|
951 |
+
// which AFAIKT can't be used for shell injection.
|
952 |
+
if(WEBSHOT_XVFB_RUNNING){
|
953 |
+
putenv('DISPLAY=:100.0');
|
954 |
+
$command = "$cuty $proxy --max-wait=$timeout --user-agent=\"$ua\" --javascript=$jsOn --java=$javaOn --plugins=$pluginsOn --js-can-open-windows=off --url=\"$url\" --out-format=$format --out=$tempfile";
|
955 |
+
} else {
|
956 |
+
$command = "$xv --server-args=\"-screen 0, {$screenX}x{$screenY}x{$colDepth}\" $cuty $proxy --max-wait=$timeout --user-agent=\"$ua\" --javascript=$jsOn --java=$javaOn --plugins=$pluginsOn --js-can-open-windows=off --url=\"$url\" --out-format=$format --out=$tempfile";
|
957 |
+
}
|
958 |
+
$this->debug(3, "Executing command: $command");
|
959 |
+
$out = `$command`;
|
960 |
+
$this->debug(3, "Received output: $out");
|
961 |
+
if(! is_file($tempfile)){
|
962 |
+
$this->set404();
|
963 |
+
return $this->error("The command to create a thumbnail failed.");
|
964 |
+
}
|
965 |
+
$this->cropTop = true;
|
966 |
+
if($this->processImageAndWriteToCache($tempfile)){
|
967 |
+
$this->debug(3, "Image processed succesfully. Serving from cache");
|
968 |
+
return $this->serveCacheFile();
|
969 |
+
} else {
|
970 |
+
return false;
|
971 |
+
}
|
972 |
+
}
|
973 |
+
protected function serveExternalImage(){
|
974 |
+
if(! preg_match('/^https?:\/\/[a-zA-Z0-9\-\.]+/i', $this->src)){
|
975 |
+
$this->error("Invalid URL supplied.");
|
976 |
+
return false;
|
977 |
+
}
|
978 |
+
$tempfile = tempnam($this->cacheDirectory, 'timthumb');
|
979 |
+
$this->debug(3, "Fetching external image into temporary file $tempfile");
|
980 |
+
$this->toDelete($tempfile);
|
981 |
+
#fetch file here
|
982 |
+
if(! $this->getURL($this->src, $tempfile)){
|
983 |
+
@unlink($this->cachefile);
|
984 |
+
touch($this->cachefile);
|
985 |
+
$this->debug(3, "Error fetching URL: " . $this->lastURLError);
|
986 |
+
$this->error("Error reading the URL you specified from remote host." . $this->lastURLError);
|
987 |
+
return false;
|
988 |
+
}
|
989 |
+
|
990 |
+
$mimeType = $this->getMimeType($tempfile);
|
991 |
+
if(! preg_match("/^image\/(?:jpg|jpeg|gif|png)$/i", $mimeType)){
|
992 |
+
$this->debug(3, "Remote file has invalid mime type: $mimeType");
|
993 |
+
@unlink($this->cachefile);
|
994 |
+
touch($this->cachefile);
|
995 |
+
$this->error("The remote file is not a valid image.");
|
996 |
+
return false;
|
997 |
+
}
|
998 |
+
if($this->processImageAndWriteToCache($tempfile)){
|
999 |
+
$this->debug(3, "Image processed succesfully. Serving from cache");
|
1000 |
+
return $this->serveCacheFile();
|
1001 |
+
} else {
|
1002 |
+
return false;
|
1003 |
+
}
|
1004 |
+
}
|
1005 |
+
public static function curlWrite($h, $d){
|
1006 |
+
fwrite(self::$curlFH, $d);
|
1007 |
+
self::$curlDataWritten += strlen($d);
|
1008 |
+
if(self::$curlDataWritten > MAX_FILE_SIZE){
|
1009 |
+
return 0;
|
1010 |
+
} else {
|
1011 |
+
return strlen($d);
|
1012 |
+
}
|
1013 |
+
}
|
1014 |
+
protected function serveCacheFile(){
|
1015 |
+
$this->debug(3, "Serving {$this->cachefile}");
|
1016 |
+
if(! is_file($this->cachefile)){
|
1017 |
+
$this->error("serveCacheFile called in timthumb but we couldn't find the cached file.");
|
1018 |
+
return false;
|
1019 |
+
}
|
1020 |
+
$fp = fopen($this->cachefile, 'rb');
|
1021 |
+
if(! $fp){ return $this->error("Could not open cachefile."); }
|
1022 |
+
fseek($fp, strlen($this->filePrependSecurityBlock), SEEK_SET);
|
1023 |
+
$imgType = fread($fp, 3);
|
1024 |
+
fseek($fp, 3, SEEK_CUR);
|
1025 |
+
if(ftell($fp) != strlen($this->filePrependSecurityBlock) + 6){
|
1026 |
+
@unlink($this->cachefile);
|
1027 |
+
return $this->error("The cached image file seems to be corrupt.");
|
1028 |
+
}
|
1029 |
+
$imageDataSize = filesize($this->cachefile) - (strlen($this->filePrependSecurityBlock) + 6);
|
1030 |
+
$this->sendImageHeaders($imgType, $imageDataSize);
|
1031 |
+
$bytesSent = @fpassthru($fp);
|
1032 |
+
fclose($fp);
|
1033 |
+
if($bytesSent > 0){
|
1034 |
+
return true;
|
1035 |
+
}
|
1036 |
+
$content = file_get_contents ($this->cachefile);
|
1037 |
+
if ($content != FALSE) {
|
1038 |
+
$content = substr($content, strlen($this->filePrependSecurityBlock) + 6);
|
1039 |
+
echo $content;
|
1040 |
+
$this->debug(3, "Served using file_get_contents and echo");
|
1041 |
+
return true;
|
1042 |
+
} else {
|
1043 |
+
$this->error("Cache file could not be loaded.");
|
1044 |
+
return false;
|
1045 |
+
}
|
1046 |
+
}
|
1047 |
+
protected function sendImageHeaders($mimeType, $dataSize){
|
1048 |
+
if(! preg_match('/^image\//i', $mimeType)){
|
1049 |
+
$mimeType = 'image/' . $mimeType;
|
1050 |
+
}
|
1051 |
+
if(strtolower($mimeType) == 'image/jpg'){
|
1052 |
+
$mimeType = 'image/jpeg';
|
1053 |
+
}
|
1054 |
+
$gmdate_expires = gmdate ('D, d M Y H:i:s', strtotime ('now +10 days')) . ' GMT';
|
1055 |
+
$gmdate_modified = gmdate ('D, d M Y H:i:s') . ' GMT';
|
1056 |
+
// send content headers then display image
|
1057 |
+
header ('Content-Type: ' . $mimeType);
|
1058 |
+
header ('Accept-Ranges: none'); //Changed this because we don't accept range requests
|
1059 |
+
header ('Last-Modified: ' . $gmdate_modified);
|
1060 |
+
header ('Content-Length: ' . $dataSize);
|
1061 |
+
if(BROWSER_CACHE_DISABLE){
|
1062 |
+
$this->debug(3, "Browser cache is disabled so setting non-caching headers.");
|
1063 |
+
header('Cache-Control: no-store, no-cache, must-revalidate, max-age=0');
|
1064 |
+
header("Pragma: no-cache");
|
1065 |
+
header('Expires: ' . gmdate ('D, d M Y H:i:s', time()));
|
1066 |
+
} else {
|
1067 |
+
$this->debug(3, "Browser caching is enabled");
|
1068 |
+
header('Cache-Control: max-age=' . BROWSER_CACHE_MAX_AGE . ', must-revalidate');
|
1069 |
+
header('Expires: ' . $gmdate_expires);
|
1070 |
+
}
|
1071 |
+
return true;
|
1072 |
+
}
|
1073 |
+
protected function securityChecks(){
|
1074 |
+
}
|
1075 |
+
protected function param($property, $default = ''){
|
1076 |
+
if (isset ($_GET[$property])) {
|
1077 |
+
return $_GET[$property];
|
1078 |
+
} else {
|
1079 |
+
return $default;
|
1080 |
+
}
|
1081 |
+
}
|
1082 |
+
protected function openImage($mimeType, $src){
|
1083 |
+
switch ($mimeType) {
|
1084 |
+
case 'image/jpeg':
|
1085 |
+
$image = imagecreatefromjpeg ($src);
|
1086 |
+
break;
|
1087 |
+
|
1088 |
+
case 'image/png':
|
1089 |
+
$image = imagecreatefrompng ($src);
|
1090 |
+
break;
|
1091 |
+
|
1092 |
+
case 'image/gif':
|
1093 |
+
$image = imagecreatefromgif ($src);
|
1094 |
+
break;
|
1095 |
+
|
1096 |
+
default:
|
1097 |
+
$this->error("Unrecognised mimeType");
|
1098 |
+
}
|
1099 |
+
|
1100 |
+
return $image;
|
1101 |
+
}
|
1102 |
+
protected function getIP(){
|
1103 |
+
$rem = @$_SERVER["REMOTE_ADDR"];
|
1104 |
+
$ff = @$_SERVER["HTTP_X_FORWARDED_FOR"];
|
1105 |
+
$ci = @$_SERVER["HTTP_CLIENT_IP"];
|
1106 |
+
if(preg_match('/^(?:192\.168|172\.16|10\.|127\.)/', $rem)){
|
1107 |
+
if($ff){ return $ff; }
|
1108 |
+
if($ci){ return $ci; }
|
1109 |
+
return $rem;
|
1110 |
+
} else {
|
1111 |
+
if($rem){ return $rem; }
|
1112 |
+
if($ff){ return $ff; }
|
1113 |
+
if($ci){ return $ci; }
|
1114 |
+
return "UNKNOWN";
|
1115 |
+
}
|
1116 |
+
}
|
1117 |
+
protected function debug($level, $msg){
|
1118 |
+
if(DEBUG_ON && $level <= DEBUG_LEVEL){
|
1119 |
+
$execTime = sprintf('%.6f', microtime(true) - $this->startTime);
|
1120 |
+
$tick = sprintf('%.6f', 0);
|
1121 |
+
if($this->lastBenchTime > 0){
|
1122 |
+
$tick = sprintf('%.6f', microtime(true) - $this->lastBenchTime);
|
1123 |
+
}
|
1124 |
+
$this->lastBenchTime = microtime(true);
|
1125 |
+
error_log("TimThumb Debug line " . __LINE__ . " [$execTime : $tick]: $msg");
|
1126 |
+
}
|
1127 |
+
}
|
1128 |
+
protected function sanityFail($msg){
|
1129 |
+
return $this->error("There is a problem in the timthumb code. Message: Please report this error at <a href='http://code.google.com/p/timthumb/issues/list'>timthumb's bug tracking page</a>: $msg");
|
1130 |
+
}
|
1131 |
+
protected function getMimeType($file){
|
1132 |
+
$info = getimagesize($file);
|
1133 |
+
if(is_array($info) && $info['mime']){
|
1134 |
+
return $info['mime'];
|
1135 |
+
}
|
1136 |
+
return '';
|
1137 |
+
}
|
1138 |
+
protected function setMemoryLimit(){
|
1139 |
+
$inimem = ini_get('memory_limit');
|
1140 |
+
$inibytes = timthumb::returnBytes($inimem);
|
1141 |
+
$ourbytes = timthumb::returnBytes(MEMORY_LIMIT);
|
1142 |
+
if($inibytes < $ourbytes){
|
1143 |
+
ini_set ('memory_limit', MEMORY_LIMIT);
|
1144 |
+
$this->debug(3, "Increased memory from $inimem to " . MEMORY_LIMIT);
|
1145 |
+
} else {
|
1146 |
+
$this->debug(3, "Not adjusting memory size because the current setting is " . $inimem . " and our size of " . MEMORY_LIMIT . " is smaller.");
|
1147 |
+
}
|
1148 |
+
}
|
1149 |
+
protected static function returnBytes($size_str){
|
1150 |
+
switch (substr ($size_str, -1))
|
1151 |
+
{
|
1152 |
+
case 'M': case 'm': return (int)$size_str * 1048576;
|
1153 |
+
case 'K': case 'k': return (int)$size_str * 1024;
|
1154 |
+
case 'G': case 'g': return (int)$size_str * 1073741824;
|
1155 |
+
default: return $size_str;
|
1156 |
+
}
|
1157 |
+
}
|
1158 |
+
protected function getURL($url, $tempfile){
|
1159 |
+
$this->lastURLError = false;
|
1160 |
+
$url = preg_replace('/ /', '%20', $url);
|
1161 |
+
if(function_exists('curl_init')){
|
1162 |
+
$this->debug(3, "Curl is installed so using it to fetch URL.");
|
1163 |
+
self::$curlFH = fopen($tempfile, 'w');
|
1164 |
+
if(! self::$curlFH){
|
1165 |
+
$this->error("Could not open $tempfile for writing.");
|
1166 |
+
return false;
|
1167 |
+
}
|
1168 |
+
self::$curlDataWritten = 0;
|
1169 |
+
$this->debug(3, "Fetching url with curl: $url");
|
1170 |
+
$curl = curl_init($url);
|
1171 |
+
curl_setopt ($curl, CURLOPT_TIMEOUT, CURL_TIMEOUT);
|
1172 |
+
curl_setopt ($curl, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/12.0.742.122 Safari/534.30");
|
1173 |
+
curl_setopt ($curl, CURLOPT_RETURNTRANSFER, TRUE);
|
1174 |
+
curl_setopt ($curl, CURLOPT_HEADER, 0);
|
1175 |
+
curl_setopt ($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
|
1176 |
+
curl_setopt ($curl, CURLOPT_WRITEFUNCTION, 'timthumb::curlWrite');
|
1177 |
+
@curl_setopt ($curl, CURLOPT_FOLLOWLOCATION, true);
|
1178 |
+
@curl_setopt ($curl, CURLOPT_MAXREDIRS, 10);
|
1179 |
+
|
1180 |
+
$curlResult = curl_exec($curl);
|
1181 |
+
fclose(self::$curlFH);
|
1182 |
+
$httpStatus = curl_getinfo($curl, CURLINFO_HTTP_CODE);
|
1183 |
+
if($httpStatus == 404){
|
1184 |
+
$this->set404();
|
1185 |
+
}
|
1186 |
+
if($curlResult){
|
1187 |
+
curl_close($curl);
|
1188 |
+
return true;
|
1189 |
+
} else {
|
1190 |
+
$this->lastURLError = curl_error($curl);
|
1191 |
+
curl_close($curl);
|
1192 |
+
return false;
|
1193 |
+
}
|
1194 |
+
} else {
|
1195 |
+
$img = @file_get_contents ($url);
|
1196 |
+
if($img === false){
|
1197 |
+
$err = error_get_last();
|
1198 |
+
if(is_array($err) && $err['message']){
|
1199 |
+
$this->lastURLError = $err['message'];
|
1200 |
+
} else {
|
1201 |
+
$this->lastURLError = $err;
|
1202 |
+
}
|
1203 |
+
if(preg_match('/404/', $this->lastURLError)){
|
1204 |
+
$this->set404();
|
1205 |
+
}
|
1206 |
+
|
1207 |
+
return false;
|
1208 |
+
}
|
1209 |
+
if(! file_put_contents($tempfile, $img)){
|
1210 |
+
$this->error("Could not write to $tempfile.");
|
1211 |
+
return false;
|
1212 |
+
}
|
1213 |
+
return true;
|
1214 |
+
}
|
1215 |
+
|
1216 |
+
}
|
1217 |
+
protected function serveImg($file){
|
1218 |
+
$s = getimagesize($file);
|
1219 |
+
if(! ($s && $s['mime'])){
|
1220 |
+
return false;
|
1221 |
+
}
|
1222 |
+
header ('Content-Type: ' . $s['mime']);
|
1223 |
+
header ('Content-Length: ' . filesize($file) );
|
1224 |
+
header ('Cache-Control: no-store, no-cache, must-revalidate, max-age=0');
|
1225 |
+
header ("Pragma: no-cache");
|
1226 |
+
$bytes = @readfile($file);
|
1227 |
+
if($bytes > 0){
|
1228 |
+
return true;
|
1229 |
+
}
|
1230 |
+
$content = @file_get_contents ($file);
|
1231 |
+
if ($content != FALSE){
|
1232 |
+
echo $content;
|
1233 |
+
return true;
|
1234 |
+
}
|
1235 |
+
return false;
|
1236 |
+
|
1237 |
+
}
|
1238 |
+
protected function set404(){
|
1239 |
+
$this->is404 = true;
|
1240 |
+
}
|
1241 |
+
protected function is404(){
|
1242 |
+
return $this->is404;
|
1243 |
+
}
|
1244 |
+
}
|