Как обновить шаблон сайта до OkayCMS 2.*
- Створюємо файли перекладів
- Атрибут data-language
- Заміна інших змінних
- Список можливих tpl-ок де необхідно провести заміну:
- Зміни в Блозі
- Заміна капчи, додавання класів для валідації (за бажанням)
- Поміняти бібліотеку фенсібокса (за бажанням)
- Не забути перекинути картинки на новий сайт
- Для відправки листів
- В папку images додати картинку logo.png для листів
- Все протестувати)
Керівництва НЕ для новачків.
Так як переклади в OkayCMS починаючи з версії 2.0 зберігаються не в базі даних, а в файлах - необхідно створити ці файли.
Для цього додаємо файл template_update.php в корінь старого сайту і запускаємо (переходимо по посиланню site.com/template_update.php).
В активному шаблоні (темі) старого сайту з'явитися папка lang. Збережемо її собі на комп'ютер і перенесемо на новий сайт (піддомен, на якому вже стоїть новий OkayCMS і оновлена БД) в папку design / назва теми.
У всіх tpl шаблону (design / назва теми / html) атрибут data-language наводимо до такого виду data-language = "переменная_перевода" замість data-language = ""
Щоб зробити це швидко і легко відкриваємо в редакторі коду відразу всі файли і виконуємо заміну:
- На порожнечу
Як правило, це можна зробити за допомогою гарячих клавіш заміни ctrl + shift + F, але може бути і інша комбінація. Все залежить від редактора, в якому ви працюєте.
У tpl має всюди виводитися замість -> text і -> body опис -> description.
Замість -> header має бути -> name.
Щоб знайти де і в яких tpl необхідно зробити заміну - робимо в усіх файлах пошук за словами «-> text», «-> body» і «-> header».
Увага! Заміну в змінній $ comment -> text робити не потрібно.
Список можливих tpl-ок де необхідно провести заміну:
blog.tpl,
brands.tpl,
feedback.tpl,
main.tpl,
page.tpl,
page_404.tpl,
product.tpl,
products.tpl,
post.tpl,
wishlist.tpl
Так як блог в OkayCMS 2.0 розділився на блог і новини, то в blog.tpl і post.tpl необхідно внести зміни.
У blog. tpl замість
вставляємо
{If $ smarty.get.type_post == "blog"}
І у всіх посиланнях (тег <a>) в атрибуті href замість blog / вставляємо
<Script src = "design / /js/jquery.validate.min.js"> </ script>
<Script src = "design / /js/additional-methods.min.js"> </ script> Поміняти атрибути в product.tpl і products.tpl і comprasion.tpl. okay.js scripts.tpl поміняти виклик fancybox <Script>
var form_enter_name = '';
var form_enter_phone = '';
var form_error_captcha = '';
var form_enter_email = '';
var form_enter_password = '';
var form_enter_message = '';
if ($ ( ". fn_validate_product"). size ()> 0) {
$ ( ". Fn_validate_product"). Validate ({
rules: {
name: "required",
text: "required",
captcha_code: "required"
},
messages: {
name: form_enter_name,
text: form_enter_message,
captcha_code: form_error_captcha
}
});
}
if ($ ( ". fn_validate_callback"). size ()> 0) {
$ ( ". Fn_validate_callback"). Validate ({
rules: {
name: "required",
phone: "required",
},
messages: {
name: form_enter_name,
phone: form_enter_phone,
}
});
}
if ($ ( ". fn_validate_subscribe"). size ()> 0) {
$ ( ". Fn_validate_subscribe"). Validate ({
rules: {
subscribe_email: "required",
},
messages: {
subscribe_email: form_enter_email
}
});
}
if ($ ( ". fn_validate_post"). size ()> 0) {
$ ( ". Fn_validate_post"). Validate ({
rules: {
name: "required",
text: "required",
captcha_code: "required"
},
messages: {
name: form_enter_name,
text: form_enter_message,
captcha_code: form_error_captcha
}
});
}
if ($ ( ". fn_validate_feedback"). size ()> 0) {
$ ( ". Fn_validate_feedback"). Validate ({
rules: {
name: "required",
email: {
required: true,
email: true
},
message: "required",
captcha_code: "required"
},
messages: {
name: form_enter_name,
email: form_enter_email,
message: form_enter_message,
captcha_code: form_error_captcha
}
});
}
if ($ ( ". fn_validate_cart"). size ()> 0) {
$ ( ". Fn_validate_cart"). Validate ({
rules: {
name: "required",
email: {
required: true,
email: true
},
captcha_code: "required"
},
messages: {
name: form_enter_name,
email: form_enter_email,
captcha_code: form_error_captcha
}
});
}
if ($ ( ". fn_validate_login"). size ()> 0) {
$ ( ". Fn_validate_login"). Validate ({
rules: {
email: "required",
password: "required",
},
messages: {
email: form_enter_email,
password: form_enter_password
}
});
}
if ($ ( ". fn_validate_register"). size ()> 0) {
$ ( ". Fn_validate_register"). Validate ({
rules: {
name: "required",
email: {
required: true,
email: true
},
password: "required",
captcha_code: "required"
},
messages: {
name: form_enter_name,
email: form_enter_email,
captcha_code: form_error_captcha,
password: form_enter_password
}
});
}
</ Script>
{* Fancybox *}
<Link href = "design / /css/jquery.fancybox.min.css" rel = "stylesheet">
<Script src = "design / /js/jquery.fancybox.min.js" defer> </ script>