CMS DataLife Engine - Система управления сайтами

All Activity

This stream auto-updates     

  1. Past hour
  2. Оцените пожалуйста лучший клуб Вулкан, буду благодарен
  3. Today
  4. если двиг легальный, то вредоносная ссылка может прятаться в шаблоне либо в скриптах визульно она может быть скрыта, например с помощью стилей а чтобы в шаблонизаторе ее было труднее заметить ее могли спрятать далеко справа, например поставить кучу пробелов, чтобы она ушла из зоны видимости. еще может быть такое что сам хостинг заражен как вариант проверьте сайт через virusdie
  5. я этот сайт уже продал и новые админы его визуально уже испоганили...
  6. Могу порекомендовать проверенный портал по трудоустройству https://larikon.com/msk/strip/ . Ценовая категория зависит от вашей внешности, доп.услуг, желания и умения себя подать!
  7. В англоязычной версии движка кнопки опроса выводятся на русском языке (скриншот приложил)
  8. Спасибо друг, я думаю ты многим облегчил жизнь)))😀
  9. Делов то😀 Для начала проверяем страницы сайта "Инструменте структурных данных от googl" обнаруживаем предупреждения! Исправляем эту хрень... Открываем engine/engine.php и конце файла, после: /* ===================================================== Формирование speedbar ===================================================== */ или /* ===================================================== speedbar creation ===================================================== */ смотря на каком языке написан этот комментарий, удаляем ВЕСЬ код до конца файла. Вставляем на его место: if ($config['speedbar'] AND !$view_template ) { $s_navigation = "<span itemprop=\"itemListElement\" itemscope itemtype=\"https://schema.org/ListItem\"><meta itemprop=\"position\" content=\"1\"><a href=\"{$config['http_home_url']}\" itemprop=\"item\"><span itemprop=\"name\">" . $config['short_title'] . "</span></a></span>"; if( $config['start_site'] == 3 AND $_SERVER['QUERY_STRING'] == "" AND !$_POST['do']) $titl_e = ""; if (intval($category_id)){ if($titl_e OR (isset($_GET['cstart']) AND intval($_GET['cstart']) > 1) ) { $last_link = true; } else $last_link = false; $s_navigation .= " {$config['speedbar_separator']} " . get_breadcrumbcategories ( intval($category_id), $config['speedbar_separator'], $last_link ); } elseif ($do == 'tags') { if ($config['allow_alt_url']) $s_navigation .= " {$config['speedbar_separator']} <span itemprop=\"itemListElement\" itemscope itemtype=\"https://schema.org/ListItem\"><meta itemprop=\"position\" content=\"2\"><a href=\"" . $config['http_home_url'] . "tags/\" itemprop=\"item\"><span itemprop=\"name\">" . $lang['tag_cloud'] . "</span></a></span> {$config['speedbar_separator']} " . $tag; else $s_navigation .= " {$config['speedbar_separator']} <span itemprop=\"itemListElement\" itemscope itemtype=\"https://schema.org/ListItem\"><meta itemprop=\"position\" content=\"2\"><a href=\"?do=tags\" itemprop=\"item\"><span itemprop=\"name\">" . $lang['tag_cloud'] . "</span></a></span> {$config['speedbar_separator']} " . $tag; } elseif ($nam_e) $s_navigation .= " {$config['speedbar_separator']} " . $nam_e; if ($titl_e) { $s_navigation .= " {$config['speedbar_separator']} " . $titl_e; } else { if ( isset($_GET['cstart']) AND intval($_GET['cstart']) > 1 ){ $page_extra = " {$config['speedbar_separator']} ".$lang['news_site']." ".intval($_GET['cstart']); } else $page_extra = ''; $s_navigation .= $page_extra; } $tpl->load_template ( 'speedbar.tpl' ); $tpl->set ( '{speedbar}', '<span id="dle-speedbar" itemscope itemtype="https://schema.org/BreadcrumbList">' . stripslashes ( $s_navigation ) . '</span>' ); $tpl->compile ( 'speedbar' ); $tpl->clear (); } ?> После открываем engine/modules/functions.php находим функцию function get_breadcrumbcategories($id, $separator="&raquo;") { global $cat_info, $config, $PHP_SELF; if( ! $id ) return; $parent_id = $cat_info[$id]['parentid']; if( $config['allow_alt_url'] ) $list = "<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"" . $config['http_home_url'] . get_url( $id ) . "/\" itemprop=\"url\"><span itemprop=\"title\">{$cat_info[$id]['name']}</span></a></span>"; else $list = "<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"$PHP_SELF?do=cat&amp;category={$cat_info[$id]['alt_name']}\" itemprop=\"url\"><span itemprop=\"title\">{$cat_info[$id]['name']}</span></a></span>"; while ( $parent_id ) { if( $config['allow_alt_url'] ) $list = "<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"" . $config['http_home_url'] . get_url( $parent_id ) . "/\" itemprop=\"url\"><span itemprop=\"title\">{$cat_info[$parent_id]['name']}</span></a></span>" . " {$separator} " . $list; else $list = "<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"$PHP_SELF?do=cat&amp;category={$cat_info[$parent_id]['alt_name']}\" itemprop=\"url\"><span itemprop=\"title\">{$cat_info[$parent_id]['name']}</span></a></span>" . " {$separator} " . $list; $parent_id = $cat_info[$parent_id]['parentid']; if($parent_id) { if( $cat_info[$parent_id]['parentid'] == $cat_info[$parent_id]['id'] ) break; } } return $list; } и удаляем ее полностью на ее место вставляем function get_breadcrumbcategories($id, $separator="&raquo;", $last_link = true) { global $cat_info, $config, $PHP_SELF; if( !$id ) return; $parent_id = $cat_info[$id]['parentid']; $list = $temp = array(); $pos = 2; if ($last_link) { if( $config['allow_alt_url'] ) $list[] = "<span itemprop=\"itemListElement\" itemscope itemtype=\"https://schema.org/ListItem\"><meta itemprop=\"position\" content=\"{pos}\"><a href=\"" . $config['http_home_url'] . get_url( $id ) . "/\" itemprop=\"item\"><span itemprop=\"name\">{$cat_info[$id]['name']}</span></a></span>"; else $list[] = "<span itemprop=\"itemListElement\" itemscope itemtype=\"https://schema.org/ListItem\"><meta itemprop=\"position\" content=\"{pos}\"><a href=\"$PHP_SELF?do=cat&amp;category={$cat_info[$id]['alt_name']}\" itemprop=\"item\"><span itemprop=\"name\">{$cat_info[$id]['name']}</span></a></span>"; } else { $list[] = $cat_info[$id]['name']; } while ( $parent_id ) { if( $config['allow_alt_url'] ) $list[] = "<span itemprop=\"itemListElement\" itemscope itemtype=\"https://schema.org/ListItem\"><meta itemprop=\"position\" content=\"{pos}\"><a href=\"" . $config['http_home_url'] . get_url( $parent_id ) . "/\" itemprop=\"item\"><span itemprop=\"name\">{$cat_info[$parent_id]['name']}</span></a></span>" . " {$separator} "; else $list[] = "<span itemprop=\"itemListElement\" itemscope itemtype=\"https://schema.org/ListItem\"><meta itemprop=\"position\" content=\"{pos}\"><a href=\"$PHP_SELF?do=cat&amp;category={$cat_info[$parent_id]['alt_name']}\" itemprop=\"item\"><span itemprop=\"name\">{$cat_info[$parent_id]['name']}</span></a></span>" . " {$separator} "; $parent_id = $cat_info[$parent_id]['parentid']; if($parent_id) { if( $cat_info[$parent_id]['parentid'] == $cat_info[$parent_id]['id'] ) break; } } if(count($list)) { $list = array_reverse($list); foreach($list as $value) { $temp[] = str_replace("{pos}", $pos, $value); $pos ++; } $list = $temp; } return implode("", $list); } Проверяем в "Инструменте структурных данных от google" и убеждаемся, что теперь ошибок, а вернее, предупреждений НЕТ. После в GoogleSearchConsole отправляем на проверку, нажав кнопку "Проверить исправления".
  10. Yesterday
  11. Как приплести не приплитуемое. Браво, аплодирую стоя. Вау, тема о пожеланиях для новых версий DLE, человек высказал что хотел бы он видеть. И тут понеслась, наш уважаемый @Primary Sphinx решил все за других что нужно а что нет.
  12. Пробовал.. нашел антивирусом левый файл в папке uploads/files с расширением jpeg который не открывается как картинка, зато открывается как txt.. Подчистил, вот только не помогает это для робота проверки модерации..
  13. Пройдитесь по файлам шаблона и js-скриптам подключённым к шаблонку и смотрите где там вписан домен w3-org
  14. Добрый день, запустили рекламу в Директе и Гугле на демо версии последнего движка. Сайт https://pravosudie12.ru/ Все было в полном порядке, но через некоторое время гугл начал выводить ошибку вредоносного ПО утверждая что на сайте вирус... Получили письмо такого содержания: Ребята, помогите исправить ситуацию.. пробовал менять версию движка сайта - не помогло. Самое главное, что в серч консоли и на других проверках сайт идеален и без вирусов. Что делать - пишу от безысходности?
  15. Потерпи немного. По-любому на просторах появится хак или плагин. В крайнем случае можно из 13.3 выдрать код и попробовать его
  16. Могу вам такое создать, напишите в ЛС, обсудим цени и время работы
  17. Last week
  18. А что Вы подразумеваете под качественной реализацией из коробки, и что - под костылями? Человек захотел корзину и черновики, как в Вордпресс - пожалуйста! DLE позволяет создать и то и другое, без ЕДИНОГО костыля, штатными средствами движка! Конкретно под свои нужды! Где Вы тут костыли увидели? Мало того, позволяет настроить значительно тоньше чем в Вордпресс, с учётом многопользовательского интерфейса! Надо только чуток фантазии проявить - каким образом какие уже имеющиеся функции можно использовать. А если надо одно - точно как в Вордпресс прям из коробки, другое - как в Вордпресс, третье,.. да ещё может чтоб и шаблоны подходили тоже от Вордпресс? Тогда прямая дорога обратно в Вордпресс. DLE - качественно иной движок! В целом не хуже и не лучше, просто иной! И если в Вордпрессе для добавления какой-то функции надо или внести эту функцию в новую версию, или скачать плагин, то в DLE очень многие незадокументированные возможности решаются щелчком пальца благодаря уже имеющемуся широкому функционалу. Но тут без смекалки тяжковато, особенно тем, кто обучался по постсоветской школьной программе и привык видеть или не видеть кнопочку, а не создавать её.
  19. Этого не будет, я уже предлагал. Наотрез сказали что нет.
  20. И еще самое главное. Не нужно там всегда держать 1000 новостей, после того как яндекс добавит их в поток, опять уменьшите количество. Это накопительная система, а не одномоментная. Яндексу достаточно один раз их прочитать, потом он будет о них знать.
  21. Завязывайте пугать человека. Во первых дыра, это когда можно взломать сайт, через передачу этого параметра, взломать DLE невозможно, он проводит фильтрацию адресов, поэтому максимум что можно это передать не реальный IP, а какой то вымышленный. Но !!!! пока сайт стоит за CF и это невозможно, потому как CF пробрасывает этот заголовок заменяя сам на реальный IP, т.е. пока сайт за прокси он будет получать всегда реальный адрес, а вот если отключить CF то можно будет пробросить вымышленный, только это автор топика должен знать и все, и не забыть изменить настройку при отключении от Cloudflare. А что касается что правильно это настраивать именно серверное ПО apache и nginx, то да это верно, но обычный shared хостинг этого не дает, поэтому и есть такая настройка в DLE. Не нужно мешать человеку развиваться, придет время, у него все получится, он вырастет в посещаемости, купить себе один или десяток серверов и обойдет нас всех на повороте 😉 Так что только удачи ему 👍
  22. Спасибо за ответ, но помощь так себе ((
  23. Было бы здорово указывать версию DLE не для всего плагина, а для каждой правки отдельно. Так можно в одном плагине совмещать разные версии DLE. P.S. "Ссылка на обновление плагина" - по ссылке что должно отдаваться? Как вы определяете, что это обновление, а не тот же плагин? md5 проверяете или json ответ какой то?
  24. "Дыра, дыра". Если кто то захочет передать поддельный IP, значит этот сайт должен представлять какую то ценность, должен быть высокопосещаемым. А значит, у такого сайта есть сисадмин, который настроит сервер правильно. А если владелец хочет сам настроить, пусть читает мануалы, в интернете достаточно информации и для apache и для nginx.
  25. Было так Главная » Новости » Название новости Стало так Главная » Новости Ведь название новости есть в самой новости. Зачем писать его 2 раза. Работает на версии 13,2 плагин https://yadi.sk/d/_ercm2HcfMa-Uw
  26. Видела кучу сайтов у которых урлы какие хочешь и это не мешает им иметь миллионы трафика в месяц. Вот в нашей с вами общей кулинарной теме посмотрите сами сколько сайтов имеет другую структуру урлов - айэмкук, 1000 меню, рутекст, руссианфуд, повар.ру, поваренок,готовим.ру, едим дома, гастроном и т.д. и там трафик исчисляется миллионами в месяц. Это конечно сайты очень трастовые, но я думаю, что если бы их сеошники понимали бы что изменение урла даст профит, то они бы его поменяли. Можно оставить тему на несколько лет и посмотреть что с ними станется, поменяют ли они урлы на такие как вы пишите. Поисковики конечно толкают сервисы и технологии, сейчас они толкают турбо, амп, гугл свои сервисы типа ютуба, яндекс - типа знатоков,дзена. Всем нужна адаптивность и https Для пользователя структура урла конечно лучше ЧПУ чем абракадабра - у dle есть ЧПУ.
  27. Как обычно вместо качественной реализации из коробки, предлагаете городить костыли. Для всех ваших вопросов есть один ответ, вынести все настройки в настройки групп, и уже там разрешать кому, сколько и на какой срок можно хранить. До сих пор не решена проблема с автообновлением для разных версий DLE, а вы магазин хотите. Что бы потом люди обновляли плагины на прошлой версии DLE и получали "кирпичи" вместо сайта?
  28. Совет из разряда вредных, эта опция вообще полудыра в DLE и её использование рекомендуется разве что для каких то "очень плохих" хостингов, которые не удосужились до сих пор корректно настроить свои сервера для CF. Но лучше с таких сразу бежать, а не дырявить безопасность.
  29. Тогда уж стоит упомянуть что расширение имеют статические файлы, а DLE всё таки CMS для создания динамических сайтов, но пути новостей и статических страниц как бы намекают что это просто статичная HTML страница, так что человек в какой то мере прав. У всех CMS в основном давно уже пути выглядят как обычные "директории" и от расширений файлов уже давно отказались. Помните когда вы вводили обязательность слеша в конце адреса категории? Сколько недовольства это вызвало, хотя можно было бы оставить адреса без слеша, но вы решили сделать "правильные" адреса у директорий, по этому странно что у динамических страниц до сих пор расширение .html .
  1. Load more activity