1. Go to this page and download the library: Download lapshev/sitemap library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
lapshev / sitemap example snippets
use Lapshev\Sitemap;
use Lapshev\Sitemap\Providers;
$sitemap = new Sitemap\Generator('http://example.com');
$simpleProvider = new Providers\Simple([
['/', new \DateTime(), 'daily', 0.5],
['/news/', new \DateTime(), 'monthly', 1]
]);
$sitemap->addProvider('example', $simpleProvider);
// will output to example.xml and add this file sitemap.xml
$sitemap->generate($_SERVER['DOCUMENT_ROOT']);
namespace MySite\Sitemap\Providers;
use Lapshev\Sitemap\BaseProvider;
use Lapshev\Sitemap\Entire;
use Lapshev\Sitemap\iProvider;
class DataBase extends BaseProvider implements iProvider
{
private $dbResult;
private $tableName;
public function __construct($params = []) {
parent::__construct($params);
$this->tableName = $params['tableName'];
}
// will be called before fetching
public function prepareData() {
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// Create connection
$conn = new \mysqli($servername, $username, $password, $dbname);
$sql = "SELECT id, pageUrl, lastMod FROM {$this->tableName}";
$this->dbResult = $conn->query($sql);
}
public function getNextEntire() {
while($row = $this->dbResult->fetch_assoc()) {
return new Entire($row['pageUrl'], $row['lastMod'], 'daily', 0.7);
}
return null;
}
}
$sitemap = new Sitemap\Generator('http://example.com', ['checkResponse' => true]);
use Lapshev\Sitemap\Generator;
use Lapshev\Sitemap\Providers\Simple;
use newsite\SiteMap\Providers\Elements;
use newsite\SiteMap\Providers\Files;
use newsite\SiteMap\Providers\Sections;
use newsite\SiteMap\Providers\Banners;
use Bitrix\Main\Type\DateTime;
ckID' => CATALOG_LOGIC_MENU, 'indexID' => 1, 'priority' => 0.5]),
],
'goods' => [
new Elements(['iBlockID' => CATALOG_PRODUCT_IBLOCK, 'indexID' => 1, 'priority' => 0.5]),
],
'news' => [
new Simple([ ['/news/', new DateTime(), 'hourly', 1] ]),
new Elements(['iBlockID' => 25, 'priority' => 0.8, 'changeFreq' => 'monthly']),
],
'articles' => [
new Simple([ ['/helpful/', new DateTime(), 'hourly', 0.4] ]),
new Elements(['iBlockID' => 29, 'priority' => 0.4]),
],
'info' => [
new Simple([ ['/', new DateTime(), 'hourly', 1] ]),
new Files(['priority' => 0.4])
],
'sale' => [
new Banners(['type' => 'actionCatalogList', 'priority' => 1, 'changeFreq' => 'daily']),
]
];
$siteMap = new Generator('http://example.com', $params);
foreach($arScheme as $fileName => $providers) {
foreach($providers as $provider){
$siteMap->addProvider($fileName, $provider);
}
}
$siteMap->generate($_SERVER['DOCUMENT_ROOT']);
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.