WordPress:如何在genesis框架中添加自定义模板

时间:2014-06-13 03:31:51

标签: php wordpress genesis

我正在为我的客户的员工创建一个自定义成员区域。基本上,我到目前为止所做的是创建了一个新的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_pagehave_posts正上方添加动态脚本,但正如我所说,Genesis在{{1}中没有这样做}。相反,它全部分解并在根部传播。

很抱歉,如果我这么长时间阅读,我希望你能获得我所拥有的所有信息。

以前有人这样做过吗?

enter image description here

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(); ?>

不是直接编写代码,而是将其写入循环函数中,如上所述。