将xml站点地图转换为可用链接的JavaScript


JavaScript to convert xml sitemap into usable links?

我有一个网站是用weebly创建的,所以我没有很多可定制的项目,比如搜索框之类的,但我知道atomz搜索。唯一的问题是,他们需要链接到网站上的页面,而我有一些隐藏的页面,我想包括在内。我甚至不确定这是否可能,但我可以转换一个XML网站地图(weebly自动生成一个)格式为:

<url>
<loc>
http://kingdomofmuqtasid.weebly.com/1/post/2012/7/welcome-to-my-site-and-welcome-to-me.html
</loc>
<lastmod>2012-07-14</lastmod>
</url>
<url>
<loc>
http://kingdomofmuqtasid.weebly.com/1/post/2012/7/summers.html
</loc>
<lastmod>2012-07-14</lastmod>
</url>
<url>
<loc>
http://kingdomofmuqtasid.weebly.com/1/post/2012/7/apple-technology-of-the-future.html
</loc>
<lastmod>2012-07-14</lastmod>
</url>
<url>

现在有什么方法可以把url和document.write作为链接吗?如果javascript不可能,我有一个本地的apache设置,可以用来测试PHP脚本,那么PHP能工作吗?

谢谢!

您提出了一个有多种解决方案的沉重问题。在回来之前,你应该多做一些谷歌搜索,但这里是让你开始的。

选项1:使用AJAX加载站点地图(xml)文件,解析xml,并构建/插入超链接。我建议您对所有这些步骤使用jQuery。这将是最快、最简单的解决方案,但对SEO、可维护性等都有副作用。

选项2:使用PHP解析站点地图(xml)文件并在服务器上构建超链接。这个解决方案需要更多的知识,可能需要更长的时间。。。但是是更好的解决方案IMO.

您可以在PHP中使用simplexml_load_file()函数,如下所示:

<?php
$xml = simplexml_load_file ('sitemap.xml');
foreach ($xml->url as $url)
{
    print ("$url->loc'n");
}
?>

请注意,您的整个XML文档应该包含在一个标签中:

<mydoc>
  <url> .. </url>
  <url> .. </url>
  <url> .. </url>
</mydoc>

使用旧式HTML编辑器和记事本。将内容粘贴到记事本中,然后删除不是URL链接的内容。然后复制到HTML编辑器中。接下来,将每个URL复制到链接生成器中并粘贴。是的,速度很慢,但它有效。然后保存。