Maison > Tutoriel CMS > WordPresse > le corps du texte

Comment filtrer les articles de taxonomie dans WordPress ?

阿诚
Libérer: 2022-07-28 09:17:55
original
2516 Les gens l'ont consulté

La colonne tutorielle WordPress suivante vous présentera comment WordPress filtre les articles d'arrière-plan. J'espère qu'elle sera utile aux amis qui en ont besoin !

En plus de sa propre classification d'articles, wordpress prend également en charge les classifications personnalisées, ce qui signifie que vous pouvez enregistrer des classifications d'articles personnalisées en fonction de vos propres besoins.

Comment enregistrer votre propre taxonomie personnalisée ?

Ouvrez d'abord le fichier de fonction principale de WordPress, fonctions.php et insérez le code suivant à la position appropriée

function my_custom_post_courses() {
  $labels = array(
    'name'               => _x( 'courses', 'post type 名称' ),
    'singular_name'      => _x( 'my_courses', 'post type 单个 item 时的名称'),
    'add_new'            => _x( '增加课程', '添加新内容的链接名称' ),
    'add_new_item'       => __( '增加一个课程' ),
    'edit_item'          => __( '编辑课程' ),
    'new_item'           => __( '新课程' ),
    'all_items'          => __( '所有课程' ),
    'view_item'          => __( '查看课程' ),
    'search_items'       => __( '搜索课程' ),
    'not_found'          => __( '没有找到有关课程' ),
    'not_found_in_trash' => __( '回收站里面没有相关课程' ),
    'parent_item_colon'  => '',
    'menu_name'          => '课程'
  );
  $args = array(
    'labels'        => $labels,
    'description'   => '我们网站的课程信息',
    'public'        => true,
    'menu_position' => 5,
    'supports'      => array( 'title', 'editor', 'thumbnail', 'excerpt', 'comments' ),
    'has_archive'   => true
  );
    register_post_type( 'my_courses', $args );
  }
  add_action( 'init', 'my_custom_post_courses' );
Copier après la connexion

De cette façon, nous avons enregistré une taxonomie personnalisée nommée 'Cours ' Après avoir défini la taxonomie, l'étape suivante consiste à configurer les articles filtrés.

Si vous avez beaucoup d'articles ou de produits, il nous est nécessaire d'ajouter une fonction de filtrage à la page de liste d'articles du backend WordPress, comme indiqué ci-dessous :

Comment filtrer les articles de taxonomie dans WordPress ?

Pour mettre en œuvre la fonction de filtrage, deux étapes sont nécessaires

La première étape est la même Ajoutez des fonctions d'arrière-plan au fichier function.php pour que la page de liste affiche cette sélection de catégorie

add_action('restrict_manage_posts', 'mycat_add_select_int');
function mycat_add_select_int(){
       global $typenow;
       global $wp_query;
       if ($typenow == 'course') {
              return wp_dropdown_categories(array(
                     'show_option_all' => '课程分类',
                     'taxonomy' => 'course_list',
                     'name' => 'course_list',
                     'orderby' => 'name',
                     'selected' => @$wp_query->query['course_list'],
                     'hierarchical' => true,
                     'depth' => 5,
                     'show_count' => true,
                     'hide_empty' => false,
              ));
       }
}
Copier après la connexion

La deuxième étape consiste à implémenter la fonction de filtrage

add_filter('parse_query', 'mycats_add_query_init');
function mycats_add_query_init($query){
       $qv = &$query->query_vars;
       if (($qv['course_list']) && is_numeric($qv['course_list'])) {
              $term = get_term_by('id', $qv['course_list'],'course_list');
              $qv['course_list'] = $term->slug;
       }
}
Copier après la connexion

Vous pouvez facilement implémenter la fonction de filtrage des articles en arrière-plan avec juste les deux étapes ci-dessus Pour les webmasters de blogs Ou c'est très pratique pour les webmasters qui ont de nombreux articles backend sur leur site Web.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal