--- a/wp/wp-admin/includes/class-wp-links-list-table.php Thu Sep 29 08:06:27 2022 +0200
+++ b/wp/wp-admin/includes/class-wp-links-list-table.php Fri Sep 05 18:40:08 2025 +0200
@@ -11,7 +11,6 @@
* Core class used to implement displaying links in a list table.
*
* @since 3.1.0
- * @access private
*
* @see WP_List_Table
*/
@@ -51,7 +50,10 @@
public function prepare_items() {
global $cat_id, $s, $orderby, $order;
- wp_reset_vars( array( 'action', 'cat_id', 'link_id', 'orderby', 'order', 's' ) );
+ $cat_id = ! empty( $_REQUEST['cat_id'] ) ? absint( $_REQUEST['cat_id'] ) : 0;
+ $orderby = ! empty( $_REQUEST['orderby'] ) ? sanitize_text_field( $_REQUEST['orderby'] ) : '';
+ $order = ! empty( $_REQUEST['order'] ) ? sanitize_text_field( $_REQUEST['order'] ) : '';
+ $s = ! empty( $_REQUEST['s'] ) ? sanitize_text_field( $_REQUEST['s'] ) : '';
$args = array(
'hide_invisible' => 0,
@@ -125,7 +127,7 @@
}
/**
- * @return array
+ * @return string[] Array of column titles keyed by their column name.
*/
public function get_columns() {
return array(
@@ -144,15 +146,15 @@
*/
protected function get_sortable_columns() {
return array(
- 'name' => 'name',
- 'url' => 'url',
- 'visible' => 'visible',
- 'rating' => 'rating',
+ 'name' => array( 'name', false, _x( 'Name', 'link name' ), __( 'Table ordered by Name.' ), 'asc' ),
+ 'url' => array( 'url', false, __( 'URL' ), __( 'Table ordered by URL.' ) ),
+ 'visible' => array( 'visible', false, __( 'Visible' ), __( 'Table ordered by Visibility.' ) ),
+ 'rating' => array( 'rating', false, __( 'Rating' ), __( 'Table ordered by Rating.' ) ),
);
}
/**
- * Get the name of the default primary column.
+ * Gets the name of the default primary column.
*
* @since 4.3.0
*
@@ -175,13 +177,15 @@
$link = $item;
?>
- <label class="screen-reader-text" for="cb-select-<?php echo $link->link_id; ?>">
+ <input type="checkbox" name="linkcheck[]" id="cb-select-<?php echo $link->link_id; ?>" value="<?php echo esc_attr( $link->link_id ); ?>" />
+ <label for="cb-select-<?php echo $link->link_id; ?>">
+ <span class="screen-reader-text">
<?php
- /* translators: %s: Link name. */
+ /* translators: Hidden accessibility text. %s: Link name. */
printf( __( 'Select %s' ), $link->link_name );
?>
+ </span>
</label>
- <input type="checkbox" name="linkcheck[]" id="cb-select-<?php echo $link->link_id; ?>" value="<?php echo esc_attr( $link->link_id ); ?>" />
<?php
}
@@ -289,6 +293,9 @@
* @param string $column_name Current column name.
*/
public function column_default( $item, $column_name ) {
+ // Restores the more descriptive, specific name for use within this method.
+ $link = $item;
+
/**
* Fires for each registered custom link column.
*
@@ -297,7 +304,7 @@
* @param string $column_name Name of the custom column.
* @param int $link_id Link ID.
*/
- do_action( 'manage_link_custom_column', $column_name, $item->link_id );
+ do_action( 'manage_link_custom_column', $column_name, $link->link_id );
}
public function display_rows() {
@@ -331,7 +338,8 @@
}
// Restores the more descriptive, specific name for use within this method.
- $link = $item;
+ $link = $item;
+
$edit_link = get_edit_bookmark_link( $link );
$actions = array();