如何在WordPress插件中插入html/css/javascript代码

时间:2018-01-30 作者:fmp

我试图在用户使用woocommerce插件注册(action\\u hook:user\\u register)时显示一个模式对话框,但没有任何结果。

如果有任何帮助,我将不胜感激!

代码如下所示。

myplugin.php

// handler for new_user_registered
$myplugin->register_action_hook (
    \'user_register\', 
    array(
        \'hooksClass\',
        \'add_new_user\'
    ));

hooks.php

public static function add_new_user ($userid)
{
    ...
    function enqueue_scripts() {
        wp_enqueue_script(\'modaljs\', plugin_dir_url(__FILE__) . \'js/modal.js\', array(\'jquery\'));
        wp_enqueue_style(\'modalcss\', plugin_dir_url(__FILE__) . \'css/modal.css\');
    }
    add_action(\'wp_enqueue_scripts\', \'enqueue_scripts\');
    ?>
    <button id="myBtn">Open Modal</button>
    <div id="myModal" class="modal">
        <div class="modal-content">
            <div class="modal-header">
            <span class="close">&times;</span>
            <h2>Header</h2>
            </div>
            <div class="modal-body">
              <p>Content</p>
            </div>
            <div class="modal-footer">
            <h3>Footer</h3>
            </div>
            </div>
        </div>
    <?php
}
What I am getting as a result is this imageMy image

提前感谢您的建议!

1 个回复
SO网友:Peter HvD

正如mmm所说,user_register() 不是用于显示其他内容,而是用于连接到内部用户创建流。

你需要做的是user_register() 存储短期transient 标记用户已注册。然后,将模态代码添加到wp_footer() 输出,包装在一个测试中,用于测试您刚刚设置的瞬态,以查看是否创建了新用户(不要忘记在之后立即删除瞬态)。

希望有帮助

结束

相关推荐

如何在仅创建特定的自定义帖子类型时控制管理员的CSS

我有一个自定义的帖子类型,叫做SlidersCPT 当我注册CPT时register_post_type( \'SlidersCPT\', $args ); 我需要在管理页面上应用一些CSS规则only 创建新的SlidersCPT自定义帖子类型时。我想这可能会有帮助:if(get_post_type() == \'SlidersCPT\') {} 但正如您所看到的,它只是控制Custopm Post类型的页面,而不是管理区域。我想做的是控制页面的css,如果它在创建自定义帖子类型的管