Jump to main content Jump to doc navigation

modX::makeUrl

Создает URL-адрес, представляющий указанный ресурс.

Примечание: URL-адреса в мультиконтекстных сайтах принудительно приводятся к абсолютному значению URL, для избежания этого поведения используйте $modx->switchContext('context_key');

Синтаксис

API Doc: modX::makeUrl()

string makeUrl (integer $id, [string $context = ''], [string|array $args = ''], [mixed $scheme = -1], [array $options = null])
  • $id (integer) ID ресурса,к которому создается ссылка. обязателен
  • $context (string) Задает контекст для ограничения создания URL-адресов.
  • $args (string|array) Строка запроса, добавляемая к сгенерированному URL-адресу.
  • $scheme (mixed) Схема показывает, в каком формате создается URL-адрес:
    • -1: (значение по умолчанию) URL-адрес относительно site_url
    • 0: смотри http
    • 1: смотри https
    • full: URL-адрес является абсолютным, с добавлением site_url из конфигурации
    • abs или absolute: URL-адрес является абсолютным, с добавлением base_url из конфигурации
    • http: URL является абсолютным, принудительно по схеме http
    • https: URL является абсолютным, принудительно по схеме https
  • $options (array) Массив параметров для создания URL-адреса ресурса

Примеры

Создайте URL-адрес для ресурса с идентификатором 4.

$url = $modx->makeUrl(4);

Создайте URL-адрес для ресурса с идентификатором 12, но убедитесь, что он находится в HTTPS.

$url = $modx->makeUrl(12, '', '', 'https', array('xhtml_urls' => false));

Создайте URL-адрес ресурса с идентификатором 56, но добавьте ?hello=world к URL-адресу.

$url = $modx->makeUrl(25, '', array('hello' => 'world'));
$url = $modx->makeUrl(25, '', 'hello=world');

Обратите внимание, что аргументы, доступные для этой функции, могут быть переданы тегам "[[~link]]", например

[[~123? &scheme=`full`]]

Смотрите также

Support the team building MODX with a monthly donation.

The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.

Backers

  • modmore
  • STERC
  • Digital Penguin
  • Jens Wittmann – Gestaltung & Entwicklung
  • Fabian Christen
  • Dannevang Digital
  • Sepia River Studios
  • Chris Fickling
  • CrewMark
  • deJaya
  • Lefthandmedia
  • Murray Wood
  • eydolan
  • Following Sea
  • Anton Tarasov
  • Stéphane Jäggi
  • Raffy
  • Snow Creative
  • A. Moreno
  • Nick Clark
  • JT Skaggs
  • Helen
  • YJ
  • krisznet
  • Richard
  • Yanni

Budget

$301 per month—let's make that $500!

Learn more