[Ищу] Генератор шаблонов на php

Тема в разделе "Wordpress", создана пользователем invergo, 16 окт 2011.

Статус темы:
Закрыта.
Модераторы: Sorcus
  1. invergo

    invergo Постоялец

    Регистр.:
    13 май 2009
    Сообщения:
    68
    Симпатии:
    6
    Может у кого есть? Или какие нибудь наработки по уникализации шаблонов?

    Есть такие сервисы в онлай. Например
    http://www.yvoschaap.com/wpthemegen/
     
  2. serg690

    serg690 Постоялец

    Регистр.:
    14 сен 2008
    Сообщения:
    66
    Симпатии:
    21
  3. invergo

    invergo Постоялец

    Регистр.:
    13 май 2009
    Сообщения:
    68
    Симпатии:
    6
    Там онлайн сервисы, а мне нуден скрипт
     
  4. _sokal_

    _sokal_

    Регистр.:
    25 дек 2009
    Сообщения:
    300
    Симпатии:
    139
  5. invergo

    invergo Постоялец

    Регистр.:
    13 май 2009
    Сообщения:
    68
    Симпатии:
    6
    Нужен скрипт а не прграмма. В каждом моем сообщении это написано. Зачем писать лишь бы что?
     
  6. yavasilek

    yavasilek vasilek_gorbunok

    Регистр.:
    5 окт 2008
    Сообщения:
    1.175
    Симпатии:
    423
    попробуй тему конструктор
    http://wordpress.org/extend/themes/constructor
     
    invergo нравится это.
  7. thoth777

    thoth777

    Регистр.:
    28 ноя 2008
    Сообщения:
    314
    Симпатии:
    98
    Смотря насколько должен быть шаблон красивый.
    Например, есть скрипт берет случайно выбранный файл из заданной директории и копирует его в папку с шаблоном с именем background.jpg

    это будет фон.

    далее
    предположим, у нас двухблочная структура (контент с сайдбаром)

    в php шаблонах (index.php, single.php и т.п.) править ничего не надо, изменения коснутся только style.css

    а в нем:
    рандомный цвет фона
    рандомное расположение блоков контента и сайдбара (float:left, float:right), рандомная ширина блоков.

    такой вот минимальный уникализатор.
    нужен?
    делал когда-то для говноблогов, но потом забил,решил делать на движках без базы.
     
  8. smithws

    smithws

    Регистр.:
    19 июн 2008
    Сообщения:
    481
    Симпатии:
    153
    Конечно нужен. Выкладывай.
    Смысл то в том, чтобы для ПС были все шабы разными, тут как раз это и выйдет. Для сталлитов под Сапу самое то.
     
  9. thoth777

    thoth777

    Регистр.:
    28 ноя 2008
    Сообщения:
    314
    Симпатии:
    98
    smithws, пользуйся на здоровье
    будут вопросы, не стесняйся.
    PHP:
    <?php
    srand
    (time());
    $backdir="./backgrounds/";    //путь к файлам бэкграунда . в конце слэш обязателен!
    $icondir="./iconz/";    //путь к файлам иконок (для favicon.ico) . в конце слэш обязателен!
    $template_in_dir="./in_design/";        //путь к исходной директории шаблона (отсюда берем style.css). в конце слэш обязателен!
    $template_out_dir="./out_design/";        //путь к директории готового шаблона. в конце слэш обязателен!

    /*рандомизируем файл фона и иконку-фавиконку*/
    $backfile=get_random_file($backdir);
    $iconfile=get_random_file($icondir);
    @
    unlink($template_out_dir.'background.jpg'); copy ($backdir.$backfile,$template_out_dir.'background.jpg');
    @
    unlink($template_out_dir.'favicon.ico'); copy ($icondir.$iconfile,$template_out_dir.'favicon.ico');


    /*рандомизируем файл стилей*/
    /*
    в исходнике стилей должны быть такие строчки:
    %div_content%
    %div_sidebar%
    %body%
    вместо них будут подставлены нужные значения:

    расположение слоев div_content & div_sidebar
    цвета для body
    */

    $style=file_get_contents($template_in_dir.'style.css');
    /*ширина блоков*/
    $max_width=1000//максимальная суммарная ширина для блоков контента и сайдбара. 
    $wc=rand(600,700);
    $ws=$max_width-$wc;

    /*расположение*/
    $float=array('float:left','float:right');
    shuffle($float);
    list(
    $fc,$fs)=$float;
    /*шрифты*/
    $fonts=array('Verdana, Geneva, sans-serif','Arial, Helvetica, sans-serif','Tahoma, Geneva, sans-serif','"Lucida Sans Unicode", "Lucida Grande", sans-serif');
    shuffle($fonts); $font=$fonts[0];

    /*цвета для боди
    отталкиваемся от светлого дизайна
    */
    $back_color=dechex(rand(200,255)).dechex(rand(200,255)).dechex(rand(200,255));
    $font_color=dechex(rand(10,30)).dechex(rand(10,30)).dechex(rand(10,30));

    $in=array('%div_content%','%div_sidebar%','%body%');
    $out=array(
    '#div_content {'.$fc.'; width:'.$wc.'px;}',
    '#div_sidebar {'.$fs.'; width:'.$ws.'px;}',
    'body {background-color:#'.$back_color.'; color:#'.$font_color.'; font-family: '.$font.'}',
    );


    $style=str_replace($in,$out,$style);
    $fd=fopen($template_out_dir.'style.css','w');
    fwrite ($fd,$style);
    fclose ($fd);


    /*получение случайного файла из директории*/
    function get_random_file($dirname){
    $dir=scandir($dirname);
    array_shift($dir); array_shift($dir); //удаляем . и ..
    return $dir[array_rand($dir,1)];
    }

    ?>
     
    invergo и smithws нравится это.
Статус темы:
Закрыта.