Example #1
0
/**
 * @since 1.0.1
 * @deprecated 2.1
 * @deprecated Use sanitize_bookmark_field()
 * @see sanitize_bookmark_field()
 *
 * @param object $link
 * @return unknown
 */
function get_linkrating($link)
{
    _deprecated_function(__FUNCTION__, '2.1', 'sanitize_bookmark_field()');
    return sanitize_bookmark_field('link_rating', $link->link_rating, $link->link_id, 'display');
}
Example #2
0
 /**
  * Get the default link text. For bookmarks, this is the bookmark name.
  *
  * @param string $field
  * @return string
  */
 function default_link_text($field = '')
 {
     $bookmark = $this->get_wrapped_object();
     return sanitize_bookmark_field('link_name', $bookmark->link_name, $this->container_id, 'display');
 }
Example #3
0
function sanitize_bookmark($bookmark, $context = 'display')
{
    $fields = array('link_id', 'link_url', 'link_name', 'link_image', 'link_target', 'link_category', 'link_description', 'link_visible', 'link_owner', 'link_rating', 'link_updated', 'link_rel', 'link_notes', 'link_rss');
    $do_object = false;
    if (is_object($bookmark)) {
        $do_object = true;
    }
    foreach ($fields as $field) {
        if ($do_object) {
            $bookmark->{$field} = sanitize_bookmark_field($field, $bookmark->{$field}, $bookmark->link_id, $context);
        } else {
            $bookmark[$field] = sanitize_bookmark_field($field, $bookmark[$field], $bookmark['link_id'], $context);
        }
    }
    return $bookmark;
}
Example #4
0
/**
 * 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.
 *
 * The output is formatted as HTML with no way to change that format. However,
 * what is between, before, and after can be changed. The link itself will be
 * HTML.
 *
 * This function is used internally by wp_list_bookmarks() and should not be
 * used by themes.
 *
 * @since 2.1.0
 * @access private
 *
 * @param array $bookmarks List of bookmarks to traverse.
 * @param string|array $args {
 *     Optional. Bookmarks arguments.
 *
 *     @type int|bool $show_updated     Whether to show the time the bookmark was last updated.
 *                                      Accepts 1|true or 0|false. Default 0|false.
 *     @type int|bool $show_description Whether to show the bookmakr description. Accepts 1|true,
 *                                      Accepts 1|true or 0|false. Default 0|false.
 *     @type int|bool $show_images      Whether to show the link image if available. Accepts 1|true
 *                                      or 0|false. Default 1|true.
 *     @type int|bool $show_name        Whether to show link name if available. Accepts 1|true or
 *                                      0|false. Default 0|false.
 *     @type string   $before           The HTML or text to prepend to each bookmark. Default `<li>`.
 *     @type string   $after            The HTML or text to append to each bookmark. Default `</li>`.
 *     @type string   $link_before      The HTML or text to prepend to each bookmark inside the anchor
 *                                      tags. Default empty.
 *     @type string   $link_after       The HTML or text to append to each bookmark inside the anchor
 *                                      tags. Default empty.
 *     @type string   $between          The string for use in between the link, description, and image.
 *                                      Default "\n".
 *     @type int|bool $show_rating      Whether to show the link rating. Accepts 1|true or 0|false.
 *                                      Default 0|false.
 *
 * }
 * @return string Formatted output in HTML
 */
