web-dev-qa-db-fra.com

right_now_content_table_end la fonction ne fonctionne pas?

J'ai récemment remarqué que mes comptes personnalisés pour les types d'articles personnalisés n'apparaissaient pas sur le tableau de bord. J'utilise cette fonction:

right_now_content_table_end

Cela fonctionnait bien avant, je ne sais pas quand il a cessé de fonctionner, mais je pense qu'après la mise à jour vers 3.8?

Ou y a-t-il une nouvelle fonction à utiliser avec le nouveau tableau de bord en 3.8?

Merci d'avance.

1
Richard Mišenčík

La nouvelle action est dashboard_glance_items. C'est un filtre fournissant un tableau auquel vous pouvez ajouter des éléments.

Exemple tiré de mon plugin Emplacement de la taxonomie T5

add_filter(
    'dashboard_glance_items',
    array ( $this, 'add_to_glance' )
);


/**
 * Add locations to the new "At a glance" dashboard widget.
 *
 * @param  array $items
 * @return array
 */
public function add_to_glance( Array $items )
{
    $num  = wp_count_terms( $this->taxonomy );
    // Singular or Plural.
    $text = _n(
        '%s Location',
        '%s Locations',
        $num,
        'plugin_t5_tax_location'
    );
    // thousands separator etc.
    $text = sprintf( $text, number_format_i18n( $num ) );

    if ( current_user_can( "manage_$this->taxonomy" ) )
    {
        $url  = admin_url( "edit-tags.php?taxonomy=$this->taxonomy" );
        $text = "<a href='$url'>$text</a>";
    }

    $items[] = $text;

    return $items;
}

Ce changement n'est pas rétrocompatible et plutôt… sale. Voir ticket # 26571 pour connaître les problèmes et les solutions possibles.

2
fuxia

La nouvelle chose est essentiellement un widget différent et ce crochet a été supprimé du noyau. Le remplacement le plus proche est le nouveau filtre dashboard_glance_items.

Voir les tickets de transport:

0
Rarst

S'il vous plaît vérifier cette fonction. Je crois que c'est une solution temporaire, mais cela fonctionne pour moi. Plus d'informations peuvent être trouvées ici: Ajouter des types de publication personnalisés et des taxonomies au widget de tableau de bord En bref

add_action( 'dashboard_glance_items', 'cor_right_now_content_table_end' );
function cor_right_now_content_table_end() {
$args = array(
    'public' => true,
    '_builtin' => false
);
$output = 'object';
$operator = 'and';

$post_types = get_post_types( $args, $output, $operator );
foreach ( $post_types as $post_type ) {
    $num_posts = wp_count_posts( $post_type->name );
    $num = number_format_i18n( $num_posts->publish );
    $text = _n( $post_type->labels->singular_name, $post_type->labels->name, intval( $num_posts->publish ) );
    if ( current_user_can( 'edit_posts' ) ) {
        $output = '<a href="edit.php?post_type=' . $post_type->name . '">' . $num . '&nbsp;' . $text . '</a>';
    }
    echo '<li class="post-count ' . $post_type->name . '-count">' . $output . '</li>';
}
$taxonomies = get_taxonomies( $args, $output, $operator );
foreach ( $taxonomies as $taxonomy ) {
    $num_terms = wp_count_terms( $taxonomy->name );
    $num = number_format_i18n( $num_terms );
    $text = _n( $taxonomy->labels->singular_name, $taxonomy->labels->name, intval( $num_terms ) );
    if ( current_user_can( 'manage_categories' ) ) {
        $output = '<a href="edit-tags.php?taxonomy=' . $taxonomy->name . '">' . $num . '&nbsp;' . $text . '</a>';
    }
    echo '<li class="taxonomy-count ' . $taxonomy->name . '-count">' . $output . '</li>';
}
}

// Add Some CSS to "At a Glance" Widget
function custom_colors() {
echo '<style type="text/css">
    .slides-count a:before {content:"\f233"!important}
    .gallery-count a:before {content:"\f163"!important}
    </style>';
}
add_action('admin_head', 'custom_colors');
0
Viktor Kovalenko