User Tools

Site Tools


ru:new_rotation_templates

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
ru:new_rotation_templates [2018/05/03 06:29]
admin [Toplist]
ru:new_rotation_templates [2019/01/10 07:23] (current)
admin [Related Galleries]
Line 3: Line 3:
 Как уже было сказано выше, базово сайт состоит из 4 темплейтов + хедер\боттом. Темплейты очень простые и в принципе такой формат это что-то вроде стандарта +- небольшие фичи у каждого скрипта. Как уже было сказано выше, базово сайт состоит из 4 темплейтов + хедер\боттом. Темплейты очень простые и в принципе такой формат это что-то вроде стандарта +- небольшие фичи у каждого скрипта.
  
-Темплейт – это обыкновенный html со специальными тагами,​ указывающими где и как выводить тумбы. Темплейты хранятся в базе, результаты кешируются ​на диск ​на время указанное вами в common.php+Темплейт – это обыкновенный html со специальными тагами,​ указывающими где и как выводить тумбы. Темплейты хранятся в базе, результаты кешируются на время указанное вами в сетингах либо в настройках темпелйта либо прямов ​ таге.
  
 В редактировании темплейтов есть поля cols & rows. Эти поля в принципе никак не вляют на ротацию и нужны только для удобства просмотра статистики ячеек в [[Cell Stats]]. В редактировании темплейтов есть поля cols & rows. Эти поля в принципе никак не вляют на ротацию и нужны только для удобства просмотра статистики ячеек в [[Cell Stats]].
Line 12: Line 12:
   <​img ​  ​src="<​!--THUMB_URL-->"​ class="​t_img"​ alt=""​ /></​a> ​   <​img ​  ​src="<​!--THUMB_URL-->"​ class="​t_img"​ alt=""​ /></​a> ​
  
-Субтемплейтов может быть любое количество. Обратите внимание,​ что скрипт считает клики по параметру <​!--THUMB_LINK-->, ​те этот параметр ​должен присутствовать в темплейте обязательноиначе клики не будут считаться.+Субтемплейтов может быть любое количество. Обратите внимание,​ что ​ 
 + 
 +1. Физически такого пути на серваке нет, страницы формируются на лету, при запросе самой страницы,​ а такой урл получается благодаря реврайтам. [[New Rotation FAQ]] 
 + 
 +2. В данном примере ​скрипт считает клики по параметру <​!--THUMB_LINK-->, ​но этот параметр не обязателен, тк новая версия умеет счииать ​и без него [[Rotation Parameter]]
  
 Места для вывода тумб в темплейте указываются следующим образом. Места для вывода тумб в темплейте указываются следующим образом.
Line 39: Line 43:
 В самом таге можно указывать фильтры например базово например у нас есть темплейт index, по дефолту у него нет никаких фильтров и если написать ​ В самом таге можно указывать фильтры например базово например у нас есть темплейт index, по дефолту у него нет никаких фильтров и если написать ​
  
-  <thumb num=1-10></​thumb> ​(или <​!--default_1-10-->​ что одно и тоже)+  <thumb num=1-10></​thumb> ​
   ​   ​
-то вы получите первые 10 по цтр тумб из всех категорий. ​Начиная с 49го апдейта в таг можно дописывать любой фильтр,​ например+то вы получите первые 10 по цтр тумб из всех категорий. ​
  
   <thumb sponsor=Myspon num=1-10></​thumb> ​   <thumb sponsor=Myspon num=1-10></​thumb> ​
Line 74: Line 78:
  
  
- +C этими фильтрами в тагах есть ньюанс:​ фильтры дополняют те, которые уже ​переданы в запросе страницы. Например:​
-C этими фильтрами в тагах есть ньюанс:​ фильтры дополняют те, которые уже есть на данной старнице. Например:​+
  
 <​code>​ <​code>​
-Страница категории /​category/​super_name ​ что реврайтом преобразуется в запрос /?​group_name=super_name+Страница категории /​category/​super_name ​что реврайтом преобразуется в запрос /?​group_name=super_name
  
 по умолчанию там стоит просто ​ по умолчанию там стоит просто ​
  
 <thumb num=1-10></​thumb> ​ <thumb num=1-10></​thumb> ​
 +
 тк в запросе уже есть фильтр group_name то даже несмотря на то что в таге <thumb не указан фильтр по группе, ​ тк в запросе уже есть фильтр group_name то даже несмотря на то что в таге <thumb не указан фильтр по группе, ​
 все равно выводятся тумбы из группы super_name (потому что этот фильтр уже есть в запросе). все равно выводятся тумбы из группы super_name (потому что этот фильтр уже есть в запросе).
Line 278: Line 282:
 </​thumb>​ </​thumb>​
  
-</code>+<thumb tag=CURRENT_ITEM_TAGS_COMBINED num=1-5>​ 
 +some template 
 +</thumb>
  
  
 +Эти варианты более комплексные (больше грузят базу) чем варианты выше
 +
 +<thumb tag=CURRENT_ITEM_TAGS_INTERSECTION num=1-5>
 +выводим в порядке сортировки по кол-ву совпадающих тагов (условно если совпало 4 тага, это лучше чем когда совпало 3 тага)
 +</​thumb>​
 +
 +<thumb group=CURRENT_ITEM_GROUPS_INTERSECTION num=1-5>
 +выводим в порядке сортировки по кол-ву совпадающих групп
 +</​thumb>​
 +
 +
 +</​code>​
 +
 +Обратите внимание,​ что CURRENT_ITEM_TAG and  CURRENT_ITEM_GROUP берут для выборки рендомную группу\таг если их несколько. CURRENT_ITEM_TAGS_COMBINED - берет сразу все таги.
 ====== Subtemplate tags ====== ====== Subtemplate tags ======
  
Line 294: Line 314:
   <​!--SAFE_DESC-->​ описание для урлов (удалены всякие "​сложные"​ символы)   <​!--SAFE_DESC-->​ описание для урлов (удалены всякие "​сложные"​ символы)
   <​!--GALLERY_SLUG-->​ SEO видное описание гали   <​!--GALLERY_SLUG-->​ SEO видное описание гали
 +  <​!--GALLERY_SLUG::​DE-->​ <​!--GALLERY_SLUG::​IT-->​ где DE IT языки если вам надо вывести слаг на другом языке
   <​!--ID-->​ ИД тумбы в базе   <​!--ID-->​ ИД тумбы в базе
   <​!--ACTIVATION_DATE-->​ <​!--ACTIVATION_DATETIME-->​ время добавления ​   <​!--ACTIVATION_DATE-->​ <​!--ACTIVATION_DATETIME-->​ время добавления ​
Line 487: Line 508:
   И общие переменные для кастом гали ​   И общие переменные для кастом гали ​
   ​   ​
 +  <​!--GALLERY_TOTAL_SHOWS-->​
   <​!--GALLERY_TOTAL_ITEMS-->​   <​!--GALLERY_TOTAL_ITEMS-->​
   <​!--GALLERY_TOTAL_IMAGES-->​   <​!--GALLERY_TOTAL_IMAGES-->​
Line 607: Line 629:
  
   Например <​!--STRIP_SPECIAL_CHARS_DESCRIPTION_30-->​   Например <​!--STRIP_SPECIAL_CHARS_DESCRIPTION_30-->​
-====== ​Навигация ​======+====== ​Pagination ​======
  
 Поскольку тумб много обычно,​ нам нужна навигация по страницам. Пример:​ Поскольку тумб много обычно,​ нам нужна навигация по страницам. Пример:​
Line 615: Line 637:
   </​navigation>​   </​navigation>​
  
-В апдейте 48 в таге навигации появилось несколько полезных для дизайна фич: 
   * skip_href_deletion=true по дефолту скрипт удаляет a href с текущей страницы,​ с этой опцией - не будет удалять.   * skip_href_deletion=true по дефолту скрипт удаляет a href с текущей страницы,​ с этой опцией - не будет удалять.
   * active_link_style=act_pg и link_style=not_act_page проставляет соответствующие стили для активной и неактивной страницы   * active_link_style=act_pg и link_style=not_act_page проставляет соответствующие стили для активной и неактивной страницы