function _walk_bookmarks($bookmarks, $args = '')
{
    $defaults = array('show_updated' => 0, 'show_description' => 0, 'show_images' => 1, 'show_name' => 0, 'before' => '<li>', 'after' => '</li>', 'between' => "\n", 'show_rating' => 0, 'link_before' => '', 'link_after' => '');
    $r = wp_parse_args($args, $defaults);
    $output = '';
    // Blank string to start with.
    foreach ((array) $bookmarks as $bookmark) {
        if (!isset($bookmark->recently_updated)) {
            $bookmark->recently_updated = false;
        }
        $output .= $r['before'];
        if ($r['show_updated'] && $bookmark->recently_updated) {
            $output .= '<em>';
        }
        $the_link = '#';
        if (!empty($bookmark->link_url)) {
            $the_link = esc_url($bookmark->link_url);
        }
        $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 ($r['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') * HOUR_IN_SECONDS));
                $title .= ')';
            }
        }
        $alt = ' alt="' . $name . ($r['show_description'] ? ' ' . $title : '') . '"';
        if ('' != $title) {
            $title = ' title="' . $title . '"';
        }
        $rel = $bookmark->link_rel;
        if ('' != $rel) {
            $rel = ' rel="' . esc_attr($rel) . '"';
        }
        $target = $bookmark->link_target;
        if ('' != $target) {
            $target = ' target="' . $target . '"';
        }
        $output .= '<a href="' . $the_link . '"' . $rel . $title . $target . '>';
        $output .= $r['link_before'];
        if ($bookmark->link_image != null && $r['show_images']) {
            if (strpos($bookmark->link_image, 'http') === 0) {
                $output .= "<img src=\"{$bookmark->link_image}\" {$alt} {$title} />";
            } else {
                // If it's a relative path
                $output .= "<img src=\"" . get_option('siteurl') . "{$bookmark->link_image}\" {$alt} {$title} />";
            }
            if ($r['show_name']) {
                $output .= " {$name}";
            }
        } else {
            $output .= $name;
        }
        $output .= $r['link_after'];
        $output .= '</a>';
        if ($r['show_updated'] && $bookmark->recently_updated) {
            $output .= '</em>';
        }
        if ($r['show_description'] && '' != $desc) {
            $output .= $r['between'] . $desc;
        }
        if ($r['show_rating']) {
            $output .= $r['between'] . sanitize_bookmark_field('link_rating', $bookmark->link_rating, $bookmark->link_id, 'display');
        }
        $output .= $r['after'] . "\n";
    }
    // end while
    return $output;
}
Example #5
0
function yg_adv_blogroll($args = '')
{
    $defaults = array('category' => '', 'showform' => 0, 'width' => 30, 'height' => 30, 'num' => -1, 'nofollow' => false, 'orderby' => 'name', 'order' => 'ASC');
    $args = wp_parse_args($args, $defaults);
    extract($args, EXTR_SKIP);
    $category = (int) $category == 0 ? '' : (int) $category;
    $num = $num == 0 ? $num = -1 : (int) $num;
    $orderby = htmlspecialchars($orderby);
    $order = htmlspecialchars($order);
    $r = array('orderby' => $orderby, 'order' => $order, 'limit' => $num, 'category' => $category, 'category_name' => '', 'hide_invisible' => 1, 'show_updated' => 0, 'include' => '', 'exclude' => '', 'search' => '');
    $bookmarks = get_bookmarks($r);
    $output = '';
    // Blank string to start with.
    $output .= $showform != 1 ? '<div class="animated list friend">' : '<div class="ab_images">';
    foreach ((array) $bookmarks as $bookmark) {
        $the_link = '#';
        if (!empty($bookmark->link_url)) {
            $the_link = clean_url($bookmark->link_url);
        }
        $rel = $bookmark->link_rel;
        if ($nofollow) {
            $rel = 'nofollow';
        }
        if ('' != $rel) {
            $rel = ' rel="' . $rel . '"';
        }
        $name = attribute_escape(sanitize_bookmark_field('link_name', $bookmark->link_name, $bookmark->link_id, 'display'));
        $description = attribute_escape(sanitize_bookmark_field('link_description', $bookmark->link_description, $bookmark->link_id, 'display'));
        $title_v = $description;
        if ('' != $title_v) {
            $title = ' title="' . $title_v . '"';
            $alt = ' alt="' . $title_v . '"';
        } else {
            $title = ' title="' . $name . '"';
            $alt = ' alt="' . $name . '"';
        }
        $target = $bookmark->link_target;
        if ('' != $target) {
            $target = ' target="' . $target . '"';
        }
        if ($showform == 0) {
            $output .= '<li><a href="' . $the_link . '"' . $rel . $title . $target . '>' . $name . '</a></li>';
        }
        if ($bookmark->link_image != null && $showform == 1) {
            $output .= '<a href="' . $the_link . '"' . $rel . $title . $target . '>';
            if (strpos($bookmark->link_image, 'http') !== false) {
                $output .= "<img src=\"{$bookmark->link_image}\" height=\"{$height}\" width=\"{$width}\" {$alt} {$title} /></a>\n";
            } else {
                // If it's a relative path
                $output .= "<img height=\"{$height}\" width=\"{$width}\" src=\"" . get_option('siteurl') . "{$bookmark->link_image}\" {$alt} {$title} /></a>\n";
            }
        }
        if ($showform == 2) {
            if (strlen($bookmark->link_image) > 2) {
                $image = "<img src=\"{$bookmark->link_image}\" height=\"{$height}\" width=\"{$width}\" {$alt} {$title} class=\"avatar image\" />";
                $output .= '<a href="' . $the_link . '"' . $rel . $title . $target . ' class="item">' . $image . '';
                $output .= '<div class="content"><p class="header">' . $name . '</p><p>' . $title_v . '</p></div>';
                $output .= '</a>';
            }
        }
    }
    // end while
    $output .= $showform != 1 ? '</div>' : '</div>';
    echo $output;
}
/**
 * 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.
 *
 * The output is formatted as HTML with no way to change that format. However,
 * what is between, before, and after can be changed. The link itself will be
 * HTML.
 *
 * This function is used internally by wp_list_bookmarks() and should not be
 * used by themes.
 *
 * The defaults for overwriting are:
 * 'show_updated' - Default is 0 (integer). Will show the time of when the
 *		bookmark was last updated.
 * 'show_description' - Default is 0 (integer). Whether to show the description
 *		of the bookmark.
 * 'show_images' - Default is 1 (integer). Whether to show link image if
 *		available.
 * 'show_name' - Default is 1 (integer). Whether to show link name if
 *		available.
 * 'before' - Default is '<li>' (string). The html or text to prepend to each
 *		bookmarks.
 * 'after' - Default is '</li>' (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 <a> tag.
 * 'link_after' - Default is '' (string). The html or text to append to each
 *		bookmarks inside the <a> 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.0
 * @access private
 * @usedby wp_list_bookmarks()
 *
 * @param array $bookmarks List of bookmarks to traverse
 * @param string|array $args Optional. Overwrite the defaults.
 * @return string Formatted output in HTML
 */
