[userpic]

... 

metanymous в посте Metapractice (оригинал в ЖЖ)

Единственное, что должно быть одинаковым в обоих случаях - строчка $this->print_body();
Эта строчка выводит, собственно, контент журнала - ленты, посты, комменты и прочее (об этом ниже).
Дизайн оболочки страницы с постом и комментами я тупо выдрала из страницы своего профайла, который отображается у меня в оболочке Dystopia. Если мутить стиль под эмуляцию другой оболочки - соответственно, ее код тоже можно выдрать из страницы своего профайла под этой оболочкой.
Нам нужен еще и CSS, чтобы дизайн оболочки отображался нормально. CSS-файл оболочки берется с сервера. Для оболочки Dystopia вот отсюда. Для другой - соответственно. Можно тупо в той же функции Page::print() после строки $this->print_stylesheets(); вставить ссылку на css файл. А можно оттуда брать не все, а самое необходимое, оно все сверху. И вывести прямо в код лэйера, написав, например, функцию для вывода нужного кода css. И потом вызвав эту функцию, опять же, после строчки $this->print_stylesheets();, например, так: if (($this.view == "entry") or ($this.view == "reply")) { print_dyst_css(); }
3. Следующая функция, которую нужно привести в порядок: function EntryPage::print_comment (Comment c); Она выводит коммент.
В ней может потребовать привести дизайн комментов в соответствие с тем, как оно было раньше в виде "без кастомизации". Можно это тупо выдрать из моего кода, ссыленного на выше.
Кроме того, может потребоваться и еще всяко разно доработать. В исходнике S2 Clean and Simple, к примеру, вообще не работали древовидные отступы, неверно выводились свернутые треды и совершенно неверно выводилась (видимо еще совсем по-старинке) ссылка expand. Можно, в общем, просто взять и скопировать мою функцию.
4. Следующая функция: function Page::print_entry (Entry e); Она выводит сам пост.
В ней, опять же под условием if (($p.view == "entry") or ($p.view == "reply")) нужно добавить оригинальный дизайн поста на странице поста. Можно выдрать все куски под этим условием из моего кода и вставить их в соответствующие места.
5. В общем-то, практически и все. Дальше может потребоваться чистовая доводка, в основном стилей CSS. Ну и может еще каких заморочек. Я вот вставила заморочку в виде возможности вставить в левую колонку что основного вида дизайна журнала, что эмуляции оболочки собственный HTML, который можно вставлять и править не лазая потом на уровень layers.
Если какие-то вопросы есть, постараюсь ответить :).
http://gadyuka.livejournal.com/1174946.html?mode=reply&style=mine#add_comment

20 комментариев

сначала старые сначала новые