Line 658: Line 679:
 <?php } ?> <?php } ?>
 </​code>​ </​code>​
 +
 +
 +Обратите внимание,​ что пагинация показывает страницы для тумб ротации. ​
 +
 +Для тумб категорий,​ поскольку их обычно фиксированное кол-во,​ нет смысла пересчитывать каждый раз при создании страниц. Поэтому если вам надо пагинация для тумб категорий то можно лучше всего сделать так
 +
 +<​code>​
 +
 +<​category num=1-20 adjust_num_to_page=true>​ тут надо обратить внимание на, это выведет категории с учетом текущей страницы,​ потому что по умолчанию на любой странице вы хотите видеть все же топ категории.
 +
 +</​code>​
 +
 +добавляем линки ​
 +
 +<a href="​http://​domain/?​page=1>​
 +<a href="​http://​domain/?​page=2>​
 +
 +и тп
 +
 +думаю не сложно вычислить сколько вам надо линков в зависимости от кол-ва категорий у вас.
 +И получается навигация для категорий.
 ====== Category Thumbs ====== ====== Category Thumbs ======
  
Line 881: Line 923:
 </​code>​ </​code>​
  
 +
 +
 +===== Search query limit =====
 +
 +На сайте может быть масса вариантов лимитирования поиска,​ например
 +
 +  /?​search=... ​
 +  может превратиться в 
 +  /?​search=...&​group_id=..
 +  или
 +  /?​search=...&​tag=..
 +  ​
 +и так далее, варианты могут быть разными и комбинированными,​ поэтому добавлен свободный параметр &​search_query_limit
 +
 +Например,​ у нас поиск по группе teen.
 +Добавляем в урл search_query_limit=teen,​ например /?​search=...&​group_name=teen&​search_query_limit=teen и например поиск просто без лимита по группе ​ /?​search=....&​search_query_limit=empty
 +
 +при выводе <thumb search_log=all num=1-20>​ если мы хотим вывести поиски только которые были по группе teen то (а мы помним что там было search_query_limit=teen) ​
 +
 +  <thumb search_log=all num=1-20 search_query_limit=teen>​
 +  ​
 +Можно подставлять &​search_query_limit в зависимости от того как вы хотите потом фильтровтаь запросы. И конечно помним что это можно сделать динамичным если взять параметр из урла
 +
 +  <thumb search_log=all num=1-20 search_query_limit=GET_your_param>​
 +  ​
 +**Языковой поиск** ​
 +Аналогично можно сделать разделение поиска по языкам что бы выводить на соответствующих языках. Скрипт сам не определяет на каком языке написано конкретное предложение,​ но это можно взять из урла например добавляем параметр с текущим языком &​search_query_limit=lng_en в строку поиска
 +
 +
 +  domain/?​search=test&​force_lng=en&​search_query_limit=lng_en
 +  domain/?​search=test1&​force_lng=en&​search_query_limit=lng_en
 +  domain/?​search=blabla&​force_lng=de&​search_query_limit=lng_de
 +  domain/?​search=blabla2&​force_lng=de&​search_query_limit=lng_de
 +
 +
 +Таким образом у нас у базе для каждого поиска будет отмечено на каком языке он сделан. Добавлять параметр не составляет труда прямо в темплейте,​ например <input type=hidden name=search_query_limit value='​lng_<​!--GET_force_lng-->'>​
 +
 +В темплейте добавляем
 +
 +  <thumb search_log=all num=1-20 search_query_limit=GET_your_param>​
 +  ​
 +и открываем страницу как domain/?​your_param=lng_en,​ мы должны получить ​
 +
 +  test,test1
 +
 +
 +тк на них стоит пометка ​ lng_en
  
 ====== Toplist ====== ====== Toplist ======
Line 913: Line 1002:
 <​!--DOMAIN-->​ - домен ​ <​!--DOMAIN-->​ - домен ​
 <​!--DESCRIPTION-->​ = <​!--DESC--> ​ <​!--DESCRIPTION-->​ = <​!--DESC--> ​
 +<​!--FULL_DESC-->​
 <​!--IMAGE-->​ <​!--IMAGE2-->​ и так далее если у вас для каждого трейдера более одной тумбы <​!--IMAGE-->​ <​!--IMAGE2-->​ и так далее если у вас для каждого трейдера более одной тумбы
 <​!--URL--> ​ <​!--URL--> ​
ru/new_rotation_templates.1525328984.txt.gz · Last modified: 2018/05/03 06:29 by admin