X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/76aea3697c6043c1613370f172395b4f65ee71f0..refs/tags/wordpress-2.8-scripts:/wp-includes/bookmark-template.php diff --git a/wp-includes/bookmark-template.php b/wp-includes/bookmark-template.php index e687e562..bb4f6ef3 100644 --- a/wp-includes/bookmark-template.php +++ b/wp-includes/bookmark-template.php @@ -7,7 +7,7 @@ */ /** - * The formatted output of a list of bookmarks + * The formatted output of a list of bookmarks. * * The $bookmarks array must contain bookmark objects and will be iterated over * to retrieve the bookmark to be used in the output. @@ -26,15 +26,21 @@ * of the bookmark. * 'show_images' - Default is 1 (integer). Whether to show link image if * available. + * 'show_name' - Default is 0 (integer). Whether to show link name if + * available. * 'before' - Default is '
  • ' (string). The html or text to prepend to each * bookmarks. * 'after' - Default is '
  • ' (string). The html or text to append to each * bookmarks. + * 'link_before' - Default is '' (string). The html or text to prepend to each + * bookmarks inside the tag. + * 'link_after' - Default is '' (string). The html or text to append to each + * bookmarks inside the tag. * 'between' - Default is '\n' (string). The string for use in between the link, * description, and image. * 'show_rating' - Default is 0 (integer). Whether to show the link rating. * - * @since 2.1 + * @since 2.1.0 * @access private * @usedby wp_list_bookmarks() * @@ -45,9 +51,9 @@ function _walk_bookmarks($bookmarks, $args = '' ) { $defaults = array( 'show_updated' => 0, 'show_description' => 0, - 'show_images' => 1, 'before' => '
  • ', - 'after' => '
  • ', 'between' => "\n", - 'show_rating' => 0 + 'show_images' => 1, 'show_name' => 0, + 'before' => '
  • ', 'after' => '
  • ', 'between' => "\n", + 'show_rating' => 0, 'link_before' => '', 'link_after' => '' ); $r = wp_parse_args( $args, $defaults ); @@ -64,14 +70,10 @@ function _walk_bookmarks($bookmarks, $args = '' ) { $the_link = '#'; if ( !empty($bookmark->link_url) ) - $the_link = clean_url($bookmark->link_url); + $the_link = esc_url($bookmark->link_url); - $rel = $bookmark->link_rel; - if ( '' != $rel ) - $rel = ' rel="' . $rel . '"'; - - $desc = attribute_escape(sanitize_bookmark_field('link_description', $bookmark->link_description, $bookmark->link_id, 'display')); - $name = attribute_escape(sanitize_bookmark_field('link_name', $bookmark->link_name, $bookmark->link_id, 'display')); + $desc = esc_attr(sanitize_bookmark_field('link_description', $bookmark->link_description, $bookmark->link_id, 'display')); + $name = esc_attr(sanitize_bookmark_field('link_name', $bookmark->link_name, $bookmark->link_id, 'display')); $title = $desc; if ( $show_updated ) @@ -81,26 +83,37 @@ function _walk_bookmarks($bookmarks, $args = '' ) { $title .= ')'; } + $alt = ' alt="' . $name . ( $show_description ? ' ' . $title : '' ) . '"'; + if ( '' != $title ) $title = ' title="' . $title . '"'; - $alt = ' alt="' . $name . '"'; + $rel = $bookmark->link_rel; + if ( '' != $rel ) + $rel = ' rel="' . $rel . '"'; $target = $bookmark->link_target; if ( '' != $target ) $target = ' target="' . $target . '"'; - $output .= '
    '; + $output .= ''; + + $output .= $link_before; if ( $bookmark->link_image != null && $show_images ) { - if ( strpos($bookmark->link_image, 'http') !== false ) + if ( strpos($bookmark->link_image, 'http') === 0 ) $output .= "link_image\" $alt $title />"; else // If it's a relative path $output .= "link_image\" $alt $title />"; + + if ( $show_name ) + $output .= " $name"; } else { $output .= $name; } + $output .= $link_after; + $output .= ''; if ( $show_updated && $bookmark->recently_updated ) @@ -109,9 +122,8 @@ function _walk_bookmarks($bookmarks, $args = '' ) { if ( $show_description && '' != $desc ) $output .= $between . $desc; - if ($show_rating) { - $output .= $between . get_linkrating($bookmark); - } + if ( $show_rating ) + $output .= $between . sanitize_bookmark_field('link_rating', $bookmark->link_rating, $bookmark->link_id, 'display'); $output .= "$after\n"; } // end while @@ -120,7 +132,7 @@ function _walk_bookmarks($bookmarks, $args = '' ) { } /** - * Retrieve or echo all of the bookmarks + * Retrieve or echo all of the bookmarks. * * List of default arguments are as follows: * 'orderby' - Default is 'name' (string). How to order the links by. String is @@ -174,7 +186,7 @@ function _walk_bookmarks($bookmarks, $args = '' ) { * passed to get_bookmarks(). * @link http://codex.wordpress.org/Template_Tags/wp_list_bookmarks * - * @since 2.1 + * @since 2.1.0 * @uses _list_bookmarks() Used to iterate over all of the bookmarks and return * the html * @uses get_terms() Gets all of the categories that are for links. @@ -239,4 +251,4 @@ function wp_list_bookmarks($args = '') { echo $output; } -?> \ No newline at end of file +?>