2016-04-28 62 views
2

我有一個網址爲/jobpage/:categoryname/:companyname/:jobtitle/:jobid的求職網頁。參數是動態生成的。我想要在網站地圖上的所有動態生成的鏈接。我已經使用express-sitemap包,代碼如下 - 是越來越有鏈接生成如何在expressjs中爲動態鏈接生成站點地圖?

var sitemap = require('express-sitemap'); 
sitemap({ 
    sitemap: 'sitemap.xml', // path for .XMLtoFile 
    robots: 'robots.txt', // path for .TXTtoFile 
    generate: app, // option or function, is the same 
    sitemapSubmission: '/sitemap.xml', // path of sitemap into robots 
    url : 'xxxx', 
    map: { 
     '/jobpage': ['get'], 
     '/college': ['get'], 
       }, 
    route: { // specific option for some route 
    '/jobpage': { 
     lastmod: '2016-04-25', 
     changefreq: 'weekly', 
     priority: 1.0, 
    }, 

    }, 
}).toFile(); // write sitemap.xml and robots.txt 

地圖作爲

<url> 
<loc>xxxx/jobpage/:categoryname/:companyname/:jobtitle/:jobid</loc> 
</url> 

如何生成動態鏈接?任何線索將不勝感激。

+1

在我的情況下,我做了如下。 創建一個單獨的文件sitemap_generator.js,它實際上讀取所有導致頁面的數據庫模型。然後生成xml並寫入web文件夾,並在間隔期間繼續更新xml。 它在節點服務器啓動時開始創建站點地圖。我手動完成了這個工作,因爲我發現沒有自動化解決方案會帶來侷限 –

+0

謝謝@ dev.mraj您的建議。使用了類似的邏輯。 –

回答

0

在我的情況下,我做了如下。

創建一個單獨的文件sitemap_generator.js,它實際上讀取所有導致頁面的數據庫模型。 然後生成xml並寫入web文件夾,並在一定的時間間隔內繼續更新xml。

它在節點服務器啓動時開始創建站點地圖。我手動完成了這個工作,因爲我發現沒有自動化解決方案會帶來侷限

我認爲大部分時間你的業務邏輯可能不適合任何lib,因爲這些庫不知道什麼動態頁面可以。你已經知道了。 https://www.npmjs.com/package/express-sitemap