Как получить адрес страницы товара в сниппете shopkeeper?

Для получения адреса страницы товара в сниппете Shopkeeper в MODX можно воспользоваться функцией makeUrl() или makeUrlLink().

Функция makeUrl() используется для получения адреса страницы в виде строки, а функция makeUrlLink() используется для получения адреса страницы в виде HTML-ссылки.

Обе функции принимают три параметра: id ресурса, на который указывает ссылка, список контекстов, в которых ссылка может быть использована, и дополнительные параметры.

Вот пример использования функции makeUrl() для получения адреса страницы товара в сниппете Shopkeeper:

<?php
$productId = $modx->resource->get('id'); // получение id текущей страницы товара
$contextKey = $modx->context->get('key'); // получение ключа текущего контекста

// создание ссылки на страницу товара
$productUrl = $modx->makeUrl($productId, '', "id={$productId}&context_key={$contextKey}");

// вывод адреса страницы товара
echo $productUrl;
?>

Таким образом, в переменной $productUrl будет содержаться адрес страницы товара в виде строки.

Если вам нужно получить адрес страницы товара в виде HTML-ссылки, вы можете использовать функцию makeUrlLink(). Вот пример:

<?php
$productId = $modx->resource->get('id'); // получение id текущей страницы товара
$contextKey = $modx->context->get('key'); // получение ключа текущего контекста

// создание ссылки на страницу товара
$productLink = $modx->makeUrlLink($productId, '', "id={$productId}&context_key={$contextKey}");

// вывод адреса страницы товара в виде HTML-ссылки
echo $productLink;
?>

Таким образом, в переменной $productLink будет содержаться адрес страницы товара в виде HTML-ссылки.

Обратите внимание, что в примерах использования функций makeUrl() и makeUrlLink() используется переменная $modx, которая предполагается как экземпляр класса modX. При использовании в сниппете, убедитесь, что у вас уже есть инициализированный экземпляр класса modX.