PHP и sitemap.xml - PullRequest
       24

PHP и sitemap.xml

0 голосов
/ 13 февраля 2011

Я планирую создать скрипт, который будет создавать sitemap.xml для моего сайта, скажем, каждый день (cron выполнит скрипт). Должен ли я просто создать строку XML и сохранить ее в виде файла? Или было бы полезно использовать один из классов / функций / etc в PHP. для XML?

Если я должен использовать какой-то PHP класс / функцию / и т.д., что это должно быть?

Ответы [ 4 ]

0 голосов
/ 06 апреля 2015

Я бы посоветовал вам сделать cron, чтобы поместить все URL-адреса в массив и сохранить их как кеш.Тогда вы можете использовать этот модуль Кохана для создания файла sitemap.xml на лету.

    // this is assume you have already install the module.
    $sitemap = new Sitemap;

    //this is assume you put an array of all url in a cache named 'sitemap'
    foreach($cache->get('sitemap') as $loc)
    {
        // New basic sitemap.
        $url = new Sitemap_URL;

        // Set arguments.
        $url->set_loc($loc)
            ->set_last_mod(1276800492)
            ->set_change_frequency('daily')
            ->set_priority(1);

        // Add it to sitemap.
        $sitemap->add($url);
    }

    // Render the output.
    $response = $sitemap->render();

    // Cache the output for 24 hours.
    $cache->set('sitemap', $response, 86400);

    // Output the sitemap.
    echo $response;
0 голосов
/ 13 февраля 2011

Это простой формат. Почти нет структуры. Просто выведите его в виде строки.

0 голосов
/ 13 февраля 2011

Если вам не нужно читать / использовать ваши собственные файлы XML-файлов Sitemap, просто выводите в строку, как говорили другие.Формат XML-файлов сайта довольно прост.Если вы намереваетесь также поддерживать подтипы, тогда ... Я бы все равно сделал это на основе строк.

0 голосов
/ 13 февраля 2011

Для простого XML часто проще просто вывести строку. Но чем сложнее становится ваш документ, тем больше пользы вы получите от использования библиотеки XML (будь то в составе PHP или стороннего скрипта), поскольку это поможет вам вывести правильный XML.

Для карты сайта вам, вероятно, лучше всего написать строку.

...