Plugin Directory

Changeset 3352404


Ignore:
Timestamp:
08/29/2025 03:03:56 AM (4 months ago)
Author:
naibabiji
Message:

update 1.1

Location:
naiba-coming-soon/trunk
Files:
6 added
2 edited

Legend:

Unmodified
Added
Removed
  • naiba-coming-soon/trunk/naiba-coming-soon.php

    r2902178 r3352404  
    44Plugin URI: https://blog.naibabiji.com/files/wordpress-plugins/naiba-coming-soon.html
    55Description: A simple and effective coming soon plugin for WordPress.
    6 Version: 1.0
     6Version: 1.1
    77Author: 奶爸建站笔记
    88Author URI: https://blog.naibabiji.com
    99Requires at least: 5.9
    10 Tested up to: 6.2
    11 Stable tag: 1.0
     10Tested up to: 6.8.2
     11Stable tag: 1.1
    1212Requires PHP: 5.6
    1313License: GPLv2
    1414License URI: http://www.gnu.org/licenses/gpl-2.0.html
     15Text Domain: naiba-coming-soon
     16Domain Path: /languages
    1517*/
     18
     19// 注意:WordPress插件头部信息不支持翻译函数,插件名称和描述的翻译需要在.po文件中添加
    1620
    1721// Block direct access to the plugin PHP files
     
    2024}
    2125
     26// WordPress 4.6+ automatically loads translations from the languages directory
     27// No need to manually call load_plugin_textdomain() anymore
     28
     29// Register and enqueue plugin styles
     30function naiba_coming_soon_enqueue_styles() {
     31    wp_register_style('naiba-coming-soon-style', plugin_dir_url(__FILE__) . 'css/style.css', array(), '1.1');
     32    wp_enqueue_style('naiba-coming-soon-style');
     33}
     34
     35// Enqueue styles for admin pages
     36function naiba_coming_soon_admin_enqueue_styles($hook) {
     37    // Only load on dashboard and plugin settings page
     38    if ($hook === 'index.php' || $hook === 'settings_page_naiba_coming_soon_settings') {
     39        wp_enqueue_style('naiba-coming-soon-style', plugin_dir_url(__FILE__) . 'css/style.css', array(), '1.1');
     40    }
     41}
     42add_action('admin_enqueue_scripts', 'naiba_coming_soon_admin_enqueue_styles');
     43
    2244// Add Coming Soon page functionality
    2345function naiba_coming_soon_page() {
     
    2547
    2648        // Set page title meta
    27         $page_title = get_option('naiba_coming_soon_page_title', 'Coming Soon');
     49        $page_title = get_option('naiba_coming_soon_page_title', __('Coming Soon', 'naiba-coming-soon'));
    2850
    2951        // Set default page content
    30         $default_page_content = 'We are working on something awesome. Stay tuned!';
     52        $default_page_content = __('We are working on something awesome. Stay tuned!', 'naiba-coming-soon');
    3153
    3254        // Get user-defined page content
     
    4365        <head>
    4466            <title><?php echo esc_html($page_title); ?></title>
    45             <link rel="stylesheet" type="text/css" href="<?php echo esc_url( plugin_dir_url( __FILE__ ) . 'css/style.css' ); ?>">
    4667            <meta name="robots" content="noindex, nofollow">
    4768            <meta name="viewport" content="width=device-width, initial-scale=1">
     69            <?php
     70            // Properly enqueue styles
     71            naiba_coming_soon_enqueue_styles();
     72            wp_print_styles();
     73            ?>
    4874        </head>
    4975        <body>
     
    6995    if ( $screen->id === 'dashboard' ) {
    7096        $links = array(
    71             'link1' => array('name' => '1、WordPress的基本概念和术语', 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-concept.html'),
    72             'link2' => array('name' => '2、WordPress的后台管理界面', 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-dashboard.html'),
    73             'link3' => array('name' => '3、选择主题', 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-theme.html'),
    74             'link4' => array('name' => '4、安装插件', 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-plugin.html'),
    75             'link5' => array('name' => '5、创建页面', 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-pages.html'),
    76             'link6' => array('name' => '6、创建产品', 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-products.html'),
    77             'link7' => array('name' => '7、创建文章', 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-posts.html'),
    78             'link8' =>  array('name' => '8、自定义菜单', 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-menu.html'),
    79             'link9' =>  array('name' => '9、SEO优化', 'url' => 'https://blog.naibabiji.com/google-seo'),
    80             'link10' =>  array('name' => '10、速度优化', 'url' => 'https://blog.naibabiji.com/skill/speed-up-wordpress.html'),
    81             'link11' =>  array('name' => '👉建站资源导航', 'url' => 'https://blog.naibabiji.com/nav'),
     97            'link1' => array('name' => __('1、WordPress的基本概念和术语', 'naiba-coming-soon'), 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-concept.html'),
     98            'link2' => array('name' => __('2、WordPress的后台管理界面', 'naiba-coming-soon'), 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-dashboard.html'),
     99            'link3' => array('name' => __('3、选择主题', 'naiba-coming-soon'), 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-theme.html'),
     100            'link4' => array('name' => __('4、安装插件', 'naiba-coming-soon'), 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-plugin.html'),
     101            'link5' => array('name' => __('5、创建页面', 'naiba-coming-soon'), 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-pages.html'),
     102            'link6' => array('name' => __('6、创建产品', 'naiba-coming-soon'), 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-products.html'),
     103            'link7' => array('name' => __('7、创建文章', 'naiba-coming-soon'), 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-posts.html'),
     104            'link8' =>  array('name' => __('8、自定义菜单', 'naiba-coming-soon'), 'url' => 'https://blog.naibabiji.com/tutorial/wordpress-menu.html'),
     105            'link9' =>  array('name' => __('9、SEO优化', 'naiba-coming-soon'), 'url' => 'https://blog.naibabiji.com/google-seo'),
     106            'link10' =>  array('name' => __('10、速度优化', 'naiba-coming-soon'), 'url' => 'https://blog.naibabiji.com/skill/speed-up-wordpress.html'),
     107            'link11' =>  array('name' => __('👉建站资源导航', 'naiba-coming-soon'), 'url' => 'https://blog.naibabiji.com/nav'),
    82108        );
    83109        ?>
    84         <link rel="stylesheet" type="text/css" href="<?php echo esc_url( plugin_dir_url( __FILE__ ) . 'css/style.css' ); ?>">
    85110        <div class="notice notice-info is-dismissible naiba-notice">
    86111            <h2><?php esc_html_e('新手WordPress建站指引', 'naiba-coming-soon'); ?></h2>
     
    101126// Add plugin settings page
    102127function naiba_coming_soon_settings_page() {
    103 add_options_page('Naiba Coming Soon Settings', 'Naiba Coming Soon', 'manage_options', 'naiba_coming_soon_settings', 'naiba_coming_soon_settings_page_html');
     128add_options_page(__('Naiba Coming Soon Settings', 'naiba-coming-soon'), __('Naiba Coming Soon', 'naiba-coming-soon'), 'manage_options', 'naiba_coming_soon_settings', 'naiba_coming_soon_settings_page_html');
    104129}
    105130add_action('admin_menu', 'naiba_coming_soon_settings_page');
    106131
    107132function naiba_coming_soon_settings_link( $links ) {
    108     $settings_link = '<a href="admin.php?page=naiba_coming_soon_settings">插件设置</a>';
     133    $settings_link = '<a href="admin.php?page=naiba_coming_soon_settings">' . __('Settings', 'naiba-coming-soon') . '</a>';
    109134    array_push( $links, $settings_link );
    110135    return $links;
     
    116141// Display plugin settings page
    117142function naiba_coming_soon_settings_page_html() {
    118 // Check if user has appropriate permissions
    119 if (!current_user_can('manage_options')) {
    120 return;
    121 }
    122 // Get options
    123 $page_title = get_option('naiba_coming_soon_page_title', 'Coming Soon');
    124 $page_content = get_option('naiba_coming_soon_page_content', '');
    125 
    126 // Save options on form submit
    127 if (isset($_POST['naiba_coming_soon_submit'])) {
    128     $page_title = sanitize_text_field($_POST['naiba_coming_soon_page_title']);
    129     $page_content = wp_kses_post($_POST['naiba_coming_soon_page_content']);
    130 
    131     update_option('naiba_coming_soon_page_title', $page_title);
    132     update_option('naiba_coming_soon_page_content', $page_content);
    133 
    134     ?>
    135     <div id="message" class="updated notice is-dismissible"><p><?php esc_html_e('Settings saved.', 'naiba-coming-soon'); ?></p></div>
    136     <?php
    137 }
     143    // Check if user has appropriate permissions
     144    if (!current_user_can('manage_options')) {
     145        return;
     146    }
     147   
     148    // Get options
     149    $page_title = get_option('naiba_coming_soon_page_title', __('Coming Soon', 'naiba-coming-soon'));
     150    $page_content = get_option('naiba_coming_soon_page_content', '');
     151   
     152    // Save options on form submit
     153    if (isset($_POST['naiba_coming_soon_submit'])) {
     154        // Verify nonce for security
     155        if (!isset($_POST['naiba_coming_soon_nonce']) || !wp_verify_nonce(sanitize_key(wp_unslash($_POST['naiba_coming_soon_nonce'])), 'naiba_coming_soon_save_settings')) {
     156            ?>
     157            <div id="message" class="error notice is-dismissible"><p><?php esc_html_e('Security check failed. Please try again.', 'naiba-coming-soon'); ?></p></div>
     158            <?php
     159        } else {
     160            // Validate and sanitize inputs
     161            $page_title = isset($_POST['naiba_coming_soon_page_title']) ? sanitize_text_field(wp_unslash($_POST['naiba_coming_soon_page_title'])) : '';
     162            $page_content = isset($_POST['naiba_coming_soon_page_content']) ? wp_kses_post(wp_unslash($_POST['naiba_coming_soon_page_content'])) : '';
     163           
     164            // Save options
     165            update_option('naiba_coming_soon_page_title', $page_title);
     166            update_option('naiba_coming_soon_page_content', $page_content);
     167           
     168            ?>
     169            <div id="message" class="updated notice is-dismissible"><p><?php esc_html_e('Settings saved.', 'naiba-coming-soon'); ?></p></div>
     170            <?php
     171        }
     172    }
    138173?>
    139174
     
    141176    <h1><?php esc_html_e('Naiba Coming Soon Settings', 'naiba-coming-soon'); ?></h1>
    142177    <form method="post" action="">
     178        <?php wp_nonce_field('naiba_coming_soon_save_settings', 'naiba_coming_soon_nonce'); ?>
    143179        <table class="form-table">
    144180            <tr>
  • naiba-coming-soon/trunk/readme.txt

    r2902178 r3352404  
    11=== Naiba Coming Soon ===
    2 Contributors: 奶爸建站笔记
     2Contributors: naibabiji
    33Tags: coming soon, maintenance, under construction
    44Requires at least: 5.9
    5 Tested up to: 6.2
    6 Stable tag: 1.0
     5Tested up to: 6.8
     6Stable tag: 1.1
    77Requires PHP: 5.6
    88License: GPLv2 or later
     
    2121* Designed to work with any theme
    2222* Secure and follows WordPress coding standards
     23* Multilingual support (English and Chinese)
     24* Automatically adds search engine blocking instructions to prevent indexing of unfinished websites, protecting your future SEO performance
    2325
    2426== Installation ==
     
    4143== Changelog ==
    4244
     45= 1.1 =
     46* Added documentation about search engine blocking feature.
     47* Updated translations and improved multilingual support.
     48
    4349= 1.0 =
    4450* Initial release.
     
    4652== Upgrade Notice ==
    4753
     54= 1.1 =
     55* Documentation improvements and translation updates.
     56
    4857= 1.0 =
    4958* Initial release. No upgrade notice.
Note: See TracChangeset for help on using the changeset viewer.