Version Description
Download this release
Release Info
Developer | mitchoyoshitaka |
Plugin | Yet Another Related Posts Plugin (YARPP) |
Version | 4.0.3b2 |
Comparing to | |
See all releases |
Code changes from version 4.0.3b1 to 4.0.3b2
- class-core.php +49 -6
- readme.txt +1 -0
- template-thumbnails.php +5 -17
- yarpp.php +2 -2
class-core.php
CHANGED
@@ -43,10 +43,11 @@ class YARPP {
|
|
43 |
add_filter( 'the_content', array( $this, 'the_content' ), 1200 );
|
44 |
add_filter( 'the_content_feed', array( $this, 'the_content_feed' ), 600 );
|
45 |
add_filter( 'the_excerpt_rss', array( $this, 'the_excerpt_rss' ), 600 );
|
|
|
46 |
|
47 |
// register yarpp-thumbnail size, if theme has not already
|
48 |
// @todo: make these UI-configurable?
|
49 |
-
if (
|
50 |
$width = 120;
|
51 |
$height = 120;
|
52 |
$crop = true;
|
@@ -300,17 +301,55 @@ class YARPP {
|
|
300 |
return defined('YARPP_GENERATE_THUMBNAILS') && YARPP_GENERATE_THUMBNAILS;
|
301 |
}
|
302 |
|
303 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
304 |
global $_wp_additional_image_sizes;
|
305 |
if ( !isset($_wp_additional_image_sizes['yarpp-thumbnail']) )
|
306 |
-
return
|
307 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
308 |
}
|
309 |
|
310 |
// code based on Viper's Regenerate Thumbnails plugin
|
311 |
-
|
|
|
312 |
$thumbnail_id = get_post_thumbnail_id( $post_id );
|
313 |
-
$downsized = image_downsize( $thumbnail_id, $size );
|
314 |
if ( $dimensions['crop'] && $downsized[1] && $downsized[2] &&
|
315 |
( $downsized[1] != $dimensions['width'] || $downsized[2] != $dimensions['height'] ) ) {
|
316 |
// we want to trigger recomputation of the thumbnail here
|
@@ -606,6 +645,10 @@ class YARPP {
|
|
606 |
delete_transient('yarpp_version_info');
|
607 |
}
|
608 |
|
|
|
|
|
|
|
|
|
609 |
private $post_types = null;
|
610 |
function get_post_types( $field = 'name' ) {
|
611 |
if ( is_null($this->post_types) ) {
|
43 |
add_filter( 'the_content', array( $this, 'the_content' ), 1200 );
|
44 |
add_filter( 'the_content_feed', array( $this, 'the_content_feed' ), 600 );
|
45 |
add_filter( 'the_excerpt_rss', array( $this, 'the_excerpt_rss' ), 600 );
|
46 |
+
add_action( 'wp_enqueue_scripts', array( $this, 'maybe_enqueue_thumbnails' ) );
|
47 |
|
48 |
// register yarpp-thumbnail size, if theme has not already
|
49 |
// @todo: make these UI-configurable?
|
50 |
+
if ( !($dimensions = $this->thumbnail_dimensions()) || isset($dimensions['_default']) ) {
|
51 |
$width = 120;
|
52 |
$height = 120;
|
53 |
$crop = true;
|
301 |
return defined('YARPP_GENERATE_THUMBNAILS') && YARPP_GENERATE_THUMBNAILS;
|
302 |
}
|
303 |
|
304 |
+
private $default_dimensions = array(
|
305 |
+
'width' => 120,
|
306 |
+
'height' => 120,
|
307 |
+
'crop' => false, // @todo true for crop?
|
308 |
+
'size' => '120x120',
|
309 |
+
'_default' => true
|
310 |
+
);
|
311 |
+
function thumbnail_dimensions() {
|
312 |
global $_wp_additional_image_sizes;
|
313 |
if ( !isset($_wp_additional_image_sizes['yarpp-thumbnail']) )
|
314 |
+
return $this->default_dimensions;
|
315 |
+
|
316 |
+
$dimensions = $_wp_additional_image_sizes['yarpp-thumbnail'];
|
317 |
+
$dimensions['size'] = 'yarpp-thumbnail';
|
318 |
+
|
319 |
+
// ensure YARPP dimensions format:
|
320 |
+
$dimensions['width'] = (int) $dimensions['width'];
|
321 |
+
$dimensions['height'] = (int) $dimensions['height'];
|
322 |
+
return $dimensions;
|
323 |
+
}
|
324 |
+
|
325 |
+
function maybe_enqueue_thumbnails() {
|
326 |
+
if ( is_feed() )
|
327 |
+
return;
|
328 |
+
|
329 |
+
$auto_display_post_types = $this->get_option( 'auto_display_post_types' );
|
330 |
+
|
331 |
+
// if it's not an auto-display post type, return
|
332 |
+
if ( !in_array( get_post_type(), $auto_display_post_types ) )
|
333 |
+
return;
|
334 |
+
|
335 |
+
if ( !is_singular() && !(
|
336 |
+
$this->get_option('auto_display_archive') &&
|
337 |
+
( is_archive() || is_home() )
|
338 |
+
) )
|
339 |
+
return;
|
340 |
+
|
341 |
+
$this->enqueue_thumbnails( $this->thumbnail_dimensions() );
|
342 |
+
}
|
343 |
+
|
344 |
+
function enqueue_thumbnails( $dimensions ) {
|
345 |
+
wp_enqueue_style( "yarpp-thumbnails-" . $dimensions['size'], plugins_url( 'styles-thumbnails.php?' . http_build_query( array( 'width' => $dimensions['width'], 'height' => $dimensions['height'] ) ), __FILE__ ), array(), YARPP_VERSION, 'all' );
|
346 |
}
|
347 |
|
348 |
// code based on Viper's Regenerate Thumbnails plugin
|
349 |
+
// $dimensions must be an array with size, crop, height, width attributes
|
350 |
+
function ensure_resized_post_thumbnail( $post_id, $dimensions ) {
|
351 |
$thumbnail_id = get_post_thumbnail_id( $post_id );
|
352 |
+
$downsized = image_downsize( $thumbnail_id, $dimensions['size'] );
|
353 |
if ( $dimensions['crop'] && $downsized[1] && $downsized[2] &&
|
354 |
( $downsized[1] != $dimensions['width'] || $downsized[2] != $dimensions['height'] ) ) {
|
355 |
// we want to trigger recomputation of the thumbnail here
|
645 |
delete_transient('yarpp_version_info');
|
646 |
}
|
647 |
|
648 |
+
/*
|
649 |
+
* UTILITIES
|
650 |
+
*/
|
651 |
+
|
652 |
private $post_types = null;
|
653 |
function get_post_types( $field = 'name' ) {
|
654 |
if ( is_null($this->post_types) ) {
|
readme.txt
CHANGED
@@ -259,6 +259,7 @@ If you are a bilingual speaker of English and another language and an avid user
|
|
259 |
|
260 |
= 4.0.3 =
|
261 |
* Bugfix: on sites where custom templates are not available, the "thumbnails" display option would get reset when visiting the YARPP settings page
|
|
|
262 |
* Updated Polish localization
|
263 |
|
264 |
= 4.0.2 =
|
259 |
|
260 |
= 4.0.3 =
|
261 |
* Bugfix: on sites where custom templates are not available, the "thumbnails" display option would get reset when visiting the YARPP settings page
|
262 |
+
* [Bugfix](http://wordpress.org/support/topic/yarpp-css-is-delayed-or-doesnt-load): the CSS for YARPP's thumbnails display would load at the foot of the page, and therefore would cause some style-flashing. This is fixed for automatic includes, but not for widgets or manual calls.
|
263 |
* Updated Polish localization
|
264 |
|
265 |
= 4.0.2 =
|
template-thumbnails.php
CHANGED
@@ -10,26 +10,14 @@
|
|
10 |
|
11 |
$options = array( 'thumbnails_heading', 'thumbnails_default', 'no_results' );
|
12 |
extract( $this->parse_args( $args, $options ) );
|
13 |
-
if ( false !== ($dimensions = $this->thumbnail_size()) ) {
|
14 |
-
$width = (int) $dimensions['width'];
|
15 |
-
$height = (int) $dimensions['height'];
|
16 |
-
$size = 'yarpp-thumbnail';
|
17 |
-
} else {
|
18 |
-
$size = '120x120'; // the ultimate default
|
19 |
-
$width = 120;
|
20 |
-
$height = 120;
|
21 |
-
$dimensions = array(
|
22 |
-
'width' => $width,
|
23 |
-
'height' => $height,
|
24 |
-
'crop' => false );
|
25 |
-
// @todo true for crop?
|
26 |
-
}
|
27 |
|
28 |
// a little easter egg: if the default image URL is left blank,
|
29 |
// default to the theme's header image. (hopefully it has one)
|
30 |
if ( empty($thumbnails_default) )
|
31 |
$thumbnails_default = get_header_image();
|
32 |
|
|
|
|
|
33 |
$output .= '<h3>' . $thumbnails_heading . '</h3>' . "\n";
|
34 |
|
35 |
if (have_posts()) {
|
@@ -42,8 +30,8 @@ if (have_posts()) {
|
|
42 |
$post_thumbnail_html = '';
|
43 |
if ( has_post_thumbnail() ) {
|
44 |
if ( $this->diagnostic_generate_thumbnails() )
|
45 |
-
$this->ensure_resized_post_thumbnail( get_the_ID(), $
|
46 |
-
$post_thumbnail_html = get_the_post_thumbnail( null, $size );
|
47 |
}
|
48 |
|
49 |
if ( trim($post_thumbnail_html) != '' )
|
@@ -60,4 +48,4 @@ if (have_posts()) {
|
|
60 |
$output .= $no_results;
|
61 |
}
|
62 |
|
63 |
-
|
10 |
|
11 |
$options = array( 'thumbnails_heading', 'thumbnails_default', 'no_results' );
|
12 |
extract( $this->parse_args( $args, $options ) );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13 |
|
14 |
// a little easter egg: if the default image URL is left blank,
|
15 |
// default to the theme's header image. (hopefully it has one)
|
16 |
if ( empty($thumbnails_default) )
|
17 |
$thumbnails_default = get_header_image();
|
18 |
|
19 |
+
$dimensions = $this->thumbnail_dimensions();
|
20 |
+
|
21 |
$output .= '<h3>' . $thumbnails_heading . '</h3>' . "\n";
|
22 |
|
23 |
if (have_posts()) {
|
30 |
$post_thumbnail_html = '';
|
31 |
if ( has_post_thumbnail() ) {
|
32 |
if ( $this->diagnostic_generate_thumbnails() )
|
33 |
+
$this->ensure_resized_post_thumbnail( get_the_ID(), $dimensions );
|
34 |
+
$post_thumbnail_html = get_the_post_thumbnail( null, $dimensions['size'] );
|
35 |
}
|
36 |
|
37 |
if ( trim($post_thumbnail_html) != '' )
|
48 |
$output .= $no_results;
|
49 |
}
|
50 |
|
51 |
+
$this->enqueue_thumbnails( $dimensions );
|
yarpp.php
CHANGED
@@ -3,13 +3,13 @@
|
|
3 |
Plugin Name: Yet Another Related Posts Plugin
|
4 |
Plugin URI: http://yarpp.org/
|
5 |
Description: Returns a list of related entries based on a unique algorithm for display on your blog and RSS feeds. Now with Now with thumbnail support built-in!
|
6 |
-
Version: 4.0.
|
7 |
Author: mitcho (Michael Yoshitaka Erlewine)
|
8 |
Author URI: http://mitcho.com/
|
9 |
Donate link: http://tinyurl.com/donatetomitcho
|
10 |
*/
|
11 |
|
12 |
-
define('YARPP_VERSION', '4.0.
|
13 |
define('YARPP_DIR', dirname(__FILE__));
|
14 |
define('YARPP_NO_RELATED', ':(');
|
15 |
define('YARPP_RELATED', ':)');
|
3 |
Plugin Name: Yet Another Related Posts Plugin
|
4 |
Plugin URI: http://yarpp.org/
|
5 |
Description: Returns a list of related entries based on a unique algorithm for display on your blog and RSS feeds. Now with Now with thumbnail support built-in!
|
6 |
+
Version: 4.0.3b2
|
7 |
Author: mitcho (Michael Yoshitaka Erlewine)
|
8 |
Author URI: http://mitcho.com/
|
9 |
Donate link: http://tinyurl.com/donatetomitcho
|
10 |
*/
|
11 |
|
12 |
+
define('YARPP_VERSION', '4.0.3b2');
|
13 |
define('YARPP_DIR', dirname(__FILE__));
|
14 |
define('YARPP_NO_RELATED', ':(');
|
15 |
define('YARPP_RELATED', ':)');
|