Вход • Регистрация

Всего найдено: 236

  • 06 января 2019 г. , редакция: 1546803061
  • Так получилось, что на мой ископаемый ноут из современных осей, к текущему моменту, втыкается только линукс. После недели юзания минта температура между булок у меня почти пришла в норму, возник вопрос - каким путем с минимальным применением мозга создать под линуксом локальный сервер? Гайды видел, но тут есть бородатые программисты - может, присоветуете что-нибудь годное?
  • 12 ноября 2018 г.
  • чет такое (гуглю понравилось, но толку ноль)
    Код
    <?php
    /**
    * Шаблон страницы товара
    *
    * @package DIAFAN.CMS
    * @author diafan.ru
    * @version 6.0
    * @license http://www.diafan.ru/license.html
    * @copyright Copyright (c) 2003-2016 OOO «Диафан» (http://www.diafan.ru/)
    */

    if (! defined('DIAFAN'))
    {
    $path = __FILE__; $i = 0;
    while(! file_exists($path.'/includes/404.php'))
    {
    if($i == 10) exit; $i++;
    $path = dirname($path);
    }
    include $path.'/includes/404.php';
    }

    if (stripos(BASE_PATH.$result['img'][0]["vs"]['medium'], BASE_PATH.'/') !== false)
    {
    $img_correction = str_ireplace(BASE_PATH.'/', BASE_PATH, BASE_PATH.$result['img'][0]["vs"]['medium']);
    }
    else
    {
    $img_correction = (BASE_PATH.$result['img'][0]["vs"]['medium'] ? BASE_PATH.$result['img'][0]["vs"]['medium'] : '');
    }

    echo '<div class="good-photo">
    ';
    if (!empty($result["img"]))
    {
    if (stripos(BASE_PATH.$result["img"][0]["src"], BASE_PATH.'/') !== false)
    {
    $img_correction = str_ireplace(BASE_PATH.'/', BASE_PATH, BASE_PATH.$result["img"][0]["src"]);
    }
    else
    {
    $img_correction = (BASE_PATH.$result["img"][0]["src"] ? BASE_PATH.$result["img"][0]["src"] : '');
    }
    echo ' <div class="picture">
    <amp-img src="'.$img_correction.'" width="'.$result["img"][0]["width"].'" height="'.$result["img"][0]["height"].'" alt = "'.$result["img"][0]["alt"].'" layout="responsive"></amp-img>
    </div>
    ';
    }
    echo ' </div>
    <div class="good-description">
    '.$this->get('buy_form', 'shop', array("row" => $result, "result" => $result)).'
    <div class="call-now">
    <a href="tel:+79219667737">
    <amp-fit-text height="40" layout="fixed-height">
    Позвонить и записаться
    </amp-fit-text>
    </a>
    </div>
    ';
    if (!empty($result['text']))
    {
    echo ' <div class="shop-text">
    '.$this->htmleditor($result['text']).'
    </div>
    ';
    }
    echo '<div class="addcost-text">
    ';
    $id_addcost = DB::query("SELECT additional_cost_id FROM {shop_additional_cost_rel} WHERE element_id=%d", $result["id"]);
    if (!empty($id_addcost))
    {
    $addtext='';
    $json_addtext = '';
    while ($row = DB::fetch_array($id_addcost))
    {
    $text_addcost = DB::query_fetch_array("SELECT name1, text1, price, percent FROM {shop_additional_cost} WHERE id=%d AND trash = '0' AND act1 = '1'", $row["additional_cost_id"]);
    $addtext .= ' <p>'.$text_addcost["text1"].'</p>
    ';
    if((int)$text_addcost["price"]>0)
    {
    $json_addtext .= '"addOn": {
    "@type": "Offer",
    "name": "'.$text_addcost["name1"].'",
    "businessFunction": "Provide service",
    "priceCurrency": "RUB",
    "price": "'.$text_addcost["price"].'"
    }
    ';
    }
    elseif((int)$text_addcost["percent"]>0)
    {
    $percent[] = $text_addcost["percent"];
    }
    }
    DB::free_result($id_addcost);
    }
    $ratio = 1;
    foreach ($percent as $r)
    {
    $ratio = $ratio + ((int)$r/100);
    }
    echo $addtext;
    echo ' </div>
    <div class="good-disclaimer">
    <p><strong>Просим обратить внимание!</strong></p><p>Вашему питомцу может быть отказано в услугах в нашем салоне в следующих случаях:</p><ul class="disclaimer_ul"><li>ослабленного и физически нездорового состояния</li><li>беременности</li><li>агрессивного и неадекватного поведения</li></ul><p>Если у вашей собаки имеются хронические заболевания, патологические изменения покровов (новообразования на коже), аллергические реакции и другие особенности состояния здоровья, обязательно сообщите об этом мастеру.</p><p>Мастер оставляет за собой право взять наценку за агрессивное поведение вашего питомца (укусы, царапины, травмы).</p>
    </div>
    </div>
    ';

    $json='<script type="application/ld+json">
    {
    "@context": "http://schema.org/",
    "@type": "Product",
    "name": "'.$result["name"].'",
    ';
    $json .= (!empty($result["img"]))?'"image": [
    "'.$img_correction.'"
    ],':'';

    $descr = strip_tags((isset($result['text']))?$result['text'].'
    ':'').' '.strip_tags((!empty($id_addcost))?$addtext.'
    ':'');
    $json .= '
    "description": "'.$descr.strip_tags(' <p><strong>Просим обратить внимание!</strong></p><p>Вашему питомцу может быть отказано в услугах в нашем салоне в следующих случаях:</p><ul class="disclaimer_ul">
    ослабленного и физически нездорового состояния
    беременности
    агрессивного и неадекватного поведения
    <p>Если у вашей собаки имеются хронические заболевания, патологические изменения покровов (новообразования на коже), аллергические реакции и другие особенности состояния здоровья, обязательно сообщите об этом мастеру.</p><p>Мастер оставляет за собой право взять наценку за агрессивное поведение вашего питомца (укусы, царапины, травмы).</p>').'",';
    $offer_add = ' "priceCurrency": "RUB",
    "businessFunction": "Provide service",
    "seller": {
    "@type": "Organization",
    "@id": "https://sunnydogspb.ru/",
    "url": "https://sunnydogspb.ru/",
    "sameAs": "https://vk.com/sunnydogspb",
    "telephone": "+7-812-966-77-37",
    "name": "Зоосалон Солнечный пёс"
    }
    ';
    $offer_add .=$json_addtext.'
    ';

    if(count($result["price_arr"])>1)
    {
    foreach ($result["price_arr"] as $price)
    {
    $price_arr[] = $price["price_no_format"];
    }
    sort($price_arr);
    $json.='
    "offers": {
    "@type": "AggregateOffer",
    "lowPrice": "'.array_shift($price_arr).'",
    "highPrice": "'.(int)array_pop($price_arr)*$ratio.'",
    '.$offer_add.'
    }';
    }
    else
    {
    if ($ratio>1)
    {
    $json.='
    "offers": {
    "@type": "AggregateOffer",
    "lowPrice": "'.$result["price_arr"][0]["price_no_format"].'",
    "highPrice": "'.$result["price_arr"][0]["price_no_format"]*$ratio.'",
    '.$offer_add.'
    }';
    }
    else
    {
    $json.='
    "offers": {
    "@type": "Offer",
    "price": "'.$result["price_arr"][0]["price_no_format"].'",
    '.$offer_add.'
    }';
    }
    }



    $json.='
    }
    </script>
    ';

    echo $json;
  • 13 ноября 2018 г.
  • Согласен, дичь, там это все надо в модели спрашивать-кешировать-че-там-еще. Но. Там сайт с посещаемостью аж до 25 чел/сутки с каталогом аж на 200+/- позиций. Даже с учетом того, что там все через жопу, на производительности это не сказывается никак, так что в данном случае мне по итогу пофиг. Так что - да, не стоит идти прямо вот таким путем; но, тут попросили поделиться опытом - вот вам жертва опытов))
  • 05 октября 2018 г.
  • А это подо что? Я чет не припомню особо такую проблему. Карочи. Яндексу микроразметка, местами, понятна, но - как я понял, не уперлась. Из того, что воспринимает гугл - написано в рецептах гугла (справка из серчконсоли, блабла), и ТОЛЬКО ТАК КАК ТАМ НАПИСАНО. ВСЕ остальное из схема.орг можно выбросить в пропасть и нассать вдогонку. Из того, что типовое - артикль и продукт. Гугл все это охотно читает, индексирует, и даже иногда использует, но при полной луне и под особой звездой, но она не взойдет. Какого-то практического смысла я не ощутил; Все данные дергаются в блоке/шаблоне/четам из $this, при необходимости минимально подвергаясь напилингу. У меня есть опыт, но не уверен, что в нем есть смысл. Воообще, из общения с гуглем, у меня сложилось стойкое ощущение, что - независимо от того, какую свистоперделку от гугля ты привинчиваешь - ему глубоко пофиг (в отличие от Яши, кстати). Такие дела.
  • 30 апреля 2018 г.
  • №2 логично вытекает из №1; про ТП я подумал, потому как сомневаюсь в том, что ЦМС вообще что-то такое может изкаропки; и если я прав, то, подозреваю - для того, чтобы ее научить, нужно целый этно-балет с бубном устраивать.
  • 01 мая 2018 г.
  • Спасибо, кэп! Да, редиректы-то можно проставить с чего угодно; вся мякотка в том, что они все равно приведут на урлы вида
    Цитата
    site.com/obuchenie
    site.com/ua/obuchenie
    site.com/uk/obuchenie

    В чем польза для ОПа при таком раскладе - для меня загадка; но - да, такое можно.
  • 29 марта 2018 г.
  • Ну вот чисто гипотетически я бы, наверное, на поддомен тупо CMS поставил, там развернул сайт с мобильной версткой на той же БД, на которой работает основной сайт, и воткнул бы в htaccess редиректы по регулярке c /m/ на поддомен. Хотя, вполне вероятно, я мыслю неправильно и вообще грязно и мерзко)
  • 04 апреля 2018 г.
  • Ммм... Закрыть от поисковика /м/ в роботсе, поставить редиректы с /м/ в хтаксессе. Поддомен работает, поисковик на /м/ зайти не может, значит - не редиректится, но м.домен - вполне себе может обходить. Каноникалы там в шаблонах, все такое. Ну, или движок (маршрутизатор?..) ковырять, что для меня, при уровне вопроса "я фантазирую" слишком заумно, но, наверное - более правильно.
  • 25 марта 2018 г.
  • Еще меня как-то насторожил факт, что в вашем варианте kotly/gazovye-kotly/napolnye/napolnyy-gazovyy-kotel-baxi-slim-1300-in/ воспринимается как переменная, хотя, дай бог памяти, чтобы объявить переменную в текущем перенаправлении - конструкцию надо в круглые скобки засовывать.
Показывать по:

Новости

  • 24 апреля, среда
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 
  • 15 декабря 2023 г.
  • Подводим итоги 2023 года. Выпустили новую сборку DIAFAN.CMS 7.1.1, вводим новые тарифы на аренду сайта и коммерческую поддержку и автообновления с января 2024 г., строим планы на будущий год.