function _walk_bookmarks($bookmarks, $args = '' ) {
	$defaults = array(
		'show_updated' => 0, 'show_description' => 0,
		'show_images' => 1, 'show_name' => 0,
		'before' => '<li>', 'after' => '</li>', 'between' => "\n",
		'show_rating' => 0, 'link_before' => '', 'link_after' => ''
	);

	$r = wp_parse_args( $args, $defaults );
	extract( $r, EXTR_SKIP );

	$output = ''; // Blank string to start with.

	foreach ( (array) $bookmarks as $bookmark ) {
		if ( !isset($bookmark->recently_updated) )
			$bookmark->recently_updated = false;
		$output .= $before;
		if ( $show_updated && $bookmark->recently_updated )
			$output .= get_option('links_recently_updated_prepend');

		$the_link = '#';
		if ( !empty($bookmark->link_url) )
			$the_link = clean_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'));
 		$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 .= ')';
			}

		if ( '' != $title )
			$title = ' title="' . $title . '"';

		$alt = ' alt="' . $name . '"';

		$target = $bookmark->link_target;
		if ( '' != $target )
			$target = ' target="' . $target . '"';

		$output .= '<a href="' . $the_link . '"' . $rel . $title . $target. '>';

		$output .= $link_before;

		if ( $bookmark->link_image != null && $show_images ) {
			if ( strpos($bookmark->link_image, 'http') !== false )
				$output .= "<img src=\"$bookmark->link_image\" $alt $title />";
			else // If it's a relative path
				$output .= "<img src=\"" . get_option('siteurl') . "$bookmark->link_image\" $alt $title />";

			if ($show_name) $output .= $name;
		} else {
			$output .= $name;
		}

		$output .= $link_after;

		$output .= '</a>';

		if ( $show_updated && $bookmark->recently_updated )
			$output .= get_option('links_recently_updated_append');

		if ( $show_description && '' != $desc )
			$output .= $between . $desc;

		if ($show_rating) {
			$output .= $between . sanitize_bookmark_field('link_rating', $bookmark->link_rating, $bookmark->link_id, 'display');
		}

		$output .= "$after\n";
	} // end while

	return $output;
}
Example #7
0
function get_linkrating($link)
{
    return sanitize_bookmark_field('link_rating', $link->link_rating, $link->link_id, 'display');
}
Example #8
0
function my_bookmarks($bookmarks, $args = '')
{
    $defaults = array('show_updated' => 0, 'show_description' => 0, 'show_images' => 1, 'show_name' => 0, 'before' => '<div class="span2">', 'after' => '</div>', 'between' => "\n", 'show_rating' => 0, 'link_before' => '', 'link_after' => '', 'nofollow' => 0);
    $r = wp_parse_args($args, $defaults);
    extract($r, EXTR_SKIP);
    $output = '';
    // Blank string to start with.
    foreach ((array) $bookmarks as $bookmark) {
        if (!isset($bookmark->recently_updated)) {
            $bookmark->recently_updated = false;
        }
        $output .= $before;
        if ($show_updated && $bookmark->recently_updated) {
            $output .= get_option('links_recently_updated_prepend');
        }
        $the_link = '#';
        if (!empty($bookmark->link_url)) {
            $the_link = esc_url($bookmark->link_url);
        }
        $rel = ' rel="external';
        if ($nofollow) {
            $rel .= ' nofollow';
        }
        if ('' != $bookmark->link_rel) {
            $rel .= ' ' . $bookmark->link_rel;
        }
        $rel .= '"';
        $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 .= ')';
            }
        }
        if ('' != $title) {
            $title = ' title="' . $title . '"';
        }
        $alt = ' alt="' . $name . '"';
        $target = $bookmark->link_target;
        if ('' != $target) {
            $target = ' target="' . $target . '"';
        }
        $output .= '<a href="' . $the_link . '"' . $rel . $title . $target . '>';
        $output .= $link_before;
        if ($show_images) {
            if ($bookmark->link_image != null) {
                if (strpos($bookmark->link_image, 'http') !== false) {
                    $output .= "<img width='16' height='16' src=\"{$bookmark->link_image}\" {$alt} {$title} />";
                } else {
                    // If it's a relative path
                    $output .= "<img width='16' height='16' src=\"" . get_option('siteurl') . "{$bookmark->link_image}\" {$alt} {$title} />";
                }
            } else {
                //否则显示网站的Favicon
                if (preg_match('/^(https?:\\/\\/)?([^\\/]+)/i', $the_link, $URI)) {
                    //提取域名
                    $domains = $URI[2];
                } else {
                    //域名提取失败,显示默认小地球
                    $domains = "example.com";
                }
                $output .= "<img width='16' height='16' src=\"http://www.google.com/s2/favicons?domain={$domains}\" {$alt} {$title} />";
            }
        }
        $output .= $name;
        $output .= $link_after;
        $output .= '</a>';
        if ($show_updated && $bookmark->recently_updated) {
            $output .= get_option('links_recently_updated_append');
        }
        if ($show_description && '' != $desc) {
            $output .= $between . $desc;
        }
        if ($show_rating) {
            $output .= $between . sanitize_bookmark_field('link_rating', $bookmark->link_rating, $bookmark->link_id, 'display');
        }
        $output .= "{$after}\n";
    }
    // end while
    return $output;
}