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

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

  • 06 сентября 2011 г.
  • Т.е. двусмысленное название просто попалось первым в списке, Вы его сразу и выбрали, не дочитывая список до конца?
    Так-то конечно наш косяк, что мы его даем в списке, но чтобы не выводить такие поля, надо напхать в код импортера проверок всяких, будет громоздко для пользователей... В общем, ок, будем думать.
  • 07 сентября 2011 г.
  • Ну не знаю... По-моему, Дмитрий, Вы заработались!
    По смыслу: родитель - это клон, от которого происходит и которому принадлежит элемент. Т.е. дочерний товар в товаре. Или категория родитель - главная, а дочерняя категория - вложенная в родительскую. Ну т.е. тип одинаковый должен быть, чтобы можно было сказать "Родитель-дочка".
    Вы же добавляете товар, хотите его в категорию, ставите тип "Родитель"... Как будто категория родила не категорию, а вообще другой тип... У меня даже в голове не укладывается, как рука может потянуться в этому пункту...
  • 02 ноября 2011 г.
  • Здра-а-асьте! Ваше сообщение можно понимать так, что мы импорт завели год назад чисто для показухи и он ни у кого не работает?
    Нас бы помидорами гнилыми давно бы закидали!
    Если ошибка какая-то локальная, пишите в техподдержку, прикладывайте файл, описывайте, как Вы настроили импорт, разберутся.
  • 06 июля 2011 г.
  • Разница в том, что ручной способ - ручной, а в модуле - автоматизированный.
    Пока это просто глобальная функция с файлом с ключевиками. Пропускаете через эту функцию, например $row["text"] из модуля вопрос-ответ, и по всем текстам на сайте если встречаются ключевики в вопросах-ответах пользователей, то они превращаются в ссылки на нужные внутренние страницы.
  • 03 ноября 2011 г.
  • Гарик забыл написать как работает функция в принципе.
    Есть глобальная функция, называется key_values()
    Вызывать ее можно откуда угодно, из любого модуля, из любой функции.
    Эта функция работает в паре с файлом keywords.php, который должен лежать в корне сайта.
    Файл keywords.php представляет из себя просто массив
    Код
    $keywords = array(
    'Ключевик1' => 'http://site.ru/url/',
    'Ключевик2' => '/url2/',
    'Ключевик3' => 'http://site.ru/url3/'
    );

    По умолчанию этого файла в корне нет! Так как функция редко и мало кем используется, файл надо создавать самим.
    Функция делает что: она берет текст и если встречает там ключевики из указанного массива, она меняет их на ссылки на соответствующую страницу.

    То есть, у вас есть сайт по кондиционерам и на нем рубрика "Вопрос-ответ", куда задается куча вопросов по кондиционерам. Вы хотите, чтобы из всех ответов, которые ваш консультант отвечал посетителям, слова "кондиционер" ссылались на главную страницу сайта.
    Тогда идете в файл /modules/faq/faq.view.php, находите функцию id() и там вывод ответа echo $row["text"]; и делаете так:
    Код
    echo $this->diafan->key_values($row["text"]);

    Затем в корне сайта создаете файл keywords.php
    Код
    $keywords = array(
    'кондиционер' => '/',
    'кондиционера' => '/',
    'кондиционеру' => '/',
    'кондиционером' => '/',
    'кондиционеры' => '/',
    'кондиционеров' => '/'
    );

    И все. Во всех ответах на вопросы эти слова автоматически сошлются на главную страницу.

    Так же можете применить к комментариям, которые оставляют пользователи, к форуму, к новостям, а можете к функции show_body(), чтобы вообще все ключевики на сайте ссылалось куда надо.
  • 25 ноября 2011 г.
  • Смотрите:
    Код
    $this->view->get_function_in_theme($this->diafan->text);

    это обработка переменной $this->diafan->text для поиска шаблонных тегов вставленных в контент.
    В Вашей версии переменная называется не $text, а $this->diafan->text. Но смысл остается тот же.
    До или после обрабатывайте эту переменную для замены ключевиков на ссылки.
    Код
    $this->diafan->text=$this->diafan->key_values($this->diafan->text);
  • 25 ноября 2011 г.
  • Цитата
    Скачивайте самый последний пакет diafan.CMS и берите от туда файл /includes/core.php

    У Вас какая версия CMS? В пакете по умолчанию эта функция только с 4.5.0.8
    В остальных более старых версиях эту функцию надо добавлять.
  • 25 ноября 2011 г.
  • Куда Вы заменили core.php??? Вы взяли core.php из 4.5 и залили сверху 4.3???
    Гхм... Как бы мягко говоря, core.php в 4.3 и 4.5 отличаются. Если бы так все просто можно было между версиями заливать поверх друг друга, зачем бы тогда все пакетные обновления и строгая последовательность были бы нужны?
    core.php из последнего пакета работает только в линейке 4.5! И это очевидно, по-моему... Для 4.3 можете только взять этот последний core.php, найти там функцию key_values(), скопировать ее к себе в core подогнав под остальные функции там.
    И то я до конца не знаю, будет ли это сразу работать на 4.3. Надо Гарика спросить.
  • 25 ноября 2011 г. , редакция: 1322236531
  • Модуль перелинковки и сама функция примитивнейшая. Алгоритм ее работы проще некуда. Такие функции ставят в пример новичкам программистам.

    Вот функция:
    Код
    public function key_values($text){

    if(!file_exists(ABSOLUTE_PATH.'keywords.php'))
    { return $text; } //проверяем наличие файла keywords.php

    include_once(ABSOLUTE_PATH.'keywords.php'); //инклюдим файл

    foreach($keywords as $k => $v) { //цикл, перебираем все ключевики из файла

    $text = preg_replace('/([^a-zA-Zа-яА-Я])'.$k.'([^a-zA-Zа-яА-Я])/', '$1<a href="'.$v.'">'.$k.'</a>$2', $text); //меняем слово на <a href=>слово</a>

    }

    return $text; //отдаем результат работы

    }

    Она делает одно единственное действие: перебирает массив из файла keywords.php и меняет найденное слово на это же слово со ссылкой вокруг.

    Засунув эту функцию в core.php или в function.php ее можно использовать в любом месте CMS как $this->diafan->key_values().

    Уже этого сообщения достаточно, чтобы даже начинающему программисту сделать перелинковку в любой версии самостоятельно. Если Вы вообще не программист, то остается только заплатить, чтобы сделали.
  • 10 августа 2012 г.
  • Цитата
    Сделал все как описано выше. Эффекта нет. Текст который встречается,на сайте - просто текст.

    Цитата
    У меня ноль эффекта.

    Цитата
    Ключевики в тексте, не становятся a hrefами.

    Слушайте, сейчас сам бился часа полтора, не работало. Копался-копался, начал трассировать - понял в чем проблема!
    Кодировка! Кодировка файла keywords.php! Она должна быть UTF without BOM, как и все файлы CMS. У меня была ANSI и ничего не работало, есессно. Т.к. ключевики брались из файла ромбиками и не находились в тексте. Изменил кодировку, все заработало.
    Это так, на будущее может кому поможет.

