【问题标题】:WordPress Plugin : Expose public-view with writing urlWordPress 插件 : 用写 url 公开公众视图
【发布时间】:2017-03-10 18:39:53
【问题描述】:

我对 WordPress 插件开发很陌生。我正在尝试使用插件样板来创建一个用于学习目的的简单插件。

我想创建一个“联系表单”,视图将位于 /wp-content/plugins/contact-form/public/partials/contact-form-public-display.php。我想使用http://localhost/contact-form/ 访问它。

我的班级 class-contact-form-public.php :

function init_internal_rewriting()
{
    add_rewrite_rule( 'contact-form$', '?page=contact-form', 'top' );
}   

function rewriting_query_vars( $query_vars )
{
    $query_vars[] = 'page';
    return $query_vars;
}

function rewriting_parse_request( &$wp )
{
    if ( array_key_exists( 'page', $wp->query_vars ) ) {
        $this->display_plugin_page();
        exit();
    }
    return;
}

public function display_plugin_page() {
    include_once( 'partials/contact-form-public-display.php' );
}

当我挂钩这些功能时:

// Rewriting URL
    $this->loader->add_action( 'init', $plugin_public, 'init_internal_rewriting');
    $this->loader->add_action( 'parse_request', $plugin_public, 'rewriting_parse_request');
    $this->loader->add_filter( 'query_vars', $plugin_public, 'rewriting_query_vars' );

但我无法访问 css 和 js。

有人有想法让它更清楚吗?能够在我的前端网站中访问我的“公共”部分。

感谢您的帮助。

【问题讨论】:

    标签: php jquery wordpress


    【解决方案1】:

    为联系表单创建一个短代码。并通过短代码进入页面内容部分。 检查下面的链接如何创建 wordpress 短代码。 https://codex.wordpress.org/Function_Reference/add_shortcode

    【讨论】:

    • 感谢您的解决方案,但我必须避免创建短代码。一切都必须由我的插件自己处理。这才是真正困扰我的地方~
    • @QuentinBouvier 短代码将在您的插件本身中定义。
    • 嗯,是的,但我不能手动添加短代码。或者也许有办法创建一个虚拟页面,我可以在其中放置这个短代码。
    • 是的,您可以通过页面 slug / ID 覆盖页面内容。如果您可以创建短代码,那么您可以将短代码分页到页面/帖子编辑器中。查看屏幕短图prntscr.com/ei7tid
    • 非常感谢,我将尝试以这种方式创建自己的 ShortCode 和 this。谢谢
    猜你喜欢
    • 1970-01-01
    • 2021-08-29
    • 1970-01-01
    • 2012-07-23
    • 2014-09-26
    • 2020-11-23
    相关资源
    最近更新 更多