@Helen2901

Как в этот php который генерирует карту сайта добавить lastmod?

Есть вот такой вот кусок кода

Articles
    */
    $articles=articles::model()->getArticles();
    if($articles!=Null) {
        if(CCity::getActive() == "0"){
            foreach ($articles as $value):
                echo "\n<url>\n<loc>";
                    if(empty($value['city'])){
                        echo strtolower($value->getLink());
                    }else{
                        echo str_replace("site.com", $value['city'].".site.com", $value->getLink());
                    }   
                echo "</loc>\n<changefreq>daily</changefreq>\n<priority>1.0</priority>\n</url>";
            endforeach;
        } else {
            foreach ($articles as $value):
                if($value['city'] == CCity::getActive()){
                    echo "\n<url>\n<loc>".strtolower($value->getLink())."</loc>\n<changefreq>daily</changefreq>\n<priority>1.0</priority>\n</url>";
                } 
            endforeach;
         } 
    }


Как в него корректно добавить -
<lastmod><?= date('Y-m-d\TH:i:sP'); ?></lastmod>

Пробовала вставлять вот так
echo "</loc>\n<changefreq>daily</changefreq>\n<priority>1.0</priority>\n<lastmod><?= date('Y-m-d\TH:i:sP'); ?></lastmod>\n</url>";

Но видимо в такой конструкции нельзя передавать переменные.
  • Вопрос задан
  • 128 просмотров
Решения вопроса 1
Shlop
@Shlop
Full Stack Developer (PHP/Laravel/JavaScript)
Можно вот так попробовать
$date = date('Y-m-d\TH:i:sP');
echo "</loc>\n<changefreq>daily</changefreq>\n<priority>1.0</priority>\n<lastmod>{$date}</lastmod>\n</url>";

Либо без переменной вот так (этот вариант лучше кажется):
echo "</loc>\n<changefreq>daily</changefreq>\n<priority>1.0</priority>\n<lastmod>".date('Y-m-d\TH:i:sP')."</lastmod>\n</url>";
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы