Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

разве есть проблема в вёрстке под цмс? #1

Closed
elemeNtk0 opened this issue Dec 11, 2015 · 2 comments
Closed

Comments

@elemeNtk0
Copy link

Не совсем понял этот пример. Могли бы вы пояснить фишку, либо в описании просто сделать понятней текст.
Сейчас получается в "теории" речь о смене классов и вёрстки, а практика про JS-анимацию.


P.s.В защиту ЦМС — верстать изначально надо с уклоном под будущую цмс, чтобы не было потом особого гемора при встраивании вёрстки.

@rtivital
Copy link
Owner

Вся суть данного примера − быстрый доступ ко всем настройкам JavaScript кода. Предполагается, что объект settings всегда находится в самом начале файла, и, таким образом получается найти и изменить все необходимые параметры всего один раз.

В подобный объект можно записывать все, что используется на сайте − цвета, классы, время переходов, селекторы, брейкпоинты и так далее.

Пример с селекторами − вёрстка меню для Wordpress. Допустим, мы имеем подобную разметку:

<nav class="navbar">
    <ul class="nav">
        <li class="nav-item"><a href="#0" class="nav-link">Home</a></li>
        <li class="nav-item"><a href="#1" class="nav-link">About</a></li>
        <li class="nav-item"><a href="#2" class="nav-link">Blog</a></li>
    </ul>
</nav>

и объект settings, в котором обозначены все селекторы:

var settings = {
    selectors: {
        navbar: '.navbar',
        navLinks: '.nav-link'
        }
    };

Когда HTML шаблон будет необходимо перевести в Wordpress тему для навигации получится следующая разметка:

<nav class="menu">
    <ul>
        <li><a href="#0">Home</a></li>
        <li><a href="#1">About</a></li>
        <li><a href="#2">Blog</a></li>
    </ul>
</nav>

Классы потеряны, JavaScript не работает. Идем в объект settings и просто меняем селекторы:

var settings = {
    selectors: {
        navbar: '.menu',
        navLinks: 'li a'
        }
    };

Все опять работает.

@elemeNtk0
Copy link
Author

Это неправильный путь. А если у вас в меню очень большая вложенность (много декоративных фишек, к примеру не хватило :before и :after, и заюзан span), завязано все на классах? Программист просто обязан ВНЕДРИТЬ вёрстку верстака, а не подгонять JS. Не спорю про удобство в сеттинге, но однозначно пример не подходящий.
Еще ни разу не встречал такой бабуйни, всегда прогер изменяет разметку при натяжке на ЦМС.

rtivital pushed a commit that referenced this issue Apr 15, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants