Лучший способ использовать пользовательскую таблицу в отношениях (в ExpressionEngine)? - PullRequest
0 голосов
/ 06 октября 2011

Итак, я немного о том, как использовать отдельную таблицу в отношениях или что-то в этом роде ...

У меня есть таблица с примерно 5000 отелями, которая называется exp_h_hotels.
.веб-сайт, я использую модуль pages для создания статической подстраницы для каждой части страны.Я хочу перечислить все отели, которые относятся к определенному региону.

Я понял, что не могу сделать что-то подобное (используя теги ExpressionEngine с модулем запросов):

{exp:query sql="SELECT * FROM exp_h_hotels WHERE h_regionname ='{regionname}'"}
       {hotel_name}
{/exp:query} 

Кто-нибудь знает лучший способ продвинуться в этом?

Я рассмотрел использование ExpressionEngine API для вставки данных в канал - однако я чувствую, что было бы неоптимально заполнять таблицу записей каналов 5000 постами по 14-20 полей с данными в каждом.

1 Ответ

1 голос
/ 06 октября 2011

Нет причины, по которой не должен работать так, как вы ожидаете, если ваш тег exp:query находится внутри тега channel:entries:

{exp:channel:entries channel="pages" limit="1"}
<h1>Hotels in {regionname}</h1>
<ul>    
{exp:query sql="SELECT * FROM exp_h_hotels WHERE h_regionname ='{regionname}'"}
   <li>{hotel_name}</li>
{/exp:query}
</ul>
{/exp:channel:entries}

Однако в долгосрочной перспективе импортирование ваших отелей в новый канал в EE - это гораздо лучший план. Вы можете экспортировать из своей базы данных в CSV (возможно, используя phpMyAdmin), а затем импортировать в EE, используя DataGrab . Ничего плохого в добавлении 5000 новых записей в EE.

...