Maison  >  Article  >  Tutoriel CMS  >  Comment ajouter une fonctionnalité de gestion de nuage de tags au plugin WordPress

Comment ajouter une fonctionnalité de gestion de nuage de tags au plugin WordPress

王林
王林original
2023-09-05 11:28:421482parcourir

Comment ajouter une fonctionnalité de gestion de nuage de tags au plugin WordPress

Comment ajouter une fonction de gestion de nuage de tags au plugin WordPress

Introduction :
WordPress est un système de gestion de contenu open source puissant et facile à utiliser. Il fournit de riches fonctions d'extension via des plug-ins, permettant aux utilisateurs de personnaliser facilement le site Web en fonction de leurs besoins. Parmi eux, Tag Cloud est une fonction courante qui permet aux utilisateurs d'afficher la popularité de différentes balises sous une forme semblable à un nuage ou de les classer par ordre alphabétique. Cet article vous expliquera comment ajouter une fonctionnalité de gestion de nuage de balises aux plugins WordPress et fournira des exemples de code correspondants.

Étape 1 : Comprendre les principes du nuage de balises WordPress
Dans WordPress, les balises sont un moyen de classer les articles. Le nuage de balises organise différentes balises selon leur popularité ou par ordre alphabétique et les affiche sur les pages du site Web selon certaines règles. La popularité d’un tag est généralement mesurée en comptant le nombre d’articles sous le tag.

Étape 2 : Créer une page de gestion des nuages ​​de tags
Tout d'abord, nous devons créer une page de gestion des nuages ​​de tags. Créez un dossier appelé « admin » dans votre dossier plugins, et dans ce dossier, créez un fichier appelé « tag-cloud.php ». Dans ce fichier, nous utiliserons la structure de la page d’administration de WordPress et ajouterons les formulaires et le code appropriés.

<?php
function tag_cloud_page() {
    ?>
    <div class="wrap">
        <h1><?php esc_html_e( '标签云管理', 'text-domain' ); ?></h1>
        <form method="post" action="<?php echo esc_url( admin_url( 'admin-post.php' ) ); ?>">
            <input type="hidden" name="action" value="update_tag_cloud_settings">
            <?php wp_nonce_field( 'tag_cloud_settings_action', 'tag_cloud_settings_nonce' ); ?>
            <h2><?php esc_html_e( '标签云设置', 'text-domain' ); ?></h2>
            <table class="form-table">
                <tr>
                    <th scope="row">
                        <label for="tag_cloud_min_font_size"><?php esc_html_e( '最小字体大小', 'text-domain' ); ?></label>
                    </th>
                    <td>
                        <input type="number" name="tag_cloud_min_font_size" id="tag_cloud_min_font_size" value="<?php echo esc_attr( get_option( 'tag_cloud_min_font_size', 12 ) ); ?>" class="regular-text" min="10" max="48" step="2">
                        <p class="description"><?php esc_html_e( '标签云中最小标签的字体大小(单位:像素)', 'text-domain' ); ?></p>
                    </td>
                </tr>
                <tr>
                    <th scope="row">
                        <label for="tag_cloud_max_font_size"><?php esc_html_e( '最大字体大小', 'text-domain' ); ?></label>
                    </th>
                    <td>
                        <input type="number" name="tag_cloud_max_font_size" id="tag_cloud_max_font_size" value="<?php echo esc_attr( get_option( 'tag_cloud_max_font_size', 24 ) ); ?>" class="regular-text" min="24" max="72" step="2">
                        <p class="description"><?php esc_html_e( '标签云中最大标签的字体大小(单位:像素)', 'text-domain' ); ?></p>
                    </td>
                </tr>
            </table>
            <?php submit_button(); ?>
        </form>
    </div>
    <?php
}

Étape 3 : Gérer l'opération de sauvegarde des paramètres
Ensuite, nous devons gérer l'opération de soumission du formulaire de la page de gestion du nuage de tags et enregistrer les paramètres dans la base de données. Dans le fichier principal de votre plugin, ajoutez le code suivant :

<?php
function save_tag_cloud_settings(){
    if ( ! current_user_can( 'manage_options' ) ) {
        wp_die( esc_html__( '你没有权限进行此操作!', 'text-domain' ) );
    }

    check_admin_referer( 'tag_cloud_settings_action', 'tag_cloud_settings_nonce' );

    $min_font_size = isset( $_POST['tag_cloud_min_font_size'] ) ? intval( $_POST['tag_cloud_min_font_size'] ) : 12;
    $max_font_size = isset( $_POST['tag_cloud_max_font_size'] ) ? intval( $_POST['tag_cloud_max_font_size'] ) : 24;

    update_option( 'tag_cloud_min_font_size', $min_font_size );
    update_option( 'tag_cloud_max_font_size', $max_font_size );

    wp_redirect( add_query_arg( 'message', '1', admin_url( 'admin.php?page=tag-cloud' ) ) );
    exit;
}
add_action( 'admin_post_update_tag_cloud_settings', 'save_tag_cloud_settings' );

Étape 4 : Ajoutez le lien du menu vers la page d'administration
Enfin, nous devons ajouter le lien vers la page d'administration du nuage de tags au menu d'administration de WordPress. Dans le fichier principal de votre plug-in, ajoutez le code suivant :

<?php
function add_tag_cloud_management_menu() {
    add_submenu_page(
        'options-general.php',
        '标签云管理',
        '标签云管理',
        'manage_options',
        'tag-cloud',
        'tag_cloud_page'
    );
}
add_action( 'admin_menu', 'add_tag_cloud_management_menu' );

Conclusion :
Grâce aux étapes ci-dessus, nous avons ajouté avec succès la fonction de gestion des nuages ​​de tags. Vous pouvez ajuster la taille de police minimale et maximale du nuage de tags en fonction de vos besoins et l'appliquer à votre plugin WordPress. J'espère que cet article pourra être utile à votre travail de développement !

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!

Déclaration:
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