X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/11be8dc178e77d0b46189bbd8e33a216a9b90942..baca9ce86a38dc54c4574890ee2d352fd81f78b2:/wp-includes/bookmark-template.php diff --git a/wp-includes/bookmark-template.php b/wp-includes/bookmark-template.php index 844f664f..cb30b896 100644 --- a/wp-includes/bookmark-template.php +++ b/wp-includes/bookmark-template.php @@ -42,7 +42,6 @@ * * @since 2.1.0 * @access private - * @usedby wp_list_bookmarks() * * @param array $bookmarks List of bookmarks to traverse * @param string|array $args Optional. Overwrite the defaults. @@ -70,43 +69,44 @@ 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 ) if ( '00' != substr($bookmark->link_updated_f, 0, 2) ) { $title .= ' ('; - $title .= sprintf(__('Last updated: %s'), date(get_option('links_updated_date_format'), $bookmark->link_updated_f + (get_option('gmt_offset') * 3600))); + $title .= sprintf(__('Last updated: %s'), date(get_option('links_updated_date_format'), $bookmark->link_updated_f + (get_option('gmt_offset') * HOUR_IN_SECONDS))); $title .= ')'; } + $alt = ' alt="' . $name . ( $show_description ? ' ' . $title : '' ) . '"'; + if ( '' != $title ) $title = ' title="' . $title . '"'; - $alt = ' alt="' . $name . '"'; + $rel = $bookmark->link_rel; + if ( '' != $rel ) + $rel = ' rel="' . esc_attr($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; + if ( $show_name ) + $output .= " $name"; } else { $output .= $name; } @@ -121,9 +121,8 @@ function _walk_bookmarks($bookmarks, $args = '' ) { if ( $show_description && '' != $desc ) $output .= $between . $desc; - if ($show_rating) { + if ( $show_rating ) $output .= $between . sanitize_bookmark_field('link_rating', $bookmark->link_rating, $bookmark->link_id, 'display'); - } $output .= "$after\n"; } // end while @@ -153,6 +152,8 @@ function _walk_bookmarks($bookmarks, $args = '' ) { * formatted bookmarks. * 'categorize' - Default is 1 (integer). Whether to show links listed by * category (default) or show links in one column. + * 'show_description' - Default is 0 (integer). Whether to show the description + * of the bookmark. * * These options define how the Category name will appear before the category * links are displayed, if 'categorize' is 1. If 'categorize' is 0, then it will @@ -187,7 +188,7 @@ function _walk_bookmarks($bookmarks, $args = '' ) { * @link http://codex.wordpress.org/Template_Tags/wp_list_bookmarks * * @since 2.1.0 - * @uses _list_bookmarks() Used to iterate over all of the bookmarks and return + * @uses _walk_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. * @@ -214,9 +215,13 @@ function wp_list_bookmarks($args = '') { $output = ''; if ( $categorize ) { - //Split the bookmarks into ul's for each category - $cats = get_terms('link_category', array('name__like' => $category_name, 'include' => $category, 'exclude' => $exclude_category, 'orderby' => $category_orderby, 'order' => $category_order, 'hierarchical' => 0)); + $cats = get_terms( 'link_category', array( 'name__like' => $category_name, 'include' => $category, 'exclude' => $exclude_category, 'orderby' => $category_orderby, 'order' => $category_order, 'hierarchical' => 0 ) ); + if ( empty( $cats ) ) + $categorize = false; + } + if ( $categorize ) { + // Split the bookmarks into ul's for each category foreach ( (array) $cats as $cat ) { $params = array_merge($r, array('category'=>$cat->term_id)); $bookmarks = get_bookmarks($params); @@ -250,5 +255,3 @@ function wp_list_bookmarks($args = '') { return $output; echo $output; } - -?>