0

我在一个单页网站上工作,我正在寻找一个 wordpress 解决方案来创建每个帖子的链接。例如,我想实现这样的目标

<ul id="navigation" class="menu1">
    <li><a href="#post-1">...</a></li>
    <li><a href="#post-2">...</a></li>
    <li><a href="#post-3">...</a></li>
    <li><a href="#post-4">...</a></li>
</ul>

到目前为止,我看到的解决方案涉及编辑 .htaccess,否则它们不是永久性的。

我怎样才能在主题级别上实现这样的目标?

这是一个能够实现我想要做的主题:http ://themes.mdnw.net/?theme=shapeshifter

如果您单击左侧的链接(博客除外),它只会在网站上上下滚动。如何设置这样的导航?

4

1 回答 1

0

您可以像这样使用 jQuery:

$("#navigation a").click(function(event) {
    event.preventDefault();
    var link_href = $(this).attr('href');
    var post_id = link_href.replace(/[^0-9]/g, '');
    $.scrollTo('#post-' + post_id, 800);
});

例如,单击导航链接时,会从 href 哈希 #post-432 中提取 POST 编号/ID。并使用$.scrollTo 插件滚动到具有相同帖子编号/ID 的 div。

这是从一组帖子生成导航菜单的示例代码。

<ul id="navigation" class="menu1">
<?php
global $post;
$args = array( 'numberposts' => 5 );
$myposts = get_posts( $args );
foreach( $myposts as $post ) :  setup_postdata($post); ?>
    <li><a href="#post-<?php the_ID(); ?>"><?php the_title(); ?></a></li>
<?php endforeach; ?>
</ul>

您仍然需要查询每个帖子的内容。类似的查询应该可以解决问题并获取the_content()

于 2012-06-13T17:32:06.010 回答