Сократите встроенный CSS-код перед его записью в базу данных, а затем уничтожьте его при редактировании. - PullRequest
1 голос
/ 02 июля 2010

В моей теме есть пользовательский блок кода CSS, в котором я позволяю владельцу сайта добавлять любые необходимые ему CSS прямо в раздел заголовка темы.Это вставляет все, что они поместили в этот блок, в базу данных wordpress в качестве пользовательской опции insert.

Затем я извлекаю это содержимое в header.php и выводю его между тегами встроенного стиля, например ...

<style type="text/css">
.test h1 {}
.testcss2, .somecss {}
</style>

Это прекрасно работает, однако я хотел бы очистить и минимизировать разметку при ее записи в базу данных.Я полагаю, для этого нужно регулярное выражение?Если это так, что это будет?

Результат, который я ищу, когда код записывается в разметку страницы: ...

<style type="text/css">.test h1{}.testcss2,.somecss{}</style>

Я бы тоже хотелотмените минимизированную разметку, когда она будет представлена ​​пользователю для редактирования в настройках моей темы.С этой точки зрения я просто хочу переформатировать минимизированный код CSS, чтобы каждая директива вернулась в свою собственную строку.

Ответы [ 2 ]

2 голосов
/ 02 июля 2010

Это зависит от того, чего вы хотите достичь. Я согласен с @thomasfedb, что вы, вероятно, испортите стиль CSS большинства людей, выполнив это преобразование, и, скорее всего, вызовет больше проблем, чем его стоит.

Я предлагаю вам сохранить данные в точности так, как их ввел пользователь, а затем «минимизировать» их при отображении на странице.

Это не спасет вас и не сохранит в вашей базе данных, а также увеличит использование вашего ЦП для каждого рендера страницы, но сэкономит вам пропускную способность всех дополнительных символов новой строки.

Другой вариант, предполагающий, что хранилище базы данных не представляет особой проблемы, заключается в том, чтобы хранить данные дважды: один раз, где пользователь редактирует, и один раз - минимизированный. Затем просто сверните и скопируйте редактируемое пользователем поле в минимизированное поле всякий раз, когда пользователь вносит какие-либо изменения.

1 голос
/ 02 июля 2010

Я не вижу никакой реальной причины для этого, некоторые символы новой строки на веб-странице на самом деле не будут стоить вам очень большого веса.

Поэтому мое решение было бы: не.

Кроме того, даже если вы измените минимизацию, вы можете «запутаться в стиле» некоторых людей, которым нравятся разные макеты CSS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...