在Wordpress导航菜单中使用Hashtags?

时间:2012-06-13 16:44:28

标签: php wordpress html5 wordpress-theming

我正在开发一个单页网站,我正在寻找一个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

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

1 个答案:

答案 0 :(得分: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 hash#post-432中提取POST编号/ id。并使用$.scrollTo plugin滚动到具有相同帖子编号/ 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()