WordPressプラグインにタグクラウド管理機能を追加する方法

王林
リリース: 2023-09-05 11:28:42
オリジナル
1528 人が閲覧しました

WordPressプラグインにタグクラウド管理機能を追加する方法

WordPress プラグインにタグクラウド管理機能を追加する方法

はじめに:
WordPress は、強力で使いやすいオープンソースのコンテンツ管理システムです。 。プラグインによる豊富な拡張機能を備えており、ユーザーのニーズに合わせて簡単にWebサイトをカスタマイズできます。中でもタグクラウドは、さまざまなタグの人気度を雲状に表示したり、アルファベット順に並べたりできる共通機能です。この記事では、WordPress プラグインにタグクラウド管理機能を追加する方法と、対応するコード例を紹介します。

ステップ 1: WordPress タグクラウドの原理を理解する
WordPress では、タグ (タグ) は記事を分類する方法です。タグクラウドは、さまざまなタグを人気順やアルファベット順に並べ、一定のルールに従ってWebサイトのページに表示します。タグの人気は通常、タグの下にある記事の数を数えることによって測定されます。

ステップ 2: タグ クラウド管理ページを作成する
まず、タグ クラウドを管理するためのページを作成する必要があります。 plugins フォルダー内に「admin」というフォルダーを作成し、そのフォルダー内に「tag-cloud.php」というファイルを作成します。このファイルでは、WordPress の管理ページ構造を使用し、適切なフォームとコードを追加します。

<?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
}
ログイン後にコピー

ステップ 3: 設定保存操作を処理する
次に、タグ クラウド管理ページ フォームの送信操作を処理し、設定をデータベースに保存する必要があります。プラグインのメイン ファイルに、次のコードを追加します。

<?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' );
ログイン後にコピー

ステップ 4: 管理ページにメニュー リンクを追加する
最後に、タグ クラウド管理ページへのリンクを WordPress 管理者に追加する必要があります。メニュー。プラグインのメイン ファイルに、次のコードを追加します。

<?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' );
ログイン後にコピー

結論:
上記の手順により、タグ クラウド管理機能を追加することができました。ニーズに応じてタグクラウドの最小および最大フォントサイズを調整し、WordPress プラグインに適用できます。この記事があなたの開発作業に役立つことを願っています。

以上がWordPressプラグインにタグクラウド管理機能を追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート