Jump to content

All Activity

This stream auto-updates     

  1. Past hour
  2. Блин, и смех и грех. Ну пишется, и что? Он же не читается у тебя.
  3. не считай себя самым умным)) да пишется он https://kolyma.ru/uploads/000.jpg
  4. Да без разницы, сколько ты сидишь, у тебя кэш не пишется, хоть ты триста лет сиди.
  5. Today
  6. уверен, и права и владелец))) я дольше сижу))) когда еще cutenews была)))))
  7. уверен? Я на ДЛЕ пользую с 8,2 версии, а это почти десяток лет. И только недавно на своем вдс обломался, узнав, что права на папки и владелец с группой это разные вещи. Так что не будь таким уверенным а зайди и проверь, как я выше написал.
  8. я вообще то это все знаю, на дле сижу очень много лет))) там все ок и chmod на папки, и даты обновления файлов)))
  9. проверь, что он работает. Зайди в папку кэш и посмотри, не обновляется ли кэш с каждым обновлением страницы на сайте. У меня была такая байда из-за прав на папки. Заходишь в директорию через ftp-клиент, смотришь даты кэш-файлов. Открываешь сайт, обновляешь страницу, заходишь опять на сервер, обновляешь там и смотришь, не изменилась ли дата
  10. Yesterday
  11. Русским языком повторяю - включи файловый кэш. Да, из памяти читать быстрее, но у тебя ничего не настроено для этого. Поэтому файловый кэш будет оптимальный для твоего случая и не придется кастомы убирать.
  12. уже поубирал кучу custom, проект в какашку превращается, скоро титул будет из одной колонки просто(((, но админ упорно пишет, что проблемы в движке(((( Сейчас админ просто пишет, что надо на выделенный переходить, много запросов, а это дополнительные расходы еще( повторюсь новостей 90000, уникальных сейчас 5000 в сутки, регистрация пользователей отключена, все кэширования, там gzip сжатия включены. Хоть блин уже календарь, публикацию на период, вывод похожих и т.д. отключай!!! . Но админ упорно пишет, что вся проблема в движке.
  13. Если у вас возникают такие проблемы, вам рано использовать CMS с хостингом или VPS/VDS. Учитесь на конструкторах, например, на Тильде, а потом переходите на CMS. P.S. А чего сложного вставить в main.tpl шаблона код метрики? Вам в любом случае придется подгонять шаблон под свои нужды.
  14. К большому сожалению, это большое упущение разработчиков, что до сих пор не реализовали единственную кнопку во весь экран, нажав которую можно было вставить цифры и т.п. Взять, к примеру, правила форума. Они на столько кратко изложены, что их не каждый ещё увидит и прочитает, не говоря уже о выполнении их.
  15. На сайте используются древовидные комментарии. Есть желание сделать так, чтобы автор комментария получал уведомления о новом комментарии на почту в том случае, если это был ответ на его комментарий или комментарий был ниже в его ветке. на фото https://ibb.co/QCCJJmd
  16. Это я забыл удалить. Просто хотел посмотреть что хранит! Про кеш спрашивал хотел полостью выдачу поместить в кеш, но потом передумал так как кеш превратиться в некую базу данных ещё одну по этому решил выдачу не отправлять в кеш а написал так $name_cache = md5(implode('_', $config['skin'])); $kol_zapis = dle_cache($city.'_'.$name_cache, $r_strok, 43200); // достаём из кеша данные if($kol_zapis == false ) { $sql_kol_zap = $db->query( "SELECT * FROM " . PREFIX . "_mod_job WHERE city_may LIKE '" . $db->safesql($city) . "%' AND (`name_vakansiya` LIKE '%". $db->safesql($vakansiya) . "%' OR `name_sinonim` LIKE '%". $db->safesql($vakansiya) . "%') AND `category_id` LIKE '%" . $db->safesql($categor) . "%' AND `activ`='1'"); $kol_vo_zapis = $db->num_rows($sql_kol_zap); create_cache($city.'_'.$name_cache, $kol_vo_zapis);// количество записей отправляем в кеш } Количество записей в базе отправил туда для навигации,
  17. Last week
  18. Здравствуйте, в настройках всё включено, сами теги прописаны, но не отображаются и на странице Облако тегов написано что ключевых слов для облака тегов в публикациях на сайте не задавалось. Пробовал делать перестроение публикаций
  19. в меню смs нет куда вставить цифры янд.метрики?, или только код править
  20. Куки, сессии, гет, пост, протоколы, зачем спрашивал про кэш вообще непонятно, и на финал else { echo $config['allow_alt_url']; И вся эта каша ради того, что бы вывести несколько записей из БД...
  21. Вообщем выкладываю пока небольшую наработку. Так как это первый подобный модуль мой в DLE если кто знает как сделать что то лучше буду только за. Советы, рекомендации и конструктивную критику. Это пока только пользовательская часть. Страница поиска верх. Страница поиска низ! Страница профиля Ссылка на сам мод с файлами там же есть небольшая инструкция по установке. https://yadi.sk/d/R41GgXHh1uVdJw Самую основную страницу публикую тут с моими комментариями <?php if( !defined('DATALIFEENGINE') ) { header( "HTTP/1.1 403 Forbidden" ); header ( 'Location: ../../' ); die( "Hacking attempt!" ); } header('Cache-Control: no cache'); //no cache //session_cache_limiter('private_no_expire'); // works session_start(); //Начинаем ловить город любыми путями GET, POST, COOKIE $city = $_GET['city'] ?? $_POST['city'] ?? $_COOKIE['CookieCity'] ?? null; $protocol = strtolower(substr($_SERVER["SERVER_PROTOCOL"],0,5))=='https'? 'https' : 'http'; if (!empty($city)) { setcookie("CookieCity", $city, time()+3600*24*20, $_SERVER['SERVER_NAME']);/* срок действия 30 дней */ } //Если так и не нашли идём на api.dadata.ru что бы выяснить город по ip if(empty($_COOKIE['CookieCity'])){ $headers=array( 'user-agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36', 'accept: application/json', 'Content-Type: application/json', 'Authorization: Token (Здесь токен)', 'Accept-Charset: utf-8'); $ch = curl_init('https://suggestions.dadata.ru/suggestions/api/4_1/rs/iplocate/address?ip='.$_SERVER['REMOTE_ADDR'].''); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_HEADER, false); $data_sdati = curl_exec($ch); curl_close($ch); $mas_data = json_decode($data_sdati, true); $city = $mas_data['location']['data']['city']; } //протокол и город сохраняем в сессию $_SESSION['city'] = $city; $_SESSION['protocol'] = $protocol; //эта проверка делит код на две части для двух страниц if($_GET['jobfull']==''){ $vakansiya = $_GET['vakansiya']; if($_GET['categor']!='') { $sql_categor12 = $db->query("SELECT * FROM `" . PREFIX . "_mod_job_categor` WHERE `id`= '".$db->safesql($_GET['categor'])."'"); $categor_vac12 = $db->get_row($sql_categor12); $categor = $categor_vac12['name_categor']; setcookie("CookieCategor", $categor, time()+3600*24*20, $_SERVER['SERVER_NAME']);/* срок действия 30 дней */ } if($_GET['del_kat']=='ok'){ unset($_COOKIE['CookieCategor']); unset($categor); } $name_cache = md5(implode('_', $config['skin'])); $kol_zapis = dle_cache($city.'_'.$name_cache, $r_strok, 43200); // достаём из кеша данные if($kol_zapis == false ) { $sql_kol_zap = $db->query( "SELECT * FROM " . PREFIX . "_mod_job WHERE city_may LIKE '" . $db->safesql($city) . "%' AND (`name_vakansiya` LIKE '%". $db->safesql($vakansiya) . "%' OR `name_sinonim` LIKE '%". $db->safesql($vakansiya) . "%') AND `category_id` LIKE '%" . $db->safesql($categor) . "%' AND `activ`='1'"); $kol_vo_zapis = $db->num_rows($sql_kol_zap); create_cache($city.'_'.$name_cache, $kol_vo_zapis);// количество записей отправляем в кеш } $num = 17; // Извлекаем из URL текущую страницу $page = $_GET['p']; // Определяем общее число сообщений в базе данных // Находим общее число страниц $total = intval(($kol_zapis - 1) / $num) + 1; // Определяем начало сообщений для текущей страницы $page = intval($page); // А если слишком большое, то переходим на последнюю if(empty($page) or $page < 0) $page = 1; if($page > $total) $page = $total; // Вычисляем начиная к какого номера // следует выводить сообщения $start = $page * $num - $num; $sql_vacansii = $db->query( "SELECT * FROM " . PREFIX . "_mod_job WHERE city_may LIKE '" . $db->safesql($city) . "%' AND (`name_vakansiya` LIKE '%". $db->safesql($vakansiya) . "%' OR `name_sinonim` LIKE '%". $db->safesql($vakansiya) . "%') AND `category_id` LIKE '%" . $db->safesql($categor) . "%' AND `activ`='1' ORDER BY `id` desc limit ".$start.", ".$num.""); $nomer = $db->num_rows($sql_vacansii); // Формируем ссылку для удаления категории if($categor!='') { $categor_del = "Вакансии в категории ".$categor." | <a href='../../вакансии/?del_kat=ok'><b>очистить категорию</b></a></p>";} $tpl->load_template( 'mod_rab/form_search.tpl' ); $tpl->set('{city}', $city); $tpl->set('{vakansiya}', $vakansiya); $tpl->set('{categor}', $categor); $tpl->set('{categor_del}', $categor_del); $tpl->compile('form_search'); echo $tpl->result['form_search']; $tpl->load_template( 'mod_rab/result_search.tpl' ); while ($row = $db->get_row($sql_vacansii)) { $region = $row['region_code_kladr']; $city_ssilka = '../../вакансии/'.$city.'/'.$row['id'].'.html'; $postalCode = substr($row['address'], 0, 6); $tpl->set('{postalCode}', $postalCode); $tpl->set('{vakansiya}', $row['name_vakansiya']); $tpl->set('{address}', $row['address']); $tpl->set('{salary}', $row['salary_min']); $tpl->set('{vac_url}', $row['vac_url']); $tpl->set('{company_name}', $row['company_name']); $tpl->set('{aktiv-date}', $row['aktiv-date']); $tpl->set('{off-date}', $row['date_to']); $tpl->set('{opisanie}', $row['opisanie_job']); $tpl->set('{categor}', $row['category_may']); $tpl->set('{region_name}', $row['region_name']); $tpl->set('{id_vac}', $row['id']); $tpl->set('{email}', $row['company_email']); $tpl->set('{city}', $city); $tpl->set('{city_ssilka}', $city_ssilka); if($row['company_phone']=='') { $phone = "<a href=".$row['vac_url']." rel='nofollow' target='_blank'>Тел. не указан подробно на сайте - <i>".$row['sait_name']."</i></a>";} else { $phone = "<a href='tel:".$row['company_phone']."'>Тел. ".$row['company_phone']."</a>";} $tpl->set('{phone}', $row['company_phone']); $tpl->compile('poisk_vak'); } $_SESSION['region'] = $region; echo $tpl->result['poisk_vak']; if(!empty($vakansiya)){ $vacans='/'.$vakansiya.'/'; } else { $vacans='/'; } if(!empty($categor)){ $cat_slesh='&categor='.$categor; } else { $cat_slesh=''; } if($nomer>0){ $text_pod="<i><h3 class='h3 title'>В городе ".$city." найдены свежие вакансии</h3></i>"; } else { $text_pod="<h3 class='h3 title'>Хорошо, свежие вакансии в двух кликах</h3>"; } //Поехала постраничная навигация // Проверяем нужны ли стрелки назад if ($page != 1) $pervpage = "<a href=".$protocol."://".$_SERVER['SERVER_NAME']."/%D0%B2%D0%B0%D0%BA%D0%B0%D0%BD%D1%81%D0%B8%D0%B8/".$city.$vacans."?p=1".$cat_slesh."><<</a> <a href=".$protocol."://".$_SERVER['SERVER_NAME']."/%D0%B2%D0%B0%D0%BA%D0%B0%D0%BD%D1%81%D0%B8%D0%B8/".$city.$vacans."?p=". ($page - 1) .$cat_slesh."><</a>"; // Проверяем нужны ли стрелки вперед if ($page != $total) $nextpage = "<a href=".$protocol."://".$_SERVER['SERVER_NAME']."/%D0%B2%D0%B0%D0%BA%D0%B0%D0%BD%D1%81%D0%B8%D0%B8/".$city.$vacans."?p=". ($page + 1) .$cat_slesh.">></a> <a href=".$protocol."://".$_SERVER['SERVER_NAME']."/%D0%B2%D0%B0%D0%BA%D0%B0%D0%BD%D1%81%D0%B8%D0%B8/".$city.$vacans."?p=" .$total.$cat_slesh. ">>></a>"; // Находим две ближайшие станицы с обоих краев, если они есть if($page - 2 > 0) $page2left = "<a href=".$protocol."://".$_SERVER['SERVER_NAME']."/%D0%B2%D0%B0%D0%BA%D0%B0%D0%BD%D1%81%D0%B8%D0%B8/".$city.$vacans."?p=". ($page - 2) .$cat_slesh.">". ($page - 2) ."</a> | "; if($page - 1 > 0) $page1left = "<a href= ".$protocol."://".$_SERVER['SERVER_NAME']."/%D0%B2%D0%B0%D0%BA%D0%B0%D0%BD%D1%81%D0%B8%D0%B8/".$city.$vacans."?p=". ($page - 1) .$cat_slesh.">". ($page - 1) ."</a> | "; if($page + 2 <= $total) $page2right = " | <a href=".$protocol."://".$_SERVER['SERVER_NAME']."/%D0%B2%D0%B0%D0%BA%D0%B0%D0%BD%D1%81%D0%B8%D0%B8/".$city.$vacans."?p=". ($page + 2) .$cat_slesh.">". ($page + 2) ."</a>"; if($page + 1 <= $total) $page1right = " | <a href=".$protocol."://".$_SERVER['SERVER_NAME']."/%D0%B2%D0%B0%D0%BA%D0%B0%D0%BD%D1%81%D0%B8%D0%B8/".$city.$vacans."?p=". ($page + 1) .$cat_slesh.">". ($page + 1) ."</a>"; echo '<center>'.$pervpage.$page2left.$page1left.'<b>'.$page.'</b>'.$page1right.$page2right.$nextpage.'</center></br>'; $tpl->clear(); $db->free(); } else { echo $config['allow_alt_url']; // Собираем страницу для полной версии вакансии $sql_kjob = $db->query( "SELECT * FROM " . PREFIX . "_mod_job WHERE id='".$db->safesql($_GET['jobfull'])."'"); $row_job = $db->get_row($sql_kjob); $tpl->load_template( 'mod_rab/full_job.tpl' ); $tpl->set('{name_vakansiya}', $row_job['name_vakansiya']); $tpl->set('{zarplata}', $row_job['salary_min']); $tpl->set('{telefon}', $row_job['company_phone']); $tpl->set('{email}', $row_job['company_email']); $tpl->set('{opisanie}', $row_job['opisanie_job']); $tpl->set('{date}', $row_job['aktiv-date']); $tpl->set('{company_name}', $row_job['company_name']); $tpl->set('{categor}', $row_job['category_may']); $tpl->set('{city}', $city); $tpl->set('{address}', $row_job['address']); $tpl->set('{ogrn}', $row_job['company_ogrn']); $tpl->set('{geo_lat}', $row_job['geo_lat']); $tpl->set('{geo_lon}', $row_job['geo_lon']); $tpl->compile('full_job'); echo $tpl->result['full_job']; } ?>
  22. Типы допустимых обьектов https://webmasters.googleblog.com/2019/09/making-review-rich-results-more-helpful.html
  23. Что то у тебя с логикой непорядок. Сначала делаешь запрос в БД и только потом проверяешь, есть ли кэшированные данные. В чем смысл читать из кэша, если запрос в БД уже сделан? $mymod = dle_cache('search_city', $mymod, $config['skin']); // проверяем кэш и если есть, прыгаем на echo $mymod; // А если нет кэша, то вот тогда и делаем select из БД if (!$mymod) { $sql_vac = $db->query( "SELECT * FROM " . PREFIX . "_mod WHERE city = 'Москва'"); while ($vak_one = $db->get_row($sql_vac)) { $tpl->set('{name}', $vak_one['name']); $tpl->set('{add}', $vak_one['add']); $tpl->compile('poisk'); } create_cache( 'search_city', $mymod, $config['skin'] ); // кэшируем на будущее } echo $mymod;
  24. Отчасти я всё таки нагуглил как записать в кеш. Можно ли как то массив записать с ключами и потом достать его?
  25. Как кешировать запрос в sql ? $sql_vac = $db->query( "SELECT * FROM " . PREFIX . "_mod WHERE city = 'Москва'"); $mymod = dle_cache('search_city', 86400, $sql_vac); // проверяем кэш if($mymod == false) { echo 'Старый кеш'; } while ($vak_one = $db->get_row($mymod)) { $tpl->set('{name}', $vak_one['name']); $tpl->set('{add}', $vak_one['add']); $tpl->compile('poisk'); } Но чёт ни чего не кешируется? Да и вообще всё на ура продолжает работать если сам запрос не указываю $db->get_row(). Как запрос кешировать?
  26. для товаров я настроил микроразметку а для новостей и статей какой тип выбрать, чтобы рейтинг учитывало?
  27. Указать правильный тип обьекта в шаблоне новости. Рейтинг может быть не для всех типов, а только для специальных. Например для товаров.
  28. тип рейтинга новостей - оценка я так понял, что микроразметка встроена в DLE выдает ошибку Thing – недопустимый тип целевого объекта для свойства itemReviewed. как исправить? сайт лада.онлайн
  1. Load more activity
×
×
  • Create New...