WP User Frontend 添加自定义页面到我的账户

WP User Frontend 插件允许我们通过自定义页面在网站上添加一个注册登录表单,添加若干个文章提交页面。一些用户使用该插件来实现网站的投稿功能或文章订阅功能,非常方便。

WP User Frontend 包含了一个简单的个人中心页面,用户可以在这个页面插件自己提交的文章,查看自己的订阅,编辑个人资料等。

image.png@full
WP User Frontend 插件我的账户页面

如果只有上面的几个功能,对于一个功能完善的网站来说,往往会不够用,好在我们可以添加自定义页面到我的账户页面,来实现我们需要的功能。

添加自定义页面菜单到我的账户

首先,我们需要添加自定义页面的菜单到我的账户页面左侧的菜单列表中。

<span class="token function">add_filter</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'wpuf_account_sections'</span><span class="token punctuation">,</span> <span class="token keyword">function</span> <span class="token punctuation">(</span><span class="token variable">$sections</span><span class="token punctuation">)</span>
<span class="token punctuation">{</span>
    <span class="token variable">$sections</span><span class="token punctuation">[</span><span class="token punctuation">]</span> <span class="token operator">=</span> <span class="token punctuation">[</span>
        <span class="token string single-quoted-string">'slug'</span>  <span class="token operator">=></span> <span class="token string single-quoted-string">'products'</span><span class="token punctuation">,</span>
        <span class="token string single-quoted-string">'label'</span> <span class="token operator">=></span> <span class="token function">__</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'My Products'</span><span class="token punctuation">,</span> <span class="token string single-quoted-string">'wp-user-frontend'</span><span class="token punctuation">)</span><span class="token punctuation">,</span>
    <span class="token punctuation">]</span><span class="token punctuation">;</span>

    <span class="token keyword">return</span> <span class="token variable">$sections</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token number">999</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

显示自定义页面的内容

添加了菜单链接后,我们还需要添加这个菜单对应的内容,对应的页面才能正常显示,否则点击这个链接会出现一个 404 页面。在这个示例代码中,我们把自定义功能放到了一个单独的文件中,然后包含了进来。

<span class="token function">add_action</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'wpuf_account_content_products'</span><span class="token punctuation">,</span> <span class="token keyword">function</span> <span class="token punctuation">(</span><span class="token punctuation">)</span>
<span class="token punctuation">{</span>
    <span class="token keyword">include</span> <span class="token function">get_theme_file_path</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'wpuf/products.php'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

上面的代码中 wpuf_account_content_products 中的 products 需要和自定义菜单项目中的 slug 对应。

基于类似的操作,我们可以添加各种各样的自定义页面,来实现我们的自定义功能,比如我的收藏,我的评论等等。

除了 WP User Frontend 插件,WooCommerce也为我们提供了类似的 Hook,如果您的网站使用了WooCommerce插件,也可以参考 WooCommerce添加自定义页面的方法来实现自定义页面。

via WordPress智库

订阅评论
提醒
guest的头像

0 评论
内联反馈
查看所有评论
0
希望看到您的想法,请您发表评论x