Михаил Боровов

Михаил Боровов

Был в сети 29 августа 2025, 17:29
Заказы принимаю
Нашел элегантное и простое решение:

[[pdoField?  &id=`[[*TV1]]` &field=`TV2`]]
Где TV1 — название TV, который разбирался в моем вопросе («Список (Одиночный выбор)»)
TV2 — любой TV или поле (например pagetitle) из выбранного необходимого мне ресурса.

Надеюсь кому-то поможет!!! ))))
Есть подозрение, что некорректно залился дамп БД.
Какая была кодировка на старом сайте? Соответствует ли она тому что есть сейчас на новом?
Пробовал ли запустить заново установку МодХ? После шаманства, могло что-то сломаться.
Чистил ли папку с кэшем?
Как происходил переезд? Есть же стандартные правила.

Просто скриншот на Яндекс.Диске не показывается (((

Много вопросов, так как мало вводных )
В общем с поиском разобрался таким образом — руками прописал все варианты выбора (благо их немного), подставил контексты (сайт мультиязычный), получился такой код:

<form action="result.html" method="get" id="search_old">
<span>ПОИСК</span>
  
<select name="tv|region2" id="l">
  <option value="apulia,lake_como,lake_garda,lake_maggiore,campania,calabria,emilia_romagna,lazio,liguria,lombardy,marche,piedmont,sardinia,sicily,tuscany,umbria,veneto"selected>Страна-Регион</option>
  <option value="apulia">[[%apulia]]</option> 
  <option value="lake_como">[[%lake_como]]</option> 
  <option value="lake_garda">[[%lake_garda]]</option> 
  <option value="lake_maggiore">[[%lake_maggiore]]</option> 
  <option value="campania">[[%campania]]</option> 
  <option value="calabria">[[%calabria]]</option> 
  <option value="emilia_romagna">[[%emilia_romagna]]</option> 
  <option value="lazio">[[%lazio]]</option> 
  <option value="liguria">[[%liguria]]</option> 
  <option value="lombardy">[[%lombardy]]</option> 
  <option value="marche">[[%marche]]</option> 
  <option value="piedmont">[[%piedmont]]</option> 
  <option value="sardinia">[[%sardinia]]</option> 
  <option value="sicily">[[%sicily]]</option> 
  <option value="tuscany">[[%tuscany]]</option> 
  <option value="umbria">[[%umbria]]</option> 
  <option value="veneto">[[%veneto]]</option> 
</select>

<select name="parent" id="l">
  <option value="8,9" selected>Тип контракта</option>
  <option value="8">Аренда</option> 
  <option value="9">Продажа</option> 
</select>

<select name="tv|prop_type2" id="l">
  <option value="castle,palace,agritourism,villa,hotel,land,loft,shop,farmhouse,restaurant,countryhouse,terraced_house,chalet,apartment" selected>Тип недвижимости</option>
  <option value="castle">[[%castle]]</option> 
  <option value="palace">[[%palace]]</option> 
  <option value="agritourism">[[%agritourism]]</option> 
  <option value="villa">[[%villa]]</option> 
  <option value="hotel">[[%hotel]]</option> 
  <option value="land">[[%land]]</option> 
  <option value="investment">[[%investment]]</option> 
  <option value="loft">[[%loft]]</option> 
  <option value="shop">[[%shop]]</option> 
  <option value="farmhouse">[[%farmhouse]]</option> 
  <option value="restaurant">[[%restaurant]]</option> 
  <option value="countryhouse">[[%countryhouse]]</option> 
  <option value="terraced_house">[[%terraced_house]]</option> 
  <option value="chalet">[[%chalet]]</option> 
  <option value="apartment">[[%apartment]]</option> 
</select>

<select name="tv|position2" id="l">
  <option value="golf,ski_resorts,town,historical_centers,seaside,lakes,hills" selected>Расположение</option>
  <option value="golf">[[%golf]]</option> 
  <option value="ski_resorts">[[%ski_resorts]]</option> 
  <option value="town">[[%town]]</option> 
  <option value="historical_centers">[[%historical_centers]]</option> 
  <option value="seaside">[[%seaside]]</option> 
  <option value="lakes">[[%lakes]]</option> 
  <option value="hills">[[%hills]]</option> 
</select>

<select name="tv|price" id="l">
  <option value="0,10000000000" selected>Цена</option>
  <option value="0,500000"><500K</option> 
  <option value="500000,1000000">0.5M - 1M</option> 
  <option value="1000000,2000000">1M - 2M</option> 
  <option value="2000000,3000000">2M - 3M</option> 
  <option value="3000000,10000000000">>3M</option> 
</select>

<label>
Код объекта:
<input type="text" size="4" value="" id="r" name="tv|code">
</label>

<label>
<input type="submit" id="button" value="искать" style="background-color:#C00; color:#FFF">
</label>
</form>
Все вроде работает.

Если не выбрали ничего — смог вывести только способом перечисления всех вариантов:
<option value="golf,ski_resorts,town,historical_centers,seaside,lakes,hills" selected>Расположение</option>

Вопросы:
1. Как сделать, чтобы если посетитель ничего не выбрал, то не прописывать все варианты в value =""?
2. Как, если не заполнено поле «Код объекта», исключить из строки get-запроса (...?tv|region2=apulia&parent=8&tv|prop_type2=castle&tv|position2=golf&tv|price=0,500000&tv|code=), лишнюю приставку &tv|code= в конце?
Извините, так и не понял.
Выводить форму поиска понятно

<form action="[[~[[*id]]]]" method="get">
...
</form>
А вот как
<select name="l" id="l">
  <option value="" selected>Регион</option>
  <option value="1">Первый регион</option> 
</select>
Заменить, чтобы выбирал в выпадающее меню то, что в ТВ указано?
и потом в запрос попадало…