Создать страницу только для контента для мобильной новостной ленты в modx
Мне было поручено предоставить бэкэнд для новостной ленты, которая будет использоваться приложениями нашей компании. Лента будет извлекать статьи с нашего текущего веб-сайта, созданного с помощью ModX (evolution). До сих пор я разработал канал для отправки JSON через указанный URL-адрес, содержащий необходимую информацию. В настоящее время он находится в следующем формате (с использованием заполнителей Ditto):
{
"title":"[+longtitle+]",
"description":"[+description+]",
"link":"[(site_url)][~[+id+]~]"
},
Вот моя проблема - ссылка, которую я предоставляю через JSON (в link
tag) открывает полную версию страницы на рабочем столе. Наш текущий сайт не отвечает требованиям и изначально не был предназначен для работы с мобильными устройствами. Мы хотели бы открыть небольшую чистую страницу, показывающую ТОЛЬКО ['content']
этой конкретной статьи. Я ищу способ ссылки на страницу, показывающую только этот контент - без заголовка, без нижнего колонтитула, ничего.
Я знаю, что мог бы создать новую страницу, чтобы справиться со всем этим, но она должна быть динамичной. Новые статьи создаются регулярно, и я бы не хотел добавлять еще одну страницу, чтобы справиться с этим для каждой статьи, а также облегчить интеграцию этой функции команде писателей.
Пока одна из моих идей:
- Передайте параметр GET URL-адресу "ссылка" в JSON - что-то вроде -
www.mysite.com/article1?contentOnly=true
, Затем, в моей статье, найдите этот параметр в PHP и обработайте его соответствующим образом. Мне понадобится этот фрагмент в каждой написанной статье, поэтому он может вызвать проблемы в будущем, если наши штатные авторы забудут добавить его.
Я не работал с ModX долго, поэтому я предполагаю, что есть лучший способ справиться с этим. Любые идеи очень приветствуются. Пожалуйста, дайте мне знать, если мне нужно предоставить больше информации.
1 ответ
Я не уверен на 100 %, как ты это сделал, но вот мой совет.
Не используйте сам ресурс для вывода JSON. Выполнение этого на основе GET-параметра потребует кэширования всего сайта. Вместо этого используйте один ресурс для подачи и укажите там id/permalink.
Например: mysite.com/feed?id=1
, mysite.com/feed?latest
или что-то типа того.
Сделанный таким образом, у вас может быть пустой шаблон с только фрагментом, который разбирает на JSON. Конечно, это должно быть кэшировано, но остальная часть сайта может быть кэширована как обычно.