该教程您链接到是控制面板。由于您正在讨论前端的内容,因此您可以使用常规的旧EE标签在EE模板中完成所有工作。
我建议一个模板组来保存你的HTML片段。在这种情况下,它可能是方便把文章本体和入口链接到一个单一的模板
ajax.group
- single_entry.html
然后,在其最简单的,在模板中你必须
<div id="entry-body">
{exp:channel:entries channel="channel_name_here" entry_id="{segment_3}"}
<h2>{title}</h2>
{body}
{/exp:channel:entries}
</div>
<div id="entry-links">
{exp:channel:next_entry}
<a href="{path='ajax/single_entry'}" class="next">Next</a>
{/exp:channel:next_entry}
{exp:channel:prev_entry}
<a href="{path='ajax/single_entry'}" class="prev">Previous</a>
{/exp:channel:prev_entry}
</div>
当你请求那些使用ajax的片段,请确保将当前的entry_id
或url_title
作为网址段传递,以便片段模板为您加载正确的数据。您可以将选择器传递给load()
以获取所需的html块并将其加载到页面上的相应容器中。简单地说,像
$('#entry-container').load('ajax/single_entry/2 #entry-body');
$('#entry-links').load('ajax/single_entry/2 #entry-links');
其中2
为您加载项的entry_id
。请参阅http://api.jquery.com/on/
最后,您需要在下一个和上一个条目链接上有jQuery事件侦听器,以便它们触发jQuery load()
加载下一个条目。这是.next
链接的一个例子。
$(document).on('click', '.next', function(event) {
var url = $(this).attr('href');
$('#entry-container').load(url); // load the html into your chosen DOM element
event.preventDefault(); // prevent the browser from navigating to this page
});
见http://api.jquery.com/on/您使用哪种模式插件
?大部分将允许您在模式窗口中将模板作为iframe加载。然后,您可以按照通常的方式对该模板进行编码,并且可以正确移动上一个/下一个按钮。 –