Make WordPress Core

Ticket #7661: 7661.r8786.diff

File 7661.r8786.diff, 21.0 KB (added by jacobsantos, 16 years ago)

Incomplete skeleton patch based off of r8786

  • widgets.php

     
    11<?php
     2/**
     3 * API for creating dynamic sidebar without hardcoding functionality into
     4 * themes. Includes both internal WordPress routines and theme use routines.
     5 *
     6 * This functionality was found in a plugin before WordPress 2.2 release which
     7 * included it in the core from that point on.
     8 *
     9 * @package WordPress
     10 * @subpackage Widgets
     11 */
    212
    313/* Global Variables */
    414
    515global $wp_registered_sidebars, $wp_registered_widgets, $wp_registered_widget_controls;
    616
     17/**
     18 * Stores the sidebars, since many themes can have more than one.
     19 * @global array $wp_registered_sidebars
     20 * @since 2.2
     21 */
    722$wp_registered_sidebars = array();
     23
     24/**
     25 *
     26 * @global array $wp_registered_widgets
     27 * @since 2.2
     28 */
    829$wp_registered_widgets = array();
     30
     31/**
     32 *
     33 * @global array $wp_registered_widget_controls
     34 * @since 2.2
     35 */
    936$wp_registered_widget_controls = array();
    1037
    1138/* Template tags & API functions */
    1239
     40/**
     41 * register_sidebars() - Creates multiple sidebars
     42 *
     43 * If you wanted to quickly create multiple sidebars for a theme or internally. This function
     44 * will allow you to do so. If you don't pass the 'name' and/or 'id' in $args, then they will be
     45 * built for you.
     46 *
     47 * The default for the name is "Sidebar #", with '#' being replaced with the number the sidebar
     48 * is currently when greater than one. If first sidebar, the name will be just "Sidebar". The
     49 * default for id is "sidebar-" followed by the number the sidebar creation is currently at.
     50 *
     51 * @see register_sidebar() The second parameter is documented by register_sidebar() and is the same here.
     52 *
     53 * @since 2.2
     54 *
     55 * @uses parse_str() Converts a string to an array to be used in the rest of the function.
     56 * @uses register_sidebar() Sends single sidebar information [name, id] to this function to
     57 *      handle building the sidebar.
     58 *
     59 * @param int $number Number of sidebars to create
     60 * @param string|array $args Builds Sidebar based off of 'name' and 'id' values
     61 */
    1362function register_sidebars($number = 1, $args = array()) {
    1463        global $wp_registered_sidebars;
    1564        $number = (int) $number;
     
    4089        }
    4190}
    4291
     92/**
     93 * register_sidebar() - Builds the definition for a single sidebar and returns the ID
     94 *
     95 * The $args parameter takes either a string or an array with 'name' and 'id' contained in
     96 * either usage. It will be noted that the values will be applied to all sidebars, so if creating
     97 * more than one, it will be advised to allow for WordPress to create the defaults for you.
     98 *
     99 * Example for string would be <code>'name=whatever;id=whatever1'</code> and for the array it
     100 * would be <code>array('name' => 'whatever', 'id' => 'whatever1')</code>.
     101 *
     102 * name - The name of the sidebar, which presumably the title which will be displayed.
     103 * id - The unique identifier by which the sidebar will be called by.
     104 * before_widget - The content that will prepended to the widgets when they are displayed.
     105 * after_widget - The content that will be appended to the widgets when they are displayed.
     106 * before_title - The content that will be prepended to the title when displayed.
     107 * after_title - the content that will be appended to the title when displayed.
     108 *
     109 * <em>Content</em> is assumed to be HTML and should be formatted as such, but doesn't have to be.
     110 *
     111 * @since 2.2
     112 * @uses $wp_registered_sidebars Stores the new sidebar in this array by sidebar ID.
     113 * @uses parse_str() Converts a string to an array to be used in the rest of the function.
     114 * @usedby register_sidebars()
     115 *
     116 * @param string|array $args Builds Sidebar based off of 'name' and 'id' values
     117 * @return string The sidebar id that was added.
     118 */
    43119function register_sidebar($args = array()) {
    44120        global $wp_registered_sidebars;
    45121
     
    64140        return $sidebar['id'];
    65141}
    66142
     143/**
     144 * unregister_sidebar() - Removes a sidebar from the list.
     145 *
     146 * @since 2.2.0
     147 *
     148 * @uses $wp_registered_sidebars Stores the new sidebar in this array by sidebar ID.
     149 *
     150 * @param string $name The ID of the sidebar when it was added.
     151 */
    67152function unregister_sidebar( $name ) {
    68153        global $wp_registered_sidebars;
    69154
     
    71156                unset( $wp_registered_sidebars[$name] );
    72157}
    73158
     159/**
     160 * register_sidebar_widget() - {@internal Missing Short Description}}
     161 *
     162 * {@internal Missing Long Description}}
     163 *
     164 * @since 2.2.0
     165 * @uses wp_register_sidebar_widget() Passes the compiled arguments.
     166 *
     167 * @param string $name
     168 * @param callback $output_callback
     169 * @param string $classname
     170 */
    74171function register_sidebar_widget($name, $output_callback, $classname = '') {
    75172        // Compat
    76173        if ( is_array($name) ) {
     
    92189        call_user_func_array('wp_register_sidebar_widget', $args);
    93190}
    94191
     192/**
     193 * wp_register_sidebar_widget() - {@internal Missing Short Description}}
     194 *
     195 * {@internal Missing Long Description}}
     196 *
     197 * @since 2.2.0
     198 *
     199 * @uses $wp_registered_widgets {@internal Missing Description}}
     200 * @uses $wp_register_widget_defaults {@internal Missing Description}}
     201 *
     202 * @param int $id {@internal Missing Description}}
     203 * @param string $name {@internal Missing Description}}
     204 * @param callback $output_callback {@internal Missing Description}}
     205 * @param array|string $options {@internal Missing Description}}
     206 * @return null Will return if $output_callback is empty
     207 */
    95208function wp_register_sidebar_widget($id, $name, $output_callback, $options = array()) {
    96209        global $wp_registered_widgets;
    97210
     
    116229                $wp_registered_widgets[$id] = $widget;
    117230}
    118231
     232/**
     233 * wp_widget_description() - {@internal Missing Short Description}}
     234 *
     235 * {@internal Missing Long Description}}
     236 *
     237 * @since 2.5.0
     238 *
     239 * @param unknown_type $id
     240 * @return unknown
     241 */
    119242function wp_widget_description( $id ) {
    120243        if ( !is_scalar($id) )
    121244                return;
     
    126249                return wp_specialchars( $wp_registered_widgets[$id]['description'] );
    127250}
    128251
     252/**
     253 * unregister_sidebar_widget() - Alias of wp_unregister_sidebar_widget()
     254 *
     255 * @see wp_unregister_sidebar_widget()
     256 *
     257 * @since 2.2.0
     258 *
     259 * @param int $id Same as wp_unregister_sidebar_widget()
     260 */
    129261function unregister_sidebar_widget($id) {
    130262        return wp_unregister_sidebar_widget($id);
    131263}
    132264
     265/**
     266 * wp_register_sidebar_widget() - {@internal Missing Short Description}}
     267 *
     268 * {@internal Missing Long Description}}
     269 *
     270 * @since 2.2.0
     271 *
     272 * @param int $id {@internal Missing Description}}
     273 */
    133274function wp_unregister_sidebar_widget($id) {
    134275        wp_register_sidebar_widget($id, '', '');
    135276        wp_unregister_widget_control($id);
    136277}
    137278
     279/**
     280 * register_widget_control() - {@internal Missing Short Description}}
     281 *
     282 * {@internal Missing Long Description}}
     283 *
     284 * @since 2.2.0
     285 *
     286 * @param unknown_type $name {@internal Missing Description}}
     287 * @param unknown_type $control_callback {@internal Missing Description}}
     288 * @param unknown_type $width {@internal Missing Description}}
     289 * @param unknown_type $height {@internal Missing Description}}
     290 */
    138291function register_widget_control($name, $control_callback, $width = '', $height = '') {
    139292        // Compat
    140293        if ( is_array($name) ) {
     
    164317 *   id_base: for multi-widgets (widgets which allow multiple instances such as the text widget), an id_base must be provided.
    165318 *            the widget id will ennd up looking like {$id_base}-{$unique_number}
    166319 */
     320/**
     321 * wp_register_widget_control() - {@internal Missing Short Description}}
     322 *
     323 * {@internal Missing Long Description}}
     324 *
     325 * @since 2.2.0
     326 *
     327 * @param int $id {@internal Missing Description}}
     328 * @param string $name {@internal Missing Description}}
     329 * @param callback $control_callback {@internal Missing Description}}
     330 * @param array|string $options {@internal Missing Description}}
     331 */
    167332function wp_register_widget_control($id, $name, $control_callback, $options = array()) {
    168333        global $wp_registered_widget_controls;
    169334
     
    193358        $wp_registered_widget_controls[$id] = $widget;
    194359}
    195360
     361/**
     362 * unregister_widget_control() - Alias of wp_unregister_widget_control()
     363 *
     364 * @since 2.2.0
     365 * @see wp_unregister_widget_control()
     366 *
     367 * @param int $id Widget ID
     368 */
    196369function unregister_widget_control($id) {
    197370        return wp_unregister_widget_control($id);
    198371}
    199372
     373/**
     374 * wp_unregister_widget_control() - {@internal Missing Short Description}}
     375 *
     376 * {@internal Missing Long Description}}
     377 *
     378 * @since 2.2.0
     379 * @uses wp_register_widget_control() {@internal Missing Description}}
     380 *
     381 * @param int $id {@internal Missing Description}}
     382 */
    200383function wp_unregister_widget_control($id) {
    201384        return wp_register_widget_control($id, '', '');
    202385}
    203386
     387/**
     388 * dynamic_sidebar() - {@internal Missing Short Description}}
     389 *
     390 * {@internal Missing Long Description}}
     391 *
     392 * @since 2.2.0
     393 *
     394 * @param unknown_type $index
     395 * @return unknown
     396 */
    204397function dynamic_sidebar($index = 1) {
    205398        global $wp_registered_sidebars, $wp_registered_widgets;
    206399
     
    254447        return $did_one;
    255448}
    256449
     450/**
     451 * is_active_widget() - {@internal Missing Short Description}}
     452 *
     453 * {@internal Missing Long Description}}
     454 *
     455 * @since 2.2.0
     456 *
     457 * @param unknown_type $callback
    257458/* @return mixed false if widget is not active or id of sidebar in which the widget is active
    258459 */
    259460function is_active_widget($callback, $widget_id = false) {
     
    271472        return false;
    272473}
    273474
     475/**
     476 * is_dynamic_sidebar() - {@internal Missing Short Description}}
     477 *
     478 * {@internal Missing Long Description}}
     479 *
     480 * @since 2.2.0
     481 *
     482 * @return unknown
     483 */
    274484function is_dynamic_sidebar() {
    275485        global $wp_registered_widgets, $wp_registered_sidebars;
    276486        $sidebars_widgets = get_option('sidebars_widgets');
     
    286496
    287497/* Internal Functions */
    288498
     499/**
     500 * wp_get_sidebars_widgets() - {@internal Missing Short Description}}
     501 *
     502 * {@internal Missing Long Description}}
     503 *
     504 * @since 2.2.0
     505 * @access private
     506 *
     507 * @param unknown_type $update
     508 * @return unknown
     509 */
    289510function wp_get_sidebars_widgets($update = true) {
    290511        global $wp_registered_widgets, $wp_registered_sidebars;
    291512
     
    364585        return $sidebars_widgets;
    365586}
    366587
     588/**
     589 * wp_set_sidebars_widgets() - {@internal Missing Short Description}}
     590 *
     591 * {@internal Missing Long Description}}
     592 *
     593 * @since 2.2.0
     594 * @access private
     595 * @uses update_option()
     596 *
     597 * @param unknown_type $sidebars_widgets
     598 */
    367599function wp_set_sidebars_widgets( $sidebars_widgets ) {
    368600        update_option( 'sidebars_widgets', $sidebars_widgets );
    369601}
    370602
     603/**
     604 * wp_get_widget_defaults() - {@internal Missing Short Description}}
     605 *
     606 * {@internal Missing Long Description}}
     607 *
     608 * @since 2.2.0
     609 * @access private
     610 *
     611 * @return unknown
     612 */
    371613function wp_get_widget_defaults() {
    372614        global $wp_registered_sidebars;
    373615
     
    381623
    382624/* Default Widgets */
    383625
     626/**
     627 * wp_widget_pages() - {@internal Missing Short Description}}
     628 *
     629 * {@internal Missing Long Description}}
     630 *
     631 * @since 2.2.0
     632 *
     633 * @param unknown_type $args
     634 */
    384635function wp_widget_pages( $args ) {
    385636        extract( $args );
    386637        $options = get_option( 'widget_pages' );
     
    407658        }
    408659}
    409660
     661/**
     662 * wp_widget_pages_control() - {@internal Missing Short Description}}
     663 *
     664 * {@internal Missing Long Description}}
     665 *
     666 * @since 2.2.0
     667 */
    410668function wp_widget_pages_control() {
    411669        $options = $newoptions = get_option('widget_pages');
    412670        if ( $_POST['pages-submit'] ) {
     
    448706<?php
    449707}
    450708
     709/**
     710 * wp_widget_links() - {@internal Missing Short Description}}
     711 *
     712 * {@internal Missing Long Description}}
     713 *
     714 * @since 2.2.0
     715 *
     716 * @param unknown_type $args
     717 */
    451718function wp_widget_links($args) {
    452719        extract($args, EXTR_SKIP);
    453720
     
    459726        )));
    460727}
    461728
     729/**
     730 * wp_widget_search() - {@internal Missing Short Description}}
     731 *
     732 * {@internal Missing Long Description}}
     733 *
     734 * @since 2.2.0
     735 *
     736 * @param unknown_type $args
     737 */
    462738function wp_widget_search($args) {
    463739        extract($args);
    464740        $searchform_template = get_template_directory() . '/searchform.php';
     
    479755        echo $after_widget;
    480756}
    481757
     758/**
     759 * wp_widget_archives() - {@internal Missing Short Description}}
     760 *
     761 * {@internal Missing Long Description}}
     762 *
     763 * @since 2.2.0
     764 *
     765 * @param unknown_type $args
     766 */
    482767function wp_widget_archives($args) {
    483768        extract($args);
    484769        $options = get_option('widget_archives');
     
    504789        echo $after_widget;
    505790}
    506791
     792/**
     793 * wp_widget_archives_control() - {@internal Missing Short Description}}
     794 *
     795 * {@internal Missing Long Description}}
     796 *
     797 * @since 2.2.0
     798 */
    507799function wp_widget_archives_control() {
    508800        $options = $newoptions = get_option('widget_archives');
    509801        if ( $_POST["archives-submit"] ) {
     
    529821<?php
    530822}
    531823
     824/**
     825 * wp_widget_meta() - {@internal Missing Short Description}}
     826 *
     827 * {@internal Missing Long Description}}
     828 *
     829 * @since 2.2.0
     830 *
     831 * @param unknown_type $args
     832 */
    532833function wp_widget_meta($args) {
    533834        extract($args);
    534835        $options = get_option('widget_meta');
     
    547848                <?php echo $after_widget; ?>
    548849<?php
    549850}
     851
     852/**
     853 * wp_widget_meta_control() - {@internal Missing Short Description}}
     854 *
     855 * {@internal Missing Long Description}}
     856 *
     857 * @since 2.2.0
     858 */
    550859function wp_widget_meta_control() {
    551860        $options = $newoptions = get_option('widget_meta');
    552861        if ( $_POST["meta-submit"] ) {
     
    563872<?php
    564873}
    565874
     875/**
     876 * wp_widget_calendar() - {@internal Missing Short Description}}
     877 *
     878 * {@internal Missing Long Description}}
     879 *
     880 * @since 2.2.0
     881 *
     882 * @param unknown_type $args
     883 */
    566884function wp_widget_calendar($args) {
    567885        extract($args);
    568886        $options = get_option('widget_calendar');
     
    575893        echo '</div>';
    576894        echo $after_widget;
    577895}
     896
     897/**
     898 * wp_widget_calendar_control() - {@internal Missing Short Description}}
     899 *
     900 * {@internal Missing Long Description}}
     901 *
     902 * @since 2.2.0
     903 */
    578904function wp_widget_calendar_control() {
    579905        $options = $newoptions = get_option('widget_calendar');
    580906        if ( $_POST["calendar-submit"] ) {
     
    591917<?php
    592918}
    593919
     920/**
     921 * wp_widget_text() - {@internal Missing Short Description}}
     922 *
     923 * {@internal Missing Long Description}}
     924 *
     925 * @since 2.2.0
     926 *
     927 * @param unknown_type $args
     928 * @param unknown_type $number
     929 */
    594930// See large comment section at end of this file
    595931function wp_widget_text($args, $widget_args = 1) {
    596932        extract( $args, EXTR_SKIP );
     
    613949<?php
    614950}
    615951
     952/**
     953 * wp_widget_text_control() - {@internal Missing Short Description}}
     954 *
     955 * {@internal Missing Long Description}}
     956 *
     957 * @since 2.2.0
     958 *
     959 * @param unknown_type $number
     960 */
    616961function wp_widget_text_control($widget_args) {
    617962        global $wp_registered_widgets;
    618963        static $updated = false;
     
    6751020<?php
    6761021}
    6771022
     1023/**
     1024 * wp_widget_text_register() - {@internal Missing Short Description}}
     1025 *
     1026 * {@internal Missing Long Description}}
     1027 *
     1028 * @since 2.2.0
     1029 */
    6781030function wp_widget_text_register() {
    6791031        if ( !$options = get_option('widget_text') )
    6801032                $options = array();
     
    6991051        }
    7001052}
    7011053
     1054/**
     1055 * wp_widget_categories() - {@internal Missing Short Description}}
     1056 *
     1057 * {@internal Missing Long Description}}
     1058 *
     1059 * @since 2.2.0
     1060 *
     1061 * @param unknown_type $args
     1062 * @param unknown_type $number
     1063 */
    7021064// See large comment section at end of this file
    7031065function wp_widget_categories($args, $widget_args = 1) {
    7041066        extract($args, EXTR_SKIP);
     
    7541116        echo $after_widget;
    7551117}
    7561118
     1119/**
     1120 * wp_widget_categories_control() - {@internal Missing Short Description}}
     1121 *
     1122 * {@internal Missing Long Description}}
     1123 *
     1124 * @since 2.2.0
     1125 *
     1126 * @param unknown_type $number
     1127 */
    7571128function wp_widget_categories_control( $widget_args ) {
    7581129        global $wp_registered_widgets;
    7591130        static $updated = false;
     
    8401211<?php
    8411212}
    8421213
     1214/**
     1215 * wp_widget_categories_register() - {@internal Missing Short Description}}
     1216 *
     1217 * {@internal Missing Long Description}}
     1218 *
     1219 * @since 2.3.0
     1220 */
    8431221function wp_widget_categories_register() {
    8441222        if ( !$options = get_option( 'widget_categories' ) )
    8451223                $options = array();
     
    8681246        }
    8691247}
    8701248
     1249/**
     1250 * wp_widget_categories_upgrade() - {@internal Missing Short Description}}
     1251 *
     1252 * {@internal Missing Long Description}}
     1253 *
     1254 * @since 2.3.0
     1255 *
     1256 * @return unknown
     1257 */
    8711258function wp_widget_categories_upgrade() {
    8721259        $options = get_option( 'widget_categories' );
    8731260
     
    8951282        return $newoptions;
    8961283}
    8971284
     1285/**
     1286 * wp_widget_recent_entries() - {@internal Missing Short Description}}
     1287 *
     1288 * {@internal Missing Long Description}}
     1289 *
     1290 * @since 2.2.0
     1291 *
     1292 * @param unknown_type $args
     1293 * @return unknown
     1294 */
    8981295function wp_widget_recent_entries($args) {
    8991296        if ( '%BEG_OF_TITLE%' != $args['before_title'] ) {
    9001297                if ( $output = wp_cache_get('widget_recent_entries', 'widget') )
     
    9311328                wp_cache_add('widget_recent_entries', ob_get_flush(), 'widget');
    9321329}
    9331330
     1331/**
     1332 * wp_flush_widget_recent_entries() - {@internal Missing Short Description}}
     1333 *
     1334 * {@internal Missing Long Description}}
     1335 *
     1336 * @since 2.2.0
     1337 */
    9341338function wp_flush_widget_recent_entries() {
    9351339        wp_cache_delete('widget_recent_entries', 'widget');
    9361340}
     
    9391343add_action('deleted_post', 'wp_flush_widget_recent_entries');
    9401344add_action('switch_theme', 'wp_flush_widget_recent_entries');
    9411345
     1346/**
     1347 * wp_widget_recent_entries_control() - {@internal Missing Short Description}}
     1348 *
     1349 * {@internal Missing Long Description}}
     1350 *
     1351 * @since 2.2.0
     1352 */
    9421353function wp_widget_recent_entries_control() {
    9431354        $options = $newoptions = get_option('widget_recent_entries');
    9441355        if ( $_POST["recent-entries-submit"] ) {
     
    9651376<?php
    9661377}
    9671378
     1379/**
     1380 * wp_widget_recent_comments() - {@internal Missing Short Description}}
     1381 *
     1382 * {@internal Missing Long Description}}
     1383 *
     1384 * @since 2.2.0
     1385 *
     1386 * @param unknown_type $args
     1387 */
    9681388function wp_widget_recent_comments($args) {
    9691389        global $wpdb, $comments, $comment;
    9701390        extract($args, EXTR_SKIP);
     
    9931413<?php
    9941414}
    9951415
     1416/**
     1417 * wp_delete_recent_comments_cache() - {@internal Missing Short Description}}
     1418 *
     1419 * {@internal Missing Long Description}}
     1420 *
     1421 * @since 2.2.0
     1422 */
    9961423function wp_delete_recent_comments_cache() {
    9971424        wp_cache_delete( 'recent_comments', 'widget' );
    9981425}
    9991426add_action( 'comment_post', 'wp_delete_recent_comments_cache' );
    10001427add_action( 'wp_set_comment_status', 'wp_delete_recent_comments_cache' );
    10011428
     1429/**
     1430 * wp_widget_recent_comments_control() - {@internal Missing Short Description}}
     1431 *
     1432 * {@internal Missing Long Description}}
     1433 *
     1434 * @since 2.2.0
     1435 */
    10021436function wp_widget_recent_comments_control() {
    10031437        $options = $newoptions = get_option('widget_recent_comments');
    10041438        if ( $_POST["recent-comments-submit"] ) {
     
    10241458<?php
    10251459}
    10261460
     1461/**
     1462 * wp_widget_recent_comments_style() - {@internal Missing Short Description}}
     1463 *
     1464 * {@internal Missing Long Description}}
     1465 *
     1466 * @since 2.2.0
     1467 */
    10271468function wp_widget_recent_comments_style() {
    10281469?>
    10291470<style type="text/css">.recentcomments a{display:inline !important;padding: 0 !important;margin: 0 !important;}</style>
    10301471<?php
    10311472}
    10321473
     1474/**
     1475 * wp_widget_recent_comments_register() - {@internal Missing Short Description}}
     1476 *
     1477 * {@internal Missing Long Description}}
     1478 *
     1479 * @since 2.2.0
     1480 */
    10331481function wp_widget_recent_comments_register() {
    10341482        $widget_ops = array('classname' => 'widget_recent_comments', 'description' => __( 'The most recent comments' ) );
    10351483        wp_register_sidebar_widget('recent-comments', __('Recent Comments'), 'wp_widget_recent_comments', $widget_ops);
     
    10391487                add_action('wp_head', 'wp_widget_recent_comments_style');
    10401488}
    10411489
     1490/**
     1491 * wp_widget_rss() - {@internal Missing Short Description}}
     1492 *
     1493 * {@internal Missing Long Description}}
     1494 *
     1495 * @since 2.2.0
     1496 *
     1497 * @param unknown_type $args
     1498 * @param unknown_type $number
     1499 */
    10421500// See large comment section at end of this file
    10431501function wp_widget_rss($args, $widget_args = 1) {
    10441502        extract($args, EXTR_SKIP);
     
    11741632        }
    11751633}
    11761634
     1635/**
     1636 * wp_widget_rss_control() - {@internal Missing Short Description}}
     1637 *
     1638 * {@internal Missing Long Description}}
     1639 *
     1640 * @since 2.2.0
     1641 *
     1642 * @param unknown_type $widget_args
     1643 */
    11771644function wp_widget_rss_control($widget_args) {
    11781645        global $wp_registered_widgets;
    11791646        static $updated = false;
     
    13381805        return compact( 'title', 'url', 'link', 'items', 'error', 'show_summary', 'show_author', 'show_date' );
    13391806}
    13401807
     1808/**
     1809 * wp_widget_rss_register() - {@internal Missing Short Description}}
     1810 *
     1811 * {@internal Missing Long Description}}
     1812 *
     1813 * @since 2.2.0
     1814 */
    13411815function wp_widget_rss_register() {
    13421816        if ( !$options = get_option('widget_rss') )
    13431817                $options = array();
     
    13621836        }
    13631837}
    13641838
     1839/**
     1840 * wp_widget_tag_cloud() - {@internal Missing Short Description}}
     1841 *
     1842 * {@internal Missing Long Description}}
     1843 *
     1844 * @since 2.3.0
     1845 *
     1846 * @param unknown_type $args
     1847 */
    13651848function wp_widget_tag_cloud($args) {
    13661849        extract($args);
    13671850        $options = get_option('widget_tag_cloud');
     
    13731856        echo $after_widget;
    13741857}
    13751858
     1859/**
     1860 * wp_widget_tag_cloud_control() - {@internal Missing Short Description}}
     1861 *
     1862 * {@internal Missing Long Description}}
     1863 *
     1864 * @since 2.3.0
     1865 */
    13761866function wp_widget_tag_cloud_control() {
    13771867        $options = $newoptions = get_option('widget_tag_cloud');
    13781868
     
    13941884<?php
    13951885}
    13961886
     1887/**
     1888 * wp_widgets_init() - {@internal Missing Short Description}}
     1889 *
     1890 * {@internal Missing Long Description}}
     1891 *
     1892 * @since 2.2.0
     1893 */
    13971894function wp_widgets_init() {
    13981895        if ( !is_blog_installed() )
    13991896                return;