dds 38 Опубликовано: 3 июня Рассказать Опубликовано: 3 июня (изменено) Тогда тебе надо в файле engine\modules\tagscloud.php найти строки через плагины и вытащить там переменную $value['count'] из подсказки ( они встречаются там 2 раза ) $tags[] = "<span class=\"{$value['size']}\"><a href=\"".$config['http_home_url']."tags/".rawurlencode(dle_strtolower($url_tag))."/\" title=\"".$lang['tags_count']." ".$value['count']."\">".$value['tag']."</a></span>"; $tags[] = "<span class=\"{$value['size']}\"><a href=\"$PHP_SELF?do=tags&tag=".rawurlencode(dle_strtolower($url_tag))."\" title=\"".$lang['tags_count']." ".$value['count']."\">".$value['tag']."</a></span>"; То есть вместо ".$value['tag']." у тебя должно получиться ".$value['tag']." (".$value['count'].") Как то так наверное Цитата [available=tags] <h1>{cloudstag}</h1> <span>Записей: {tagscount}</span> <!-- например --> [/available] А зачем тебе такая конструкция? Ведь тег {tags} глобальный. И он выводит содержимое отдельного шаблона tagscloud.tpl вроде бы как. А его можно через CSS сделать как душе угодно. Изменено 3 июня пользователем dds Цитата Ссылка на сообщение Поделиться на других сайтах
Travor 0 Опубликовано: 3 июня Рассказать Опубликовано: 3 июня 27 минут назад, dds сказал: А зачем тебе такая конструкция? Ведь тег {tags} глобальный. И он выводит содержимое отдельного шаблона tagscloud.tpl вроде бы как при просмотре категорий сейчас так https://post-images.org/photo-page.php?photo=wre9qTW3 а при просмотре тега так https://post-images.org/photo-page.php?photo=VK0sijpA как вот вывести также количество публикаций? Цитата Ссылка на сообщение Поделиться на других сайтах
dds 38 Опубликовано: 3 июня Рассказать Опубликовано: 3 июня 2 часа назад, Travor сказал: при просмотре категорий сейчас так https://post-images.org/photo-page.php?photo=wre9qTW3 а при просмотре тега так https://post-images.org/photo-page.php?photo=VK0sijpA как вот вывести также количество публикаций? Не правильно просто тебя понял сначала, извиняюсь. Не знаю правда насколько это будет правильно, может быть есть более легкие и правильные способы. В файле engine/modules/main.php найти: $tpl->load_template ( 'main.tpl' ); и добавить выше: $tag_name = $nam_e; $cached_result = false; $cached_time = 3600; // Время жизни кеша в секундах (1 час) $cached_data = dle_cache('tags_count_' . $tag_name, $cached_time); if ($cached_data !== false) { $tag_count = $cached_data; } else { $tag_result = $db->super_query("SELECT COUNT(*) as count FROM " . PREFIX . "_post WHERE FIND_IN_SET('{$tag_name}', REPLACE(REPLACE(tags, ', ', ','), ' ', '')) > 0"); $tag_count = $tag_result['count']; create_cache('tags_count_' . $tag_name, $tag_count, $cached_time); } $tpl->set('{tags-title}', $tag_name); $tpl->set('{tags-count}', $tag_count); Хоть каждый тег и кэшируется ( Файлов кэша будет столько , сколько у тебя тегов ), но для каждого тега будет свой запрос. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
Travor 0 Опубликовано: 3 июня Рассказать Опубликовано: 3 июня 1 час назад, dds сказал: Не правильно просто тебя понял сначала, извиняюсь. Не знаю правда насколько это будет правильно, может быть есть более легкие и правильные способы. В файле engine/modules/main.php найти: $tpl->load_template ( 'main.tpl' ); и добавить выше: $tag_name = $nam_e; $cached_result = false; $cached_time = 3600; // Время жизни кеша в секундах (1 час) $cached_data = dle_cache('tags_count_' . $tag_name, $cached_time); if ($cached_data !== false) { $tag_count = $cached_data; } else { $tag_result = $db->super_query("SELECT COUNT(*) as count FROM " . PREFIX . "_post WHERE FIND_IN_SET('{$tag_name}', REPLACE(REPLACE(tags, ', ', ','), ' ', '')) > 0"); $tag_count = $tag_result['count']; create_cache('tags_count_' . $tag_name, $tag_count, $cached_time); } $tpl->set('{tags-title}', $tag_name); $tpl->set('{tags-count}', $tag_count); Хоть каждый тег и кэшируется ( Файлов кэша будет столько , сколько у тебя тегов ), но для каждого тега будет свой запрос. блин, дружище, спасибо большое) Цитата Ссылка на сообщение Поделиться на других сайтах
dds 38 Опубликовано: 3 июня Рассказать Опубликовано: 3 июня 18 минут назад, Travor сказал: блин, дружище, спасибо большое) Подзасрали мы конечно немного тему " Пожелание" Но так наверное будет все ж правильней. Не плодить тысячу файлов кэша, а создать один и писать туда данные в виде массива с ключами именами тегов и значениями - количествами новостей для каждого тега. $tag_name = $nam_e; $cached_time = 3600; // Время жизни кеша в секундах (1 час) $cached_data = dle_cache('tags_data_cache', $cached_time); $cached_array = ($cached_data !== false) ? unserialize($cached_data) : []; if (!isset($cached_array[$tag_name])) { $tag_result = $db->super_query("SELECT COUNT(*) as count FROM " . PREFIX . "_post WHERE FIND_IN_SET('{$tag_name}', REPLACE(REPLACE(tags, ', ', ','), ' ', '')) > 0"); $tag_count = $tag_result['count']; $cached_array[$tag_name] = $tag_count; create_cache('tags_data_cache', serialize($cached_array), $cached_time); } else { $tag_count = $cached_array[$tag_name]; } $tpl->set('{tags-title}', $tag_name); $tpl->set('{tags-count}', $tag_count); 1 Цитата Ссылка на сообщение Поделиться на других сайтах
Gameer 301 Опубликовано: 3 июня Рассказать Опубликовано: 3 июня 2 минуты назад, dds сказал: $cached_time = 3600; // Время жизни кеша в секундах (1 час) Кэш жизни тут не работает, скажите это своему chat-gpt Цитата Ссылка на сообщение Поделиться на других сайтах
dds 38 Опубликовано: 3 июня Рассказать Опубликовано: 3 июня 20 минут назад, Gameer сказал: Кэш жизни тут не работает, скажите это своему chat-gpt При чем тут chat-gpt? Простите вы всех так равняете? Типа вы один всезнающий, а остальные не способны ни на что? Пусть мои знания недостаточны, но меня этому никто не учил. Все постигается долгими вечерами. Это вам так на заметку Цитата Ссылка на сообщение Поделиться на других сайтах
fanera 22 Опубликовано: 7 июня Рассказать Опубликовано: 7 июня (изменено) https://developers.google.com/search/docs/appearance/structured-data/search-gallery?hl=ru В следующей версии стоит перепроверить разметку и добавить новую - ProfilePage https://developers.google.com/search/docs/appearance/structured-data/profile-page?hl=ru, это будет очень полезно Например, для SoftwareApplication https://developers.google.com/search/docs/appearance/structured-data/software-app?hl=ru Google рекомендуют указать BusinessApplication или GameApplication (там список намного больше), а сейчас DLE выводит название категории. Это совсем неверно и не соблюдает гайдлайны гугла. Кроме того, свойство description не поддерживается, его можно вообще убрать Изменено 7 июня пользователем fanera Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 009 Опубликовано: 7 июня Рассказать Опубликовано: 7 июня Автор 1 час назад, fanera сказал: Например, для SoftwareApplication https://developers.google.com/search/docs/appearance/structured-data/software-app?hl=ru Google рекомендуют указать BusinessApplication или GameApplication (там список намного больше), а сейчас DLE выводит название категории. Это совсем неверно и не соблюдает гайдлайны гугла. Кроме того, свойство description не поддерживается, его можно вообще убрать Микроразметка определяется не поисковиком Google, а стандартом https://schema.org Категории могут быть согласно стандартам не то что там пишет гугл и использоваться не только для Google но и для множества других сервисов. И никаких противоречий стандартам в данном случае нет. Можете посмотреть внимательно стандарт данного типа https://schema.org/SoftwareApplication А если вам нужно задать именно под гугл, то это не может быть универсально для всех сайтов, это персонально под конретный сайт. Можете это прописать под значения названия категорий, можете их отдельно плагином прописать, как вам угодно. DLE предоставляет универсальное решение, именно под стандарт, для любого сервиса, а не только для гугла. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
NlCKRUS 48 Опубликовано: 13 июня Рассказать Опубликовано: 13 июня можете добавить тэги по типу [xfgiven_x][xfvalue_x][/xfgiven_x] для шаблона комментариев, только чтобы это было не имя дополнительного поля профиля пользователя, а имя доп.поля новости? Цитата Ссылка на сообщение Поделиться на других сайтах
Crashlabs 52 Опубликовано: 21 июня Рассказать Опубликовано: 21 июня Который раз замечаю, что в текущем виде категориям не хватает гибкости - бывает возникает необходимость к каждой категории, например, привязать собственное изображение (помимо иконки), либо указать двойное название и тд. Думаю данную проблему решила бы возможность создавать дополнительные поля для категорий по аналогии с новостями. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 009 Опубликовано: 21 июня Рассказать Опубликовано: 21 июня Автор 1 час назад, Crashlabs сказал: Который раз замечаю, что в текущем виде категориям не хватает гибкости - бывает возникает необходимость к каждой категории, например, привязать собственное изображение (помимо иконки), либо указать двойное название и тд. И что мешает это сделать сейчас? Теги которые выводят контент только в опеределенной категории в шаблонах никто не отменял. Цитата Ссылка на сообщение Поделиться на других сайтах
Crashlabs 52 Опубликовано: 22 июня Рассказать Опубликовано: 22 июня (изменено) 23 часа назад, celsoft сказал: И что мешает это сделать сейчас? Теги которые выводят контент только в опеределенной категории в шаблонах никто не отменял. Не спорю, что такая альтернатива есть, но когда категорий больше сотни, то все это дело засовывать в шаблон и потом, если потребуется, корректировать - становится немного проблематично. Изменено 22 июня пользователем Crashlabs Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 009 Опубликовано: 22 июня Рассказать Опубликовано: 22 июня Автор 5 часов назад, Crashlabs сказал: Не спорю, что такая альтернатива есть, но когда категорий больше сотни, то все это дело засовывать в шаблон и потом, если потребуется, корректировать - становится немного проблематично. подключаете тегами {include ...} отдельный файл шаблона. И все редактируется не сложнее чем написать в админпанели. На каждое предложение полей не надобавляешся в админпанели.. Кому то нужно одну картинку, кому то две, кому то заголовок, кому то подзаголовок и т.д. Все подобное уже нужно делать в шаблонах, а не полями админпанель завешивать. Ваш случай очень и очень частный чтобы быть полем в админпанели. Цитата Ссылка на сообщение Поделиться на других сайтах
fanera 22 Опубликовано: 31 минута назад Рассказать Опубликовано: 31 минута назад (изменено) Для custom хотелось бы иметь возможность учитывать не только дату публикации, но и дату редактирования. Пример: {custom days="2" limit="10" order="reads"} Как при таком подходе вывести новости с учетом тех, что некоторые более старые могли быть отредактированы? days="2" берет новости за последние 2 дня, а если в этот промежуток ничего нового не публиковалось, но редактировались другие новости? Т.е. к примеру мне нужно вывести новости по кол-ву чтению за последние 2 дня публикации или редактированию, но для последнего просто нет возможности {topnews} с той же проблемой, нет возможности добавить учет того, чтобы в выборку попадали отредактированные новости Изменено 28 минут назад пользователем fanera Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.