Новости

  • 19 сентября
  • Мы внесли изменения в лицензию и объявляем, что прекращаем техническую консультационную поддержку сайтов на DIAFAN.CMS версий старше 7.0. А это все минорные версии платформы, предшествующие актуальной линейке, а именно: версии серии 4.x, 5.x, 6.x.
  • 15 сентября
  • У нас отличные новости! Мы выпустили новую сборку DIAFAN.CMS 7.3, которая включает встроенные нейросети непосредственно в административной панели. Это значит, что создание контента для вашего сайта больше не будет проблемой — искусственный интеллект возьмет эту задачу на себя, избавляя вас от необходимости привлекать копирайтеров или тратить время на написание текстов самостоятельно.
  • 25 марта
  • Мы обновили систему тарифов, учитывая опыт работы с клиентами и современные рыночные условия. Новая тарифная сетка разработана специально для того, чтобы лучше отвечать вашим потребностям. Резкого повышения цен не произошло. Более того, некоторые тарифы даже стали выгоднее и доступнее. 

Блоги

  • 10.09.2025
  • DIAFAN.CMS славится нагрузоустойчивостью и безопасностью, про инциденты со взломом сайта на нашей системе давненько не слышали, но недавно получили мы письмо от fstec.ru такого характера:

    Обнаружена уязвимость в CMS-системе DIAFAN, позволяющая нарушителю, действующему удалённо, красть сессионные куки через XSS-атаку.

Форум