User Tools

Site Tools


ru:components-depending-on-the_page

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:components-depending-on-the_page [2013/10/01 09:44]
Arkady [Каждой странице - свой компонент]
ru:components-depending-on-the_page [2013/10/09 12:20] (current)
Arkady
Line 69: Line 69:
  
 <​code><?​php <​code><?​php
-  if (return_i18n_component('​sidebar-'​.return_page_slug())) { +  if (return_component('​sidebar-'​.return_page_slug())) { 
-    ​get_i18n_component('​sidebar-'​.return_page_slug());​+    ​get_component('​sidebar-'​.return_page_slug());​
   } else {   } else {
-    ​get_i18n_component('​sidebar'​);​+    ​get_component('​sidebar'​);​
   }   }
 ?></​code>​ ?></​code>​
Line 78: Line 78:
 Компонент с именем //sidebar// - наш сайдбар по умолчанию. Остальным компонентам присваиваются имена //​sidebar-xxx//,​ где xxx  - текстовый идентификатор страницы (slug), на которой предполагается замена сайдбара по умолчанию на предназначенный именно для этой страницы. Компонент с именем //sidebar// - наш сайдбар по умолчанию. Остальным компонентам присваиваются имена //​sidebar-xxx//,​ где xxx  - текстовый идентификатор страницы (slug), на которой предполагается замена сайдбара по умолчанию на предназначенный именно для этой страницы.
  
-Другой способ – использование пользовательского поля (custom field) c именем «//​sidebar//​» - лучше применить выпадающий список с именами компонентов-сайдбаров. Допустимо и простое текстовое поле, но это не очень удобно из-за возможной ошибки при вводе имени компонента.+Другой способ – использование плагина [[http://​getsimplecms.ru/​plaginy-dlya-getsimple-cms/​plagin-i18n-custom-fields/​|I18N Custom Fields]]. Создайте пользовательское поле (custom field) c именем «//​sidebar//​» - лучше применить выпадающий список с именами компонентов-сайдбаров. Допустимо и простое текстовое поле, но это не очень удобно из-за возможной ошибки при вводе имени компонента.
  
 После формирования списка просто включаем выбранный компонент в шаблон:​ После формирования списка просто включаем выбранный компонент в шаблон:​
  
-<​code><?​php ​get_i18n_component(return_custom_field('​sidebar'​));​ ?></​code>​+<​code><?​php ​get_component(return_custom_field('​sidebar'​));​ ?></​code>​
  
 При желании можно предварительно проверить пользовательское поле с компонентом на существование:​ При желании можно предварительно проверить пользовательское поле с компонентом на существование:​
Line 88: Line 88:
 <​code><?​php <​code><?​php
   if (return_custom_field('​sidebar'​)) {   if (return_custom_field('​sidebar'​)) {
-    ​get_i18n_component(return_custom_field('​sidebar'​));​+    ​get_component(return_custom_field('​sidebar'​));​
   } else {   } else {
-    ​get_i18n_component('​sidebar'​);​+    ​get_component('​sidebar'​);​
   }   }
 ?></​code>​ ?></​code>​
Line 104: Line 104:
     get_custom_field('​sidebar'​);​     get_custom_field('​sidebar'​);​
   } else {   } else {
-    ​get_i18n_component('​sidebar'​);​+    ​get_component('​sidebar'​);​
   }   }
 ?></​code>​ ?></​code>​
Line 113: Line 113:
 **Вольный перевод одного из постов с англоязычного форума GetSimple** **Вольный перевод одного из постов с англоязычного форума GetSimple**
  
-Исходный текст для перевода взят [[http://​get-simple.info/​forum/​topic/​214/​function-per-page-components/​|отсюда]] приблизительно в  2011 году.+//Исходный текст для перевода взят [[http://​get-simple.info/​forum/​topic/​214/​function-per-page-components/​|отсюда]] приблизительно в  2011 году.//
  
 Как-то раз, верстая очередной сайт, я столкнулся с необходимостью замены подвалов на определенных страницах. Я попробовал поискать существующее решение на форуме.Так вот, в одном из постов **Chris Cagle** предложил следующий способ: ​ Как-то раз, верстая очередной сайт, я столкнулся с необходимостью замены подвалов на определенных страницах. Я попробовал поискать существующее решение на форуме.Так вот, в одном из постов **Chris Cagle** предложил следующий способ: ​
Line 196: Line 196:
         }         }
     }</​file>​     }</​file>​
 +    ​
 +====== Ссылки ======
 +
 +На главную [[ru:​|Содержание]]
 +
 +===== Страницы этой секции =====
 +
 +=== Руководства,​ Советы ===
 +  *[[ru:​themes:​tutorial|Урок по созданию темы]]
 +  *[[ru:​security|Дополнительные меры безопасности]]
 +  *[[ru:​how_to:​accessibility|Горячие клавиши]]
 +  *[[ru:SEO for GetSimple|Оптимизация сайта на GetSimple для поисковых систем (SEO)]]
ru/components-depending-on-the_page.1380620667.txt.gz · Last modified: 2013/10/01 09:44 by Arkady