我正在为我的客户的员工创建一个自定义成员区域。基本上,我到目前为止所做的是创建了一个新的role=consultants
,并且我将该角色作为只读访问权限。
然后我上传了彼得的登录重定向插件,以便顾问(员工)登陆名为CONSULTANTS PORTAL的页面。从那里,他们将能够访问他们将加载的单个页面,只要页面的名称与给他们的用户名匹配。这样他们只能看到自己的页面。
要查看此过程,您可以访问wordpress.org论坛EASY CLIENT PORTAL
中的此链接所以我已经管理了很多,除了......我应该复制page.php
,然后添加将使单个页面显示的脚本。但是, Genesis Framework 非常复杂。 page.php
有一个空的骨架,页面的实际内容位于li / structure根文件夹中(这就是我的想法)。
就像现在一样,我在默认模板页面consultants-portal.php
<?php
/**
* Template Name: Consultants Portal
*/
global $current_user;
get_currentuserinfo();
$page = get_page_by_title($current_user->user_login);
_e($page->post_content);
genesis();
?>
这段代码让我知道了。您可以在页面加载之前看到加载的内容(我的页面)。这告诉我还需要添加其他内容,以便内容加载到页面的实际白色区域。
我提到的链接中的说明是在is_page
或have_posts
正上方添加动态脚本,但正如我所说,Genesis在{{1}中没有这样做}。相反,它全部分解并在根部传播。
很抱歉,如果我这么长时间阅读,我希望你能获得我所拥有的所有信息。
以前有人这样做过吗?
答案 0 :(得分:2)
尝试以下代码:
<?php
/**
* Template Name: Consultants Portal
*/
// remove Genesis default loop
remove_action( ‘genesis_loop’, ‘genesis_do_loop’ );
// add a custom loop
add_action( ‘genesis_loop’, ‘my_custom_loop’ );
function my_custom_loop () {
// add your queries or custom structure here
global $current_user;
get_currentuserinfo();
$page = get_page_by_title($current_user->user_login);
_e($page->post_content);
}
genesis(); ?>
不是直接编写代码,而是将其写入循环函数中,如上所述。