Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Что быстрее? или какая идея лучше? / 3 сообщений из 3, страница 1 из 1
05.08.2012, 00:17:14
    #37904621
prot0type
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что быстрее? или какая идея лучше?
Такая вот идея:

Значит CMS в которой каждый шаблон лежит в отдельной папке и представляет собой обычные html файлы
т.е. каждый .html файл можно открыть с помощью редактора и отредактировать расположение элементов

Может я немного поспешил, но я реализовал такую систему вот так

содержимое файла index.htm
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php
$theme->printout('
<meta name="keywords" content="[keywords]" />
<meta name="description" content="[description]" />
<title>[full_title]</title>
<link rel="stylesheet" type="text/css" href="[full_url]/css/main.css" />
<script type="text/javascript" src="[full_url]/scripts/scriptjava.js"></script>
<script type="text/javascript" src="[full_url]/js/main.js"></script>
');
?>
</head>

<body>
	<div id="main">
    	<div id="top">
        <!-- оформление -->
        	<div id="search">
        		<!-- поиск -->
				<?php
				$theme->printout('
                <form action="[full_url]/" method="get" enctype="application/x-www-form-urlencoded">
                	<input class="searchtxt" name="q" type="text" value="" /><input type="submit" value="Поиск" />
                </form>
                ');
                ?>
        	</div>
            <!-- заголовок -->
            <div id="title">
            <?php
            $theme->printout('
				<h1><a href="[full_url]/">[title]</a></h1>
                <h2>[description]</h2>
			');
			?>
            </div>
        </div>
        <div id="topline">
        <!-- верхняя линия -->
        </div>
        <div id="sorting">
        <!-- сортировка -->
        	<ul>
            <?php
            $theme->sorturl('
            	<li[style_id]><a href="[id]" title="Сортировать по порядку">По порядку</a></li>
            	<li[style_rating]><a href="[rating]" title="Сортировать по рейтингу">По рейтингу</a></li>
                <li[style_datetime]><a href="[datetime]" title="Сортировать по дате">По дате</a></li>
                <li[style_views]><a href="[views]" title="Сортировать по просмотрам">По просмотрам</a></li>
                <li[style_countcomment]><a href="[countcomment]" title="Сортировать по комментариям">По комментариям</a></li>
			','style="background:#cccccc;"');
			?>
            </ul><br style="clear:both;" />
        </div>
        <div id="content">
        	<div id="categories">
        		<!-- категории -->
                <h2>Категории</h2>
                <?php
				$theme->categories('
                    <div class="categorins"><a href="[category_url]" title="Просмотреть все записи в рубрике [category]">[category]</a>[insert]</div>
				');
                ?>
        	</div>
        <!-- контент -->
        <?php
        $theme->poster('
        	<div class="postblock">
            	<h3><a href="[post_url]" rel="bookmark">[title]</a></h3>
                <div class="postinfo">[datetime] Категория: <a href="[category_url]" title="Просмотреть все записи в рубрике [category]" rel="category tag">[category]</a></div>
                <div class="postrating"><div class="ratingup" onclick="rating_up(\'[full_url]/\',[id]);"></div><span id="rating_[id]">[rating]</span><div class="ratingdown" onclick="rating_down(\'[full_url]/\',[id]);"></div></div>
                <div class="post">
                	[text]
                </div>
                <div class="postlinks">
                	<div class="postviews">Просмотров: [views]</div><div class="postcomments"><a href="[post_url]">Комментариев: [count_comment]</a></div><br style="clear:both;" />
                	<div class="posttags"><a href="[tags_url]">[tags]</a></div><div class="postmark">мне нравится</div>
                </div>
            </div>
		');
		?>
            
        </div>
        <div id="navigation">
        <!-- навигация -->
        	<div>
            <?php
            $theme->navigation('
            	<a href="[previous_url]">Назад -[previous_link]-</a> <span>[current_link]</span> <a href="[page_url]">[other_link]</a> <a href="[next_url]">Вперед -[next_link]-</a>
			');
			?>
            </div>
        </div>
        <div id="bottom">
        <!-- низ -->
        <?php
        $theme->printout('
        	<div>Все права защищены © 2012 <a href="[seoengi]">[title]</a> время генерации [loadtimer]</div>
		');
		?>
        </div>
    </div>
</body>
</html>



В данном случае вся эта штуковина подгружается в шаблонизатор с помощью

Код: php
1.
include 'index.htm';



Фигачил я фигачил и тут мне попалась DLE 9.6
Открыл ее код шаблонов и увидел сходство в чем то с верхним кодом файла index.htm
Но конечно во всех CMS все шаблоны нарезаны на кусочки - то же самое обстоит с DLE
В общем еще когда я начал разработку своей CMS мне пришла идея с комментариями

Код: html
1.
<!-- комментарий -->



А сегодня я посмотрев исходные CMS понял что код шаблонов можно было сделать очень изящно

содержимое файла index.htm - изящный вариант
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!--[printout]-->
<meta name="keywords" content="[keywords]" />
<meta name="description" content="[description]" />
<title>[full_title]</title>
<link rel="stylesheet" type="text/css" href="[full_url]/css/main.css" />
<script type="text/javascript" src="[full_url]/scripts/scriptjava.js"></script>
<script type="text/javascript" src="[full_url]/js/main.js"></script>
<!--[/printout]-->
</head>

<body>
	<div id="main">
    	<div id="top">
        <!-- оформление -->
        	<div id="search">
        		<!-- поиск -->
				<!--[printout]-->
                <form action="[full_url]/" method="get" enctype="application/x-www-form-urlencoded">
                	<input class="searchtxt" name="q" type="text" value="" /><input type="submit" value="Поиск" />
                </form>
                <!--[/printout]-->
        	</div>
            <!-- заголовок -->
            <div id="title">
            <!--[printout]-->
				<h1><a href="[full_url]/">[title]</a></h1>
                <h2>[description]</h2>
			<!--[/printout]-->
            </div>
        </div>
        <div id="topline">
        <!-- верхняя линия -->
        </div>
        <div id="sorting">
        <!-- сортировка -->
        	<ul>
		<!--[sorturl='style="background:#cccccc;"']-->
            	<li[style_id]><a href="[id]" title="Сортировать по порядку">По порядку</a></li>
            	<li[style_rating]><a href="[rating]" title="Сортировать по рейтингу">По рейтингу</a></li>
                <li[style_datetime]><a href="[datetime]" title="Сортировать по дате">По дате</a></li>
                <li[style_views]><a href="[views]" title="Сортировать по просмотрам">По просмотрам</a></li>
                <li[style_countcomment]><a href="[countcomment]" title="Сортировать по комментариям">По комментариям</a></li>
			<!--[/sortur]-->
            </ul><br style="clear:both;" />
        </div>
        <div id="content">
        	<div id="categories">
        		<!-- категории -->
                <h2>Категории</h2>
		<!--[categories]-->
                    <div class="categorins"><a href="[category_url]" title="Просмотреть все записи в рубрике [category]">[category]</a>[insert]</div>
				<!--[/categories]-->
        	</div>
        <!-- контент -->
	<!--[poster]-->
        	<div class="postblock">
            	<h3><a href="[post_url]" rel="bookmark">[title]</a></h3>
                <div class="postinfo">[datetime] Категория: <a href="[category_url]" title="Просмотреть все записи в рубрике [category]" rel="category tag">[category]</a></div>
                <div class="postrating"><div class="ratingup" onclick="rating_up(\'[full_url]/\',[id]);"></div><span id="rating_[id]">[rating]</span><div class="ratingdown" onclick="rating_down(\'[full_url]/\',[id]);"></div></div>
                <div class="post">
                	[text]
                </div>
                <div class="postlinks">
                	<div class="postviews">Просмотров: [views]</div><div class="postcomments"><a href="[post_url]">Комментариев: [count_comment]</a></div><br style="clear:both;" />
                	<div class="posttags"><a href="[tags_url]">[tags]</a></div><div class="postmark">мне нравится</div>
                </div>
            </div>
		<!--[/poster]-->
            
        </div>
        <div id="navigation">
        <!-- навигация -->
        	<div>
		<!--[navigation]-->
            	<a href="[previous_url]">Назад -[previous_link]-</a> <span>[current_link]</span> <a href="[page_url]">[other_link]</a> <a href="[next_url]">Вперед -[next_link]-</a>
			<!--[/navigation]-->
            </div>
        </div>
        <div id="bottom">
        <!-- низ -->
        <!--[printout]-->
        	<div>Все права защищены © 2012 <a href="[seoengi]">[title]</a> время генерации [loadtimer]</div>
		<!--[/printout]-->
        </div>
    </div>
</body>
</html>



Но в этом случае прийдется отказаться от include и загружать файл и жестко его парсить

Думаю вариант 2 будет сильно тормозить систему, хотя вариант просто идеальный

На данный момент движок превосходит по функционалу вордпресс и работает в несколько раз быстрее вордпресса

Какой по вашему мнению вариант лучше и много ли я проиграю в производительности?

Не хотелось бы потерять скорость...
...
Рейтинг: 0 / 0
05.08.2012, 00:22:26
    #37904625
prot0type
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что быстрее? или какая идея лучше?
движок пишу не для себя, а для всех
поэтому очень важно понять что в дальнейшем вы хотите увидеть
корявый вордпрес или движок шаблоны в котором можно редактировать не вникая в PHP
...
Рейтинг: 0 / 0
05.08.2012, 01:04:29
    #37904642
ScareCrow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что быстрее? или какая идея лучше?
авторкорявый вордпрес или движок шаблоны в котором можно редактировать не вникая в PHP
мне вот нафик не нужен движок реализующий Include, if и foreach.
ценность шаблонизатора обратно пропорциональка количеству функций php которые он реализует.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Что быстрее? или какая идея лучше? / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]