具体5:抓住我的单页的中心部分,并将其显示在主页上

时间:2012-09-29 16:18:11

标签: package concrete5 singlepage

在我的Concrete5中,有一个包含许多单页的包,它实际上构成了核心功能(社区连接)。

有一个特定页面包含搜索功能。有没有办法把这个页面的中心部分以某种方式显示在主页,div元素或类似的东西?

2 个答案:

答案 0 :(得分:2)

您可以使用jquery .load()执行此操作 在单个页面上,将要导入的内容包装在具有唯一ID的div中。 在主页上,添加div以将内容导入

// Get the URL of the page
var url = "relative/path/to/page;

// Load the new page into the temp container
// Replace #wrapper with the selector of the element you want to import
$("#import-content").load(url + " #wrapper");

答案 1 :(得分:1)

您应该可以通过在single_page的控制器中创建一个新的公共函数来执行此操作,该函数返回您想要的任何内容(然后您可以使用HTML呈现数据,或者您可以让控制器方法本身呈现“元素”使用一些数据,或者如果你想完全违反MVC模式,只需在控制器方法本身中创建一个HTML字符串。)

然后您应该能够从其他页面检索该数据或标记,如下所示:

$myController = Loader::controller('/path/to/singlepage'); //<--NOTE this is a C5 URL path (e.g. "slug"), not a server file path!
$myMarkup = $myController->myCustomFunctionIWroteToReturnSomeStuff();
echo $myMarkup;